確かにバグっぽいのですが、試用版しか持っていないので直ったのかもしれません。
ITestInterface = interface
['{9445CED8-4DBA-4EDB-9897-60980B438BE4}']
procedure Foo1;
procedure Foo2;
end;
TTest = class(TInterfacedObject, ITestInterface)
end;
上記は正しくコンパイルされません。しかし、次はそうです!
ITestInterface<t> = interface
['{9445CED8-4DBA-4EDB-9897-60980B438BE4}']
procedure Foo1;
procedure Foo2;
end;
TTest<T> = class(TInterfacedObject, ITestInterface<T>)
end;
編集: TTest をインスタンス化しようとすると失敗することがわかりました。少し一貫性がありませんが、それほど悪くはありません。