diff options
author | Francois Pichet <pichet2000@gmail.com> | 2010-12-17 02:00:06 +0000 |
---|---|---|
committer | Francois Pichet <pichet2000@gmail.com> | 2010-12-17 02:00:06 +0000 |
commit | ecea19f00a911c50dc20fe94e548f488ded47adb (patch) | |
tree | 4ef0f78a9f42254e63a1241f8bccbe6264cd42e5 | |
parent | 0de57863819294d338cf5e81d8e1d67f315feb94 (diff) |
Microsoft's __uuidof operator returns a lvalue.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122021 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/AST/ExprClassification.cpp | 2 | ||||
-rw-r--r-- | test/Parser/MicrosoftExtensions.c | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/lib/AST/ExprClassification.cpp b/lib/AST/ExprClassification.cpp index 05d175c135..4cf393d788 100644 --- a/lib/AST/ExprClassification.cpp +++ b/lib/AST/ExprClassification.cpp @@ -303,7 +303,7 @@ static Cl::Kinds ClassifyInternal(ASTContext &Ctx, const Expr *E) { } case Expr::CXXUuidofExprClass: - return Cl::CL_PRValue; + return Cl::CL_LValue; } llvm_unreachable("unhandled expression kind in classification"); diff --git a/test/Parser/MicrosoftExtensions.c b/test/Parser/MicrosoftExtensions.c index d903781368..6c14742278 100644 --- a/test/Parser/MicrosoftExtensions.c +++ b/test/Parser/MicrosoftExtensions.c @@ -77,6 +77,8 @@ void uuidof_test2() C c; // FIXME, this must not compile _uuidof(c); + + &_uuidof(0); } /* Microsoft attribute tests */ |