[Bug libstdc++/59048] operator== between std::string and const char* slower than strcmp
glisse at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Jan 9 17:21:00 GMT 2014
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59048
Marc Glisse <glisse at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|WAITING |UNCONFIRMED
Version|4.4.7 |4.9.0
Summary|std::string operator== |operator== between
|between std::string and |std::string and const char*
|const char* creates |slower than strcmp
|unecessary temporary object |
Ever confirmed|1 |0
--- Comment #12 from Marc Glisse <glisse at gcc dot gnu.org> ---
Configuring libstdc++ with --disable-extern-template "fixes" the issue (I
actually only edited bits/c++config.h).
I don't think we can mark the functions with attribute pure, and even if we do
it doesn't seem sufficient (not sure what else gcc wants).
More information about the Gcc-bugs
mailing list