diff --git a/IDEHelper/Compiler/BfCompiler.cpp b/IDEHelper/Compiler/BfCompiler.cpp index f157f4c4..5b970dce 100644 --- a/IDEHelper/Compiler/BfCompiler.cpp +++ b/IDEHelper/Compiler/BfCompiler.cpp @@ -4219,8 +4219,11 @@ void BfCompiler::ProcessAutocompleteTempType() methodInstances.Clear(); module->CleanupFileInstances(); - module->ClearConstData(); + prevTypeInstance.Restore(); + if (module->mCurTypeInstance == NULL) + module->ClearConstData(); + BfLogSysM("ProcessAutocompleteTempType end\n"); } diff --git a/IDEHelper/Compiler/BfConstResolver.cpp b/IDEHelper/Compiler/BfConstResolver.cpp index 94960a7d..c81f1d64 100644 --- a/IDEHelper/Compiler/BfConstResolver.cpp +++ b/IDEHelper/Compiler/BfConstResolver.cpp @@ -389,7 +389,7 @@ bool BfConstResolver::PrepareMethodArguments(BfAstNode* targetSrc, BfMethodMatch extendedParamIdx++; } else - { + { llvmArgs.push_back(argValue.mValue); paramIdx++; }