autoconf-patches
[Top][All Lists]
Advanced

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

Re: Autoconf 2.57d instability


From: Akim Demaille
Subject: Re: Autoconf 2.57d instability
Date: Sun, 28 Sep 2003 19:44:16 +0200 (CEST)

Eric Sunshine a dit:

> On Sun, 28 Sep 2003 11:58:54 +0200 (CEST), Akim Demaille wrote:
>> Could you make the test case smaller?  Are you sure all the tests were
>> run with the modified m4?
>
> I was able to narrow down the "failed with exit status: 139" error to the
> following tiny case:
>
> AC_INIT([crystal], [1], [someone])
> AC_ARG_ENABLE([cpu-specific-optimizations],
>     [AC_HELP_STRING([--enable-cpu-specific-optimizations=level],
>       [enable CPU-specific optimizations; recognized levels are no,
>       minimum or min, maximum or max default MINIMUM; the minimum
>       one processor will not work with earlier processors for example, Intel
>       686-specific code will not work with a 586])],
>     [], [])
> AC_OUTPUT

I managed to make it even smaller, and I can now explain why the behavior
depends upon the arch.  Running the following:

m4 <<\EOF
changequote([, ])
format([  %-23s ],
       [[--enable-cpu-specific-optimizations=level],[enable CPU-specific
optimizations; recognized levels are no,
        minimum or min, maximum or max default MINIMUM; the minimum
        one processor will not work with earlier processors for example,
Intel
        686-specific code will not work with a 586]])
EOF

gives a SEGV on Darwin, while on Debian GNU/Linux, I have the expected
output.  But the implementation of format depends upon the arch: there
are two available.  One when #ifdef HAVE_EFGCVT (my case), and the other
if not.

I'm not fond of fixing this issue which is addressed in newer M4.  But
at least we learned a lot about this issue, and we can document it.
Anyway, people are very unlikely to find it again, now that AC_HELP_STRING
is fixed.

Thanks a lot!




reply via email to

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