I'm not big on FPC, but could it be as simple as the lack of a parent class?

You've defined TObj as Class, try TObj = class(TObject).

AS I say, I'm not big on FPC, but thats the only thing I could think of from looking at your code.