On 06/27/2011 12:23 PM, Richard Henderson wrote:
> On 06/27/2011 12:11 PM, Richard Henderson wrote:
>> gcc -c  -DUSE_LIBUNWIND_EXCEPTIONS  -g -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE  
>> -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes 
>> -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long 
>> -Wno-variadic-macros -Wno-overlength-strings -Wold-style-definition 
>> -Wc++-compat -fno-common  -DHAVE_CONFIG_H -I. -I. -I../../comb/gcc 
>> -I../../comb/gcc/. -I../../comb/gcc/../include 
>> -I../../comb/gcc/../libcpp/include  -I../../comb/gcc/../libdecnumber 
>> -I../../comb/gcc/../libdecnumber/dpd -I../libdecnumber    \
>>      ../../comb/gcc/config/ia64/ia64.c -o ia64.o
>> ../../comb/gcc/config/ia64/ia64.c: In function ‘ia64_init_builtins’:
>> ../../comb/gcc/config/ia64/ia64.c:10136:7: warning: implicit declaration of 
>> function ‘vms_patch_builtins’ [-Wimplicit-function-declaration]
> 
> And of course alpha-linux is broken for the same reason.
> You cannot call a function in config/vms.c without ifdef protection.

Fixed thus.


r~
        * config/alpha/alpha.c (vms_patch_builtins): Provide dummy definition.
        * config/ia64/ia64.c (ia64_init_builtins): Call vms_patch_builtins
        inside ifdef.

diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c
index 5d656f1..962f020 100644
--- a/gcc/config/alpha/alpha.c
+++ b/gcc/config/alpha/alpha.c
@@ -198,6 +198,8 @@ static rtx alpha_emit_xfloating_compare (enum rtx_code *, 
rtx, rtx);
 #if TARGET_ABI_OPEN_VMS
 static void alpha_write_linkage (FILE *, const char *, tree);
 static bool vms_valid_pointer_mode (enum machine_mode);
+#else
+#define vms_patch_builtins()  gcc_unreachable()
 #endif
 
 #ifdef TARGET_ALTERNATE_LONG_DOUBLE_MANGLING
diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c
index b0d9dc8..c06903d 100644
--- a/gcc/config/ia64/ia64.c
+++ b/gcc/config/ia64/ia64.c
@@ -10131,10 +10131,9 @@ ia64_init_builtins (void)
                                               "__float128");
 
   /* Fwrite on VMS is non-standard.  */
-  if (TARGET_ABI_OPEN_VMS)
-    {
-      vms_patch_builtins ();
-    }
+#if TARGET_ABI_OPEN_VMS
+  vms_patch_builtins ();
+#endif
 
 #define def_builtin(name, type, code)                                  \
   add_builtin_function ((name), (type), (code), BUILT_IN_MD,   \

Reply via email to