[Bug c++/30232] Templated function seems to hide non-templated one with same name under certain circumstances in newer versions of g++.

pinskia at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Sat Dec 16 18:34:00 GMT 2006



------- Comment #3 from pinskia at gcc dot gnu dot org  2006-12-16 18:34 -------
This was a bug in GCC before 4.1.0.  See PR 2922.
You are incorrect.  This code is invalid because argument dependent namelookup
does not have an effect on fundumental types.

This sentence is where it goes wrong:
    Name lookup (3.4, 3.4.2) does not distinguish between the different
    contexts for the case of an instantiated instantiation.

14.6.4.2/1 says:
For the part of the lookup using unqualified name lookup (3.4.1), only function
declarations with external linkage from the template definition context are
found.

see the template definition context, so it does distinguish.

*** This bug has been marked as a duplicate of 2922 ***


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |DUPLICATE


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30232



More information about the Gcc-bugs mailing list