Skip to content

Commit 082c09a

Browse files
kparzyszAnthony Tran
authored andcommitted
[OpenMP] Add directive spellings introduced in OpenMP 6.0 (llvm#141772)
For background information see https://discourse.llvm.org/t/rfc-alternative-spellings-of-openmp-directives/85507
1 parent a7c980a commit 082c09a

File tree

8 files changed

+274
-104
lines changed

8 files changed

+274
-104
lines changed

clang/test/OpenMP/declare_mapper_messages.c

Lines changed: 43 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
// RUN: %clang_cc1 -verify=omp50,expected -fopenmp -fopenmp-version=50 -ferror-limit 100 -DOMP50 %s
2-
// RUN: %clang_cc1 -verify=omp51,expected -fopenmp -ferror-limit 100 %s
3-
// RUN: %clang_cc1 -verify=expected,omp52 -fopenmp -fopenmp-version=52 -ferror-limit 100 -DOMP52 %s
4-
// RUN: %clang_cc1 -verify=expected,omp60 -fopenmp -fopenmp-version=60 -ferror-limit 100 -DOMP60 %s
1+
// RUN: %clang_cc1 -verify=omp50,omp5x,expected -fopenmp -fopenmp-version=50 -ferror-limit 100 -DOMP50 %s
2+
// RUN: %clang_cc1 -verify=omp51,omp5x,expected -fopenmp -ferror-limit 100 %s
3+
// RUN: %clang_cc1 -verify=expected,omp52,omp5x -fopenmp -fopenmp-version=52 -ferror-limit 100 -DOMP52 %s
4+
// RUN: %clang_cc1 -verify=expected,omp60,omp60-maybe-simd -fopenmp -fopenmp-version=60 -ferror-limit 100 -DOMP60 %s
55

6-
// RUN: %clang_cc1 -verify=omp50,expected -fopenmp-simd -fopenmp-version=50 -ferror-limit 100 -DOMP50 %s
7-
// RUN: %clang_cc1 -verify=omp51-simd,expected -fopenmp-simd -ferror-limit 100 %s
8-
// RUN: %clang_cc1 -verify=expected,omp52 -fopenmp-simd -fopenmp-version=52 -ferror-limit 100 -DOMP52 %s
9-
// RUN: %clang_cc1 -verify=expected,omp60-simd -fopenmp-simd -fopenmp-version=60 -ferror-limit 100 -DOMP60 %s
6+
// RUN: %clang_cc1 -verify=omp50,omp5x,expected -fopenmp-simd -fopenmp-version=50 -ferror-limit 100 -DOMP50 %s
7+
// RUN: %clang_cc1 -verify=omp51-simd,omp5x,expected -fopenmp-simd -ferror-limit 100 %s
8+
// RUN: %clang_cc1 -verify=expected,omp52,omp5x -fopenmp-simd -fopenmp-version=52 -ferror-limit 100 -DOMP52 %s
9+
// RUN: %clang_cc1 -verify=expected,omp60-simd,omp60-maybe-simd -fopenmp-simd -fopenmp-version=60 -ferror-limit 100 -DOMP60 %s
1010

1111
int temp; // expected-note {{'temp' declared here}}
1212

@@ -16,17 +16,38 @@ struct vec { // expec
1616
double *data;
1717
};
1818

19-
#pragma omp declare mapper // expected-error {{expected '(' after 'declare mapper'}}
20-
#pragma omp declare mapper { // expected-error {{expected '(' after 'declare mapper'}}
21-
#pragma omp declare mapper( // expected-error {{expected a type}} expected-error {{expected declarator on 'omp declare mapper' directive}}
22-
#pragma omp declare mapper(# // expected-error {{expected a type}} expected-error {{expected declarator on 'omp declare mapper' directive}}
23-
#pragma omp declare mapper(struct v // expected-error {{expected declarator on 'omp declare mapper' directive}}
24-
#pragma omp declare mapper(struct vec // expected-error {{expected declarator on 'omp declare mapper' directive}}
25-
#pragma omp declare mapper(S v // expected-error {{unknown type name 'S'}}
26-
#pragma omp declare mapper(struct vec v // expected-error {{expected ')'}} expected-note {{to match this '('}}
27-
#pragma omp declare mapper(aa:struct vec v) // expected-error {{expected at least one clause on '#pragma omp declare mapper' directive}}
28-
#pragma omp declare mapper(bb:struct vec v) private(v) // expected-error {{expected at least one clause on '#pragma omp declare mapper' directive}} // expected-error {{unexpected OpenMP clause 'private' in directive '#pragma omp declare mapper'}}
29-
#pragma omp declare mapper(cc:struct vec v) map(v) ( // expected-warning {{extra tokens at the end of '#pragma omp declare mapper' are ignored}}
19+
// omp60-maybe-simd-error@+2 {{expected '(' after 'declare_mapper'}}
20+
// omp5x-error@+1 {{expected '(' after 'declare mapper'}}
21+
#pragma omp declare mapper
22+
// omp60-maybe-simd-error@+2 {{expected '(' after 'declare_mapper'}}
23+
// omp5x-error@+1 {{expected '(' after 'declare mapper'}}
24+
#pragma omp declare mapper {
25+
// expected-error@+2 {{expected a type}}
26+
// expected-error@+1 {{expected declarator on 'omp declare mapper' directive}}
27+
#pragma omp declare mapper(
28+
// expected-error@+2 {{expected a type}}
29+
// expected-error@+1 {{expected declarator on 'omp declare mapper' directive}}
30+
#pragma omp declare mapper(#
31+
// expected-error@+1 {{expected declarator on 'omp declare mapper' directive}}
32+
#pragma omp declare mapper(struct v
33+
// expected-error@+1 {{expected declarator on 'omp declare mapper' directive}}
34+
#pragma omp declare mapper(struct vec
35+
// expected-error@+1 {{unknown type name 'S'}}
36+
#pragma omp declare mapper(S v
37+
// expected-error@+2 {{expected ')'}}
38+
// expected-note@+1 {{to match this '('}}
39+
#pragma omp declare mapper(struct vec v
40+
// omp60-maybe-simd-error@+2 {{expected at least one clause on '#pragma omp declare_mapper' directive}}
41+
// omp5x-error@+1 {{expected at least one clause on '#pragma omp declare mapper' directive}}
42+
#pragma omp declare mapper(aa:struct vec v)
43+
// omp60-maybe-simd-error@+4 {{expected at least one clause on '#pragma omp declare_mapper' directive}}
44+
// omp60-maybe-simd-error@+3 {{unexpected OpenMP clause 'private' in directive '#pragma omp declare_mapper'}}
45+
// omp5x-error@+2 {{expected at least one clause on '#pragma omp declare mapper' directive}}
46+
// omp5x-error@+1 {{unexpected OpenMP clause 'private' in directive '#pragma omp declare mapper'}}
47+
#pragma omp declare mapper(bb:struct vec v) private(v)
48+
// omp60-maybe-simd-warning@+2 {{extra tokens at the end of '#pragma omp declare_mapper' are ignored}}
49+
// omp5x-warning@+1 {{extra tokens at the end of '#pragma omp declare mapper' are ignored}}
50+
#pragma omp declare mapper(cc:struct vec v) map(v) (
3051

3152
#pragma omp declare mapper(++: struct vec v) map(v.len) // expected-error {{illegal OpenMP user-defined mapper identifier}}
3253
#pragma omp declare mapper(id1: struct vec v) map(v.len, temp) // expected-error {{only variable 'v' is allowed in map clauses of this 'omp declare mapper' directive}}
@@ -58,7 +79,9 @@ int fun(int arg) {
5879
#pragma omp declare mapper(id: struct vec v) map(v.len) // expected-note {{previous definition is here}}
5980
#pragma omp declare mapper(id: struct vec v) map(v.len) // expected-error {{redefinition of user-defined mapper for type 'struct vec' with name 'id'}}
6081
{
61-
#pragma omp declare mapper(id: struct vec v) map(v.len) allocate(v) // expected-error {{unexpected OpenMP clause 'allocate' in directive '#pragma omp declare mapper'}}
82+
// omp60-maybe-simd-error@+2 {{unexpected OpenMP clause 'allocate' in directive '#pragma omp declare_mapper'}}
83+
// omp5x-error@+1 {{unexpected OpenMP clause 'allocate' in directive '#pragma omp declare mapper'}}
84+
#pragma omp declare mapper(id: struct vec v) map(v.len) allocate(v)
6285
struct vec vv, v1;
6386
struct vec arr[10];
6487
double d;

0 commit comments

Comments
 (0)