The following code would call the int overload rather than the name overload when passed an EName constant, which could easily lead to confusion and bugs:
using FMyId = uint8;
void DoThing(FName);
void DoThing(FMyId);
DoThing(NAME_Actor);
The change to use enum class requires that any code that actually deals with EName as an int (mostly internal name code and serialisation) be updated to explicitly cast, but prevents the implicit conversion that causes the issue above.
In order to preserve the NAME_X aliases that the old-style enum added to the global scope, new aliases have been added that point to the EName scoped versions. Unfortunately these can cause shadowing warnings if NAME_X is defined in the local scope, as the old-style enum used to allow that without shadowing, however there is no way to prevent this so we'll just need to fix any warnings that occur.
#rb Johan.Torp
#preflight 6087e06349a9840001414708
[CL 16126708 by Jamie Dale in ue5-main branch]
Updated references to UE4 to Unreal in NetworkFileConnection.cpp
This required references to GPackageFileUE4Version and GPackageFileLicenseeUE4Version to also be updated to GPackageFileUnrealVersion and GPackageFileLicenseeUnrealVersion accordingly
#ROBOMERGE-SOURCE: CL 15850452 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v786-15839533)
[CL 15851651 by mark lintott in ue5-main branch]
#jira
#rb Rex.Hill
#rnx
#ROBOMERGE-SOURCE: CL 12167106 via CL 12167109 via CL 12167111
#ROBOMERGE-BOT: (v661-12148976)
[CL 12167113 by jamie dale in Main branch]
* Added some core string conversion paths
* Added FString::Append() and += overloads to avoid pointless temporaries when appending c strings and various other string types
* Added UTF32 <-> TCHAR string conversion macros
* Optimized QuotedString parsing
* Optimized property parsing
* PackageName optimizations
* SoftObjectPath optimizations
#jira none
#rb see original changelists
#ushell-cherrypick of 11932317 by Johan.Torp
#ushell-cherrypick of 11932319 by Johan.Torp
#ushell-cherrypick of 11932321 by Johan.Torp
#ushell-cherrypick of 11932322 by Johan.Torp
#ushell-cherrypick of 11932324 by Johan.Torp
#ushell-cherrypick of 11932462 by Johan.Torp
#ushell-cherrypick of 11934123 by Johan.Torp
#ushell-cherrypick of 12000177 by Johan.Torp
#ushell-cherrypick of 12000183 by Johan.Torp
#ushell-cherrypick of 12114232 by Johan.Torp
#ROBOMERGE-SOURCE: CL 12147981 in //UE4/Release-4.25/... via CL 12147984
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v659-12123632)
[CL 12147986 by johan torp in Main branch]
Sets ArIsError and ArIsCriticalError to private
[at]Graeme.Thornton [at]Johan.Torp [at]Steve.Robb [at]Carlos.Cuello
#rb Steve.Robb
#ROBOMERGE-OWNER: Eric.Knapik
#ROBOMERGE-AUTHOR: eric.knapik
#ROBOMERGE-SOURCE: CL 11949030 via CL 11949058 via CL 11949116 via CL 11949174
#ROBOMERGE-BOT: (v656-11643781)
[CL 11953024 by Eric Knapik in Main branch]