J
Joshua Cranmer
* Section 3.1, Page 14:
For characters in the range U+0000 to U+FFFF, the values of [Unicode]
code points and UTF-16 code units are the same.
No they are not. U+D800 .. U+DFFF are not valid Unicode code points.
"Surrogates are code points from two special ranges of Unicode values"
[Quoted from <http://www.unicode.org/faq//utf_bom.html#utf16-2>, i.e.,
Unicode itself]
U+D800 to U+DFFF are indeed valid Unicode code points, according to
Unicode itself. It just happens that they have no meaning except as a
pair of values to represent non-BMP characters.