public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug analyzer/109131] New: -Wanalyzer-deref-before-check false positive seen in git's builtin/show-ref.c
@ 2023-03-14 19:30 dmalcolm at gcc dot gnu.org
2023-10-27 17:50 ` [Bug analyzer/109131] " alexey.lapshin at espressif dot com
` (4 more replies)
0 siblings, 5 replies; 6+ messages in thread
From: dmalcolm at gcc dot gnu.org @ 2023-03-14 19:30 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109131
Bug ID: 109131
Summary: -Wanalyzer-deref-before-check false positive seen in
git's builtin/show-ref.c
Product: gcc
Version: 13.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: analyzer
Assignee: dmalcolm at gcc dot gnu.org
Reporter: dmalcolm at gcc dot gnu.org
Target Milestone: ---
Created attachment 54664
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=54664&action=edit
Reduced reproducer
Trunk erroneously emits:
deref-before-check-git-show-ref.c: In function 'cmd_show_ref':
deref-before-check-git-show-ref.c:39:8: warning: check of 'argv' for NULL after
already dereferencing it [-Wanalyzer-deref-before-check]
39 | if (!pattern)
| ^
'cmd_show_ref': events 1-8
|
| 31 | if (exclude_arg)
| | ^
| | |
| | (1) following 'false' branch...
|......
| 34 | pattern = argv;
| | ~~~~~~~~~~~~~~
| | |
| | (2) ...to here
| 35 | if (!*pattern)
| | ~ ~~~~~~~~
| | | |
| | | (3) pointer 'argv' is dereferenced here
| | (4) following 'false' branch...
|......
| 38 | if (verify) {
| | ~~~~~~~
| | ||
| | |(5) ...to here
| | (6) following 'true' branch...
| 39 | if (!pattern)
| | ~~~~~~~~~
| | ||
| | |(7) ...to here
| | (8) pointer 'argv' is checked for NULL here but it was
already dereferenced at (3)
|
on the attached.
https://godbolt.org/z/oW4hvqx7K
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug analyzer/109131] -Wanalyzer-deref-before-check false positive seen in git's builtin/show-ref.c
2023-03-14 19:30 [Bug analyzer/109131] New: -Wanalyzer-deref-before-check false positive seen in git's builtin/show-ref.c dmalcolm at gcc dot gnu.org
@ 2023-10-27 17:50 ` alexey.lapshin at espressif dot com
2024-02-15 19:56 ` [Bug analyzer/109131] [13/14 Regression] " dmalcolm at gcc dot gnu.org
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: alexey.lapshin at espressif dot com @ 2023-10-27 17:50 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109131
Alexey <alexey.lapshin at espressif dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |alexey.lapshin at espressif dot co
| |m
--- Comment #1 from Alexey <alexey.lapshin at espressif dot com> ---
There is a smaller reproducer:
```
struct a {
int b;
};
void foo(struct a *p) {
if (p->b)
p = 0;
if (p && p->b) // "p" can be 0 but warning
;
}
```
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug analyzer/109131] [13/14 Regression] -Wanalyzer-deref-before-check false positive seen in git's builtin/show-ref.c
2023-03-14 19:30 [Bug analyzer/109131] New: -Wanalyzer-deref-before-check false positive seen in git's builtin/show-ref.c dmalcolm at gcc dot gnu.org
2023-10-27 17:50 ` [Bug analyzer/109131] " alexey.lapshin at espressif dot com
@ 2024-02-15 19:56 ` dmalcolm at gcc dot gnu.org
2024-03-04 13:00 ` rguenth at gcc dot gnu.org
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: dmalcolm at gcc dot gnu.org @ 2024-02-15 19:56 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109131
David Malcolm <dmalcolm at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Ever confirmed|0 |1
Status|UNCONFIRMED |NEW
Last reconfirmed| |2024-02-15
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug analyzer/109131] [13/14 Regression] -Wanalyzer-deref-before-check false positive seen in git's builtin/show-ref.c
2023-03-14 19:30 [Bug analyzer/109131] New: -Wanalyzer-deref-before-check false positive seen in git's builtin/show-ref.c dmalcolm at gcc dot gnu.org
2023-10-27 17:50 ` [Bug analyzer/109131] " alexey.lapshin at espressif dot com
2024-02-15 19:56 ` [Bug analyzer/109131] [13/14 Regression] " dmalcolm at gcc dot gnu.org
@ 2024-03-04 13:00 ` rguenth at gcc dot gnu.org
2024-03-08 15:38 ` law at gcc dot gnu.org
2024-05-21 9:14 ` [Bug analyzer/109131] [13/14/15 " jakub at gcc dot gnu.org
4 siblings, 0 replies; 6+ messages in thread
From: rguenth at gcc dot gnu.org @ 2024-03-04 13:00 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109131
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |13.3
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug analyzer/109131] [13/14 Regression] -Wanalyzer-deref-before-check false positive seen in git's builtin/show-ref.c
2023-03-14 19:30 [Bug analyzer/109131] New: -Wanalyzer-deref-before-check false positive seen in git's builtin/show-ref.c dmalcolm at gcc dot gnu.org
` (2 preceding siblings ...)
2024-03-04 13:00 ` rguenth at gcc dot gnu.org
@ 2024-03-08 15:38 ` law at gcc dot gnu.org
2024-05-21 9:14 ` [Bug analyzer/109131] [13/14/15 " jakub at gcc dot gnu.org
4 siblings, 0 replies; 6+ messages in thread
From: law at gcc dot gnu.org @ 2024-03-08 15:38 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109131
Jeffrey A. Law <law at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |law at gcc dot gnu.org
Priority|P3 |P2
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug analyzer/109131] [13/14/15 Regression] -Wanalyzer-deref-before-check false positive seen in git's builtin/show-ref.c
2023-03-14 19:30 [Bug analyzer/109131] New: -Wanalyzer-deref-before-check false positive seen in git's builtin/show-ref.c dmalcolm at gcc dot gnu.org
` (3 preceding siblings ...)
2024-03-08 15:38 ` law at gcc dot gnu.org
@ 2024-05-21 9:14 ` jakub at gcc dot gnu.org
4 siblings, 0 replies; 6+ messages in thread
From: jakub at gcc dot gnu.org @ 2024-05-21 9:14 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109131
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|13.3 |13.4
--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
GCC 13.3 is being released, retargeting bugs to GCC 13.4.
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2024-05-21 9:14 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-14 19:30 [Bug analyzer/109131] New: -Wanalyzer-deref-before-check false positive seen in git's builtin/show-ref.c dmalcolm at gcc dot gnu.org
2023-10-27 17:50 ` [Bug analyzer/109131] " alexey.lapshin at espressif dot com
2024-02-15 19:56 ` [Bug analyzer/109131] [13/14 Regression] " dmalcolm at gcc dot gnu.org
2024-03-04 13:00 ` rguenth at gcc dot gnu.org
2024-03-08 15:38 ` law at gcc dot gnu.org
2024-05-21 9:14 ` [Bug analyzer/109131] [13/14/15 " jakub at gcc dot gnu.org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).