VM: Built-in identifier as prefix is not detected as a compile-time error. #28814

eernstg opened this Issue Feb 17, 2017 · 0 comments


None yet

1 participant

eernstg commented Feb 17, 2017 edited

This is the vm specific sub-issue for #28811, which has the details.

The vm should detect when a built-in identifier is declared as the name of a library prefix, and flag it as a compile-time error.

Usages are generally flagged as compile-time errors (the experiment mentioned in #28811 gives details). Assuming that #28817 is carried out as proposed, the vm does this already.

It looks like the vm treats the built-in identifiers as keywords (so abstract.int v1 = 42; fails because abstract is an unexpected token at that point, not because it is an identifier, so abstract.int is a type name, but abstract is not allowed to be used as a prefix), but even though the error message is off-track this is probably not a big problem.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment