2007-01-29 Andrew Haley <aph@redhat.com>
authoraph <aph@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 29 Jan 2007 13:02:48 +0000 (13:02 +0000)
committeraph <aph@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 29 Jan 2007 13:02:48 +0000 (13:02 +0000)
        * class.c (add_method_1): Mark fndecl as external unless we are
        compiling it into this object file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@121284 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/java/ChangeLog
gcc/java/class.c

index 4d24a20..1cd6c07 100644 (file)
@@ -1,3 +1,8 @@
+2007-01-29  Andrew Haley  <aph@redhat.com>
+
+       * class.c (add_method_1): Mark fndecl as external unless we are
+       compiling it into this object file.
+
 2007-01-24  Andrew Haley  <aph@redhat.com>
 
        * jcf-parse.c (HANDLE_SYNTHETIC_ATTRIBUTE): current_class is a
index a2a70a7..060d871 100644 (file)
@@ -731,6 +731,10 @@ add_method_1 (tree this_class, int access_flags, tree name, tree function_type)
       METHOD_NATIVE (fndecl) = 1;
       DECL_EXTERNAL (fndecl) = 1;
     }
+  else
+    /* FNDECL is external unless we are compiling it into this object
+       file.  */
+    DECL_EXTERNAL (fndecl) = CLASS_FROM_CURRENTLY_COMPILED_P (this_class) == 0;
   if (access_flags & ACC_STATIC) 
     METHOD_STATIC (fndecl) = DECL_INLINE (fndecl) = 1;
   if (access_flags & ACC_FINAL)