> m4_defun([a],[A])
> m4_defun([b],[m4_require([a])B])
> m4_defun([c],[a
> b])

I still think that c should require both a and b, IOW all zero-argument
macros should be designed so that they can be required, but that's a way
more radical change.  Maybe another warning, enabled only with a more
specific option, would be a good idea.

> is rather common (autoconf, automake, and gnulib all triggered it, and gnulib 
> in multiple places), but is also harmless (you can't get out-of-order 
> expansion 
> from an ac_require until you have _nested_ ac_require).  So I reworked my 
> patch 
> to recognize this case and avoid treating it as a false positive,

Both patches look like the correct approach; can you add a couple of
lines to the documentation of the require mechanism in m4sugar.m4?

Paolo


Reply via email to