From 373197b9ca6975ecc9241ec06ec9856afbfcc9e7 Mon Sep 17 00:00:00 2001
From: Francois Pichet <pichet2000@gmail.com>
Date: Sat, 7 May 2011 19:04:49 +0000
Subject: [PATCH] Don't fail at parsing
 __declspec(property(get=get_func_name)). Just skip everything inside
 property() for now while we wait for the BoostPro people to provide a
 complete patch.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@131053 91177308-0d34-0410-b5e6-96231b3b80d8
---
 lib/Parse/ParseDecl.cpp | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/lib/Parse/ParseDecl.cpp b/lib/Parse/ParseDecl.cpp
index bde650ba3fd..c54a0ed7079 100644
--- a/lib/Parse/ParseDecl.cpp
+++ b/lib/Parse/ParseDecl.cpp
@@ -253,9 +253,17 @@ void Parser::ParseMicrosoftDeclSpec(ParsedAttributes &attrs) {
     SkipUntil(tok::r_paren, true); // skip until ) or ;
     return;
   }
+
   while (Tok.getIdentifierInfo()) {
     IdentifierInfo *AttrName = Tok.getIdentifierInfo();
     SourceLocation AttrNameLoc = ConsumeToken();
+    
+    // FIXME: Remove this when we have proper __declspec(property()) support.
+    // Just skip everything inside property().
+    if (AttrName->getName() == "property") {
+      ConsumeParen();
+      SkipUntil(tok::r_paren);
+    }
     if (Tok.is(tok::l_paren)) {
       ConsumeParen();
       // FIXME: This doesn't parse __declspec(property(get=get_func_name))
-- 
GitLab