+2008-11-17 Eric Blake <ebb9@byu.net>
+
+ Detect empty list in AS_FOR.
+ * lib/m4sugar/m4sh.m4 (AS_FOR): Handle iteration over $@
+ properly.
+ * tests/m4sh.at (AS@&t@_FOR): Enhance test to catch it.
+ Reported by Paolo Bonzini.
+
2008-11-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Use a different workaround for an automake quirk.
# substitution, shell quoting, globs, or quadrigraphs). Inline the
# m4_defn for speed.
m4_defun([AS_FOR],
-[m4_pushdef([$1], m4_if(m4_translit([$3], ]dnl
+[m4_pushdef([$1], m4_if([$3], [], [[$$2]], m4_translit([$3], ]dnl
m4_dquote(_m4_defn([m4_cr_symbols2]))[[%+=:,./-]), [], [[$3]], [[$$2]]))]dnl
[for $2[]m4_ifval([$3], [ in $3])
do
# Syntax checks: cope with empty arguments.
set f g
AS_FOR([], [shvar], [],
-[echo "$shvar"])
+[echo "m4_defn([]) $shvar"])
rm -f file
AS_FOR([], [shvar], [`touch file`])
test -f file || exit 1
d e d e
$list $list
' '
-f
-g
+f f
+g g
h
j
]])