Module Name: src Committed By: rillig Date: Tue Oct 29 20:44:22 UTC 2024
Modified Files: src/tests/usr.bin/xlint/lint1: msg_129.c src/usr.bin/xlint/lint1: cgram.y Log Message: lint: fix warning about null effect in GCC statement expressions To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 src/tests/usr.bin/xlint/lint1/msg_129.c cvs rdiff -u -r1.512 -r1.513 src/usr.bin/xlint/lint1/cgram.y Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/tests/usr.bin/xlint/lint1/msg_129.c diff -u src/tests/usr.bin/xlint/lint1/msg_129.c:1.9 src/tests/usr.bin/xlint/lint1/msg_129.c:1.10 --- src/tests/usr.bin/xlint/lint1/msg_129.c:1.9 Tue Oct 29 20:39:52 2024 +++ src/tests/usr.bin/xlint/lint1/msg_129.c Tue Oct 29 20:44:22 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: msg_129.c,v 1.9 2024/10/29 20:39:52 rillig Exp $ */ +/* $NetBSD: msg_129.c,v 1.10 2024/10/29 20:44:22 rillig Exp $ */ # 3 "msg_129.c" // Test for message: expression has null effect [129] @@ -101,8 +101,6 @@ return_statement_expression(int arg) { ({ int local = arg; - /* XXX: redundant warning, also occurs outside the braces. */ - /* expect+1: warning: expression has null effect [129] */ local + 4; /* expect+1: warning: expression has null effect [129] */ }); @@ -110,16 +108,18 @@ return_statement_expression(int arg) if (arg == 1) return ({ int local = arg; - /* FIXME: The expression _does_ have an effect. */ - /* expect+1: warning: expression has null effect [129] */ + // Before cgram.y 1.513 from 2024-10-29, lint wrongly + // warned that this expression would have a null effect. local; }); + if (arg == 2) return ({ int local = arg; - /* FIXME: The expression _does_ have an effect. */ - /* expect+1: warning: expression has null effect [129] */ + // Before cgram.y 1.513 from 2024-10-29, lint wrongly + // warned that this expression would have a null effect. local + 4; }); + return 0; } Index: src/usr.bin/xlint/lint1/cgram.y diff -u src/usr.bin/xlint/lint1/cgram.y:1.512 src/usr.bin/xlint/lint1/cgram.y:1.513 --- src/usr.bin/xlint/lint1/cgram.y:1.512 Fri Oct 4 11:38:03 2024 +++ src/usr.bin/xlint/lint1/cgram.y Tue Oct 29 20:44:22 2024 @@ -1,5 +1,5 @@ %{ -/* $NetBSD: cgram.y,v 1.512 2024/10/04 11:38:03 rillig Exp $ */ +/* $NetBSD: cgram.y,v 1.513 2024/10/29 20:44:22 rillig Exp $ */ /* * Copyright (c) 1996 Christopher G. Demetriou. All Rights Reserved. @@ -35,7 +35,7 @@ #include <sys/cdefs.h> #if defined(__RCSID) -__RCSID("$NetBSD: cgram.y,v 1.512 2024/10/04 11:38:03 rillig Exp $"); +__RCSID("$NetBSD: cgram.y,v 1.513 2024/10/29 20:44:22 rillig Exp $"); #endif #include <limits.h> @@ -712,7 +712,7 @@ gcc_statement_expr_item: /* XXX: do that only on the last name */ if ($1->tn_op == NAME) $1->u.sym->s_used = true; - expr($1, false, false, false, false); + expr($1, true, false, false, false); suppress_fallthrough = false; $$ = $1; }