With the current low-tech approach to typing/validity checking for Lkt,
it is not possible to infer whether N designates a bare node type or an
entity type. Introduce a different syntax for entity types to avoid this
problem.
Upcoming work to implement typing/validation in Langkit directly, will
require typing to be possible bottom-up, like the one done during
abstract to resolved expression today. This requires each expression to
be typable independently of its parent, so raise expression need to have
type information attached. To achieve that, extend their syntax to
allow:
raise[T] PropertyError("error message")
This syntax addition will be easy to revert once the time is right to
make typing more powerful again. In the meantime, make it optional at
the parser level so that existing Lkt tests do not need to be updated.