]> granicus.if.org Git - clang/commitdiff
Local variables have no linkage, make invalid Entities.
authorZhongxing Xu <xuzhongxing@gmail.com>
Tue, 6 Jul 2010 01:20:49 +0000 (01:20 +0000)
committerZhongxing Xu <xuzhongxing@gmail.com>
Tue, 6 Jul 2010 01:20:49 +0000 (01:20 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107630 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Index/Entity.cpp

index 8178fbe7ab41c5a42d516788c1ec83483d4f420b..b6fb17fc2b143dde3c8dcefc5c8e45b9aec76ca5 100644 (file)
@@ -111,6 +111,10 @@ Entity EntityGetter::VisitNamedDecl(NamedDecl *D) {
 }
 
 Entity EntityGetter::VisitVarDecl(VarDecl *D) {
+  // Local variables have no linkage, make invalid Entities.
+  if (D->hasLocalStorage())
+    return Entity();
+
   // If it's static it cannot be referred to by another translation unit.
   if (D->getStorageClass() == VarDecl::Static)
     return Entity(D);