If you build the engine yourself you can adjust the fix to also work for UE4
in LC_Coff.cpp:1348 change
from
LC_WARNING_USER("Non-unique symbol %s found in COFF file %s. Do not change the order of these variables while live coding, or consider upgrading to a newer compiler (VS 2015 or later)",
symbolName.c_str(), file->filename.c_str());
to
// BEGIN EPIC MOD - Import
// [CL 16621980 by Tim Smith in ue5-main branch]
// VS2019 seems to generate duplicate unwind and pdata block for the "dynamic atexit destructor" method (__F) under some conditions that I can't determine.
// Also, do not generate warnings for symbols in COMDATs
if (!coffDetail::IsComdatSection(section))
{
if (!string::StartsWith(symbolName.c_str(), "$unwind$??__F") &&
!string::StartsWith(symbolName.c_str(), "$pdata$??__F"))
{
LC_WARNING_USER("yeah yeah Non-unique symbol %s found in COFF file %s. Do not change the order of these variables while live coding, or consider upgrading to a newer compiler (VS 2015 or later)",
symbolName.c_str(), file->filename.c_str());
}
else
{
LC_LOG_USER("Non-unique at-exit symbol %s found in COFF file %s. These sometimes appear in debug builds",
symbolName.c_str(), file->filename.c_str());
}
}
you will also need to build the LiveCodingConsole Project in the UE4 engine source
to get a new LiveCodingConsole.exe