This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
c++/2039: bad code generated for access to unnamed union in base class
- To: gcc-gnats at gcc dot gnu dot org
- Subject: c++/2039: bad code generated for access to unnamed union in base class
- From: jlemke at itcnet dot de
- Date: 20 Feb 2001 15:18:19 -0000
- Reply-To: jlemke at itcnet dot de
>Number: 2039
>Category: c++
>Synopsis: bad code generated for access to unnamed union in base class
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: wrong-code
>Submitter-Id: net
>Arrival-Date: Tue Feb 20 07:26:01 PST 2001
>Closed-Date:
>Last-Modified:
>Originator: jlemke@itcnet.de
>Release: g++-2.95.2
>Organization:
>Environment:
AIX 4.3 (does also appear on Linux egcs-2.91.66)
>Description:
access to an item in an unnamed union of a base class
produces code with wrong addressing. see sample
> g++ -v x.cpp -o x
Reading specs from /usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.2.0/2.95.2/specs
gcc version 2.95.2 19991024 (release)
/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.2.0/2.95.2/cpp -lang-c++ -v -D__GNUC_
_=2 -D__GNUG__=2 -D__GNUC_MINOR__=95 -D__cplusplus -D_IBMR2 -D_POWER -D_AIX -D_A
IX32 -D_AIX41 -D_AIX43 -D_LONG_LONG -D_IBMR2 -D_POWER -D_AIX -D_AIX32 -D_AIX41 -
D_AIX43 -D_LONG_LONG -Asystem(unix) -Asystem(aix) -D__EXCEPTIONS -D__CHAR_UNSIGN
ED__ -D_ARCH_COM x.cpp x.ii
GNU CPP version 2.95.2 19991024 (release)
#include "..." search starts here:
#include <...> search starts here:
/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.2.0/2.95.2/../../../../include/g++-3
/usr/local/include
/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.2.0/2.95.2/../../../../powerpc-ibm-ai
x4.3.2.0/include
/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.2.0/2.95.2/include
/usr/include
End of search list.
The following default directories have been omitted from the search path:
End of omitted list.
/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.2.0/2.95.2/cc1plus x.ii -quiet -dumpb
ase x.cc -version -o x.s
GNU C++ version 2.95.2 19991024 (release) (powerpc-ibm-aix4.3.2.0) compiled by G
NU C version 2.95.2 19991024 (release).
as -u -mcom -o x.o x.s
/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.2.0/2.95.2/collect2 -bpT:0x10000000 -
bpD:0x20000000 -btextro -bnodelcsect -o x /lib/crt0.o -L/usr/local/lib/gcc-lib/p
owerpc-ibm-aix4.3.2.0/2.95.2 -L/usr/local/lib x.o -lstdc++ -lm /usr/local/lib/gc
c-lib/powerpc-ibm-aix4.3.2.0/2.95.2/libgcc.a -lc /usr/local/lib/gcc-lib/powerpc-
ibm-aix4.3.2.0/2.95.2/libgcc.a
> x
f1: ia1=11111111
f1: ia2=22222222
f2: ia1=44444444
f2: ia2=22222222
>How-To-Repeat:
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="x.cpp"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="x.cpp"
Ly8gYmVnaW4KCiNpbmNsdWRlIDxpb3N0cmVhbT4KCmNsYXNzIGEKewpwdWJsaWM6CiAgbG9uZyBp
YTE7CiAgdW5pb24KICB7CiAgICBsb25nIGlhMjsKICB9Owp9OwoKY2xhc3MgYiA6IHB1YmxpYyBh
CnsKcHVibGljOgogIHZvaWQgZjEoKTsKICB2b2lkIGYyKCk7Cn07Cgp2b2lkIGI6OmYxKCkKewog
IGlhMSA9IDExMTExMTExOwogIGlhMiA9IDIyMjIyMjIyOwp9Cgp2b2lkIGI6OmYyKCkKewogIGlh
MSAgICA9IDMzMzMzMzMzOwogIGE6OmlhMiA9IDQ0NDQ0NDQ0OyAgIC8vIDw8PCAhISE/Pz8/Cn0K
CmludCBtYWluKCkKewogIGIgeDsKCiAgeC5mMSgpOwogIGNvdXQgPDwgImYxOiBpYTE9IiA8PCB4
LmlhMSA8PCBlbmRsOyAgLy8gaXMgMTExMTExMTEKICBjb3V0IDw8ICJmMTogaWEyPSIgPDwgeC5p
YTIgPDwgZW5kbDsgIC8vIGlzIDIyMjIyMjIyCgogIHguZjIoKTsKICBjb3V0IDw8ICJmMjogaWEx
PSIgPDwgeC5pYTEgPDwgZW5kbDsgIC8vIGlzIDQ0NDQ0NDQ0IHNob3VsZCBiZSAzMzMzMzMzMwog
IGNvdXQgPDwgImYyOiBpYTI9IiA8PCB4LmlhMiA8PCBlbmRsOyAgLy8gaXMgMjIyMjIyMjIgc2hv
dWxkIGJlIDQ0NDQ0NDQ0CgogIHJldHVybiAwOwp9CgovL2VuZAo=