This is a trending crash coming out of the 4.18 release.
User Descriptions
Source Context
1203 if (!bMathCall) // math call doesn't need context 1204 { 1205 // RValue property is used to clear value after Access Violation. See UObject::ProcessContextOpcod 1206 // If the property from LHS is used, then the retured property (with CPF_ReturnParm) is cleared. But properties returned by ref are not cleared. 1207 UProperty* RValueProperty = Statement.LHS ? Statement.LHS->AssociatedVarProperty : nullptr; 1208 CallContextWriter.TryStartContext(Statement.FunctionContext, /*bUnsafeToSkip=*/ bHasOutputValue, Statement.bIsInterfaceContext, RValueProperty); 1209 } 1210 1211 // Emit the call type 1212 if (FunctionToCall->HasAnyFunctionFlags(FUNC_Delegate)) 1213 { 1214 // @todo: Default delegate functions are no longer callable (and also now have mangled names.) FindField will fail. 1215 ***** check(false); 1216 } 1217 else if (bFinalFunction) 1218 { 1219 if (bMathCall) 1220 { 1221 Writer << EX_CallMath; 1222 } 1223 else 1224 { 1225 Writer << EX_FinalFunction; 1226 } 1227 // The function to call doesn't have a native index 1228 Writer << FunctionToCall; 1229 } 1230 else
1. Create a blueprint based on actor
2. Add a Event Dispatcher to that actor
3 Place an instance of the new blueprint in a level
4. Open the level blueprint, drag the placed actor from the scene outliner in to the level blueprint
5. Try to call the event dispatcher function. Note that when using the compilation manager there is a function call entry with Delegate Signature appended to the event dispatchers name
6. Call this bad function call entry from the level blueprint, note crash
Assertion failed: false [File:D:\Build\++UE4+Release-4.18+Compile\Sync\Engine\Source\Editor\KismetCompiler\Private\KismetCompilerVMBackend.cpp] [Line: 1216] UE4Editor_KismetCompiler!FScriptBuilderBase::EmitFunctionCall() [kismetcompilervmbackend.cpp:1216] UE4Editor_KismetCompiler!FScriptBuilderBase::GenerateCodeForStatement() [kismetcompilervmbackend.cpp:1966] UE4Editor_KismetCompiler!FKismetCompilerVMBackend::ConstructFunction() [kismetcompilervmbackend.cpp:2140] UE4Editor_KismetCompiler!FKismetCompilerVMBackend::GenerateCodeFromClass() [kismetcompilervmbackend.cpp:2090] UE4Editor_KismetCompiler!FKismetCompilerContext::CompileFunctions() [kismetcompiler.cpp:4032] UE4Editor_Kismet!FBlueprintCompilationManagerImpl::FlushCompilationQueueImpl() [blueprintcompilationmanager.cpp:876] UE4Editor_Kismet!FBlueprintCompilationManagerImpl::CompileSynchronouslyImpl() [blueprintcompilationmanager.cpp:199] UE4Editor_UnrealEd!FKismetEditorUtilities::CompileBlueprint() [kismet2.cpp:745] UE4Editor_Kismet!FBlueprintEditor::Compile() [blueprinteditor.cpp:3181] UE4Editor_Kismet!TBaseSPMethodDelegateInstance<0,FBlueprintEditor,0,TTypeWrapper<void> __cdecl() [delegateinstancesimpl.h:327] UE4Editor_Kismet!TBaseSPMethodDelegateInstance<0,FBlueprintEditor,0,void __cdecl() [delegateinstancesimpl.h:434] UE4Editor_Slate!FUICommandList::ExecuteAction() [uicommandlist.cpp:97] UE4Editor_Slate!SToolBarButtonBlock::OnClicked() [stoolbarbuttonblock.cpp:300] UE4Editor_Slate!TMemberFunctionCaller<SToolBarButtonBlock,FReply() [delegateinstanceinterface.h:165] UE4Editor_Slate!UE4Tuple_Private::TTupleImpl<TIntegerSequence<unsigned int> >::ApplyAfter<TMemberFunctionCaller<SToolBarButtonBlock,FReply() [tuple.h:497] UE4Editor_Slate!TBaseSPMethodDelegateInstance<0,SToolBarButtonBlock,0,FReply __cdecl() [delegateinstancesimpl.h:327] UE4Editor_Slate!TBaseDelegate<FReply>::Execute() [delegatesignatureimpl.inl:537] UE4Editor_Slate!SButton::OnMouseButtonUp() [sbutton.cpp:282] UE4Editor_Slate!<lambda_1002768c627006711ef2f351a87ec0e7>::operator() [slateapplication.cpp:5263] UE4Editor_Slate!FEventRouter::Route<FReply,FEventRouter::FToLeafmostPolicy,FPointerEvent,<lambda_1002768c627006711ef2f351a87ec0e7> >() [slateapplication.cpp:234] UE4Editor_Slate!FSlateApplication::RoutePointerUpEvent() [slateapplication.cpp:5252] UE4Editor_Slate!FSlateApplication::ProcessMouseButtonUpEvent() [slateapplication.cpp:5750] UE4Editor_Slate!FSlateApplication::OnMouseUp() [slateapplication.cpp:5730] UE4Editor_ApplicationCore!FWindowsApplication::ProcessDeferredMessage() [windowsapplication.cpp:1725] UE4Editor_ApplicationCore!FWindowsApplication::DeferMessage() [windowsapplication.cpp:2171] UE4Editor_ApplicationCore!FWindowsApplication::ProcessMessage() [windowsapplication.cpp:888] UE4Editor_ApplicationCore!FWindowsApplication::AppWndProc() [windowsapplication.cpp:725] user32!UserCallWinProcCheckWow() user32!DispatchMessageWorker() UE4Editor_ApplicationCore!FWindowsPlatformApplicationMisc::PumpMessages() [windowsplatformapplicationmisc.cpp:129] UE4Editor!FEngineLoop::Tick() [launchengineloop.cpp:3220] UE4Editor!GuardedMain() [launch.cpp:166] UE4Editor!GuardedMainWrapper() [launchwindows.cpp:134] UE4Editor!WinMain() [launchwindows.cpp:210] UE4Editor!__scrt_common_main_seh() [exe_common.inl:253] kernel32!BaseThreadInitThunk() ntdll!RtlUserThreadStart()
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-51726 in the post.
1 |
Component | UE - Gameplay |
---|---|
Affects Versions | 4.18, 4.19 |
Target Fix | 4.19 |
Created | Oct 27, 2017 |
---|---|
Resolved | Feb 6, 2018 |
Updated | Apr 27, 2018 |