Michael Van Canneyt schrieb:
On Fri, 17 Aug 2007, Florian Klaempfl wrote:
Mattias Gaertner schrieb:
On Thu, 16 Aug 2007 23:31:25 +0200 (CEST)
Michael Van Canneyt <[EMAIL PROTECTED]> wrote:
[...]
Why is the local variable block needed?
It is not. I asked the same question. It was added for symmetry
reasons: if a local type block is allowed, then a var block should
also be allowed.
But they are not different from local fields.
Strange. ok.
What local types are/will be allowed?
For example, this is currently not allowed:
generic TTree<T> = class(TObject)
type public TTreeNode = specialize TNode<T>;
end;
And this neither:
generic TTree<T> = class(TObject)
type public
TTreeNode = class
Data: T;
end;
end;
OTOH records and pointers are allowed.
Will this stay, or is this just not yet implemented?
Is there a need to support this?
Well, it seems rather strange that the type block would not allow all
possible types.
Only a few types can be generic as well. Nested classes cause a lot of
hidden pitfalls, that's why they aren't allowed.
_______________________________________________
fpc-devel maillist - [email protected]
http://lists.freepascal.org/mailman/listinfo/fpc-devel