Date: Sat, 25 May 2013 16:40:01 GMT From: Ed Schouten <ed@80386.nl> To: freebsd-toolchain@FreeBSD.org Subject: Re: bin/175930: [headers] clang does not define __STDC_ISO_10646__, despite having Unicode in wchar_t Message-ID: <201305251640.r4PGe1Rc002748@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR bin/175930; it has been noted by GNATS. From: Ed Schouten <ed@80386.nl> To: bug-followup@FreeBSD.org, tim@stdrand.com Cc: Subject: Re: bin/175930: [headers] clang does not define __STDC_ISO_10646__, despite having Unicode in wchar_t Date: Sat, 25 May 2013 18:38:28 +0200 Hi Tim, On FreeBSD, we should explicitly not define __STDC_ISO_10646__, as this condition does not hold. On FreeBSD, wchar_t contains the code point of the character as represented in the original character set. For example, if your LC_CTYPE is en_US.ISO8859-15 and you convert a Euro symbol to a wchar_t, it is stored internally as 0xa4 -- not 0x20ac. There is no character conversion. Related to this, I am working on a change right now to let Clang at least define __STDC_MB_MIGHT_NEQ_WC__, __STDC_UTF_16__ and __STDC_UTF_32__. -- Ed Schouten <ed@80386.nl>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201305251640.r4PGe1Rc002748>