Date: Sat, 09 Feb 2013 18:52:54 +0100 From: Dimitry Andric <dim@FreeBSD.org> To: linimon@FreeBSD.org, freebsd-bugs@FreeBSD.org, freebsd-toolchain@FreeBSD.org Subject: Re: bin/175930: clang does not define __STDC_ISO_10646__, despite having Unicode in wchar_t Message-ID: <51168CF6.4030204@FreeBSD.org> In-Reply-To: <201302091603.r19G3Je7088418@freefall.freebsd.org> References: <201302091603.r19G3Je7088418@freefall.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2013-02-09 17:03, linimon@FreeBSD.org wrote:> Old Synopsis: CLang does not define __STDC_ISO_10646__, despite having Unicode in wchar_t > New Synopsis: clang does not define __STDC_ISO_10646__, despite having Unicode in wchar_t > > Responsible-Changed-From-To: freebsd-bugs->freebsd-toolchain > Responsible-Changed-By: linimon > Responsible-Changed-When: Sat Feb 9 16:02:36 UTC 2013 > Responsible-Changed-Why: > let's see if anyone on toolchain@ has an opinion. > > http://www.freebsd.org/cgi/query-pr.cgi?pr=175930 I don't think this has anything to do with clang (or gcc, for that matter). It is a potential issue with our system headers, specifically <wchar.h>. Our wchar_t is either int or unsigned int (on armeabi), so I guess it should not be a problem to define a sensible value for the __STDC_ISO_10646__ macro there. As to what the exact value should be, I have no idea really. The C99 standard says only this: __STDC_ISO_10646__ An integer constant of the form yyyymmL (for example, 199712L), intended to indicate that values of type wchar_t are the coded representations of the characters defined by ISO/IEC 10646, along with all amendments and technical corrigenda as of the specified year and month. GNU libc has this: /* wchar_t uses ISO 10646-1 (2nd ed., published 2000-09-15) / Unicode 3.1. */ #define __STDC_ISO_10646__ 200009L So maybe that is a good value for us too?
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?51168CF6.4030204>