Trying to figure out how to print a UTF32 character in C and so far the answer seems to be "you can't"
@eniko On conforming implementions, printf("%lc", unicode_codepoint_val);
@dalias what type is unicode_codepoint_val
@eniko wint_t, but default promotions from wchar_t should be fine.
@dalias everything i've found tells me not to use wchar_t because it is unclear what width its going to be
@eniko Because Windows is wrong. If wchar_t is too narrow for full Unicode you're not allowed to support all of Unicode. C explicitly forbids "multi wchar_t chars" (thus UTF-16) which they do because they insisted on contradicting the experts in the early 90s who told them 16 bits wasn't enough and got themselves stuck. C11 strongly prefers wchar_t numeric vals be UCS codepoints (there's a macro that tells you this) and unless I'm misremembering, C23 requires it.
@kittylyst @lulu @eniko Getting rid of Java?
Yes, I know. Same for javascript. But this is so bad.