I agree with Frank. Pascal usually has exactly one way to access something, which follows from the logical construction of that something.
Umm, except for:
* Case variant records * Variables passed by reference (but still within scope) * Variables referenced by pointer * Optionally qualified variables
and no doubt there are quite a few other ways to access something by more than one method.
Frankly I don't care whether only one or the other is legal (as long as the appropriate one is legal for a given object technology), but I also don't see any need to restrict it, since for any object o, and any method m, o.m and o^.m unambiguously mean the same thing and cannot mean anything else, whether both are legal or not. Allowing both means one less compiler switch, except that a warning or error would be appropriate in some dialects - I just don't see any need for a warning for the GPC "subsume all" dialect.
Enjoy, Peter.