Eric Blake wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
And so it begins. When compiling autoconf's tests/testsuite, we were
doing more than 7000 regex compilations just to determine the basename of
the current file; after this patch, only 24.
I'm getting something like
echo /../../teststools.at:72 >"$at_check_line_file"
now in the Autoconf testsuite file. I think it's you who I have to
blame. :-)
From the trace, I get
m4trace: -2- m4_bpatsubst(/../../tests/local.at, /\([^/]*\)$, [\1]) ->
/../../tests[local.at]
m4trace: -1- m4_define(_AT_LINE_base, /../../testslocal.at)
You probably wanted something like this:
diff --git a/lib/autotest/general.m4 b/lib/autotest/general.m4
index ac41c14..dfd098c 100644
--- a/lib/autotest/general.m4
+++ b/lib/autotest/general.m4
@@ -152,7 +152,7 @@ m4_define([AT_LINE],
[m4_if(m4_defn([_AT_LINE_file]), __file__, [],
[m4_do([m4_define([_AT_LINE_file], __file__)],
[m4_define([_AT_LINE_base],
- m4_bpatsubst(/__file__, [/\([^/]*\)$],
+ m4_bpatsubst(__file__, [^.*/\([^/]*\)$],
[[\1]]))])])dnl
m4_defn([_AT_LINE_base]):__line__])
Paolo