The definition of the delegate type must specify the class and property name of the delegate that will use it and the type cannot be used outside of that context or just on the stack.
UMulticastDelegateProperty is now abstract and has 2 subclasses (UMulticastDelegateInlineProperty and UMulticastDelegateSparseProperty). The SparseProperty SignatureFunction will be a USparseDelegateFunction.
The sparse delegates do not work correctly with the python bindings at this point, but this will be visited soon.
#rb Michael.Noland
#jira
#ROBOMERGE-OWNER: lina.halper
#ROBOMERGE-AUTHOR: marc.audy
#ROBOMERGE-SOURCE: CL 5295832 via CL 5306530 via CL 5306657
#ROBOMERGE-BOT: ANIM (Main -> Dev-Anim)
[CL 5322213 by marc audy in Dev-Anim branch]
- This enables reporting of unresolved symbols within a single module. Full reporting (i.e. symbols missing from both library currently being linked and all other
libraries it is linking to) is not enabled, because it doesn't work with our circular (re)linking scheme. When full reporting is enabled, if module A links to module B
that links to module A again, then A's symbols referenced in B are reported as unresolved.
- Even with this, some modules cannot be solved at this moment, so this change introduces a setting to opt-out.
Initially there were 5 modules that needed this opt-out. I solved most of them (some by disabling, since they missed the necessary libs), and now there is only one left.
Even the last one is solvable (UE-70768), so it is tempting to remove this option. However, I anticipate that there will be moment when a new module addition
will be breaking CIS due to unresolved symbols, and there will be no immediate and easy way to disable that except for nixing the whole system. Also, licensees may have more.
#rb Ben.Marsh, Anthony.Bills, Brandon.Schaefer
#fyi Marcin.Undak, Michael.Sartain, Brandon.Schaefer
[CL 5237830 by Arciel Rekman in Dev-Editor branch]
This fixes crashes where they would take references to things like an actor within a world, and then the active editor world was changed (which verifies against GC reference leaks).
#jira UE-69150
[FYI] Michael.Noland
#rb Lauren.Ridge
#ROBOMERGE-OWNER: lina.halper
#ROBOMERGE-AUTHOR: jamie.dale
#ROBOMERGE-SOURCE: CL 4987801 in //UE4/Release-4.22/... via CL 4987804
#ROBOMERGE-BOT: ANIM (Main -> Dev-Anim)
[CL 5043990 by jamie dale in Dev-Anim branch]
BlueprintInternalUseOnly functions are usually designed to be called via a K2 node wrapper, which may provide additional sanitization or data transformation (which Python is unaware of, so cannot mimic).
CustomThunk functions rely on popping Bytecode data off the stack, but Python calls functions natively so there is no Bytecode available and these functions will crash. We hope to address CustomThunk support in the future by synthesizing the correct Bytecode.
#jira UE-69818
#rb none
#ROBOMERGE-OWNER: lina.halper
#ROBOMERGE-AUTHOR: jamie.dale
#ROBOMERGE-SOURCE: CL 4951261 in //UE4/Release-4.22/... via CL 4951262
#ROBOMERGE-BOT: ANIM (Main -> Dev-Anim)
[CL 5023925 by jamie dale in Dev-Anim branch]