Skip to content
Snippets Groups Projects
Commit c0c7270c authored by Thomas Schwinge's avatar Thomas Schwinge
Browse files

Don't create location wrapper nodes within OpenACC clauses

This fixes a GCC 11, 10, 9 regression introduced by commit
dfd7fdca (Subversion r267272) "C++: more
location wrapper nodes (PR c++/43064, PR c++/43486)".  But: this isn't
intending to blame David, because back then, the problem hasn't been visible in
the testsuite (or else I'm sure would've been addressed right away) because of
our all dear friend: missing testsuite coverage.  Thus, for GCC 8, I'm likewise
enhancing the testsuite, without the C++ front end code changes.

I actually had presumed that there may be an issue for OpenACC:
<http://mid.mail-archive.com/874lb9qr2u.fsf@euler.schwinge.homeip.net

>, so here
we are, two years (and many "wasted" hours...) later...

	gcc/cp/
	* parser.c (cp_parser_omp_var_list_no_open): Assert that array
	section's 'low_bound', 'length' are not location wrapper nodes.
	(cp_parser_oacc_all_clauses, cp_parser_oacc_cache): Instantiate
	'auto_suppress_location_wrappers'.
	gcc/testsuite/
	* c-c++-common/goacc/cache-3-1.c: New.
	* c-c++-common/goacc/cache-3-2.c: Likewise.
	* c-c++-common/goacc/data-clause-1.c: Likewise.
	* c-c++-common/goacc/data-clause-2.c: Likewise.
	* c-c++-common/gomp/map-1.c: Adjust.
	* c-c++-common/gomp/map-2.c: Likewise.
	* g++.dg/goacc/cache-3-1.C: New.
	* g++.dg/goacc/cache-3-2.C: Likewise.
	* g++.dg/goacc/data-clause-1.C: Likewise.
	* g++.dg/goacc/data-clause-2.C: Likewise.
	* g++.dg/gomp/map-1.C: Adjust.
	* g++.dg/gomp/map-2.C: Likewise.

Reported-by: default avatarSandra Loosemore <sandra@codesourcery.com>
parent acdf30d6
No related branches found
No related tags found
Loading
Showing with 718 additions and 7 deletions
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment