[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: FYI: Core dump :(
From: |
Akim Demaille |
Subject: |
Re: FYI: Core dump :( |
Date: |
15 Oct 2001 10:38:35 +0200 |
User-agent: |
Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.4 (Artificial Intelligence) |
>>>>> "Akim" == Akim Demaille <address@hidden> writes:
Akim> I don't get it. I no longer can see it. I wonder what has
Akim> changed in my env.
Arg... It seems that --disable-shared hides it. Or is it dmalloc? I
don't know. But CVS M4 with a plain ./configure, on the current CVS
Autoconf gives:
src/ace/tests % ./testsuite.058 -x nostromo 10:28
## ------------------------------ ##
## GNU Autoconf 2.52e test suite. ##
## ------------------------------ ##
58. acc.at:18: testing AC_LANG_CPLUSPLUS...
+ cat
+ set +vx
acc.at:18: autoconf --include=$srcdir
+ autoconf --include=.
--- /dev/null Fri Jun 15 10:16:37 2001
+++ at-stderr Mon Oct 15 10:29:08 2001
@@ -0,0 +1,2 @@
+Memory bounds violation detected (SIGSEGV). Either a stack overflow
+occurred, or there is a bug in /usr/local/bin/m4. Check for possible infinite
recursion.
acc.at:18: exit code was 1, expected 0
58. acc.at:18: FAILED near `acc.at:18'
src/ace/tests % cat configure.ac nostromo 10:29
AC_INIT
AC_CONFIG_AUX_DIR($top_srcdir/config)
AC_CONFIG_HEADER(config.h:config.hin)
AC_STATE_SAVE(before)
AC_LANG_CPLUSPLUS
AC_OUTPUT
AC_STATE_SAVE(after)
If you use autoconf -f -v, you learn that:
/usr/local/bin/m4 --nesting-limit=1024 --include=/usr/local/share/autoconf
--define=m4_warnings=syntax --debug=aflq
--error-output=autom4te.cachhe/traces.0 --trace=AC_CHECK_FUNCS
--trace=AC_CHECK_HEADERS --trace=AC_CHECK_LIB --trace=AC_CHECK_TYPES
--trace=AC_CONFIG_FILES --trace=AC_CONFIG_HEADERS --trace=AC_C_CONST
--trace=AC_C_INLINE --trace=AC_DECL_SYS_SIGLIST --trace=AC_DEFINE_TRACE_LITERAL
--trace=AC_FUNC_ALLOCA --trace=AC_FUNC_CHOWN --trace=AC_FUNC_ERROR_AT_LINE
--trace=AC_FUNC_FNMATCH --trace=AC_FUNC_FORK --trace=AC_FUNC_FSEEKO
--trace=AC_FUNC_GETGROUPS --trace=AC_FUNC_GETLOADAVG --trace=AC_FUNC_GETPGRP
--trace=AC_FUNC_LSTAT --trace=AC_FUNC_MALLOC --trace=AC_FUNC_MEMCMP
--trace=AC_FUNC_MKTIME --trace=AC_FUNC_MMAP --trace=AC_FUNC_OBSTACK
--trace=AC_FUNC_SETPGRP --trace=AC_FUNC_SETVBUF_REVERSED --trace=AC_FUNC_STAT
--trace=AC_FUNC_STRCOLL --trace=AC_FUNC_STRERROR_R --trace=AC_FUNC_STRFTIME
--trace=AC_FUNC_STRTOD --trace=AC_FUNC_UTIME_NULL --trace=AC_FUNC_VPRINTF
--trace=AC_FUNC_WAIT3 --trace=AC_HEADER_DIRENT --trace=AC_HEADER_MAJOR
--trace=AC_HEADER_STAT --trace=AC_HEADER_STDC --trace=AC_HEADER_SYS_WAIT
--trace=AC_HEADER_TIME --trace=AC_LIBSOURCE --trace=AC_PATH_X
--trace=AC_PROG_AWK --trace=AC_PROG_CC --trace=AC_PROG_CPP --trace=AC_PROG_CXX
--trace=AC_PROG_GCC_TRADITIONAL --trace=AC_PROG_INSTALL --trace=AC_PROG_LEX
--trace=AC_PROG_LIBTOOL --trace=AC_PROG_LN_S --trace=AC_PROG_MAKE_SET
--trace=AC_PROG_RANLIB --trace=AC_PROG_YACC --trace=AC_STRUCT_ST_BLOCKS
--trace=AC_STRUCT_TIMEZONE --trace=AC_STRUCT_TM --trace=AC_SUBST
--trace=AC_TYPE_MODE_T --trace=AC_TYPE_OFF_T --trace=AC_TYPE_PID_T
--trace=AC_TYPE_SIGNAL --trace=AC_TYPE_SIZE_T --trace=AC_TYPE_UID_T
--trace=AH_OUTPUT --trace=AM_CONDITIONAL --trace=AM_GNU_GETTEXT
--trace=AM_PROG_LIBTOOL --trace=include --trace=m4_include
--trace=m4_pattern_allow --trace=m4_pattern_forbid
--reload-state=/usr/local/share/autoconf/autoconf/autoconf.m4f aclocal.m4
configure.ac </dev/null >autom4te.cache/output.0
Memory bounds violation detected (SIGSEGV). Either a stack overflow
occurred, or there is a bug in /usr/local/bin/m4. Check for possible infinite
recursion.
autom4te: /usr/local/bin/m4 --nesting-limit=1024: failed with exit status: 139
if you remove the traces, it passes:
src/ace/tests % /usr/local/bin/m4 --nesting-limit=1024
--include=/usr/local/share/autoconf --define=m4_warnings=syntax --debug=aflq
--error-output=autom4te.cachhe/traces.0
--reload-state=/usr/local/share/autoconf/autoconf/autoconf.m4f aclocal.m4
configure.ac </dev/null >autom4te.cache/output.0
src/ace/tests % nostromo 10:31
Now for the bad news. Believe me or not, but if I try to remove *one*
--trace, I no longer observe the SEGV. I tried a few of them, and
each one simply ``fixed´´ the SEGV :(
src/ace/tests % gdb /usr/local/bin/m4 nostromo Err 1
GNU gdb 5.0
Copyright 2000 Free Software Foundation, Inc.
....
Program received signal SIGSEGV, Segmentation fault.
0x400397d5 in m4_symtab_hash () from /usr/local/lib/libm4.so.0
(gdb) l
No symbol table is loaded. Use the "file" command.
(gdb) where
#0 0x400397d5 in m4_symtab_hash () from /usr/local/lib/libm4.so.0
#1 0x4002b493 in m4_hash_lookup_node () from /usr/local/lib/libm4.so.0
#2 0x4002b43c in m4_hash_lookup () from /usr/local/lib/libm4.so.0
#3 0x4003979d in m4_symbol_destroy () from /usr/local/lib/libm4.so.0
#4 0x40039612 in m4_symtab_apply () from /usr/local/lib/libm4.so.0
#5 0x4003973c in m4_symtab_exit () from /usr/local/lib/libm4.so.0
#6 0x804abce in main ()
#7 0x4006c6ef in __libc_start_main () from /lib/libc.so.6