Live Coding warnings after VS Community 2019 update to version 16.10.1

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

1 Like