toupper is:exact

Convert a letter to the corresponding upper-case letter, if any. Any other character is returned unchanged.
O(n) Convert a string to upper case, using simple case conversion. The result string may be longer than the input string. For instance, the German "ß" (eszett, U+00DF) maps to the two-letter sequence "SS".
O(n) Convert a string to upper case, using simple case conversion. The result string may be longer than the input string. For instance, the German eszett (U+00DF) maps to the two-letter sequence SS. Properties
unstream . toUpper . stream = toUpper
O(n) Convert a string to upper case, using simple case conversion. The result string may be longer than the input string. For instance, the German eszett (U+00DF) maps to the two-letter sequence SS.
O(n) Convert a string to upper case, using simple case conversion. Subject to fusion. The result string may be longer than the input string. For instance, the German "ß" (eszett, U+00DF) maps to the two-letter sequence "SS".
O(n) Convert a string to upper case, using simple case conversion. Subject to fusion. The result string may be longer than the input string. For instance, the German eszett (U+00DF) maps to the two-letter sequence SS.
Convert a textual sequence to upper-case.
> toUpper "hello world"
"HELLO WORLD"
Micro sign/mu (0xb5) and small letter Y with diaeresis (0xff) remain the same.
Micro sign/mu (0xb5) and small letter Y with diaeresis (0xff) remain the same.
O(n) Convert a string to upper case, using simple case conversion. Subject to fusion. The result string may be longer than the input string. For instance, the German "ß" (eszett, U+00DF) maps to the two-letter sequence "SS".
Uppercase the characters in a string. Casing is locale dependent and context sensitive. The result may be longer or shorter than the original.
Convert a letter to the corresponding upper-case letter, if any. Any other character is returned unchanged. It uses the character property Simple_Uppercase_Mapping. See: upperCaseMapping and toUpperString for full upper case conversion.
toUpper c == Data.Char.toUpper c
Map upper-case ASCII letters to the corresponding lower-case letters, leaving other characters as is.
Map upper-case Latin-1 letters to the corresponding lower-case letters, leaving other characters as is.