Add ThreadSpecified bit to Decl.
 - Patch from Kevin Tew.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55940 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/SemaDecl.cpp b/lib/Sema/SemaDecl.cpp
index 75fcc51..cf84bcc 100644
--- a/lib/Sema/SemaDecl.cpp
+++ b/lib/Sema/SemaDecl.cpp
@@ -743,6 +743,7 @@
                                       D.getIdentifierLoc(), II,
                                       R, LastDeclarator);
     } else {
+      bool ThreadSpecified = D.getDeclSpec().isThreadSpecified();
       if (S->getFnParent() == 0) {
         // C99 6.9p2: The storage-class specifiers auto and register shall not
         // appear in the declaration specifiers in an external declaration.
@@ -751,12 +752,10 @@
                R.getAsString());
           InvalidDecl = true;
         }
-        NewVD = VarDecl::Create(Context, CurContext, D.getIdentifierLoc(),
-                                II, R, SC, LastDeclarator);
-      } else {
-        NewVD = VarDecl::Create(Context, CurContext, D.getIdentifierLoc(),
-                                II, R, SC, LastDeclarator);
       }
+        NewVD = VarDecl::Create(Context, CurContext, D.getIdentifierLoc(), 
+                                II, R, SC, LastDeclarator);
+        NewVD->setThreadSpecified(ThreadSpecified);
     }
     // Handle attributes prior to checking for duplicates in MergeVarDecl
     ProcessDeclAttributes(NewVD, D);