Hello,
when Dan Manthey was writing his ingenious implementation of multiline
substitutions, my pesky comments "what if the user does AC_SUBST(ac_delim)"
has made him to include a special check for this.
I deleted that check now. See the attached patch.
First, the check was buggy anyway: it contained s/ac_delim/ instead of
s/@ac_delim@/
Second, I think this check is making the code less readable.
It would be better to call
AC_FATAL([[Do not AC_SUBST([ac_delim]).]])
directly from AC_SUBST.
But I think the check is not necessary at all; ac_* variables are internal,
so you should not be surprised that things explode when you touch them.
Have a nice day,
Stepan
2006-03-17 Stepan Kasal <[EMAIL PROTECTED]>
* lib/autoconf/status.m4 (_AC_OUTPUT_FILES_PREPARE): Do not special
case `ac_delim' when writing the sed script.
Index: lib/autoconf/status.m4
===================================================================
RCS file: /cvsroot/autoconf/autoconf/lib/autoconf/status.m4,v
retrieving revision 1.86
diff -u -r1.86 status.m4
--- lib/autoconf/status.m4 6 Mar 2006 22:34:34 -0000 1.86
+++ lib/autoconf/status.m4 17 Mar 2006 15:50:48 -0000
@@ -386,14 +386,7 @@
for ac_last_try in false false false false false :; do
cat >conf$$subs.sed <<_ACEOF
])])dnl
-m4_if(_AC_Var, [ac_delim],
-[dnl Just to be on the safe side, claim that $ac_delim is the empty string.
-m4_define([_AC_SED_FRAG],
-m4_defn([_AC_SED_FRAG])dnl
-[s/ac_delim/|#_!!_#|/g
-])dnl
-m4_define([_AC_SED_CMD_NUM], m4_incr(_AC_SED_CMD_NUM))],
- _AC_Var, [EMAIL PROTECTED]@],
+m4_if(_AC_Var, [EMAIL PROTECTED]@],
[m4_if(m4_eval(_AC_SED_CMD_NUM + 2 <= _AC_SED_CMD_LIMIT), 1,
[m4_define([_AC_SED_FRAG], [ end]m4_defn([_AC_SED_FRAG]))])],
[m4_define([_AC_SED_CMD_NUM], m4_incr(_AC_SED_CMD_NUM))dnl