Aladdin - Scala Bugtracking
[#525] project: compiler priority: low category: bug
submitter assigned to status date submitted
Lex Martin fixed 2006-02-07 16:49:28.0
subject non-ascii identifiers
code
object Hello { 
  val héllo = 3;
}
what happened
This gives three weird compiler errors.
what expected

Specification allows this. More generally, the range of input characters the scanner accepts is way smaller than that permitted by the specification.

Have a look at this page for Unicode categories. Identifiers should support Lu, Ll, Lo, Lt, Nl and '$', '_' (only Ll, Lu, '$', '_' as first character). Operator-identifiers should support Sm, So and '!', '#', '%', '&', '*', '-', '/', ':', '?', '@', '\', '^'.

[back to overview]
Changes of this bug report
Gilles  edited on  2006-03-27 17:10:36.0
Gilles  edited on  2006-03-27 17:30:47.0
Maybe syntax should be updated to broaden range as much as possible:
upper   ::=  <Lu> | <Sc> | <Pc>
lower   ::=  <Ll>
letter  ::=  upper | lower | <Lo> | <Lt> | <Nl>
digit   ::=  <N>
special ::=  <Po> | <Pd> | <Sk> | <Sm> | <So>
where <X> are all characters in Unicode category X.
Gilles  edited on  2006-03-27 18:24:04.0