Appropriately mark fowrad decls.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62625 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/AsmPrinter/DwarfWriter.cpp b/lib/CodeGen/AsmPrinter/DwarfWriter.cpp
index dccd59c..a2934bd 100644
--- a/lib/CodeGen/AsmPrinter/DwarfWriter.cpp
+++ b/lib/CodeGen/AsmPrinter/DwarfWriter.cpp
@@ -1820,19 +1820,16 @@
     if (Size)
       AddUInt(&Buffer, DW_AT_byte_size, 0, Size);
     else {
-      // Add zero size even if it is not a forward declaration.
-      // FIXME - Enable this.
-      //      if (!CTy.isDefinition())
-      //        AddUInt(&Buffer, DW_AT_declaration, DW_FORM_flag, 1);
-      //      else
-      //        AddUInt(&Buffer, DW_AT_byte_size, 0, 0); 
+      // Add zero size if it is not a forward declaration.
+      if (CTy.isForwardDecl())
+        AddUInt(&Buffer, DW_AT_declaration, DW_FORM_flag, 1);
+      else
+        AddUInt(&Buffer, DW_AT_byte_size, 0, 0); 
     }
 
-    // Add source line info if available and TyDesc is not a forward
-    // declaration.
-    // FIXME - Enable this.
-    // if (CTy.isForwardDecl())                                            
-    //   AddSourceLine(&Buffer, *CTy);                                    
+    // Add source line info if available.
+    if (!CTy.isForwardDecl())
+      AddSourceLine(&Buffer, &CTy);
   }
   
   // ConstructSubrangeDIE - Construct subrange DIE from DISubrange.