Disable the function address cache; this doesn't have any ill effects, 
as far as I can tell, and it fixes code like test/CodeGen/functions.c.

(Whatever performance effect it might have, crashing on a 
construct like this isn't really acceptable; I've run into this 
multiple times.)



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51312 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/CodeGenModule.cpp b/lib/CodeGen/CodeGenModule.cpp
index b234788..7bf1e01 100644
--- a/lib/CodeGen/CodeGenModule.cpp
+++ b/lib/CodeGen/CodeGenModule.cpp
@@ -168,8 +168,11 @@
                                                      bool isDefinition) {
   // See if it is already in the map.  If so, just return it.
   llvm::Constant *&Entry = GlobalDeclMap[D];
+#if 0
+  // FIXME: The cache is currently broken!
   if (Entry) return Entry;
-  
+#endif
+
   const llvm::Type *Ty = getTypes().ConvertType(D->getType());
   
   // Check to see if the function already exists.