"class of" can use qualified identifiers. It works with "unit.classname".
But it can't be used on a class nested in another container? (same if TFoo is advanced record) Is that intentional? program Project1; type TFoo = class public type TBar = class end; end; TFooClass = class of Project1.TFoo; TBarClass = class of TFoo.TBar; /// <<<<<<< ERROR begin end. _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel