Commit 2c5187c5 by Tom Tromey Committed by Tom Tromey

re PR java/5088 (Can't create a java.lang.Object from CNI)

	* mangle.c (mangle_method_decl): Never emit `C2' constructor.
	Fixes PR java/5088.

From-SVN: r48083
parent 04942eac
2001-12-16 Tom Tromey <tromey@redhat.com>
* mangle.c (mangle_method_decl): Never emit `C2' constructor.
Fixes PR java/5088.
2001-12-16 Joseph S. Myers <jsm28@cam.ac.uk> 2001-12-16 Joseph S. Myers <jsm28@cam.ac.uk>
* ChangeLog, Make-lang.in, class.c, expr.c, gcj.texi, java-tree.h, * ChangeLog, Make-lang.in, class.c, expr.c, gcj.texi, java-tree.h,
......
...@@ -142,20 +142,13 @@ mangle_method_decl (mdecl) ...@@ -142,20 +142,13 @@ mangle_method_decl (mdecl)
/* Mangle the name of the type that contains mdecl */ /* Mangle the name of the type that contains mdecl */
mangle_record_type (DECL_CONTEXT (mdecl), /* for_pointer = */ 0); mangle_record_type (DECL_CONTEXT (mdecl), /* for_pointer = */ 0);
/* Mangle the function name. There three cases /* Mangle the function name. There are two cases:
- mdecl is java.lang.Object.Object(), use `C2' for its name
(denotes a base object constructor.)
- mdecl is a constructor, use `C1' for its name, (denotes a - mdecl is a constructor, use `C1' for its name, (denotes a
complete object constructor.) complete object constructor.)
- mdecl is not a constructor, standard mangling is performed. - mdecl is not a constructor, standard mangling is performed.
We terminate the mangled function name with a `E'. */ We terminate the mangled function name with a `E'. */
if (ID_INIT_P (method_name)) if (ID_INIT_P (method_name))
{ obstack_grow (mangle_obstack, "C1", 2);
if (DECL_CONTEXT (mdecl) == object_type_node)
obstack_grow (mangle_obstack, "C2", 2);
else
obstack_grow (mangle_obstack, "C1", 2);
}
else else
mangle_member_name (method_name); mangle_member_name (method_name);
obstack_1grow (mangle_obstack, 'E'); obstack_1grow (mangle_obstack, 'E');
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment