[Bug libgcj/21692] [4.1 Regression] unexpected java.lang.NoClassDefFoundError

cvs-commit at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Wed May 25 22:09:00 GMT 2005


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-05-25 22:09 -------
Subject: Bug 21692

CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	rth@gcc.gnu.org	2005-05-25 22:08:31

Modified files:
	gcc/cp         : ChangeLog cp-tree.h decl2.c method.c 
	gcc/java       : ChangeLog Make-lang.in class.c decl.c 
	                 java-tree.h lang.c mangle.c 

Log message:
	PR libgcj/21692
	cp/
	* cp-tree.h (make_alias_for): Declare.
	* decl2.c (build_java_method_aliases): New.
	(cp_finish_file): Call it.
	* method.c (make_alias_for): Split out from ...
	(make_alias_for_thunk): ... here.
	
	java/
	* Make-lang.in (java/mangle.o): Depend on LANGHOOKS_DEF_H.
	* class.c (build_class_ref): Set DECL_CLASS_FIELD_P and
	DECL_CONTEXT; avoid pushdecl_top_level.
	(build_dtable_decl): Set DECL_VTABLE_P and DECL_CONTEXT.
	(layout_class): Don't SET_DECL_ASSEMBLER_NAME.
	(layout_class_method): Likewise.
	* decl.c (java_mark_cni_decl_local): New.
	(java_mark_class_local): Use it.
	* java-tree.h (DECL_LOCAL_CNI_METHOD_P): New.
	(DECL_CLASS_FIELD_P, DECL_VTABLE_P): New.
	(struct lang_decl_func): Add local_cni;
	(struct lang_decl_var): Add class_field, vtable.
	(java_mangle_decl): Declare.
	* lang.c (LANG_HOOKS_SET_DECL_ASSEMBLER_NAME): New.
	* mangle.c: Remove dup obstack.h; include langhooks-def.h.
	(mangle_obstack_1): New.
	(java_mangle_decl): Remove obstack argument.  Call mangle_class_field,
	mangle_vtable, and mangle_local_cni_method_decl.  Fall back to
	lhd_set_decl_assembler_name for things that don't need mangling.
	(mangle_class_field): Rename from java_mangle_class_field, make
	static, don't call init_mangling or finish_mangling.
	(mangle_vtable): Similarly.
	(mangle_local_cni_method_decl): New.
	(init_mangling): Remove obstack argument.  Use &mangle_obstack_1,
	gcc_assert, and MANGLE_RAW_STRING.
	(finish_mangling): Use gcc_assert, remove if 0 debugging code.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&r1=1.4755&r2=1.4756
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/cp-tree.h.diff?cvsroot=gcc&r1=1.1137&r2=1.1138
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/decl2.c.diff?cvsroot=gcc&r1=1.782&r2=1.783
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/method.c.diff?cvsroot=gcc&r1=1.328&r2=1.329
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/ChangeLog.diff?cvsroot=gcc&r1=1.1616&r2=1.1617
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/Make-lang.in.diff?cvsroot=gcc&r1=1.158&r2=1.159
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/class.c.diff?cvsroot=gcc&r1=1.229&r2=1.230
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/decl.c.diff?cvsroot=gcc&r1=1.221&r2=1.222
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/java-tree.h.diff?cvsroot=gcc&r1=1.231&r2=1.232
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/lang.c.diff?cvsroot=gcc&r1=1.171&r2=1.172
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/mangle.c.diff?cvsroot=gcc&r1=1.32&r2=1.33



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21692



More information about the Java-prs mailing list