https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71848

            Bug ID: 71848
           Summary: [7 Regression] libstdc++ testsuite error on AIX
           Product: gcc
           Version: 6.0
            Status: UNCONFIRMED
          Keywords: rejects-valid
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: dje at gcc dot gnu.org
  Target Milestone: ---
            Target: powerpc-ibm-aix*

Recent C++ front-end changes appear to have elicited new failures on AIX for
insert4_neg.cc in libstdc++ testsuite.  The error did not occur with r238169
(after the recent libstdc++ changes), but do occur after r238197 (the C++
changes).

In file included from
/tmp/20160711/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/debug/functions.h:39:0,
                 from
/tmp/20160711/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/debug/safe_sequence.h:34,
                 from
/tmp/20160711/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/debug/list:35,
                 from
/nasfarm/edelsohn/src/src/libstdc++-v3/testsuite/23_containers/list/debug/insert4_neg.cc:20:
/tmp/20160711/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/debug/formatter.h: In
function '__gnu_debug::_Error_formatter&
__gnu_debug::_Error_formatter::_M_iterator(const _Iterator&, const char*) [with
_Iterator = __gnu_debug::_Safe_iterator<std::_List_const_iterator<int>,
std::__debug::list<int> >]':
/tmp/20160711/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/debug/formatter.h:387:7:
error: __gnu_debug::_Error_formatter&
__gnu_debug::_Error_formatter::_M_iterator(const _Iterator&, const char*) [with
_Iterator = __gnu_debug::_Safe_iterator<std::_List_const_iterator<int>,
std::__debug::list<int> >] causes a section type conflict with
__gnu_debug::_Error_formatter& __gnu_debug::_Error_formatter::_M_iterator(const
_Iterator&, const char*) [with _Iterator =
__gnu_debug::_Safe_iterator<std::_List_iterator<int>, std::__debug::list<int>
>]
/tmp/20160711/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/debug/formatter.h:387:7:
note: '__gnu_debug::_Error_formatter&
__gnu_debug::_Error_formatter::_M_iterator(const _Iterator&, const char*) [with
_Iterator = __gnu_debug::_Safe_iterator<std::_List_iterator<int>,
std::__debug::list<int> >]' was declared here


The "second type conflict" is peculiar to AIX, but I suspect that there is an
underlying problem introduced by the patch -- somehow the type or alignment of
the object is changing after it initially has been added to the symbol table or
layout generated.

Reply via email to