Fix PCH deserialization bug with local static symbols being treated as local extern.
authorTed Kremenek <kremenek@apple.com>
Tue, 11 Feb 2014 06:29:29 +0000 (06:29 +0000)
committerTed Kremenek <kremenek@apple.com>
Tue, 11 Feb 2014 06:29:29 +0000 (06:29 +0000)
commita683f639c7e24408409c6d07979ba171e2581653
tree17e70cbc6e752490dc486c8c975b855dc4b54ab6
parentbf987c2dae19ff8bf4818292fb7f424c611592af
Fix PCH deserialization bug with local static symbols being treated as local extern.

This triggered a miscompilation of code using Boost's function_template.hpp
when it was included inside a PCH file.  A local static within
that header would be treated as local extern, resulting in the wrong
mangling.  This only occurred during PCH deserialization.

Fixes <rdar://problem/15975816> and <rdar://problem/15926311>.

llvm-svn: 201130
clang/lib/Serialization/ASTReaderDecl.cpp
clang/test/PCH/local_static.cpp [new file with mode: 0644]
clang/test/PCH/local_static.h [new file with mode: 0644]