Am 16.04.2013 09:57, schrieb Anthony Walter:
I just wanted to get some opinions on this as to whether this is a
bug. Generics in 2.7.x trunk allows units which use a generic class
defined in another unit can access protected members.
Example:
unit A;
type
TFoo<T> = class
protected
Bar: T;
end;
<-- snip to next unit -->
unit B;
uses A;
Foo: TFoo<Integer>;
...
Foo.Bar := 42; // Code in unit B can access protected members of TFoo.
Should the above line generate a compiler error instead? That is ...
TFoo.Bar shouldn't visible unless your code is in Unit A or in a
method of a class which inherits TFoo<T>?
Delphi XE generates an error here, so this is indeed a bug. Would you
please report it together with a complete example?
Regards,
Sven
_______________________________________________
fpc-pascal maillist - fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal