| >>>>> Akim Demaille writes:
|
| > define(`count', `I have $# arguments')
|
| > count(a, b, c)dnl Hm, you should be three...
| > I have 3 argumentsdnl Hm, you should be three...
| > count(a, b, c)# Hm, you should be three...
| > I have 3 arguments# Hm, you should be three...
|
| Why would the "#"-style comment be any better than the "dnl" one? Both
| constructs will not work as expected:
|
| | simons@peti:/tmp$ echo test # comment
| | test
|
| But:
|
| | simons@peti:/tmp$ echo test# comment
| | test# comment
Yep, both constructs are wrong, definitely. I only saw this actually
happening with `dnl' but both would fail the same way. This point is
moot :)
Anyway, most of the usual to shoot in onés foot can be found with
both. For instance:
~ace % m4 nostromo 16:16
define(`dash', `# We remove $1
shift($@)')
define(`DNL', `dnl We remove $1
shift($@)')
dash(my
first arg, second, third)
# We remove my
first arg
second,third
DNL(my
first arg, second, third)
first arg
second,third
Well, it seems I can't convince you, and I won't fight for it :)