bug-gnulib
[Top][All Lists]
Advanced

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

Re: m4: use AC_SUBST with two arguments when applicable


From: Akim Demaille
Subject: Re: m4: use AC_SUBST with two arguments when applicable
Date: Sun, 10 May 2020 14:22:05 +0200

Hi Bruno,

> Le 10 mai 2020 à 14:17, Bruno Haible <address@hidden> a écrit :
> 
> Hi Akim,
> 
>> gl_SUBSTS([
>>  GNULIB_ISWBLANK=0
>>  GNULIB_ISWDIGIT=0
>>  GNULIB_ISWXDIGIT=0
>>  GNULIB_WCTYPE=0
>>  GNULIB_ISWCTYPE=0
>>  GNULIB_WCTRANS=0
>>  GNULIB_TOWCTRANS=0
>> ])
>> 
>> which does not, to my eyes, suffer from all the defects you see.
> 
> Yes, it does not degrade the ability to search for assignments.
> 
> But it goes against the general processing of Autoconf:
> 
> For an Autoconf macro, the input consists of identifier and shell statements.
> The output is shell, and the shell statements given as arguments appear
> in the output, unmodified except for m4 substitutions. Instead of a simple
> shell statement, I can always use a complex shell statement instead. E.g.
>  AM_CONDITIONAL([WINDOWS_NATIVE], [test $is_windows_native = yes])
> 
> gl_SUBSTS would analyze its shell statement arguments. Other Autoconf
> macros don't do this.

Some do.  AC_CHECK_MEMBER comes to my mind.

> It is not clear what would be the result of
>  gl_SUBSTS([
>    if test $use_ctype_modules = yes; then
>      GNULIB_ISBLANK=0
>    fi
>    if test $use_wctype_modules = yes; then
>      GNULIB_ISWBLANK=0
>    fi
>  ])

That would be ill-defined.  We could even make it a compile time error.


reply via email to

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