소스 검색

Fixed invalid var debug gap

Brian Fiete 4 년 전
부모
커밋
f8ec709750
1개의 변경된 파일13개의 추가작업 그리고 6개의 파일을 삭제
  1. 13 6
      IDEHelper/Backend/BeMCContext.cpp

+ 13 - 6
IDEHelper/Backend/BeMCContext.cpp

@@ -12791,11 +12791,18 @@ void BeMCContext::DoCodeEmission()
 									dbgStr += StrFormat("#### %d Dbg Start Gap %s\n", funcCodePos, dbgVar->mName.c_str());
 								}
 
-								// Starting a new gap
-								BeDbgVariableRange range;
-								range.mOffset = funcCodePos;
-								range.mLength = -1;
-								dbgVar->mGaps.push_back(range);
+								if (dbgVar->mDeclStart == -1)
+								{
+									// Ignore
+								}
+								else
+								{
+									// Starting a new gap
+									BeDbgVariableRange range;
+									range.mOffset = funcCodePos;
+									range.mLength = -1;
+									dbgVar->mGaps.push_back(range);
+								}
 							}
 						}
 					}
@@ -15794,7 +15801,7 @@ void BeMCContext::Generate(BeFunction* function)
 	mDbgPreferredRegs[32] = X64Reg_R8;*/
 
 	//mDbgPreferredRegs[8] = X64Reg_RAX;
-	//mDebugging = (function->mName == "?Main@TestProgram@BeefTest@bf@@SATint@@PEAV?$Array1@PEAVString@System@bf@@@System@3@@Z");
+	//mDebugging = (function->mName == "?ConvertType@TestC@BeefTest@bf@@SAPEAVType@System@3@PEAVString@53@@Z");
 	//		|| (function->mName == "?MethodA@TestProgram@BeefTest@bf@@CAXXZ");
 	// 		|| (function->mName == "?Hey@Blurg@bf@@SAXXZ")
 	// 		;