Repository navigation
Conversation
UE 5.8 deprecates REN_ForceNoResetLoaders (C4996, "Rename will no longer call ResetLoaders making this flag no longer needed ... your project will no longer compile" on the next release). UObject::Rename does not read the flag on 5.8, so omitting it changes nothing there. The suggested REN_AllowPackageLinkerMismatch is not a substitute: it keeps the linker on a package move and skips 5.8's export detach on an in-place rename, neither of which these call sites ask for (the one that moves an object already calls FLinkerLoad::InvalidateExport). The five Rename calls in JSGeneratedClass.cpp and PEBlueprintAsset.cpp now take PUERTS_RENAME_FLAGS, a file-local macro that omits the flag on 5.8 and later and keeps REN_DontCreateRedirectors | REN_DoNotDirty | REN_ForceNoResetLoaders on earlier engines, where Rename could still reset loaders.
Contributor
Author
|
@heitara FYI |
kbrizov
added a commit
to kbrizov/puerts
that referenced
this pull request
Sep 10, 2026
…nt#2365 Tencent#2366) All fork-local changes on kbrizov master (ContainerMeta constructor gate, reserved-word escaping, ProcessMulticastDelegate gate) are superseded by the merged PRs or by Tencent's own fixes; conflicts resolved by taking heitara's version throughout. Resulting tree is identical to heitara master.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
UE 5.8 deprecates
REN_ForceNoResetLoaders(C4996: "Rename will no longer call ResetLoaders making this flag no longer needed … your project will no longer compile" on the next release). The plugin passes it in fiveRenamecalls, three inJSGeneratedClass.cppand two inPEBlueprintAsset.cpp. This PR omits the flag on 5.8 and later and keeps it on earlier engines.Why omit rather than replace
The deprecation note suggests
REN_AllowPackageLinkerMismatch. That flag is not a substitute for these call sites:UObject::Renamedoes not readREN_ForceNoResetLoadersat all, so omitting it changes nothing.REN_AllowPackageLinkerMismatchdoes have effects: it keeps the object's linker when it is moved to another package, and on 5.8 it suppresses the new editor-only detach of a loaded object's export on an in-place rename. None of the five calls wants either. Two rename aUFunctionin place within the same class (Override,Restore), one moves a function to the orphan class and already callsFLinkerLoad::InvalidateExporton it, and two rename aUEdGraphin place to<name>__Removed.Renameunless this flag was set, so the flag is kept there.