Fix ambiguous 'else' [-Wparentheses]
Commit Message
Hi,
GCC trubnk fails to build glibc since revision r234949 which enhanced
-Wparentheses (to address
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70436). This simple
patch fixes the ambiguity. Tested with an x86_84 build configured
with --disable-werror and no warning emitted.
Thanks,
Yvan
2016-04-15 Yvan Roux <yvan.roux@linaro.org>
* stdlib/setenv.c (unsetenv): Fix ambiguous 'else'.
* nis/nis_call.c (nis_server_cache_add): Likewise.
Comments
On 04/15/2016 11:37 AM, Yvan Roux wrote:
> 2016-04-15 Yvan Roux<yvan.roux@linaro.org>
>
> * stdlib/setenv.c (unsetenv): Fix ambiguous 'else'.
> * nis/nis_call.c (nis_server_cache_add): Likewise.
Looks good to me (apart from the missing two spaces before the email
address). Can you commit this yourself?
Thanks,
Florian
Hi Florian
On 15 April 2016 at 12:15, Florian Weimer <fweimer@redhat.com> wrote:
> On 04/15/2016 11:37 AM, Yvan Roux wrote:
>>
>> 2016-04-15 Yvan Roux<yvan.roux@linaro.org>
>>
>> * stdlib/setenv.c (unsetenv): Fix ambiguous 'else'.
>> * nis/nis_call.c (nis_server_cache_add): Likewise.
>
>
> Looks good to me (apart from the missing two spaces before the email
> address). Can you commit this yourself?
Arrgh sorry copy/paste issue !
nope, I don't have the commit bit for glibc.
Cheers,
Yvan
On 04/15/2016 12:40 PM, Yvan Roux wrote:
> Hi Florian
>
> On 15 April 2016 at 12:15, Florian Weimer <fweimer@redhat.com> wrote:
>> On 04/15/2016 11:37 AM, Yvan Roux wrote:
>>>
>>> 2016-04-15 Yvan Roux<yvan.roux@linaro.org>
>>>
>>> * stdlib/setenv.c (unsetenv): Fix ambiguous 'else'.
>>> * nis/nis_call.c (nis_server_cache_add): Likewise.
>>
>>
>> Looks good to me (apart from the missing two spaces before the email
>> address). Can you commit this yourself?
>
> Arrgh sorry copy/paste issue !
>
> nope, I don't have the commit bit for glibc.
Okay, I have pushed this.
Thanks,
Florian
@@ -680,16 +680,18 @@ nis_server_cache_add (const_nis_name name, int search_parent,
/* Choose which entry should be evicted from the cache. */
loc = &nis_server_cache[0];
if (*loc != NULL)
- for (i = 1; i < 16; ++i)
- if (nis_server_cache[i] == NULL)
- {
+ {
+ for (i = 1; i < 16; ++i)
+ if (nis_server_cache[i] == NULL)
+ {
+ loc = &nis_server_cache[i];
+ break;
+ }
+ else if ((*loc)->uses > nis_server_cache[i]->uses
+ || ((*loc)->uses == nis_server_cache[i]->uses
+ && (*loc)->expires > nis_server_cache[i]->expires))
loc = &nis_server_cache[i];
- break;
- }
- else if ((*loc)->uses > nis_server_cache[i]->uses
- || ((*loc)->uses == nis_server_cache[i]->uses
- && (*loc)->expires > nis_server_cache[i]->expires))
- loc = &nis_server_cache[i];
+ }
old = *loc;
*loc = new;
@@ -278,18 +278,20 @@ unsetenv (const char *name)
ep = __environ;
if (ep != NULL)
while (*ep != NULL)
- if (!strncmp (*ep, name, len) && (*ep)[len] == '=')
- {
- /* Found it. Remove this pointer by moving later ones back. */
- char **dp = ep;
-
- do
- dp[0] = dp[1];
- while (*dp++);
- /* Continue the loop in case NAME appears again. */
- }
- else
- ++ep;
+ {
+ if (!strncmp (*ep, name, len) && (*ep)[len] == '=')
+ {
+ /* Found it. Remove this pointer by moving later ones back. */
+ char **dp = ep;
+
+ do
+ dp[0] = dp[1];
+ while (*dp++);
+ /* Continue the loop in case NAME appears again. */
+ }
+ else
+ ++ep;
+ }
UNLOCK;