In Delphi mode, the generics do not interfere with the namespace for variables, this means that the following will also compile:
Type TTest<T> = Class(TObject) Private FObj : T; Public Property Obj : T Read FObj Write FObj; end; Var TTest : Integer;
However, this does not work for constants and functions.