java: mark calls to external fndecls DECL_EXTERNAL

Andrew Haley aph@redhat.com
Mon Jan 29 12:06:00 GMT 2007


We weren't marking calls to external fndecls DECL_EXTERNAL, and this
was causing build failures on PPC64.

Andrew.


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.

Index: class.c
===================================================================
--- class.c     (revision 121108)
+++ class.c     (working copy)
@@ -733,6 +733,10 @@
       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) 



More information about the Gcc mailing list