[Bug c++/15144] New: Template instantiation can't find symbol in global namespace

stefan dot rupp at inform-ac dot com gcc-bugzilla@gcc.gnu.org
Mon Apr 26 11:24:00 GMT 2004


In the following code

template< class T >
inline void foobar( const T& x ) {
  ::baz(x);
}

struct Data {};
void baz( const Data& data ) {}

int main() {
  Data d;
  foobar( d );
}

gcc 3.4 can't resolve the symbol ::baz correctly. It works, however, if I drop
the qualification ::.

Compiled with: g++-3 -c bug.cc

-- 
           Summary: Template instantiation can't find symbol in global
                    namespace
           Product: gcc
           Version: 3.4.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: stefan dot rupp at inform-ac dot com
                CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu


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



More information about the Gcc-bugs mailing list