In the Eclipse compiler, to detect a valid unicode, we call the method:
Character.getNumericValue(char) and we check that the returned value is between 0 and 15 to validate that only character between 0..F are allowed (see the JLS)
This was a mistake. Some characters can have a numeric value between 0 and 15 and they would not belong to the character between 0..F (including lowercase letters).
This bug report which shows why this was wrong was opened this week.
Here is a screenshot that shows the bogus code:
The fix is trivial, but it is surprising that this has never been found before. 10 years with that bug!
Enough for today.... back to work!
Wednesday, September 7, 2011
Subscribe to:
Posts (Atom)