From: Tom Tromey Date: Sun, 16 Dec 2001 22:53:02 +0000 (+0000) Subject: re PR java/5088 (Can't create a java.lang.Object from CNI) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=2c5187c52827b7782b70ed773f57effebaf21b0a;p=gcc.git 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 --- diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index 078a2e793b8..de41901c303 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,8 @@ +2001-12-16 Tom Tromey + + * mangle.c (mangle_method_decl): Never emit `C2' constructor. + Fixes PR java/5088. + 2001-12-16 Joseph S. Myers * ChangeLog, Make-lang.in, class.c, expr.c, gcj.texi, java-tree.h, diff --git a/gcc/java/mangle.c b/gcc/java/mangle.c index 93d8fe7647e..d055c9cc433 100644 --- a/gcc/java/mangle.c +++ b/gcc/java/mangle.c @@ -142,20 +142,13 @@ mangle_method_decl (mdecl) /* Mangle the name of the type that contains mdecl */ mangle_record_type (DECL_CONTEXT (mdecl), /* for_pointer = */ 0); - /* Mangle the function name. There three cases - - mdecl is java.lang.Object.Object(), use `C2' for its name - (denotes a base object constructor.) + /* Mangle the function name. There are two cases: - mdecl is a constructor, use `C1' for its name, (denotes a complete object constructor.) - mdecl is not a constructor, standard mangling is performed. We terminate the mangled function name with a `E'. */ if (ID_INIT_P (method_name)) - { - if (DECL_CONTEXT (mdecl) == object_type_node) - obstack_grow (mangle_obstack, "C2", 2); - else - obstack_grow (mangle_obstack, "C1", 2); - } + obstack_grow (mangle_obstack, "C1", 2); else mangle_member_name (method_name); obstack_1grow (mangle_obstack, 'E');