diff --git a/packages/rtl/src/rtti.pas b/packages/rtl/src/rtti.pas index 0994643..7388a7c 100644 --- a/packages/rtl/src/rtti.pas +++ b/packages/rtl/src/rtti.pas @@ -1002,6 +1002,9 @@ begin end else Result.FData := ABuffer; + + if (Result.FTypeInfo.Kind = tkClass) and Result.IsClass and not Result.IsEmpty then + Result.FTypeInfo := Result.AsObject.ClassInfo; end; generic class procedure TValue.Make(const Value: T; var Result: TValue);