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

            Bug ID: 111544
           Summary: [14 regression] assignment of read-only location after
                    r14-4111-g6e92a6a2a72d3b
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: other
          Assignee: unassigned at gcc dot gnu.org
          Reporter: seurer at gcc dot gnu.org
  Target Milestone: ---

Starting with r14-4111-g6e92a6a2a72d3b I am seeing a whole bunch of errors when
compiling some test code like this:

/home/seurer/gcc/git/install/gcc-test//bin/g++ -c -o WFXMLScanner.o -DSPEC_CPU
-DNDEBUG  -DAPP_NO_THREADS -DXALAN_INMEM_MSG_LOADER -I. -Ixercesc -Ixercesc/dom
-Ixercesc/dom/impl -Ixercesc/sax -Ixercesc/util/MsgLoaders/InMemory
-Ixercesc/util/Transcoders/Iconv -Ixalanc/include -DPROJ_XMLPARSER
-DPROJ_XMLUTIL -DPROJ_PARSERS -DPROJ_SAX4C -DPROJ_SAX2 -DPROJ_DOM
-DPROJ_VALIDATORS -DXML_USE_NATIVE_TRANSCODER -DXML_USE_INMEM_MESSAGELOADER
-m64 -O3 -mcpu=power8 -fpeel-loops -funroll-loops -ffast-math -mpopcntd
-mrecip=all    -DSPEC_CPU_LP64 -DSPEC_CPU_LINUX      WFXMLScanner.cpp
In file included from ./xercesc/util/NameIdPool.hpp:338,
                 from ./xercesc/internal/XMLScanner.hpp:311,
                 from ./xercesc/internal/WFXMLScanner.hpp:93,
                 from WFXMLScanner.cpp:65:
./xercesc/util/NameIdPool.c: In member function
'xercesc_2_5::NameIdPoolEnumerator<TElem>&
xercesc_2_5::NameIdPoolEnumerator<TElem>::operator=(const
xercesc_2_5::NameIdPoolEnumerator<TElem>&)':
./xercesc/util/NameIdPool.c:416:20: error: assignment of read-only location
'((xercesc_2_5::NameIdPoolEnumerator<TElem>*)this)->xercesc_2_5::NameIdPoolEnumerator<TElem>::fMemoryManager'
  416 |     fMemoryManager = toAssign.fMemoryManager;
      |     ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~

This is old, old code (one of the tests in spec 2006) and appears to run just
fine.  Is there actually something wrong in the code or is the error message in
error?


commit 6e92a6a2a72d3b7a5e1b29042d8a6a43fe1085aa (HEAD)
Author: Patrick Palka <ppa...@redhat.com>
Date:   Mon Sep 18 14:47:52 2023 -0400

    c++: non-dependent assignment checking [PR63198, PR18474]

Reply via email to