diff options
| author | Sebastian Redl <sebastian.redl@getdesigned.at> | 2008-11-14 23:42:31 +0000 |
|---|---|---|
| committer | Sebastian Redl <sebastian.redl@getdesigned.at> | 2008-11-14 23:42:31 +0000 |
| commit | ccdfabab351ae15ee2bb8cfd14ee2614761bbfde (patch) | |
| tree | 7e969e6177f8024faf4e691ae9a2b95522edbc21 /clang/lib/Parse/ParseDecl.cpp | |
| parent | 494d410b3200552f6bd0da2554f05b1c7f7d321e (diff) | |
| download | bcm5719-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.cpp | 4 |
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; |

