[Bug c++/26426] Type layout bug

2017-11-18 Thread sabre at nondot dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=26426

--- Comment #4 from Chris Lattner  ---
Works for me, I'm not following GCC bugs these days.  Thanks,

-Chris

[Bug c++/26426] Type layout bug

2017-11-18 Thread egallager at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=26426

Eric Gallager  changed:

   What|Removed |Added

 Status|WAITING |RESOLVED
 Resolution|--- |INVALID

--- Comment #3 from Eric Gallager  ---
(In reply to Jonathan Wakely from comment #2)
> See https://gcc.gnu.org/ml/gcc-bugs/2017-08/msg01667.html where I said:
> 
> I don't think this is a bug. B is the primary base class for Z so has already
> been allocated (as part of the Y subobject, in I-2b), and so the B base class
> of the X subobject is not allocated as part of the X (in III).
> 
> https://itanium-cxx-abi.github.io/cxx-abi/abi.html#a17

Since Chris hasn't responded, I'm closing this accordingly.

[Bug c++/26426] Type layout bug

2017-08-17 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=26426

--- Comment #2 from Jonathan Wakely  ---
See https://gcc.gnu.org/ml/gcc-bugs/2017-08/msg01667.html where I said:

I don't think this is a bug. B is the primary base class for Z so has already
been allocated (as part of the Y subobject, in I-2b), and so the B base class
of the X subobject is not allocated as part of the X (in III).

https://itanium-cxx-abi.github.io/cxx-abi/abi.html#a17

[Bug c++/26426] Type layout bug

2017-08-17 Thread egallager at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=26426

Eric Gallager  changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING
   Last reconfirmed||2017-08-17
 CC||egallager at gcc dot gnu.org
 Ever confirmed|0   |1

--- Comment #1 from Eric Gallager  ---
Redoing lost https://gcc.gnu.org/ml/gcc-bugs/2017-08/msg01612.html

Eric Gallager  changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING
   Last reconfirmed||2017-08-14
 CC||egallager at gcc dot gnu.org
 Ever confirmed|0   |1

--- Comment #1 from Eric Gallager  ---
How are you getting the byte values? I compiled the testcase but I don't know
what I'm supposed to be looking for in the output...

$ /usr/local/bin/g++ -Wall -Wextra -Wreorder -Wpacked -Wpadded -c 26426.cc
$ size 26426.o
__TEXT  __DATA  __OBJC  others  dec hex
1237232 0   16  14855cd
$ nm 26426.o
041c s EH_frame1
012c S __ZN1AC2Ev
 U __ZN1AD2Ev
0148 S __ZN1BC2Ev
 U __ZN1BD2Ev
0164 S __ZN1XC2Ev
01ac S __ZN1XD2Ev
01f4 S __ZN1YC2Ev
 U __ZN1YD2Ev
007a T __ZN1ZC1Ev
 T __ZN1ZC2Ev
02e6 S __ZN1ZD0Ev
0222 S __ZN1ZD1Ev
038c S __ZTC1Z0_1Y
03a4 S __ZTC1Z4_1X
 U __ZTI1A
 U __ZTI1B
03f4 S __ZTI1X
 U __ZTI1Y
03d4 S __ZTI1Z
0417 S __ZTS1X
0414 S __ZTS1Z
0368 S __ZTT1Z
 U __ZTV1A
 U __ZTV1B
032c S __ZTV1Z
 U __ZTVN10__cxxabiv121__vmi_class_type_infoE
0311 S __ZTv0_n12_N1ZD0Ev
02d4 S __ZTv0_n12_N1ZD1Ev
 U __ZdlPvm
0323 S ___x86.get_pc_thunk.ax
0327 S ___x86.get_pc_thunk.bx
05c4 s l__ZTT1Z$non_lazy_ptr
05c8 s l__ZTV1A$non_lazy_ptr
05cc s l__ZTV1B$non_lazy_ptr
05c0 s l__ZTV1Z$non_lazy_ptr
$

--- New Comment ---

Jonathan Wakely also had a comment that got lost in the Bugzilla outage, but my
browser doesn't seem to want to load my email or the archived copy, so he'll
have to re-add it himself... (I think he said something like this wasn't
actually a bug...)

[Bug c++/26426] Type layout bug

2017-08-14 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=26426

--- Comment #2 from Jonathan Wakely  ---
I don't think this is a bug. B is the primary base class for Z so has already
been allocated (as part of the Y subobject, in I-2b), and so the B base class
of the X subobject is not allocated as part of the X (in III).

https://itanium-cxx-abi.github.io/cxx-abi/abi.html#a17

[Bug c++/26426] Type layout bug

2017-08-14 Thread egallager at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=26426

Eric Gallager  changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING
   Last reconfirmed||2017-08-14
 CC||egallager at gcc dot gnu.org
 Ever confirmed|0   |1

--- Comment #1 from Eric Gallager  ---
How are you getting the byte values? I compiled the testcase but I don't know
what I'm supposed to be looking for in the output...

$ /usr/local/bin/g++ -Wall -Wextra -Wreorder -Wpacked -Wpadded -c 26426.cc
$ size 26426.o
__TEXT  __DATA  __OBJC  others  dec hex
1237232 0   16  14855cd
$ nm 26426.o
041c s EH_frame1
012c S __ZN1AC2Ev
 U __ZN1AD2Ev
0148 S __ZN1BC2Ev
 U __ZN1BD2Ev
0164 S __ZN1XC2Ev
01ac S __ZN1XD2Ev
01f4 S __ZN1YC2Ev
 U __ZN1YD2Ev
007a T __ZN1ZC1Ev
 T __ZN1ZC2Ev
02e6 S __ZN1ZD0Ev
0222 S __ZN1ZD1Ev
038c S __ZTC1Z0_1Y
03a4 S __ZTC1Z4_1X
 U __ZTI1A
 U __ZTI1B
03f4 S __ZTI1X
 U __ZTI1Y
03d4 S __ZTI1Z
0417 S __ZTS1X
0414 S __ZTS1Z
0368 S __ZTT1Z
 U __ZTV1A
 U __ZTV1B
032c S __ZTV1Z
 U __ZTVN10__cxxabiv121__vmi_class_type_infoE
0311 S __ZTv0_n12_N1ZD0Ev
02d4 S __ZTv0_n12_N1ZD1Ev
 U __ZdlPvm
0323 S ___x86.get_pc_thunk.ax
0327 S ___x86.get_pc_thunk.bx
05c4 s l__ZTT1Z$non_lazy_ptr
05c8 s l__ZTV1A$non_lazy_ptr
05cc s l__ZTV1B$non_lazy_ptr
05c0 s l__ZTV1Z$non_lazy_ptr
$