Paolo Bonzini <bonzini <at> gnu.org> writes: > "right" fix would be to make AS_REQUIRE as smart as AC_REQUIRE, but > do we really want that since this only applies to m4sh constructs > happening in _AS_*_PREPARE macros?
Nah - AS_REQUIRE is still undocumented, so I am okay with leaving it with the current state of manual topological sorting of the various requires within m4sh initialization. Besides, part of the smarts of AC_REQUIRE is that it requires reserved diversion slots prior to the current diversion; and at the moment, we have no gap between M4SH-SANITIZE, M4SH-INIT-FN, or M4SH-INIT. > > I'll push this in a hour or two. > > 2008-10-09 Paolo Bonzini <bonzini <at> gnu.org> > > * m4sugar/m4sh.m4 (_AS_BASENAME_EXPR, _AS_DIRNAME_EXPR): Do not > require _AS_EXPR_PREPARE. > (_AS_BASENAME_PREPARE, _AS_DIRNAME_PREPARE): Do it here. > (_AS_PREPARE): Add _AS_BASENAME_PREPARE. Looks correct to me - *EXPR are merely shortcuts for text that we want to output more than once, while it is the *PREPARE macros that are responsible for outputting the text in the correct location. Go ahead and apply. -- Eric Blake
