dormky 2 Posted January 26 TMyRecord = record myArray: array [0..1] of Integer; end; The Delphi compiler seemingly does not generate runtime type information for "myArray". This seems strange, as : TMyRecord = record myRecord: record myint: Integer; end; end; Here "myRecord" will get RTTI generated, with a name such as "TMyRecord:1". TRttiArrayType exists to represent array types, but seemingly the decision was made to just... not use it ? What's the technical reason behind the refusal to generate RTTI for this case ? It seems everything is there to do it, and the compiler just... doesn't. From an outside perpective, is seems it would be exceedingly easy to implement. Share this post Link to post
Leif Uneus 43 Posted January 26 (edited) You have to declare the array type in order to use RTTI. RTTI only works on pre-defined types. TMyArray = array[0..1] of Integer; Edited January 26 by Leif Uneus Share this post Link to post
darnocian 87 Posted February 19 (edited) Yeah, it is a bit annoying though... We can't always change a 3rd party library that we want to inspect via rtti. there are always workarounds... ;( Edited February 19 by darnocian Share this post Link to post