[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#22087: Problem with stdbuf configure test for 8.24 on Solaris with S
From: |
Eric Blake |
Subject: |
bug#22087: Problem with stdbuf configure test for 8.24 on Solaris with Studio C compiler. |
Date: |
Thu, 3 Dec 2015 14:07:22 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 |
On 12/03/2015 02:02 PM, Bob Proulx wrote:
> Paul Eggert wrote:
>> How about the attached (untested) patch instead? It should fix the
>> underlying problem, and thus avoid the need for fiddling with compiler
>> flags.
>
>> diff --git a/configure.ac b/configure.ac
>> index 66c8cbe..3f546e9 100644
>> --- a/configure.ac
>> +++ b/configure.ac
>> @@ -475,7 +475,8 @@ AC_LINK_IFELSE(
>> {
>> stdbuf = 1;
>> }]],[[
>> - return !(stdbuf == 1);]])
>> + if (stdbuf != 1)
>> + return 1;]])
>> ],
>> [stdbuf_supported=yes])
>> AC_MSG_RESULT([$stdbuf_supported])
>
> Fallthrough return 0?
Yes, autoconf's AC_LINK_IFELSE provides an automatic 'return 0;' after
anything you supply in your macro arguments, when it builds conftest.c.
> Or is a return 0 already defaulted? It stood
> out to me that the previous return was unconditional and without an
> else or a fallthrough this is a change from the previous control flow.
>
> - return !(stdbuf == 1);]])
> + if (stdbuf != 1)
> + return 1;
> + return 0;]])
Explicitly listing 'return 0;' here would result in a doubled-up return
0 in the overall conftest.c file.
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature