[4.11 p6] crash when compiling

I only got this crash after updating to 4.11 preview 6.

4.11 preview 5 and everything before that worked fine.

This happens to about every class, even to classes that only have primitive variables, like integers, with no references or anything else, and even to classes with only primitives that also have no functions and/or macros.

I don’t know if it’s already reported, so I won’t put too much effort into this bug report.

If it wasn’t reported yet, let me know, and I’ll try to come up with a way to reproduce the crash.

Edit: Well I’ve found a work around, save the blueprint before compiling, that will cause it to compile successfully.
Does this mean that the crash is caused by the editor not saving before compiling?

MachineId:C4E3AF894C44534C2F0909BBDFF5D772
EpicAccountId:547e560848b542ec92b935cfbac4a7da

Assertion failed: ((UObject*)ContainerPtr)->IsA((UClass*)GetOuter()) [File:D:\BuildFarm\buildmachine_++UE4+Release-4.11\Engine\Source\Runtime\CoreUObject\Public\UObject\UnrealType.h] [Line: 311] 
'Default__PacketType_GameServer_C' is of class 'REINST_PacketType_GameServer_C_294' however property '// messages' belongs to class 'PacketType_GameServer_C'


UE4Editor_Core!FDebug::AssertFailed() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\core\private\misc\outputdevice.cpp:430]
UE4Editor_Kismet!BlueprintSearchMetaDataHelpers::SaveVariableDescriptionToJson() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\editor\kismet\private\findinblueprintmanager.cpp:662]
UE4Editor_Kismet!FFindInBlueprintSearchManager::GatherBlueprintSearchMetadata() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\editor\kismet\private\findinblueprintmanager.cpp:1487]
UE4Editor_Kismet!FFindInBlueprintSearchManager::AddOrUpdateBlueprintSearchMetadata() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\editor\kismet\private\findinblueprintmanager.cpp:1589]
UE4Editor_Engine!UBlueprint::Serialize() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\engine\private\blueprint.cpp:384]
UE4Editor_CoreUObject!FArchiveSaveTagExports::ProcessTaggedObjects() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\coreuobject\private\uobject\savepackage.cpp:701]
UE4Editor_CoreUObject!FPackageExportTagger::TagPackageExports() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\coreuobject\private\uobject\savepackage.cpp:2850]
UE4Editor_CoreUObject!UPackage::Save() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\coreuobject\private\uobject\savepackage.cpp:3399]
UE4Editor_UnrealEd!UEditorEngine::Save() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\editor\unrealed\private\editorengine.cpp:3890]
UE4Editor_UnrealEd!UEditorEngine::SavePackage() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\editor\unrealed\private\editorengine.cpp:3947]
UE4Editor_UnrealEd!UEditorEngine::Exec_Obj() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\editor\unrealed\private\editorserver.cpp:4409]
UE4Editor_UnrealEd!UEditorEngine::Exec() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\editor\unrealed\private\editorserver.cpp:5494]
UE4Editor_UnrealEd!UUnrealEdEngine::Exec() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\editor\unrealed\private\unrealedsrv.cpp:744]
UE4Editor_UnrealEd!InternalSavePackage() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\editor\unrealed\private\filehelpers.cpp:2552]
UE4Editor_UnrealEd!FEditorFileUtils::PromptForCheckoutAndSave() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\editor\unrealed\private\filehelpers.cpp:3076]
UE4Editor_UnrealEd!FBlueprintCompileReinstancer::~FBlueprintCompileReinstancer() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\editor\unrealed\private\kismet2\kismetreinstanceutilities.cpp:359]
UE4Editor_UnrealEd!FBlueprintCompileReinstancer::`vector deleting destructor'()
UE4Editor_KismetCompiler!FKismet2CompilerModule::CompileBlueprint() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\editor\kismetcompiler\private\kismetcompilermodule.cpp:186]
UE4Editor_UnrealEd!FKismetEditorUtilities::CompileBlueprint() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\editor\unrealed\private\kismet2\kismet2.cpp:758]
UE4Editor_Kismet!FBlueprintEditor::Compile() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\editor\kismet\private\blueprinteditor.cpp:3147]
UE4Editor_Kismet!TBaseSPMethodDelegateInstance<0,FBlueprintEditor,0,TTypeWrapper<void> __cdecl(void)>::Execute() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\core\public\delegates\delegateinstancesimpl_variadics.inl:321]
UE4Editor_Kismet!TBaseSPMethodDelegateInstance<0,FBlueprintEditor,0,void __cdecl(void)>::ExecuteIfSafe() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\core\public\delegates\delegateinstancesimpl_variadics.inl:427]
UE4Editor_Slate!FUICommandList::ExecuteAction() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\slate\private\framework\commands\uicommandlist.cpp:87]
UE4Editor_Slate!SToolBarButtonBlock::OnClicked() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\slate\private\framework\multibox\stoolbarbuttonblock.cpp:300]
UE4Editor_Slate!TMemberFunctionCaller<SToolBarButtonBlock,FReply (__cdecl SToolBarButtonBlock::*)(void) __ptr64>::operator()<>() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\core\public\delegates\delegateinstanceinterface_variadics.h:161]
UE4Editor_Slate!TTupleImpl<TIntegerSequence<unsigned int> >::ApplyAfter_ExplicitReturnType<FReply,TMemberFunctionCaller<SToolBarButtonBlock,FReply (__cdecl SToolBarButtonBlock::*)(void) __ptr64> >() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\core\public\delegates\tuple.h:128]
UE4Editor_Slate!TBaseSPMethodDelegateInstance<0,SToolBarButtonBlock,0,FReply __cdecl(void)>::Execute() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\core\public\delegates\delegateinstancesimpl_variadics.inl:321]
UE4Editor_Slate!TBaseDelegate<FReply>::Execute() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\core\public\delegates\delegatesignatureimpl_variadics.inl:521]
UE4Editor_Slate!SButton::OnMouseButtonUp() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\slate\private\widgets\input\sbutton.cpp:273]
UE4Editor_Slate!<lambda_9ed539f2a96fd1ccd6d2214174cc7705>::operator()() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:4510]
UE4Editor_Slate!FEventRouter::Route<FReply,FEventRouter::FToLeafmostPolicy,FPointerEvent,<lambda_9ed539f2a96fd1ccd6d2214174cc7705> >() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:214]
UE4Editor_Slate!FSlateApplication::RoutePointerUpEvent() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:4500]
UE4Editor_Slate!FSlateApplication::ProcessMouseButtonUpEvent() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:4917]
UE4Editor_Slate!FSlateApplication::OnMouseUp() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:4893]
UE4Editor_Core!FWindowsApplication::ProcessDeferredMessage() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\core\private\windows\windowsapplication.cpp:1407]
UE4Editor_Core!FWindowsApplication::DeferMessage() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\core\private\windows\windowsapplication.cpp:1712]
UE4Editor_Core!FWindowsApplication::ProcessMessage() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\core\private\windows\windowsapplication.cpp:696]
UE4Editor_Core!FWindowsApplication::AppWndProc() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\core\private\windows\windowsapplication.cpp:618]
user32
user32
UE4Editor_Core!FWindowsPlatformMisc::PumpMessages() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\core\private\windows\windowsplatformmisc.cpp:884]
UE4Editor!FEngineLoop::Tick() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\launch\private\launchengineloop.cpp:2608]
UE4Editor!GuardedMain() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\launch\private\launch.cpp:142]
UE4Editor!GuardedMainWrapper() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\launch\private\windows\launchwindows.cpp:126]
UE4Editor!WinMain() [d:\buildfarm\buildmachine_++ue4+release-4.11\engine\source\runtime\launch\private\windows\launchwindows.cpp:200]
UE4Editor!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:264]
kernel32
ntdll

Hello Zwarmapapa,

I was unable to reproduce this issue on our end. I have a few questions for you that will help narrow down what issue it is that you are experiencing.

Quick questions:

  1. Can you reproduce this issue in a clean project?
  2. If so, could you provide a detailed set of steps to reproduce this issue on our end?
  3. Could you provide screen shots of any blue prints that may be involved with this issue?

I’m seeing this exact crash in both our projects when running Development Editor Win64 from the Visual Studio debugger (line #662 in FindInBlueprintManager.cpp).

Thanks to Zwarmapapa’s thought on it being Save related, I realised it’ll only crash if ‘Save on Compile → Always’ is turned on. Turning that off fixed the issue.

As with Zwarmapapa’s post, I’m seeing this in pretty much any and most blueprints (game mode, user widgets etc). I just need to make any change (delete a node; change a text string) and compile.

I’m trying to get the crash in a new project.

So far I’ve created a new blank project, created and assigned a game mode, created and assigned a player controller.

(I’ve tried this with both blueprint and c++ projects, both have the bug, it didn’t make a difference).

Then I’ve saved the two blueprints.

Now I try to edit the player controller, and then compile it, and then it will give an error:

Can't save ../../../../../../Unreal Projects/MyProject2/Content/Blueprints/NewPlayerController.uasset: Graph is linked to private object(s) in an external package.
External Object(s):
/Engine/Transient
  
Try to find the chain of references to that object (may take some time)?

In my other, older project this would be a crash, not an error.

If I save before I compile, then I won’t get this error, and everything will work fine.

If I make a change without saving and immediately try to compile it, it will always give this error.

Note that this only happens when editor setting ‘Save on Compile’ is set to ‘Always’.

If ‘Save on Compile’ is set to ‘Never’, then the error will not happen, it will just compile as expected then.

I’ve packed the project up, you can download it here:

In the project, open up the player controller, make a change (for example, disconnect the exec wire to print string and then reconnect it), compile it (without saving it first).

You should now see an error.

Hello Zwarmapapa,

I was able to reproduce this issue on our end. I have written up a report (UE-27509) and I have submitted it to the developers for further consideration. I will provide updates with any pertinent information as it becomes available. Thank you for your information and time.

Make it a great day