The confusion in cppreference was probably due to the fact that std::shared_mutexit was really added in GCC 5.0 in revision 200134 . But it was an early incarnation of this type based on a draft C ++ 1y. In fact, it was a synchronized mutex, which at that time was called std::shared_mutex.
++ 14 std::shared_mutex std::shared_timed_mutex, GCC 5.1 ( 5.x) libstdc++ . 207964.
, - GCC 5.x std::shared_mutex std::shared_mutex, ++ 17 GCC.
GCC 6.x ++ 1z untimed, std::shared_mutex. 224158.
, ++ 17 shared_mutex GCC 5.x. 5.x std::shared_mutex std::shared_mutex, 5.x std::shared_timed_mutex.
++ 17, , 2016 - 6.1, GCC std::shared_mutex ( , std::shared_mutex ++ 17 , , -std=gnu++17 -std=c++17 ).
GCC 5 2015 , ++ 17 . GCC 6.x 7.x ++ 1z (, , ).