summaryrefslogtreecommitdiffstats
path: root/clang/lib/Parse/ParseDecl.cpp
diff options
context:
space:
mode:
authorSebastian Redl <sebastian.redl@getdesigned.at>2008-11-14 23:42:31 +0000
committerSebastian Redl <sebastian.redl@getdesigned.at>2008-11-14 23:42:31 +0000
commitccdfabab351ae15ee2bb8cfd14ee2614761bbfde (patch)
tree7e969e6177f8024faf4e691ae9a2b95522edbc21 /clang/lib/Parse/ParseDecl.cpp
parent494d410b3200552f6bd0da2554f05b1c7f7d321e (diff)
downloadbcm5719-llvm-ccdfabab351ae15ee2bb8cfd14ee2614761bbfde.tar.gz
bcm5719-llvm-ccdfabab351ae15ee2bb8cfd14ee2614761bbfde.zip
Implement parsing and semantic checking of the 'mutable' keyword.
Thanks to Doug for the review. Actual effects of mutable to follow. llvm-svn: 59331
Diffstat (limited to 'clang/lib/Parse/ParseDecl.cpp')
-rw-r--r--clang/lib/Parse/ParseDecl.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/Parse/ParseDecl.cpp b/clang/lib/Parse/ParseDecl.cpp
index 0c1080a5b8f..99bebe62585 100644
--- a/clang/lib/Parse/ParseDecl.cpp
+++ b/clang/lib/Parse/ParseDecl.cpp
@@ -405,6 +405,7 @@ void Parser::ParseSpecifierQualifierList(DeclSpec &DS) {
/// 'static'
/// 'auto'
/// 'register'
+/// [C++] 'mutable'
/// [GNU] '__thread'
/// function-specifier: [C99 6.7.4]
/// [C99] 'inline'
@@ -550,6 +551,9 @@ void Parser::ParseDeclarationSpecifiers(DeclSpec &DS) {
case tok::kw_register:
isInvalid = DS.SetStorageClassSpec(DeclSpec::SCS_register, Loc, PrevSpec);
break;
+ case tok::kw_mutable:
+ isInvalid = DS.SetStorageClassSpec(DeclSpec::SCS_mutable, Loc, PrevSpec);
+ break;
case tok::kw___thread:
isInvalid = DS.SetStorageClassSpecThread(Loc, PrevSpec)*2;
break;
OpenPOWER on IntegriCloud