keep track of whether being in a RS_StructPointer state
commit57eb23f34ed2586069273c66f1a9994fe2b42967
authorChris Lattner <sabre@nondot.org>
Sun, 10 Jul 2011 05:39:13 +0000 (10 05:39 +0000)
committerChris Lattner <sabre@nondot.org>
Sun, 10 Jul 2011 05:39:13 +0000 (10 05:39 +0000)
treec4754d8350e0aebce950aeab9696a70f8e71a89d
parent74339dfbfe3fa9c1839ce02e3427e4dc5478a3ae
keep track of whether being in a RS_StructPointer state
caused us to skip layout out a function accurately.  If
so, flush the type cache for both the function and struct
case to ensure that any pointers to the functions get
recomputed.  This is overconservative, but with this patch
clang can build itself again.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134863 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/CodeGenTypes.cpp
lib/CodeGen/CodeGenTypes.h
test/CodeGenCXX/anonymous-union-member-initializer.cpp
test/CodeGenObjC/arc-foreach.m
test/CodeGenObjC/arc.m