autoconf
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

justification for AC_LANG_ASSERT?


From: Steven G. Johnson
Subject: justification for AC_LANG_ASSERT?
Date: Mon, 10 Nov 2003 15:00:41 -0500
User-agent: Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.5) Gecko/20031007

In a discussion about the AC_FC_FREEFORM macro (which figures out how to enable freeform-source support for Fortran, if possible), Akim wrote:

Akim Demaille wrote:
I saw that you have wrapped many macros with AC_LANG_PUSH/POP.  I
don't think this is the right thing to do.  Rather, you should require
from the user to call these macros with the right current language.  I
have appended some notes about this in the documentation.
[...] Index: ChangeLog
from  Akim Demaille  <address@hidden>

        * tests/fortran.at (GNU Fortran 77): Don't run FC macros.
        (GNU Fortran): New.
        * doc/autoconf.texi (Language Choice): Document.
        * lib/autoconf/fortran.m4 (AC_FC_SRCEXT, AC_FC_FREEFORM): Assert
        the current language is Fortran.

I just got an email from a user complaining about this, that

AC_PROG_FC(f90)
AC_FC_SRCEXT(f90)

no longer works in his configure.ac, and on reflection I'm questioning the decision to use AC_LANG_ASSERT, and indeed its raison d'etre.

What is the point of this macro? Why would someone ever *not* want AC_FC_* to push Fortran itself? Haven't they effectively declared that they want to use Fortran simply by calling the macro...why force them to call two additional macros to say that they really mean it?

Can we revert to the previous behavior? (It won't break backwards compatibility, since people still *can* call AC_LANG_PUSH/POP.)

Moreover, why should any macro ever use AC_LANG_ASSERT rather than calling push/pop itself? I don't understand the philosophy here.

Steven





reply via email to

[Prev in Thread] Current Thread [Next in Thread]