diff options
| author | Fariborz Jahanian <fjahanian@apple.com> | 2010-06-24 18:50:41 +0000 |
|---|---|---|
| committer | Fariborz Jahanian <fjahanian@apple.com> | 2010-06-24 18:50:41 +0000 |
| commit | 4f9c9d659113e029b3fc67e5da2e3e44cda1e215 (patch) | |
| tree | 052b2409c582c6741f74f214ab7c595fa71bf698 /clang/lib/Sema/SemaDecl.cpp | |
| parent | 3f0e992af11264d2f8d48d4a73f9e3131ab7cb48 (diff) | |
| download | bcm5719-llvm-4f9c9d659113e029b3fc67e5da2e3e44cda1e215.tar.gz bcm5719-llvm-4f9c9d659113e029b3fc67e5da2e3e44cda1e215.zip | |
Fixes a regression when redeclaration of a global satic
is an extern local to a function. Radar 8125274.
llvm-svn: 106773
Diffstat (limited to 'clang/lib/Sema/SemaDecl.cpp')
| -rw-r--r-- | clang/lib/Sema/SemaDecl.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp index ebfb9810d66..5c1de6aeb88 100644 --- a/clang/lib/Sema/SemaDecl.cpp +++ b/clang/lib/Sema/SemaDecl.cpp @@ -1456,7 +1456,8 @@ void Sema::MergeVarDecl(VarDecl *New, LookupResult &Previous) { } if (New->hasExternalStorage() && - Old->getLinkage() == InternalLinkage) + Old->getLinkage() == InternalLinkage && + New->getDeclContext() == Old->getDeclContext()) New->setStorageClass(Old->getStorageClass()); // Keep a chain of previous declarations. |

