mirror of git://gcc.gnu.org/git/gcc.git
re PR c++/33887 (Reference to bitfield gets wrong value when optimizing)
PR c++/33887 * link.cc (_Jv_Linker::prepare_constant_time_tables): has_interfaces is boolean, treat it as such. From-SVN: r131632
This commit is contained in:
parent
987b399aaf
commit
70a0694b3a
|
@ -1,3 +1,9 @@
|
||||||
|
2008-01-18 Alexandre Oliva <aoliva@redhat.com>
|
||||||
|
|
||||||
|
PR c++/33887
|
||||||
|
* link.cc (_Jv_Linker::prepare_constant_time_tables):
|
||||||
|
has_interfaces is boolean, treat it as such.
|
||||||
|
|
||||||
2008-01-04 Andrew Haley <aph@redhat.com>
|
2008-01-04 Andrew Haley <aph@redhat.com>
|
||||||
|
|
||||||
PR libgcj/34444
|
PR libgcj/34444
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
// link.cc - Code for linking and resolving classes and pool entries.
|
// link.cc - Code for linking and resolving classes and pool entries.
|
||||||
|
|
||||||
/* Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation
|
/* Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
|
||||||
|
Free Software Foundation
|
||||||
|
|
||||||
This file is part of libgcj.
|
This file is part of libgcj.
|
||||||
|
|
||||||
|
@ -662,10 +663,11 @@ _Jv_Linker::prepare_constant_time_tables (jclass klass)
|
||||||
// interfaces or primitive types.
|
// interfaces or primitive types.
|
||||||
|
|
||||||
jclass klass0 = klass;
|
jclass klass0 = klass;
|
||||||
jboolean has_interfaces = 0;
|
jboolean has_interfaces = false;
|
||||||
while (klass0 != &java::lang::Object::class$)
|
while (klass0 != &java::lang::Object::class$)
|
||||||
{
|
{
|
||||||
has_interfaces += klass0->interface_count;
|
if (klass0->interface_count)
|
||||||
|
has_interfaces = true;
|
||||||
klass0 = klass0->superclass;
|
klass0 = klass0->superclass;
|
||||||
klass->depth++;
|
klass->depth++;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue