From 93326931328f034e5e12c683b7557fcdbe3c7dd6 Mon Sep 17 00:00:00 2001 From: Brian Fiete Date: Mon, 12 Oct 2020 10:12:18 -0700 Subject: [PATCH] Improved minidump debugging --- IDEHelper/Compiler/BfCompiler.cpp | 2 +- IDEHelper/Compiler/BfModule.cpp | 4 ++-- IDEHelper/Compiler/BfModule.h | 4 ++++ IDEHelper/Compiler/BfSystem.h | 4 ++++ 4 files changed, 11 insertions(+), 3 deletions(-) diff --git a/IDEHelper/Compiler/BfCompiler.cpp b/IDEHelper/Compiler/BfCompiler.cpp index c8ecf62e..51cad01c 100644 --- a/IDEHelper/Compiler/BfCompiler.cpp +++ b/IDEHelper/Compiler/BfCompiler.cpp @@ -4181,7 +4181,7 @@ void BfCompiler::ProcessAutocompleteTempType() BfFieldDef* actualFieldDef = NULL; BfMemberSetEntry* memberSetEntry = NULL; - if (actualTypeDef->mFieldSet.TryGetWith(fieldDef->mName, &memberSetEntry)) + if (actualTypeDef->mFieldSet.TryGetWith((StringImpl&)fieldDef->mName, &memberSetEntry)) { auto checkFieldDef = (BfFieldDef*)memberSetEntry->mMemberDef; if ((checkFieldDef->mIsConst == fieldDef->mIsConst) && diff --git a/IDEHelper/Compiler/BfModule.cpp b/IDEHelper/Compiler/BfModule.cpp index c0746164..662ed30c 100644 --- a/IDEHelper/Compiler/BfModule.cpp +++ b/IDEHelper/Compiler/BfModule.cpp @@ -21657,7 +21657,7 @@ bool BfModule::SlotVirtualMethod(BfMethodInstance* methodInstance, BfAmbiguityCo lookupType->mTypeDef->PopulateMemberSets(); BfMethodDef* nextMethodDef = NULL; BfMemberSetEntry* entry; - if (lookupType->mTypeDef->mMethodSet.TryGetWith(methodInstance->mMethodDef->mName, &entry)) + if (lookupType->mTypeDef->mMethodSet.TryGetWith((StringImpl&)methodInstance->mMethodDef->mName, &entry)) nextMethodDef = (BfMethodDef*)entry->mMemberDef; while (nextMethodDef != NULL) @@ -22027,7 +22027,7 @@ bool BfModule::SlotVirtualMethod(BfMethodInstance* methodInstance, BfAmbiguityCo ifaceInst->mTypeDef->PopulateMemberSets(); BfMethodDef* checkMethodDef = NULL; BfMemberSetEntry* entry; - if (ifaceInst->mTypeDef->mMethodSet.TryGetWith(methodInstance->mMethodDef->mName, &entry)) + if (ifaceInst->mTypeDef->mMethodSet.TryGetWith((StringImpl&)methodInstance->mMethodDef->mName, &entry)) checkMethodDef = (BfMethodDef*)entry->mMemberDef; while (checkMethodDef != NULL) diff --git a/IDEHelper/Compiler/BfModule.h b/IDEHelper/Compiler/BfModule.h index f606b2e1..edca83ac 100644 --- a/IDEHelper/Compiler/BfModule.h +++ b/IDEHelper/Compiler/BfModule.h @@ -1366,7 +1366,11 @@ public: public: Val128 mDataHash; +#ifdef _DEBUG + StringT<128> mModuleName; +#else String mModuleName; +#endif Array mOutFileNames; // SpecializedModules contain method specializations with types that come from other projects Dictionary, BfModule*> mSpecializedMethodModules; diff --git a/IDEHelper/Compiler/BfSystem.h b/IDEHelper/Compiler/BfSystem.h index 6296e98a..a1aadfc7 100644 --- a/IDEHelper/Compiler/BfSystem.h +++ b/IDEHelper/Compiler/BfSystem.h @@ -490,7 +490,11 @@ public: class BfMemberDef { public: +#ifdef _DEBUG + StringT<48> mName; +#else String mName; +#endif BfTypeDef* mDeclaringType; BfProtection mProtection; bool mIsStatic;