From 5bdaeadc258b69430d81968d9fce0cc45c341faa Mon Sep 17 00:00:00 2001 From: Brian Fiete Date: Mon, 22 Jun 2020 09:38:02 -0700 Subject: [PATCH] Fixed splat lookup error during closure capture --- IDEHelper/Compiler/BfModule.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/IDEHelper/Compiler/BfModule.cpp b/IDEHelper/Compiler/BfModule.cpp index 4e0641b9..00244b37 100644 --- a/IDEHelper/Compiler/BfModule.cpp +++ b/IDEHelper/Compiler/BfModule.cpp @@ -10831,6 +10831,12 @@ BfIRValue BfModule::ExtractSplatValue(BfTypedValue typedValue, int componentIdx, if (val) break; + if ((checkMethodState->mClosureState != NULL) && (checkMethodState->mClosureState->mCapturing)) + { + BF_ASSERT(mBfIRBuilder->mIgnoreWrites); + return mBfIRBuilder->GetFakeVal(); + } + checkMethodState = checkMethodState->mPrevMethodState; } }