Hello, On Wed, Mar 02, 2005 at 12:41:51AM -0500, John W. Eaton wrote: > | AC_LANG_PUSH(Fortran 77) > | AC_TRY_LINK([],[],[]) > | AC_LANG_POP(Fortran 77) ... > | devzero:449> autoconf foo.in > foo.out > | foo.in:4: warning: AC_LANG_PROGRAM(Fortran): ignoring PROLOGUE: [] > | autoconf/lang.m4:224: AC_LANG_SOURCE is expanded from... > | The INCLUDES argument ($1) of AC_TRY_LINK is empty, so I don't think I Yes, but because AC_TRY_LINK double-quotes it's argument, it becomes "[]", ie. a nonempty argument consisting of a pair of quotes. This pair of quotes is removed only at the end of the expansion. > m4_define([AC_LANG_PROGRAM(Fortran 77)], > -[m4_ifval([$1], > +[m4_ifval($1, > [m4_warn([syntax], [$0: ignoring PROLOGUE: $1])])dnl No, this is wrong solution. You could use m4_if([$1], [], [], [$1], [[]], [], [m4_warn([syntax], [$0: ignoring PROLOGUE: $1])])dnl to catch both cases. Bot that's not the way to go. The root of all evil is the obsolete AC_TRY_LINK macro. Use the newer macros, which don't double-quote: AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])], [ACTION-IF-TRUE], [ACTION-IF-FALSE]) HTH, Stepan Kasal _______________________________________________ Autoconf mailing list Autoconf@xxxxxxx http://lists.gnu.org/mailman/listinfo/autoconf