This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c++/51827] New: Error: 'FOO' conflicts with a previous declaration, with PCH/LTO/C++11


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

             Bug #: 51827
           Summary: Error: 'FOO' conflicts with a previous declaration,
                    with PCH/LTO/C++11
    Classification: Unclassified
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: d.g.gorbachev@gmail.com
              Host: i686-pc-linux-gnu
            Target: i686-pc-linux-gnu
             Build: i686-pc-linux-gnu


GCC 4.7.0 20120107 (experimental)

TestCase.H:3:29: error: 'T<Y>::T(S<A ...>) [with A = {A ...}; Y = int]'
conflicts with a previous declaration
TestCase.H:3:29: note: previous declaration 'T<Y>::T(S<A ...>)'
TestCase.H:3:29: note: -fabi-version=6 (or =0) avoids this error with a change
in mangling
TestCase.H:3:29: error: 'T<Y>::T(S<A ...>) [with A = {A ...}; Y = int]'
conflicts with a previous declaration
TestCase.H:3:29: note: previous declaration 'T<Y>::T(S<A ...>)'
TestCase.H:3:29: note: -fabi-version=6 (or =0) avoids this error with a change
in mangling

Compile with `-flto -std=gnu++11':

=================== 8< ===================
template<typename X> struct S { };
template<typename Y> struct T {
  template <typename ... A> T(S <A ...>);
};
inline void f(T<int>) { }
=================== >8 ===================


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]