C++ Bug: missing public dependency on Foliage for Landscape

#include "LandscapeEdit.h" involves #include "InstancedFoliageActor.h" in it.

Error is:

2>d:\dev\ue4\UE_4.20\Engine\Source\Runtime\Landscape\Public\LandscapeEdit.h(18): fatal error C1083: Cannot open include file: 'InstancedFoliageActor.h': No such file or directory

But Foliage dependency for Landscape module is private. This is incorrect and forces users to explicitly add Foliage dependency into their build configs.

Bumped into the same error, however including “Foliage” as a build module crashes the whole editor during compilation time so not sure how to actually solve the issue…

Unhandled Exception: EXCEPTION_ACCESS_VIOLATION 0x0000000300905a4d

ucrtbase
UnrealEditor_ProceduralWorld_patch_0!dllmain_crt_process_attach() [D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\dll_dllmain.cpp:66]
UnrealEditor_ProceduralWorld_patch_0!dllmain_dispatch() [D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\dll_dllmain.cpp:276]
UnrealEditor_LiveCoding!CommandMap::ReceiveAndCallAction<actions::CallEntryPoint>() [D:\build\++UE5\Sync\Engine\Source\Developer\Windows\LiveCoding\Private\External\LC_CommandMap.h:29]
UnrealEditor_LiveCoding!CommandMap::HandleCommands() [D:\build\++UE5\Sync\Engine\Source\Developer\Windows\LiveCoding\Private\External\LC_CommandMap.cpp:129]
UnrealEditor_LiveCoding!ClientCommandThread::ThreadFunction() [D:\build\++UE5\Sync\Engine\Source\Developer\Windows\LiveCoding\Private\External\LC_ClientCommandThread.cpp:97]
UnrealEditor_LiveCoding!<lambda_639f9379a0545b5648f1524aaec56a3f>::<lambda_invoker_cdecl>() [D:\build\++UE5\Sync\Engine\Source\Developer\Windows\LiveCoding\Private\External\LC_Thread.h:132]
ucrtbase
kernel32
ntdll
1 Like