diff --git a/lib/CodeGen/ModuleBuilder.cpp b/lib/CodeGen/ModuleBuilder.cpp
index b37b8d3..3fa086f 100644
--- a/lib/CodeGen/ModuleBuilder.cpp
+++ b/lib/CodeGen/ModuleBuilder.cpp
@@ -64,7 +64,7 @@
       // semantic analysis (to ensure all warnings and errors are emitted).
       if (Diags.hasErrorOccurred())
         return;
-      
+
       if (FunctionDecl *FD = dyn_cast<FunctionDecl>(D)) {
         Builder->EmitFunction(FD);
       } else if (isa<ObjCClassDecl>(D)){
@@ -86,8 +86,7 @@
       } else if (ObjCMethodDecl *OMD = dyn_cast<ObjCMethodDecl>(D)){
         Builder->EmitObjCMethod(OMD);
       } else if (VarDecl *VD = dyn_cast<VarDecl>(D)) {
-        if (VD->isFileVarDecl())
-          Builder->EmitGlobalVarDeclarator(VD);
+        Builder->EmitGlobalVar(VD);
       } else if (isa<ObjCClassDecl>(D) || isa<ObjCCategoryDecl>(D)) {
         // Forward declaration.  Only used for type checking.
       } else if (ObjCMethodDecl *OMD = dyn_cast<ObjCMethodDecl>(D)){
@@ -110,6 +109,12 @@
         assert(isa<TypeDecl>(D) && "Unknown top level decl");
         // TODO: handle debug info?
       }
+
+      if (ScopedDecl *SD = dyn_cast<ScopedDecl>(D)) {
+        SD = SD->getNextDeclarator();
+        if (SD)
+          HandleTopLevelDecl(SD);
+      }
     }
     
     /// HandleTagDeclDefinition - This callback is invoked each time a TagDecl
