Ralf Wildenhues <Ralf.Wildenhues <at> gmx.de> writes: > > * src/builtin.c (m4_undefine, m4_popdef): Add warning. > > * src/symtab.c (lookup_symbol): Distinguish when deletion occurred. > > * doc/m4.texinfo (Undefine, Pushdef): Document the warning. > > * NEWS: Document this change, along with a 1.4.x compatibility > > definition. > > Aren't those warnings forbidden by POSIX?
No more so than any other warnings spewed by m4. POSIX allows warnings as an extension, so think of the warnings as yet another GNU extension. If you truly want a POSIX environment, you should be running 'm4 -Q -G' (m4 2.0 will change to make these options default if POSIXLY_CORRECT is set; but in m4 1.4.x/1.6 you have to request POSIX mode). Plus, it makes m4 self-consistent. We have always been warning for the POSIX- specified dumpdef(oops) (at least as far back as 1.4.3, which was before I was maintainer); and the change on the master branch to add warnings was prior to m4 1.4o (also before my time). True, I'm not sure if autoconf is usable with m4 1.4o, but the intention has been there. Finally, there is the matter of my documentation on how to revert to the behavior, if popping undefined variables is truly desired. > > Anyway, current git Autoconf fails several tests with current branch-1.6 M4, > most look related to autoupdate. For example: > > +/home/ralf/local/bin/m4:/tmp/auJL1116/unm4.m4:2: Warning: _au__undefine: > undefined macro `' > +/home/ralf/local/bin/m4:/tmp/auJL1116/unm4.m4:2: Warning: _au__undefine: > undefined macro `builtin' Which test names? I'm looking into it now... > > I assume that 2.62 will fail, too, thus M4 needs fixed or it won't be > compatible with Autoconf 2.62. Hopefully, it is just an incomplete patch on the autoconf side (I already went through several drafts on the autoconf side, after noticing that one of my versions broke autoscan), and not a fundamental incompatibility between 1.6 and 2.62. -- Eric Blake _______________________________________________ M4-patches mailing list [email protected] http://lists.gnu.org/mailman/listinfo/m4-patches
