--- mkmf.rb 2011-08-23 13:34:33.853087200 +0200 +++ /Ruby19/lib/ruby/1.9.1/mkmf.rb 2011-10-18 09:57:52.566000000 +0200 @@ -620,13 +620,15 @@ #{headers} /*top*/ #{MAIN_DOES_NOTHING} -int t() { #{decltype["volatile p"]}; p = (#{decltype[]})#{func}; return 0; } +extern int t(void); +int t(void) { #{decltype["volatile p"]}; p = (#{decltype[]})#{func}; return 0; } SRC call && try_link(<<"SRC", libs, &b) #{headers} /*top*/ #{MAIN_DOES_NOTHING} -int t() { #{func}(); return 0; } +extern int t(void); +int t(void) { #{func}(); return 0; } SRC end @@ -637,7 +639,8 @@ #{headers} /*top*/ #{MAIN_DOES_NOTHING} -int t() { const volatile void *volatile p; p = &(&#{var})[0]; return 0; } +extern int t(void); +int t(void) { const volatile void *volatile p; p = &(&#{var})[0]; return 0; } SRC end @@ -1244,7 +1247,8 @@ /*top*/ volatile #{type} conftestval; #{MAIN_DOES_NOTHING} -int t() {return (int)(1-*(conftestval#{member ? ".#{member}" : ""}));} +extern int t(void); +int t(void) {return (int)(1-*(conftestval#{member ? ".#{member}" : ""}));} SRC end @@ -1256,7 +1260,8 @@ /*top*/ volatile #{type} conftestval; #{MAIN_DOES_NOTHING} -int t() {return (int)(1-(conftestval#{member ? ".#{member}" : ""}));} +extern int t(void); +int t(void) {return (int)(1-(conftestval#{member ? ".#{member}" : ""}));} SRC end @@ -2274,7 +2279,7 @@ LIBPATHFLAG = config_string('LIBPATHFLAG') || ' -L"%s"' RPATHFLAG = config_string('RPATHFLAG') || '' LIBARG = config_string('LIBARG') || '-l%s' -MAIN_DOES_NOTHING = config_string('MAIN_DOES_NOTHING') || 'int main() {return 0;}' +MAIN_DOES_NOTHING = config_string('MAIN_DOES_NOTHING') || 'int main(void) {return 0;}' UNIVERSAL_INTS = config_string('UNIVERSAL_INTS') {|s| Shellwords.shellwords(s)} || %w[int short long long\ long]