This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/19448] Different value representation for bitfield width exceeding its type size.
- From: "janis187 at us dot ibm dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 19 Jan 2005 02:01:38 -0000
- Subject: [Bug c++/19448] Different value representation for bitfield width exceeding its type size.
- References: <20050114181939.19448.yanliu@ca.ibm.com>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From janis187 at us dot ibm dot com 2005-01-19 02:01 -------
There are two changes that affect this binary incompatibility: one
changes the layout of the class, and the other changes how the bitfield
is accessed. Mark, did this change on purpose and is it covered by the
C++ ABI?
The first change is:
--- gcc/gcc/cp/ChangeLog ---
2003-04-29 Mark Mitchell <mark@codesourcery.com>
PR c++/10549
* class.c (layout_class_type): Mark overlong bitfields as having
the maximum size permitted by their type, after layout.
The second change is:
--- gcc/gcc/ChangeLog ---
2003-12-23 Mark Mitchell <mark@codesourcery.com>
* c-common.c (flag_abi_version): Default to 2.
* c-cppbuiltin.c (c_cpp_builtins): Define __GXX_ABI_VERSION
uniformly for versions above 2.
* doc/invoke.texi: Update documentation for -fabi-version.
--- gcc/gcc/cp/ChangeLog ---
2003-12-23 Mark Mitchell <mark@codesourcery.com>
* cp-lang.c (cp_expr_size): Return zero for empty classes.
* cp-tree.h (warn_if_uknown_interface): Remove unused function.
* decl2.c (warn_if_unknown_interface): Likewise.
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |mark at codesourcery dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19448