incubator-stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Liviu Nicoara <nikko...@hates.ms>
Subject STDCXX-1070
Date Tue, 25 Sep 2012 20:46:55 GMT
I filed 1070, failure to build 22.locale.collate.cpp on Linux with gcc 4.7.1. Gcc, Comeau and
Clang fail to compile it, Intel and Sun are fine. It looks to me like Intel and Sun compilers
are not doing the right thing. A small test case and a patch have been attached. The failing
code has been reduced to:

$ cat test.cpp; g++ -c test.cpp
template < class charT >
void f ()
{
     g (charT ('a'));
}

template < class charT >
void g (charT)
{
}

int h ()
{
     return f< char > (), 0;
}
test.cpp: In instantiation of 'void f() \[with charT = char\]':
test.cpp:14:23:   required from here
test.cpp:4:5: error: 'g' was not declared in this scope, and no declarations were found by
argument-dependent lookup at the point of instantiation \[-fpermissive\]
test.cpp:8:6: note: 'template<class charT> void g(charT)' declared here, later in the
translation unit

Liviu

Mime
View raw message