diff options
author | Alexey Bataev <a.bataev@hotmail.com> | 2017-07-20 16:47:47 +0000 |
---|---|---|
committer | Alexey Bataev <a.bataev@hotmail.com> | 2017-07-20 16:47:47 +0000 |
commit | 4d4624c20cd970ec4f4e5ecd9d90e51443e32c0e (patch) | |
tree | c5cea877e03ac1be73cdde9af18623fce2e74635 /clang/test | |
parent | 22058c3fbb6b0a0f04fdc2ba13a56022447109d0 (diff) | |
download | bcm5719-llvm-4d4624c20cd970ec4f4e5ecd9d90e51443e32c0e.tar.gz bcm5719-llvm-4d4624c20cd970ec4f4e5ecd9d90e51443e32c0e.zip |
[OPENMP] Fix DSA processing for member declaration.
If the member declaration is captured in the OMPCapturedExprDecl, we may
loose data-sharing attribute info for this declaration. Patch fixes this
bug.
llvm-svn: 308629
Diffstat (limited to 'clang/test')
52 files changed, 112 insertions, 106 deletions
diff --git a/clang/test/OpenMP/distribute_parallel_for_lastprivate_messages.cpp b/clang/test/OpenMP/distribute_parallel_for_lastprivate_messages.cpp index 745007fc48a..ebc7a666733 100644 --- a/clang/test/OpenMP/distribute_parallel_for_lastprivate_messages.cpp +++ b/clang/test/OpenMP/distribute_parallel_for_lastprivate_messages.cpp @@ -18,9 +18,9 @@ public: const S2 &operator =(const S2&) const; S2 &operator =(const S2&); static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/distribute_parallel_for_reduction_messages.cpp b/clang/test/OpenMP/distribute_parallel_for_reduction_messages.cpp index 95654a9e501..0bf1bc0472e 100644 --- a/clang/test/OpenMP/distribute_parallel_for_reduction_messages.cpp +++ b/clang/test/OpenMP/distribute_parallel_for_reduction_messages.cpp @@ -27,9 +27,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/distribute_parallel_for_simd_lastprivate_messages.cpp b/clang/test/OpenMP/distribute_parallel_for_simd_lastprivate_messages.cpp index 109fde0577c..e54089d3185 100644 --- a/clang/test/OpenMP/distribute_parallel_for_simd_lastprivate_messages.cpp +++ b/clang/test/OpenMP/distribute_parallel_for_simd_lastprivate_messages.cpp @@ -18,9 +18,9 @@ public: const S2 &operator =(const S2&) const; S2 &operator =(const S2&); static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/distribute_parallel_for_simd_reduction_messages.cpp b/clang/test/OpenMP/distribute_parallel_for_simd_reduction_messages.cpp index 6ad41d72bf7..94e4541b901 100644 --- a/clang/test/OpenMP/distribute_parallel_for_simd_reduction_messages.cpp +++ b/clang/test/OpenMP/distribute_parallel_for_simd_reduction_messages.cpp @@ -27,9 +27,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/distribute_simd_lastprivate_messages.cpp b/clang/test/OpenMP/distribute_simd_lastprivate_messages.cpp index 0f96cb4c3ec..a8914350bf5 100644 --- a/clang/test/OpenMP/distribute_simd_lastprivate_messages.cpp +++ b/clang/test/OpenMP/distribute_simd_lastprivate_messages.cpp @@ -18,9 +18,9 @@ public: const S2 &operator =(const S2&) const; S2 &operator =(const S2&); static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/distribute_simd_reduction_messages.cpp b/clang/test/OpenMP/distribute_simd_reduction_messages.cpp index fca3e85a710..ddedcb0892b 100644 --- a/clang/test/OpenMP/distribute_simd_reduction_messages.cpp +++ b/clang/test/OpenMP/distribute_simd_reduction_messages.cpp @@ -27,9 +27,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/dump.cpp b/clang/test/OpenMP/dump.cpp index 378b53ce5bf..5ec202cc304 100644 --- a/clang/test/OpenMP/dump.cpp +++ b/clang/test/OpenMP/dump.cpp @@ -52,11 +52,11 @@ struct S { // CHECK-NEXT: | |-OMPScheduleClause {{.+}} <col:61, col:79> // CHECK-NEXT: | | `-ImplicitCastExpr {{.+}} <col:78> 'int' <LValueToRValue> // CHECK-NEXT: | | `-DeclRefExpr {{.+}} <col:78> 'int' lvalue OMPCapturedExpr {{.+}} '.capture_expr.' 'int' -// CHECK-NEXT: | |-CapturedStmt {{.+}} <line:40:5, <invalid sloc>> +// CHECK-NEXT: | |-CapturedStmt {{.+}} <line:40:5, line:41:9> // CHECK-NEXT: | | |-CapturedDecl {{.+}} <<invalid sloc>> <invalid sloc> -// CHECK-NEXT: | | | |-ForStmt {{.+}} <col:5, <invalid sloc>> -// CHECK: | | | | `-UnaryOperator {{.+}} <line:41:7, <invalid sloc>> 'int' lvalue prefix '++' -// CHECK-NEXT: | | | | `-DeclRefExpr {{.+}} <<invalid sloc>> 'int' lvalue OMPCapturedExpr {{.+}} 'a' 'int &' +// CHECK-NEXT: | | | |-ForStmt {{.+}} <line:40:5, line:41:9> +// CHECK: | | | | `-UnaryOperator {{.+}} <line:41:7, col:9> 'int' lvalue prefix '++' +// CHECK-NEXT: | | | | `-DeclRefExpr {{.+}} <col:9> 'int' lvalue OMPCapturedExpr {{.+}} 'a' 'int &' #pragma omp declare simd #pragma omp declare simd inbranch diff --git a/clang/test/OpenMP/for_lastprivate_messages.cpp b/clang/test/OpenMP/for_lastprivate_messages.cpp index 79912b6efbc..13ef35e925a 100644 --- a/clang/test/OpenMP/for_lastprivate_messages.cpp +++ b/clang/test/OpenMP/for_lastprivate_messages.cpp @@ -18,9 +18,9 @@ public: const S2 &operator =(const S2&) const; S2 &operator =(const S2&); static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/for_reduction_messages.cpp b/clang/test/OpenMP/for_reduction_messages.cpp index bb70ecc2b23..d4f4a795fe2 100644 --- a/clang/test/OpenMP/for_reduction_messages.cpp +++ b/clang/test/OpenMP/for_reduction_messages.cpp @@ -26,9 +26,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/for_simd_lastprivate_messages.cpp b/clang/test/OpenMP/for_simd_lastprivate_messages.cpp index d48c07d92b3..a176a2d70eb 100644 --- a/clang/test/OpenMP/for_simd_lastprivate_messages.cpp +++ b/clang/test/OpenMP/for_simd_lastprivate_messages.cpp @@ -18,9 +18,9 @@ public: S2 &operator =(const S2&); const S2 &operator =(const S2&) const; static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/for_simd_reduction_messages.cpp b/clang/test/OpenMP/for_simd_reduction_messages.cpp index 485070e758a..a77ab754eff 100644 --- a/clang/test/OpenMP/for_simd_reduction_messages.cpp +++ b/clang/test/OpenMP/for_simd_reduction_messages.cpp @@ -26,9 +26,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/parallel_for_lastprivate_messages.cpp b/clang/test/OpenMP/parallel_for_lastprivate_messages.cpp index ccfe2ea407b..134100bc175 100644 --- a/clang/test/OpenMP/parallel_for_lastprivate_messages.cpp +++ b/clang/test/OpenMP/parallel_for_lastprivate_messages.cpp @@ -18,9 +18,9 @@ public: S2 &operator=(const S2 &); const S2 &operator=(const S2 &) const; static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/parallel_for_reduction_messages.cpp b/clang/test/OpenMP/parallel_for_reduction_messages.cpp index 57ab1fac9c1..6499ef593a3 100644 --- a/clang/test/OpenMP/parallel_for_reduction_messages.cpp +++ b/clang/test/OpenMP/parallel_for_reduction_messages.cpp @@ -25,9 +25,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { @@ -61,6 +61,12 @@ class S5 { public: S5(int v) : a(v) {} + void foo() { +#pragma omp parallel private(a) // expected-note {{defined as private}} +#pragma omp for reduction(+:a) // expected-error {{reduction variable must be shared}} + for (int i = 0; i < 10; ++i) + ::foo(); + } }; class S6 { // expected-note 3 {{candidate function (the implicit copy assignment operator) not viable: no known conversion from 'int' to 'const S6' for 1st argument}} #if __cplusplus >= 201103L // C++11 or later diff --git a/clang/test/OpenMP/parallel_for_simd_lastprivate_messages.cpp b/clang/test/OpenMP/parallel_for_simd_lastprivate_messages.cpp index bd1a6d50557..8670e55c6e2 100644 --- a/clang/test/OpenMP/parallel_for_simd_lastprivate_messages.cpp +++ b/clang/test/OpenMP/parallel_for_simd_lastprivate_messages.cpp @@ -17,9 +17,9 @@ public: S2(S2 &s2) : a(s2.a) {} const S2 &operator=(const S2 &) const; static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/parallel_for_simd_reduction_messages.cpp b/clang/test/OpenMP/parallel_for_simd_reduction_messages.cpp index 60a947dd5f8..8ff246e35f6 100644 --- a/clang/test/OpenMP/parallel_for_simd_reduction_messages.cpp +++ b/clang/test/OpenMP/parallel_for_simd_reduction_messages.cpp @@ -25,9 +25,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/parallel_reduction_messages.cpp b/clang/test/OpenMP/parallel_reduction_messages.cpp index 947353fc2dd..96f4b58ec8a 100644 --- a/clang/test/OpenMP/parallel_reduction_messages.cpp +++ b/clang/test/OpenMP/parallel_reduction_messages.cpp @@ -24,9 +24,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/parallel_sections_lastprivate_messages.cpp b/clang/test/OpenMP/parallel_sections_lastprivate_messages.cpp index af3c5e2a575..eccbfc5e7e0 100644 --- a/clang/test/OpenMP/parallel_sections_lastprivate_messages.cpp +++ b/clang/test/OpenMP/parallel_sections_lastprivate_messages.cpp @@ -17,9 +17,9 @@ public: S2(S2 &s2) : a(s2.a) {} const S2 &operator=(const S2 &) const; static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/parallel_sections_reduction_messages.cpp b/clang/test/OpenMP/parallel_sections_reduction_messages.cpp index 05cc7f0f6c5..26b3a5355c1 100644 --- a/clang/test/OpenMP/parallel_sections_reduction_messages.cpp +++ b/clang/test/OpenMP/parallel_sections_reduction_messages.cpp @@ -26,9 +26,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/sections_lastprivate_messages.cpp b/clang/test/OpenMP/sections_lastprivate_messages.cpp index 5f6b420cb8e..01bb13de551 100644 --- a/clang/test/OpenMP/sections_lastprivate_messages.cpp +++ b/clang/test/OpenMP/sections_lastprivate_messages.cpp @@ -17,9 +17,9 @@ public: S2(S2 &s2) : a(s2.a) {} const S2 &operator=(const S2 &) const; static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/sections_reduction_messages.cpp b/clang/test/OpenMP/sections_reduction_messages.cpp index f13c5b3f286..58b22a5a61d 100644 --- a/clang/test/OpenMP/sections_reduction_messages.cpp +++ b/clang/test/OpenMP/sections_reduction_messages.cpp @@ -27,9 +27,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/simd_lastprivate_messages.cpp b/clang/test/OpenMP/simd_lastprivate_messages.cpp index 16223db71ad..349d6a5b904 100644 --- a/clang/test/OpenMP/simd_lastprivate_messages.cpp +++ b/clang/test/OpenMP/simd_lastprivate_messages.cpp @@ -17,9 +17,9 @@ public: S2(S2 &s2) : a(s2.a) {} const S2 &operator=(const S2 &) const; static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/simd_reduction_messages.cpp b/clang/test/OpenMP/simd_reduction_messages.cpp index 1e1a233ec49..bdf429d1967 100644 --- a/clang/test/OpenMP/simd_reduction_messages.cpp +++ b/clang/test/OpenMP/simd_reduction_messages.cpp @@ -25,9 +25,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/target_parallel_for_lastprivate_messages.cpp b/clang/test/OpenMP/target_parallel_for_lastprivate_messages.cpp index c001b7f0d16..ee703a1ce32 100644 --- a/clang/test/OpenMP/target_parallel_for_lastprivate_messages.cpp +++ b/clang/test/OpenMP/target_parallel_for_lastprivate_messages.cpp @@ -18,9 +18,9 @@ public: S2 &operator=(const S2 &); const S2 &operator=(const S2 &) const; static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/target_parallel_for_reduction_messages.cpp b/clang/test/OpenMP/target_parallel_for_reduction_messages.cpp index 234b71aec21..9f1f68f25f8 100644 --- a/clang/test/OpenMP/target_parallel_for_reduction_messages.cpp +++ b/clang/test/OpenMP/target_parallel_for_reduction_messages.cpp @@ -25,9 +25,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/target_parallel_for_simd_lastprivate_messages.cpp b/clang/test/OpenMP/target_parallel_for_simd_lastprivate_messages.cpp index 51fc72464c9..b41dc87a3d3 100644 --- a/clang/test/OpenMP/target_parallel_for_simd_lastprivate_messages.cpp +++ b/clang/test/OpenMP/target_parallel_for_simd_lastprivate_messages.cpp @@ -18,9 +18,9 @@ public: S2 &operator=(const S2 &); const S2 &operator=(const S2 &) const; static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/target_parallel_for_simd_reduction_messages.cpp b/clang/test/OpenMP/target_parallel_for_simd_reduction_messages.cpp index 289b5b2641b..72e2130f3df 100644 --- a/clang/test/OpenMP/target_parallel_for_simd_reduction_messages.cpp +++ b/clang/test/OpenMP/target_parallel_for_simd_reduction_messages.cpp @@ -25,9 +25,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/target_parallel_reduction_messages.cpp b/clang/test/OpenMP/target_parallel_reduction_messages.cpp index 52338ee71cb..038f099c5a6 100644 --- a/clang/test/OpenMP/target_parallel_reduction_messages.cpp +++ b/clang/test/OpenMP/target_parallel_reduction_messages.cpp @@ -24,9 +24,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/target_simd_lastprivate_messages.cpp b/clang/test/OpenMP/target_simd_lastprivate_messages.cpp index afb38d9c922..9a6eb241728 100644 --- a/clang/test/OpenMP/target_simd_lastprivate_messages.cpp +++ b/clang/test/OpenMP/target_simd_lastprivate_messages.cpp @@ -18,9 +18,9 @@ public: S2 &operator=(const S2 &); const S2 &operator=(const S2 &) const; static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/target_simd_reduction_messages.cpp b/clang/test/OpenMP/target_simd_reduction_messages.cpp index ca14acb2293..9e1bb0521d7 100644 --- a/clang/test/OpenMP/target_simd_reduction_messages.cpp +++ b/clang/test/OpenMP/target_simd_reduction_messages.cpp @@ -25,9 +25,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/target_teams_distribute_lastprivate_messages.cpp b/clang/test/OpenMP/target_teams_distribute_lastprivate_messages.cpp index 8d594e94b09..5cfe7825c85 100644 --- a/clang/test/OpenMP/target_teams_distribute_lastprivate_messages.cpp +++ b/clang/test/OpenMP/target_teams_distribute_lastprivate_messages.cpp @@ -18,9 +18,9 @@ public: const S2 &operator =(const S2&) const; S2 &operator =(const S2&); static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/target_teams_distribute_parallel_for_lastprivate_messages.cpp b/clang/test/OpenMP/target_teams_distribute_parallel_for_lastprivate_messages.cpp index d31acef0039..ccecb638ca1 100644 --- a/clang/test/OpenMP/target_teams_distribute_parallel_for_lastprivate_messages.cpp +++ b/clang/test/OpenMP/target_teams_distribute_parallel_for_lastprivate_messages.cpp @@ -18,9 +18,9 @@ public: const S2 &operator =(const S2&) const; S2 &operator =(const S2&); static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/target_teams_distribute_parallel_for_reduction_messages.cpp b/clang/test/OpenMP/target_teams_distribute_parallel_for_reduction_messages.cpp index ba9586a1cef..59b35417d40 100644 --- a/clang/test/OpenMP/target_teams_distribute_parallel_for_reduction_messages.cpp +++ b/clang/test/OpenMP/target_teams_distribute_parallel_for_reduction_messages.cpp @@ -19,9 +19,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/target_teams_distribute_parallel_for_simd_lastprivate_messages.cpp b/clang/test/OpenMP/target_teams_distribute_parallel_for_simd_lastprivate_messages.cpp index 954830eb19f..7f17d679e0c 100644 --- a/clang/test/OpenMP/target_teams_distribute_parallel_for_simd_lastprivate_messages.cpp +++ b/clang/test/OpenMP/target_teams_distribute_parallel_for_simd_lastprivate_messages.cpp @@ -18,9 +18,9 @@ public: const S2 &operator =(const S2&) const; S2 &operator =(const S2&); static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/target_teams_distribute_parallel_for_simd_reduction_messages.cpp b/clang/test/OpenMP/target_teams_distribute_parallel_for_simd_reduction_messages.cpp index cadccbf5cda..63744c77fb3 100644 --- a/clang/test/OpenMP/target_teams_distribute_parallel_for_simd_reduction_messages.cpp +++ b/clang/test/OpenMP/target_teams_distribute_parallel_for_simd_reduction_messages.cpp @@ -19,9 +19,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/target_teams_distribute_reduction_messages.cpp b/clang/test/OpenMP/target_teams_distribute_reduction_messages.cpp index d52ee076130..3cfb08651a6 100644 --- a/clang/test/OpenMP/target_teams_distribute_reduction_messages.cpp +++ b/clang/test/OpenMP/target_teams_distribute_reduction_messages.cpp @@ -24,9 +24,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/target_teams_distribute_simd_lastprivate_messages.cpp b/clang/test/OpenMP/target_teams_distribute_simd_lastprivate_messages.cpp index 3b533e2e548..b8b1916f1e3 100644 --- a/clang/test/OpenMP/target_teams_distribute_simd_lastprivate_messages.cpp +++ b/clang/test/OpenMP/target_teams_distribute_simd_lastprivate_messages.cpp @@ -18,9 +18,9 @@ public: const S2 &operator =(const S2&) const; S2 &operator =(const S2&); static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/target_teams_distribute_simd_reduction_messages.cpp b/clang/test/OpenMP/target_teams_distribute_simd_reduction_messages.cpp index 1c0283285aa..35d4e12dc33 100644 --- a/clang/test/OpenMP/target_teams_distribute_simd_reduction_messages.cpp +++ b/clang/test/OpenMP/target_teams_distribute_simd_reduction_messages.cpp @@ -19,9 +19,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/target_teams_reduction_messages.cpp b/clang/test/OpenMP/target_teams_reduction_messages.cpp index 48fa310253c..b5876b10850 100644 --- a/clang/test/OpenMP/target_teams_reduction_messages.cpp +++ b/clang/test/OpenMP/target_teams_reduction_messages.cpp @@ -24,9 +24,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/taskgroup_task_reduction_messages.cpp b/clang/test/OpenMP/taskgroup_task_reduction_messages.cpp index 9c8177b0bd4..819dc5bdaf6 100644 --- a/clang/test/OpenMP/taskgroup_task_reduction_messages.cpp +++ b/clang/test/OpenMP/taskgroup_task_reduction_messages.cpp @@ -24,9 +24,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/taskloop_lastprivate_messages.cpp b/clang/test/OpenMP/taskloop_lastprivate_messages.cpp index e4364448159..1d238ea083e 100644 --- a/clang/test/OpenMP/taskloop_lastprivate_messages.cpp +++ b/clang/test/OpenMP/taskloop_lastprivate_messages.cpp @@ -18,9 +18,9 @@ public: const S2 &operator =(const S2&) const; S2 &operator =(const S2&); static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/taskloop_reduction_messages.cpp b/clang/test/OpenMP/taskloop_reduction_messages.cpp index 7295075c3cb..23f70b56852 100644 --- a/clang/test/OpenMP/taskloop_reduction_messages.cpp +++ b/clang/test/OpenMP/taskloop_reduction_messages.cpp @@ -25,9 +25,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/taskloop_simd_lastprivate_messages.cpp b/clang/test/OpenMP/taskloop_simd_lastprivate_messages.cpp index ed1bdf5a6e3..e5cba6c64b6 100644 --- a/clang/test/OpenMP/taskloop_simd_lastprivate_messages.cpp +++ b/clang/test/OpenMP/taskloop_simd_lastprivate_messages.cpp @@ -18,9 +18,9 @@ public: const S2 &operator =(const S2&) const; S2 &operator =(const S2&); static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/taskloop_simd_reduction_messages.cpp b/clang/test/OpenMP/taskloop_simd_reduction_messages.cpp index f9739f708a2..886b685f632 100644 --- a/clang/test/OpenMP/taskloop_simd_reduction_messages.cpp +++ b/clang/test/OpenMP/taskloop_simd_reduction_messages.cpp @@ -25,9 +25,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/teams_distribute_lastprivate_messages.cpp b/clang/test/OpenMP/teams_distribute_lastprivate_messages.cpp index b892141d501..6941197beee 100644 --- a/clang/test/OpenMP/teams_distribute_lastprivate_messages.cpp +++ b/clang/test/OpenMP/teams_distribute_lastprivate_messages.cpp @@ -18,9 +18,9 @@ public: const S2 &operator =(const S2&) const; S2 &operator =(const S2&); static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/teams_distribute_parallel_for_lastprivate_messages.cpp b/clang/test/OpenMP/teams_distribute_parallel_for_lastprivate_messages.cpp index 5691af71f7c..c5f457a0b2c 100644 --- a/clang/test/OpenMP/teams_distribute_parallel_for_lastprivate_messages.cpp +++ b/clang/test/OpenMP/teams_distribute_parallel_for_lastprivate_messages.cpp @@ -18,9 +18,9 @@ public: const S2 &operator =(const S2&) const; S2 &operator =(const S2&); static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/teams_distribute_parallel_for_reduction_messages.cpp b/clang/test/OpenMP/teams_distribute_parallel_for_reduction_messages.cpp index 73661618d20..889efd76cc3 100644 --- a/clang/test/OpenMP/teams_distribute_parallel_for_reduction_messages.cpp +++ b/clang/test/OpenMP/teams_distribute_parallel_for_reduction_messages.cpp @@ -19,9 +19,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/teams_distribute_parallel_for_simd_lastprivate_messages.cpp b/clang/test/OpenMP/teams_distribute_parallel_for_simd_lastprivate_messages.cpp index fce59b924f6..62f8559adda 100644 --- a/clang/test/OpenMP/teams_distribute_parallel_for_simd_lastprivate_messages.cpp +++ b/clang/test/OpenMP/teams_distribute_parallel_for_simd_lastprivate_messages.cpp @@ -18,9 +18,9 @@ public: const S2 &operator =(const S2&) const; S2 &operator =(const S2&); static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/teams_distribute_parallel_for_simd_reduction_messages.cpp b/clang/test/OpenMP/teams_distribute_parallel_for_simd_reduction_messages.cpp index 47494b94ff0..b0522e8f69d 100644 --- a/clang/test/OpenMP/teams_distribute_parallel_for_simd_reduction_messages.cpp +++ b/clang/test/OpenMP/teams_distribute_parallel_for_simd_reduction_messages.cpp @@ -19,9 +19,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/teams_distribute_reduction_messages.cpp b/clang/test/OpenMP/teams_distribute_reduction_messages.cpp index d0a6d296c0f..f11236f0ce2 100644 --- a/clang/test/OpenMP/teams_distribute_reduction_messages.cpp +++ b/clang/test/OpenMP/teams_distribute_reduction_messages.cpp @@ -25,9 +25,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/teams_distribute_simd_lastprivate_messages.cpp b/clang/test/OpenMP/teams_distribute_simd_lastprivate_messages.cpp index 4c715bf2ce3..8bdb3805ab2 100644 --- a/clang/test/OpenMP/teams_distribute_simd_lastprivate_messages.cpp +++ b/clang/test/OpenMP/teams_distribute_simd_lastprivate_messages.cpp @@ -18,9 +18,9 @@ public: const S2 &operator =(const S2&) const; S2 &operator =(const S2&); static float S2s; // expected-note {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note {{static data member is predetermined as shared}} }; -const float S2::S2sc = 0; // expected-note {{static data member is predetermined as shared}} +const float S2::S2sc = 0; const S2 b; const S2 ba[5]; class S3 { diff --git a/clang/test/OpenMP/teams_distribute_simd_reduction_messages.cpp b/clang/test/OpenMP/teams_distribute_simd_reduction_messages.cpp index 879ec688dcb..09d22bd4bd8 100644 --- a/clang/test/OpenMP/teams_distribute_simd_reduction_messages.cpp +++ b/clang/test/OpenMP/teams_distribute_simd_reduction_messages.cpp @@ -19,9 +19,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { diff --git a/clang/test/OpenMP/teams_reduction_messages.cpp b/clang/test/OpenMP/teams_reduction_messages.cpp index 9974c147b72..7aef97730d9 100644 --- a/clang/test/OpenMP/teams_reduction_messages.cpp +++ b/clang/test/OpenMP/teams_reduction_messages.cpp @@ -25,9 +25,9 @@ public: S2() : a(0) {} S2(S2 &s2) : a(s2.a) {} static float S2s; // expected-note 2 {{static data member is predetermined as shared}} - static const float S2sc; + static const float S2sc; // expected-note 2 {{'S2sc' declared here}} }; -const float S2::S2sc = 0; // expected-note 2 {{'S2sc' defined here}} +const float S2::S2sc = 0; S2 b; // expected-note 3 {{'b' defined here}} const S2 ba[5]; // expected-note 2 {{'ba' defined here}} class S3 { |