戻り値のみ違う関数のオーバーロードについて

下記、std::vectorのbeginの定義ですが、タイトルの通り戻り値のみ違う、引数が同じ関数のオーバーロードをしていると思います。 オーバーロードは普通引数が違う関数でないとエラーが出ると思うのですが、これはどういった仕組で定義されているのでしょうか。 _LIBCPP_INLINE_VISIBILITY iterator begin()…