(_AC_REQUIRE): Use AC_FATAL.
+2000-10-17 Akim Demaille <akim@epita.fr>
+
+ * acgeneral.m4 (AC_FATAL): Use _AC_EXPANSION_STACK_DUMP.
+ (_AC_REQUIRE): Use AC_FATAL.
+
2000-10-17 Akim Demaille <akim@epita.fr>
Give a means to report where the macros have been defined in error
configure to adapt for packages not using autoconf on case-insensitive
filesystems.
+- Diagnostics
+ More errors are now caught (circular AC_REQUIRE dependencies,
+ AC_DEFINE in the action part of an AC_CACHE_CHECK, too many pops
+ etc.). In addition, their location and call stack are given.
+
** autoupdate
autoupdate is much more powerful, and is able to provide the glue code
which might be needed to move from an old macro to its newer
* Autoconf 2.50
-** mktests.sh
-It should be adjusted so that when someone runs it with a failing
-egrep, the output files are touch'ed.
-
** AC_EXEEXT, AC_OBJEXT
We need a good implementation. As much as possible, they should not
depend upon AC_EMXOS2 etc.
-** More tests
-Check that AC_REQUIRE circular dependencies are caught.
-
-** _AC_EXPANSION_STACK_DUMP
-Where ever AC_FATAL is used, we should call _AC_EXPANSION_STACK_DUMP.
-Try to see if we can use __FILE__ and __LINE__ in the stack: this
-would provide much more accurate error messages (but it might be
-costly...).
-
** --target & AC_ARG_PROGRAM
Shouldn't *any* `program' be installed as `$target_alias-program' even
if AC_ARG_PROGRAM is not called? That would be much more predictable.
[pushdef([_AC_EXPANSION_STACK],
m4_location[: $1 is required by...])dnl
ifdef([_AC_EXPANDING($1)],
- [m4_diagnose([AC_REQUIRE: circular dependency of $1])dnl
-_AC_EXPANSION_STACK_DUMP()dnl
-m4exit(1)])dnl
+ [AC_FATAL([AC_REQUIRE: circular dependency of $1])])dnl
ifndef([_AC_DIVERT_DUMP],
[AC_FATAL([AC_REQUIRE: cannot be used outside of an AC_DEFUN'd macro])])dnl
AC_PROVIDE_IFELSE([$1],
# AC_FATAL(MESSAGE, [EXIT-STATUS])
# --------------------------------
-define([AC_FATAL], [m4_fatal([$1], [$2])])
+define([AC_FATAL],
+[m4_diagnose([$1])
+_AC_EXPANSION_STACK_DUMP()
+m4exit(m4_default([$2], [1]))])
[pushdef([_AC_EXPANSION_STACK],
m4_location[: $1 is required by...])dnl
ifdef([_AC_EXPANDING($1)],
- [m4_diagnose([AC_REQUIRE: circular dependency of $1])dnl
-_AC_EXPANSION_STACK_DUMP()dnl
-m4exit(1)])dnl
+ [AC_FATAL([AC_REQUIRE: circular dependency of $1])])dnl
ifndef([_AC_DIVERT_DUMP],
[AC_FATAL([AC_REQUIRE: cannot be used outside of an AC_DEFUN'd macro])])dnl
AC_PROVIDE_IFELSE([$1],
# AC_FATAL(MESSAGE, [EXIT-STATUS])
# --------------------------------
-define([AC_FATAL], [m4_fatal([$1], [$2])])
+define([AC_FATAL],
+[m4_diagnose([$1])
+_AC_EXPANSION_STACK_DUMP()
+m4exit(m4_default([$2], [1]))])
AT_CHECK_MACRO([AC_ARG_PROGRAM])
AT_CHECK_MACRO([AC_ARG_WITH])
AT_CHECK_MACRO([AC_CANONICAL_TARGET])
-AT_CHECK_MACRO([AC_CHECK_TOOL_PREFIX])
-AT_CHECK_MACRO([AC_COMPILE_CHECK])
AT_CHECK_MACRO([AC_C_BIGENDIAN])
AT_CHECK_MACRO([AC_C_CHAR_UNSIGNED])
AT_CHECK_MACRO([AC_C_CROSS])
+AT_CHECK_MACRO([AC_CHECK_TOOL_PREFIX])
AT_CHECK_MACRO([AC_C_LONG_DOUBLE])
+AT_CHECK_MACRO([AC_COMPILE_CHECK])
AT_CHECK_MACRO([AC_C_PROTOTYPES])
AT_CHECK_MACRO([AC_C_STRINGIZE])
AT_CHECK_MACRO([AC_DECL_SYS_SIGLIST])