GNU bug report logs -
#25740
Error reporting with confess mangles messages
Previous Next
Full log
Message #8 received at 25740 <at> debbugs.gnu.org (full text, mbox):
The symptoms are something like:
Use of uninitialized value $msg in concatenation (.) or string at /usr/local/Cellar/autoconf/2.69/bin/autom4te line 1032.
Use of uninitialized value $stacktrace in pattern match (m//) at /usr/local/Cellar/autoconf/2.69/bin/autom4te line 1032.
unknown channel m4trace: -1- AS_VAR_APPEND(ac_configure_args, " '$ac_arg'")
at /usr/local/Cellar/autoconf/2.69/share/autoconf/Autom4te/Channels.pm line 638.
Autom4te::Channels::msg('m4trace: -1- AS_VAR_APPEND(ac_configure_args, " \'$ac_arg\'")\x{a}', undef, 'warning: ', 'partial', 0) called at /usr/local/Cellar/autoconf/2.69/bin/autom4te line 1032
The root cause is m4 traces without a file/line number shown.
So instead of something like:
m4trace:configure.ac:48: -1- ...
you have something like:
m4trace: -1- ...
In the scenarios I ran into, this is due to some error that throws m4 out.
Eliminating these messages from the temporary m4 file being generated
(which will not complete anyway) is sufficient for the rest of autoconf
to complete, until it prints errors.
In my case, the final error looks like:
common/Makefile.am:20: error: Libtool library used but 'LIBTOOL' is undefined
common/Makefile.am:20: The usual way to define 'LIBTOOL' is to add 'LT_INIT'
common/Makefile.am:20: to 'configure.ac' and run 'aclocal' and 'autoconf' again.
common/Makefile.am:20: If 'LT_INIT' is in 'configure.ac', make sure
common/Makefile.am:20: its definition is in aclocal's search path.
autoreconf: automake failed with exit status: 1
But I've seen various reports for other root causes that ran into the same
problem (see bug report)
Signed-off-by: Christophe de Dinechin <dinechin <at> redhat.com>
---
bin/autom4te.in | 2 ++
1 file changed, 2 insertions(+)
diff --git a/bin/autom4te.in b/bin/autom4te.in
index 964ac1a..b3f3831 100644
--- a/bin/autom4te.in
+++ b/bin/autom4te.in
@@ -821,6 +821,8 @@ EOF
my $traces = new Autom4te::XFile ($tcache . $req->id, "<");
while ($_ = $traces->getline)
{
+ # Traces without file/line
+ next if (m{^m4trace: -(\d+)- ([^(]+)\((.*)$});
# Trace with arguments, as the example above. We don't try
# to match the trailing parenthesis as it might be on a
# separate line.
--
2.10.1 (Apple Git-78)
This bug report was last modified 4 years and 286 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.