Description
MWE:
julia> isuppercase('\xf0\x8e\x80\x80')
ERROR: Base.InvalidCharError{Char}('\xf0\x8e\x80\x80')
Stacktrace:
[1] throw_invalid_char(c::Char)
@ Base ./char.jl:86
[2] UInt32
@ ./char.jl:133 [inlined]
[3] isuppercase(c::Char)
@ Base.Unicode ./strings/unicode.jl:403
[4] top-level scope
@ REPL[12]:1
julia> Base.ismalformed('\xf0\x8e\x80\x80')
false
Either this is a requirement, or we can safely return false
here, as is done for malformed characters. Does utf8proc handle invalid/malformed chars on its own? The docs aren't clear about this.