This is GCC Bugzilla
This is GCC Bugzilla Version 2.20+
View Bug Activity | Format For Printing | Clone This Bug
Compile/run the following with -O3. Note this is broken in 3.3 also; I haven't tested earlier versions. public class Log { private static class Singleton {static final Log __instance = new Log();} public static Log instance() { return Singleton.__instance; } public String toString() { return "Log"; } public static void main(String[] args) { System.out.println(Log.instance()); } }
I can confirm this on the mainline (20030714).
2003-11-11 Andrew Haley <aph@redhat.com> PR java/11533 * lang.c (merge_init_test_initialization): Clear DECL_INITIAL for init_test_decls being inlined.
Subject: Bug 11533 CVSROOT: /cvs/gcc Module name: gcc Changes by: aph@gcc.gnu.org 2003-11-12 15:24:42 Modified files: gcc/java : ChangeLog lang.c parse.y Log message: 2003-11-12 Andrew Haley <aph@redhat.com> PR java/11533 * lang.c (merge_init_test_initialization): Clear DECL_INITIAL for init_test_decls being inlined. PR java/12890: * parse.y (do_resolve_class): Check return value from breakdown_qualified(). Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/ChangeLog.diff?cvsroot=gcc&r1=1.1287&r2=1.1288 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/lang.c.diff?cvsroot=gcc&r1=1.145&r2=1.146 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/parse.y.diff?cvsroot=gcc&r1=1.453&r2=1.454