> I thought about that; it means m4_expand would be slower, and it will be > able to strip intentional newlines, but it would make m4_expand easier to > use in isolation. Maybe I go for m4_expand (current semantics, faster, > and only safe if input doesn't end in unquoted # or dnl) and m4_expand_s > (always safe, but slower and might strip trailing newlines provided by the > argument), to mirror m4_esyscmd/m4_esyscmd_s? On the other hand, the user > can supply @&t@ if that trailing newline is important, so maybe making > m4_expand always supply/strip an extra newline is the way to go?
I obviously prefer the latter... but why don't you instead simply make chomp delete only *one* newline? Paolo
