According to https://www.freepascal.org/docs-html/ref/refse34.html
Protected
Is the same as Private, except that the members of a Protected
section are also accessible to descendent types, even if they are
implemented in other modules.
"to descendant types" => suggests, from within a descendant type (even
if the descendant type is in a different unit).
But the example (working with 3.3.1) from
https://gitlab.com/freepascal.org/lazarus/lazarus/-/issues/41987 shows
that the protected method is accessible
*_through_* the descendant type.
I.e. from any code in the unit of the descendant type, even code outside
the descendant type, if it goes "through" the descendant type.
_______________________________________________
fpc-devel maillist - [email protected]
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel