]> git.ipfire.org Git - thirdparty/autoconf.git/commitdiff
* doc/autoconf.texi (Generating Sources): AC_LANG_PROGRAMS ->
authorPaul Eggert <eggert@cs.ucla.edu>
Wed, 19 Oct 2005 22:35:51 +0000 (22:35 +0000)
committerPaul Eggert <eggert@cs.ucla.edu>
Wed, 19 Oct 2005 22:35:51 +0000 (22:35 +0000)
AC_LANG_PROGRAM, fixing a typo.  Don't give details about
the inner workings of AC_LANG_FUNC_LINK_TRY.
* lib/autoconf/c.m4 (AC_LANG_CALL(C)): Reformat to match
AC_LANG_FUNC_LINK_TRY.  This involves returning the value returned
by the function rather than ignoring it.
(AC_LANG_FUNC_LINK_TRY(C)): Call the function rather than simply
comparing its address.  Intel's interprocedural optimization was
outsmarting the old heuristic.  Problem reported by
Mikulas Patocka.

ChangeLog
doc/autoconf.texi
lib/autoconf/c.m4

index bfbc579a0aa1ca285fd6c9d3c7be96165bd94577..c3c63436eaea78d06a2ad40f4863bda8fb2cb4dd 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,16 @@
+2005-10-19  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * doc/autoconf.texi (Generating Sources): AC_LANG_PROGRAMS ->
+       AC_LANG_PROGRAM, fixing a typo.  Don't give details about
+       the inner workings of AC_LANG_FUNC_LINK_TRY.
+       * lib/autoconf/c.m4 (AC_LANG_CALL(C)): Reformat to match
+       AC_LANG_FUNC_LINK_TRY.  This involves returning the value returned
+       by the function rather than ignoring it.
+       (AC_LANG_FUNC_LINK_TRY(C)): Call the function rather than simply
+       comparing its address.  Intel's interprocedural optimization was
+       outsmarting the old heuristic.  Problem reported by
+       Mikulas Patocka.
+
 2005-10-19  Stepan Kasal  <kasal@ucw.cz>
 
        * lib/autoconf/general.m4 (AC_SUBST): Remove an obsolete comment.
@@ -15,7 +28,7 @@
 2005-10-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
            Stepan Kasal  <kasal@ucw.cz>
 
-        * lib/autoconf/status.m4 (_AC_OUTPUT_SUBDIRS): Balance parentheses.
+       * lib/autoconf/status.m4 (_AC_OUTPUT_SUBDIRS): Balance parentheses.
        * lib/autotest/general.m4 (AT_INIT): If the test dir already exists,
        make its content writable before removing it.  Remove an errorneous
        comment from the end, where the logs of the failed tests are copied
        that AC_CONFIG_COMMANDS_PRE and AC_CONFIG_COMMANDS_POST are not
        ``Configuration Actions''; fix their index entries.
 
-        * lib/autotest/general.m4 (AT_INIT): Process multiple keywords
+       * lib/autotest/general.m4 (AT_INIT): Process multiple keywords
        options correctly.  Process N-M as M-N if M is smaller than N.
-        Process ranges correctly so that N-N will run only N.
+       Process ranges correctly so that N-N will run only N.
        Sort and uniquify the tests that will be run.  If there is more
        than one test, reinsert the banners for the tests.
-        * tests/autotest.at (Keywords): Unmark XFAIL.
+       * tests/autotest.at (Keywords): Unmark XFAIL.
 
 2005-08-23  Stepan Kasal  <kasal@ucw.cz>
 
        Reword to avoid some formatting glitches.
        * doc/installt.exi: Reword to avoid some formatting glitches.
 
-        * doc/autoconf.texi (Limitations of Builtins) <case>: Mention
-        Tru64 ksh pattern matching bug.  Reported against Libtool by
-        Albert Chin <libtool@mlists.thewrittenword.com> and
-        Nicolas Joly <njoly@pasteur.fr>.
+       * doc/autoconf.texi (Limitations of Builtins) <case>: Mention
+       Tru64 ksh pattern matching bug.  Reported against Libtool by
+       Albert Chin <libtool@mlists.thewrittenword.com> and
+       Nicolas Joly <njoly@pasteur.fr>.
 
 2005-06-06  Stepan Kasal  <kasal@ucw.cz>
 
        * lib/autotest/general.m4 (AT_INIT): Replace a `tr' with a `sed'.  Join
        PATH members so as to not prepend an empty element.  Move a comment.
        * Makefile.am (SUBDIRS): Build in `tests' last.
-        * tests/Makefile.am (installcheck-local): Add check-local dependencies.
+       * tests/Makefile.am (installcheck-local): Add check-local dependencies.
 
 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
 
index 09c1effbfbbf15c11b1ad0ad8f1e00c1772e4060..11a5a3982fbb8d8b41056551fb094da927f0452a 100644 (file)
@@ -2997,7 +2997,7 @@ breed: they are executed directly by @file{configure}, so you cannot use
 Execute the @var{cmds} right before creating @file{config.status}.
 
 This macro presents the last opportunity to call @code{AC_SUBST},
-@code{AC_DEFINE}, or @code{AC_CONFIG_FOOS} macros. 
+@code{AC_DEFINE}, or @code{AC_CONFIG_FOOS} macros.
 @end defmac
 
 @defmac AC_CONFIG_COMMANDS_POST (@var{cmds})
@@ -6921,7 +6921,7 @@ fputs (hw, stdout);
 @acindex{LANG_CALL}
 Expands into a source file which consists of the @var{prologue}, and
 then a call to the @var{function} as body of the main function (e.g.,
-@code{main} in C).  Since it uses @code{AC_LANG_PROGRAMS}, the feature
+@code{main} in C).  Since it uses @code{AC_LANG_PROGRAM}, the feature
 of the latter are available.
 
 This function will probably be replaced in the future by a version
@@ -6932,10 +6932,9 @@ not encouraged, as it violates strongly the typing system.
 
 @defmac AC_LANG_FUNC_LINK_TRY (@var{function})
 @acindex{LANG_FUNC_LINK_TRY}
-Expands into a source file which consists of a pseudo use of the
-@var{function} as body of the main function (e.g., @code{main} in C): a
-simple (function pointer) assignment.  Since it uses
-@code{AC_LANG_PROGRAMS}, the feature of the latter are available.
+Expands into a source file which uses the @var{function} in the body of
+the main function (e.g., @code{main} in C).  Since it uses
+@code{AC_LANG_PROGRAM}, the feature of the latter are available.
 
 As @code{AC_LANG_CALL}, this macro is documented only for completeness.
 It is considered to be severely broken, and in the future will be
index 3997a2e0817b88d8f1f7a600da1d988a47e31ec7..b440a6c46fb5c6fdce6cf6fc74a8c029fb2a69e6 100644 (file)
@@ -162,13 +162,13 @@ $2
 m4_define([AC_LANG_CALL(C)],
 [AC_LANG_PROGRAM([$1
 m4_if([$2], [main], ,
-[/* Override any gcc2 internal prototype to avoid an error.  */
+[/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
 #ifdef __cplusplus
 extern "C"
 #endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $2 ();])], [$2 ();])])
+char $2 ();])], [return $2 ();])])
 
 
 # AC_LANG_FUNC_LINK_TRY(C)(FUNCTION)
@@ -204,26 +204,20 @@ m4_define([AC_LANG_FUNC_LINK_TRY(C)],
 
 #undef $1
 
-/* Override any gcc2 internal prototype to avoid an error.  */
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
 #ifdef __cplusplus
 extern "C"
-{
 #endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
 char $1 ();
 /* The GNU C library defines this for functions which it implements
     to always fail with ENOSYS.  Some functions are actually named
     something starting with __ and the normal name is an alias.  */
 #if defined (__stub_$1) || defined (__stub___$1)
 choke me
-#else
-char (*f) () = $1;
-#endif
-#ifdef __cplusplus
-}
 #endif
-], [return f != $1;])])
+], [return $1 ();])])
 
 
 # AC_LANG_BOOL_COMPILE_TRY(C)(PROLOGUE, EXPRESSION)