The wording all looks clear, except: On 7/12/20 8:37 AM, Zack Weinberg wrote:
The only macros that are guaranteed *not* to use AC_REQUIRE are the macros for acting on the results of a test: AC_DEFINE, AC_SUBST, AC_MSG_*, AC_CACHE_CHECK, etc.
This sentence is too broad. It applies only to AC_* macros, and not to AS_IF etc. So I suggest changing "The only macros" to "The only AC_* macros".
Also, it's not clear to me which AC_* macros are safe from this brief description. For example, surely AC_CHECK_HEADERS is safe, but it both does a test and acts on the results of a test so is it OK? So more guidance is needed here.
Perhaps the documentation should list the safe macros, though of course this would be more work.