Why should it crash? The proper procedure when validating a UTF-8 string is to replace errors with U+FFFD.
The term character has many meanings. Graphemes are characters and that's what most users expect, something that's displayed as a single graphical unit.
That's what they were hoping for. Didn't tuen out thst way. From icu-project.org:
"As with glyphs, there is no one-to-one relationship between characters and code points. What an end-user thinks of as a single character (grapheme) may in fact be represented by multiple code points; conversely, a single code point may correspond to multiple characters."
The term character has many meanings. Graphemes are characters and that's what most users expect, something that's displayed as a single graphical unit.