public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/114691] New: [11/12/13/14 Regression] Bogus ignoring loop annotation warning
@ 2024-04-11 10:08 jakub at gcc dot gnu.org
2024-04-11 10:09 ` [Bug c++/114691] " jakub at gcc dot gnu.org
` (5 more replies)
0 siblings, 6 replies; 7+ messages in thread
From: jakub at gcc dot gnu.org @ 2024-04-11 10:08 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114691
Bug ID: 114691
Summary: [11/12/13/14 Regression] Bogus ignoring loop
annotation warning
Product: gcc
Version: 14.0
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: jakub at gcc dot gnu.org
CC: jakub at gcc dot gnu.org, jason at gcc dot gnu.org,
pinskia at gcc dot gnu.org, ppalka at gcc dot gnu.org,
sjames at gcc dot gnu.org, webrown.cpp at gmail dot com
Depends on: 114409
Target Milestone: ---
+++ This bug was initially created as a clone of Bug #114409 +++
As the PR114409 initially reported P1 bug is now fixed, I'm cloning it for the
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114409#c10 regression.
int foo (int);
void
qux (int x)
{
#pragma GCC ivdep
while (int y = foo (x))
++y;
}
With no options this didn't emit any warnings e.g. in r200000 (i.e. in GCC
4.9), while
it emits
pr114409-2.C:7:24: warning: ignoring loop annotation
warning in r220000 (i.e. in GCC 5+).
Can't bisect easily, because in various revisions in between it ICEs on
ANNOTATE_EXPR.
Referenced Bugs:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114409
[Bug 114409] [14 Regression] ICE after adding novector pragmas (internal
compiler error: in tsubst_expr, at cp/pt.cc:21794) since
r14-4229-g9c62af101e11e1cce573c2b3d2e18b403412dbc8
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug c++/114691] [11/12/13/14 Regression] Bogus ignoring loop annotation warning
2024-04-11 10:08 [Bug c++/114691] New: [11/12/13/14 Regression] Bogus ignoring loop annotation warning jakub at gcc dot gnu.org
@ 2024-04-11 10:09 ` jakub at gcc dot gnu.org
2024-04-11 10:11 ` jakub at gcc dot gnu.org
` (4 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: jakub at gcc dot gnu.org @ 2024-04-11 10:09 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114691
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |ASSIGNED
Priority|P3 |P2
Ever confirmed|0 |1
Last reconfirmed| |2024-04-11
Assignee|unassigned at gcc dot gnu.org |jakub at gcc dot gnu.org
Target Milestone|--- |11.5
--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114409#c11
contains the fix which has been posted to gcc-patches but not reviewed yet.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug c++/114691] [11/12/13/14 Regression] Bogus ignoring loop annotation warning
2024-04-11 10:08 [Bug c++/114691] New: [11/12/13/14 Regression] Bogus ignoring loop annotation warning jakub at gcc dot gnu.org
2024-04-11 10:09 ` [Bug c++/114691] " jakub at gcc dot gnu.org
@ 2024-04-11 10:11 ` jakub at gcc dot gnu.org
2024-04-12 18:55 ` cvs-commit at gcc dot gnu.org
` (3 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: jakub at gcc dot gnu.org @ 2024-04-11 10:11 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114691
Bug 114691 depends on bug 114409, which changed state.
Bug 114409 Summary: [14 Regression] ICE after adding novector pragmas (internal compiler error: in tsubst_expr, at cp/pt.cc:21794) since r14-4229-g9c62af101e11e1cce573c2b3d2e18b403412dbc8
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114409
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution|--- |FIXED
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug c++/114691] [11/12/13/14 Regression] Bogus ignoring loop annotation warning
2024-04-11 10:08 [Bug c++/114691] New: [11/12/13/14 Regression] Bogus ignoring loop annotation warning jakub at gcc dot gnu.org
2024-04-11 10:09 ` [Bug c++/114691] " jakub at gcc dot gnu.org
2024-04-11 10:11 ` jakub at gcc dot gnu.org
@ 2024-04-12 18:55 ` cvs-commit at gcc dot gnu.org
2024-04-12 18:55 ` [Bug c++/114691] [11/12/13 " jakub at gcc dot gnu.org
` (2 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2024-04-12 18:55 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114691
--- Comment #2 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <jakub@gcc.gnu.org>:
https://gcc.gnu.org/g:91146346f57cc54dfeb2669347edd0eb3d13af7f
commit r14-9944-g91146346f57cc54dfeb2669347edd0eb3d13af7f
Author: Jakub Jelinek <jakub@redhat.com>
Date: Fri Apr 12 20:53:10 2024 +0200
c++: Fix bogus warnings about ignored annotations [PR114691]
The middle-end warns about the ANNOTATE_EXPR added for while/for loops
if they declare a var inside of the loop condition.
This is because the assumption is that ANNOTATE_EXPR argument is used
immediately in a COND_EXPR (later GIMPLE_COND), but simplify_loop_decl_cond
wraps the ANNOTATE_EXPR inside of a TRUTH_NOT_EXPR, so it no longer
holds.
The following patch fixes that by adding the TRUTH_NOT_EXPR inside of the
ANNOTATE_EXPR argument if any.
2024-04-12 Jakub Jelinek <jakub@redhat.com>
PR c++/114691
* semantics.cc (simplify_loop_decl_cond): Use cp_build_unary_op
with
TRUTH_NOT_EXPR on ANNOTATE_EXPR argument (if any) rather than
ANNOTATE_EXPR itself.
* g++.dg/ext/pr114691.C: New test.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug c++/114691] [11/12/13 Regression] Bogus ignoring loop annotation warning
2024-04-11 10:08 [Bug c++/114691] New: [11/12/13/14 Regression] Bogus ignoring loop annotation warning jakub at gcc dot gnu.org
` (2 preceding siblings ...)
2024-04-12 18:55 ` cvs-commit at gcc dot gnu.org
@ 2024-04-12 18:55 ` jakub at gcc dot gnu.org
2024-04-21 4:09 ` cvs-commit at gcc dot gnu.org
2024-04-23 6:44 ` [Bug c++/114691] [11/12 " jakub at gcc dot gnu.org
5 siblings, 0 replies; 7+ messages in thread
From: jakub at gcc dot gnu.org @ 2024-04-12 18:55 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114691
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|[11/12/13/14 Regression] |[11/12/13 Regression] Bogus
|Bogus ignoring loop |ignoring loop annotation
|annotation warning |warning
--- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Fixed on the trunk so far.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug c++/114691] [11/12/13 Regression] Bogus ignoring loop annotation warning
2024-04-11 10:08 [Bug c++/114691] New: [11/12/13/14 Regression] Bogus ignoring loop annotation warning jakub at gcc dot gnu.org
` (3 preceding siblings ...)
2024-04-12 18:55 ` [Bug c++/114691] [11/12/13 " jakub at gcc dot gnu.org
@ 2024-04-21 4:09 ` cvs-commit at gcc dot gnu.org
2024-04-23 6:44 ` [Bug c++/114691] [11/12 " jakub at gcc dot gnu.org
5 siblings, 0 replies; 7+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2024-04-21 4:09 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114691
--- Comment #4 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-13 branch has been updated by Jakub Jelinek
<jakub@gcc.gnu.org>:
https://gcc.gnu.org/g:ed7be7ba6f125cfda7ad07263213cbe02b7e7ced
commit r13-8632-ged7be7ba6f125cfda7ad07263213cbe02b7e7ced
Author: Jakub Jelinek <jakub@redhat.com>
Date: Fri Apr 12 20:53:10 2024 +0200
c++: Fix bogus warnings about ignored annotations [PR114691]
The middle-end warns about the ANNOTATE_EXPR added for while/for loops
if they declare a var inside of the loop condition.
This is because the assumption is that ANNOTATE_EXPR argument is used
immediately in a COND_EXPR (later GIMPLE_COND), but simplify_loop_decl_cond
wraps the ANNOTATE_EXPR inside of a TRUTH_NOT_EXPR, so it no longer
holds.
The following patch fixes that by adding the TRUTH_NOT_EXPR inside of the
ANNOTATE_EXPR argument if any.
2024-04-12 Jakub Jelinek <jakub@redhat.com>
PR c++/114691
* semantics.cc (simplify_loop_decl_cond): Use cp_build_unary_op
with
TRUTH_NOT_EXPR on ANNOTATE_EXPR argument (if any) rather than
ANNOTATE_EXPR itself.
* g++.dg/ext/pr114691.C: New test.
(cherry picked from commit 91146346f57cc54dfeb2669347edd0eb3d13af7f)
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug c++/114691] [11/12 Regression] Bogus ignoring loop annotation warning
2024-04-11 10:08 [Bug c++/114691] New: [11/12/13/14 Regression] Bogus ignoring loop annotation warning jakub at gcc dot gnu.org
` (4 preceding siblings ...)
2024-04-21 4:09 ` cvs-commit at gcc dot gnu.org
@ 2024-04-23 6:44 ` jakub at gcc dot gnu.org
5 siblings, 0 replies; 7+ messages in thread
From: jakub at gcc dot gnu.org @ 2024-04-23 6:44 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114691
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|[11/12/13 Regression] Bogus |[11/12 Regression] Bogus
|ignoring loop annotation |ignoring loop annotation
|warning |warning
--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Fixed for 13.3 too.
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2024-04-23 6:44 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-04-11 10:08 [Bug c++/114691] New: [11/12/13/14 Regression] Bogus ignoring loop annotation warning jakub at gcc dot gnu.org
2024-04-11 10:09 ` [Bug c++/114691] " jakub at gcc dot gnu.org
2024-04-11 10:11 ` jakub at gcc dot gnu.org
2024-04-12 18:55 ` cvs-commit at gcc dot gnu.org
2024-04-12 18:55 ` [Bug c++/114691] [11/12/13 " jakub at gcc dot gnu.org
2024-04-21 4:09 ` cvs-commit at gcc dot gnu.org
2024-04-23 6:44 ` [Bug c++/114691] [11/12 " 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).