Local variables window detects now if a variable is used or not by the code
[clinton/Virtual-Jaguar-Rx.git] / src / debugger / DWARFManager.cpp
index 3817763..b6c149e 100644 (file)
@@ -675,11 +675,18 @@ void DWARFManager_InitDMI(void)
                                                                                                                                                                case 2:\r
                                                                                                                                                                        PtrCU[NbCU].PtrSubProgs[PtrCU[NbCU].NbSubProgs].PtrVariables[PtrCU[NbCU].PtrSubProgs[PtrCU[NbCU].NbSubProgs].NbVariables].Offset = *((char *)(return_block->bl_data) + 1);\r
 \r
-                                                                                                                                                                       if (return_tagval == DW_TAG_variable)\r
+                                                                                                                                                                       switch (return_tagval)\r
                                                                                                                                                                        {\r
+                                                                                                                                                                       case    DW_TAG_variable:\r
                                                                                                                                                                                PtrCU[NbCU].PtrSubProgs[PtrCU[NbCU].NbSubProgs].PtrVariables[PtrCU[NbCU].PtrSubProgs[PtrCU[NbCU].NbSubProgs].NbVariables].Offset -= 0x80;\r
+                                                                                                                                                                               break;\r
+\r
+                                                                                                                                                                       case    DW_TAG_formal_parameter:\r
+                                                                                                                                                                               break;\r
+\r
+                                                                                                                                                                       default:\r
+                                                                                                                                                                               break;\r
                                                                                                                                                                        }\r
-                                                                                                                                                                       break;\r
 \r
                                                                                                                                                                default:\r
                                                                                                                                                                        break;\r
@@ -709,6 +716,12 @@ void DWARFManager_InitDMI(void)
                                                                                                                                                        }\r
                                                                                                                                                        break;\r
 \r
+                                                                                                                                               case    DW_AT_decl_file:\r
+                                                                                                                                                       break;\r
+\r
+                                                                                                                                               case    DW_AT_decl_line:\r
+                                                                                                                                                       break;\r
+\r
                                                                                                                                                default:\r
                                                                                                                                                        break;\r
                                                                                                                                                }\r
@@ -749,7 +762,9 @@ void DWARFManager_InitDMI(void)
 \r
                                        // Release the memory used by the source lines\r
                                        for (i = 0; i < (size_t)cnt; ++i)\r
+                                       {\r
                                                dwarf_dealloc(dbg, linebuf[i], DW_DLA_LINE);\r
+                                       }\r
                                        dwarf_dealloc(dbg, linebuf, DW_DLA_LIST);\r
                                }\r
 \r