This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/33887] [4.1/4.2/4.3 Regression] Reference to bitfield gets wrong value when optimizing
- From: "aoliva at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 18 Jan 2008 18:08:55 -0000
- Subject: [Bug c++/33887] [4.1/4.2/4.3 Regression] Reference to bitfield gets wrong value when optimizing
- References: <bug-33887-1313@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #26 from aoliva at gcc dot gnu dot org 2008-01-18 18:08 -------
I installed the patch in comment #11 and rebuilt all libraries, then I started
investigating the first testsuite failure: libjava.cni/PR9577.java.
So far, I've found out that it is the gnu.classpath.SystemProperties class
initializer that throws an exception out of this checkcast:
#0 _Jv_IsAssignableFrom (source=0x2aaaad5ee1e0, target=0x2aaaad610a80) at
../../../libjava/java/lang/natClass.cc:1847
#1 0x00002aaaac2c7071 in _Jv_CheckCast (c=0x2aaaad610a80, obj=0x2aaab266ab40)
at ../../../libjava/java/lang/natClass.cc:1887
#2 0x00002aaaac74e606 in java.util.Hashtable.putAllInternal(java.util.Map)void
(this=0x2aaab2676f80, m=<value optimized out>) at java/util/Hashtable.java:864
#3 0x00002aaaac74e013 in java.util.Hashtable.clone()java.lang.Object
(this=0x2aaab2676fc0) at java/util/Hashtable.java:558
#4 0x00002aaaac2df849 in gnu.classpath.SystemProperties.<clinit>()void () at
gnu/classpath/SystemProperties.java:116
the cast is from java.util.Hashtable$Entry to java.util.Map$Entry, which
*should* pass. But target->ioffsets is NULL, so the assignable test returns
false. I don't think it should be NULL, though. Something is already broken
at this point.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33887