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

           Summary: type of const member function
           Product: gcc
           Version: 4.6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: marc.gli...@normalesup.org


typeid reports void() and void()const as the same type:

#include <typeinfo>
#include <iostream>
template<class A,class B> void f(){
        std::cout << std::boolalpha << (typeid(A)==typeid(B)) << '\n';
}
int main(){
        f<void()const,void()>();
}

The demangler in binutils prints void()const as void( const)(). If I make g++
produce an error message (adding a line "typename A::x y;" in f), 4.5 prints
void()const while 4.6 prints void()__attribute__((const)).

Reply via email to