diff options
author | Sven van Haastregt <sven.vanhaastregt@arm.com> | 2018-04-24 14:47:29 +0000 |
---|---|---|
committer | Sven van Haastregt <sven.vanhaastregt@arm.com> | 2018-04-24 14:47:29 +0000 |
commit | c410083312731009a5ff334d7f357e4d9a160eb0 (patch) | |
tree | 8b6d7ec5a54cb2ba66b4351f3746ccccd29ff473 /clang/lib/Parse/ParseDecl.cpp | |
parent | 16299273d0c27e7060811f1d813499a633b30b40 (diff) | |
download | llvm-c410083312731009a5ff334d7f357e4d9a160eb0.zip llvm-c410083312731009a5ff334d7f357e4d9a160eb0.tar.gz llvm-c410083312731009a5ff334d7f357e4d9a160eb0.tar.bz2 |
[OpenCL] Fix diagnostic of thread_local
Commit 08c258670c ("[OpenCL] Generic address space has been added in
OpenCL v2.0.", 2014-11-26) did not mark the thread_local keyword as a
storage class specifier, whereas it did mark _Thread_local as such.
According to the C++14 spec s7.1.1, thread_local is a storage class
specifier, so mark it as such.
I will add a test for this in a follow-up commit that adds keyword
restrictions to the OpenCL C++ language mode.
llvm-svn: 330721
Diffstat (limited to 'clang/lib/Parse/ParseDecl.cpp')
-rw-r--r-- | clang/lib/Parse/ParseDecl.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/clang/lib/Parse/ParseDecl.cpp b/clang/lib/Parse/ParseDecl.cpp index ef3d8c3..3d3abe3 100644 --- a/clang/lib/Parse/ParseDecl.cpp +++ b/clang/lib/Parse/ParseDecl.cpp @@ -3454,6 +3454,7 @@ void Parser::ParseDeclarationSpecifiers(DeclSpec &DS, case tok::kw_thread_local: isInvalid = DS.SetStorageClassSpecThread(DeclSpec::TSCS_thread_local, Loc, PrevSpec, DiagID); + isStorageClass = true; break; case tok::kw__Thread_local: isInvalid = DS.SetStorageClassSpecThread(DeclSpec::TSCS__Thread_local, |