Commit 96b3c82d by Cesar Philippidis Committed by Cesar Philippidis

c-parser.c (c_parser_oacc_loop): Update cclauses and clauses when calling c_finish_omp_clauses.

	gcc/c/
	* c-parser.c (c_parser_oacc_loop): Update cclauses and clauses
	when calling c_finish_omp_clauses.

	gcc/cp/
	* parser.c (cp_parser_oacc_loop): Update cclauses and clauses
	when calling c_finish_omp_clauses.

	gcc/testsuite/
	* c-c++-common/goacc/combined-directives-2.c: New test.

From-SVN: r234089
parent b4f3232d
2016-03-09 Cesar Philippidis <cesar@codesourcery.com>
* c-parser.c (c_parser_oacc_loop): Update cclauses and clauses
when calling c_finish_omp_clauses.
2016-03-04 Bernd Schmidt <bschmidt@redhat.com>
PR c/69824
......
......@@ -13789,9 +13789,9 @@ c_parser_oacc_loop (location_t loc, c_parser *parser, char *p_name,
{
clauses = c_oacc_split_loop_clauses (clauses, cclauses);
if (*cclauses)
c_finish_omp_clauses (*cclauses, false);
*cclauses = c_finish_omp_clauses (*cclauses, false);
if (clauses)
c_finish_omp_clauses (clauses, false);
clauses = c_finish_omp_clauses (clauses, false);
}
tree block = c_begin_compound_stmt (true);
......
2016-03-09 Cesar Philippidis <cesar@codesourcery.com>
* parser.c (cp_parser_oacc_loop): Update cclauses and clauses
when calling c_finish_omp_clauses.
2016-03-08 Jason Merrill <jason@redhat.com>
* parser.c (cp_parser_diagnose_invalid_type_name): Give helpful
......
......@@ -35346,9 +35346,9 @@ cp_parser_oacc_loop (cp_parser *parser, cp_token *pragma_tok, char *p_name,
{
clauses = c_oacc_split_loop_clauses (clauses, cclauses);
if (*cclauses)
finish_omp_clauses (*cclauses, false);
*cclauses = finish_omp_clauses (*cclauses, false);
if (clauses)
finish_omp_clauses (clauses, false);
clauses = finish_omp_clauses (clauses, false);
}
tree block = begin_omp_structured_block ();
2016-03-09 Cesar Philippidis <cesar@codesourcery.com>
* c-c++-common/goacc/combined-directives-2.c: New test.
2016-03-09 David Malcolm <dmalcolm@redhat.com>
PR c/68473
......
/* Ensure that bogus clauses aren't propagated in combined loop
constructs. */
int
main ()
{
int a, i;
#pragma acc parallel loop vector copy(a[0:100]) reduction(+:a) /* { dg-error "'a' does not have pointer or array type" } */
for (i = 0; i < 100; i++)
a++;
return a;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment