Eric Blake wrote:
> >   m4_define([m4_defun_once], [dnl
> >   m4_defun([_$0_$1], [$2])dnl
> >   m4_defun([$1], [m4_require([_$0_$1])])
> 
> I like this idea.  ... I don't think we need
> AC_DEFUN_IDEMPOTENT; rather, we just make AC_DEFUN_ONCE the single macro
> that is the user's way to declare that a macro body is only needed once.

I find this m4_defun_once interesting too: it incorporates the workaround
that we previously used in gnulib.

But before you jump to the conclusion that AC_DEFUN_IDEMPOTENT is not
needed any more, can you please tell:
  - Can a macro defined with AC_DEFUN_ONCE be both required and invoked?
  - Is a warning issued when an AC_DEFUN_ONCEd macro is expanded twice?
  - Is a warning issued when an AC_DEFUN_ONCEd macro is being required
    after having already been expanded?

Bruno


Reply via email to