RepLayouts are associated with an Owning Object, which may be a Class, Function, or Struct.
RepLayouts will only be cleaned up when the Owning Object is no longer valid.
RepLayouts hold references to Replicated Properties.
Replicated Properties hold references to Outers.
These Outers are the Owning Objects of RepLayouts.
Therefore, RepLayouts never get cleaned up due to a circular reference.
The Blueprint Class would have no references, and would be cleaned up.
The Blueprint Class is referenced by an anonymous GCObject (the RepLayout) via its properties.
There's no existing public thread on this issue, so head over toAnswerHub just mention UE-70761 in the post.