diff options
author | Xavier Leroy <xavier.leroy@inria.fr> | 2014-12-30 17:10:43 +0100 |
---|---|---|
committer | Xavier Leroy <xavier.leroy@inria.fr> | 2014-12-30 17:10:43 +0100 |
commit | 3b8a094dafdeea5499239adadaf24d2b8bdb1f76 (patch) | |
tree | f43cb88aa5e8f0d80a11af889b59163e07dac894 /cparser/Machine.mli | |
parent | 2d32afc5daf16c75d1a34f2716c34ae2e1efcce4 (diff) | |
download | compcert-3b8a094dafdeea5499239adadaf24d2b8bdb1f76.tar.gz compcert-3b8a094dafdeea5499239adadaf24d2b8bdb1f76.zip |
PR#6: fix handling of wchar_t and assignments from wide string literals.
- cparser/Machine indicates whether wchar_t is signed or not
(it is signed int in Linux and BSD, but unsigned short in Win32)
- The type of a wide string literal is "wchar_t *" if the typedef "wchar_t"
exists in the environment (e.g. after #include <stddef.h>). Only if
wchar_t is not defined do we use the default from Machine.
- Permit initialization of any integer array from a wide string literal,
not just an array of wchar_t.
Diffstat (limited to 'cparser/Machine.mli')
-rw-r--r-- | cparser/Machine.mli | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/cparser/Machine.mli b/cparser/Machine.mli index 0381bfce..b544711f 100644 --- a/cparser/Machine.mli +++ b/cparser/Machine.mli @@ -29,6 +29,7 @@ type t = { sizeof_void: int option; sizeof_fun: int option; sizeof_wchar: int; + wchar_signed: bool; sizeof_size_t: int; sizeof_ptrdiff_t: int; alignof_ptr: int; @@ -51,6 +52,7 @@ val i32lpll64 : t val il32pll64 : t val x86_32 : t val x86_64 : t +val win32 : t val win64 : t val ppc_32_bigendian : t val arm_littleendian : t |