https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114410
--- Comment #4 from Cristian VOICA <cvoica at gmail dot com> --- I'm also trying to understand another thing. Perhaps you can point me to where to read more about it as I was not expecting casting to a non-const reference to work for a member in a const object. Is there a warning for (std::string&)a->m_i on "const A* a" ? Thx!