diff --git a/ChangeLog b/ChangeLog index d8973deb51..78b4aa13c1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Sat Apr 27 19:04:55 2013 Tanaka Akira + + * sparc.c: Use __asm__ instead of asm for gcc. + gcc doesn't provide asm keyword if -ansi option is given. + http://gcc.gnu.org/onlinedocs/gcc/Alternate-Keywords.html + Sat Apr 27 17:22:50 2013 Tanaka Akira * ext/socket/extconf.rb: Redundant test removed. diff --git a/sparc.c b/sparc.c index 5c5dc8ef8e..dc3779035f 100644 --- a/sparc.c +++ b/sparc.c @@ -12,7 +12,16 @@ void rb_sparc_flush_register_windows(void) { - asm +/* + * gcc doesn't provide "asm" keyword if -ansi and the various -std options + * are given. + * http://gcc.gnu.org/onlinedocs/gcc/Alternate-Keywords.html + */ +#ifndef __GNUC__ +#define __asm__ asm +#endif + + __asm__ #ifdef __GNUC__ __volatile__ #endif