diff options
author | xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e> | 2012-12-18 07:54:35 +0000 |
---|---|---|
committer | xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e> | 2012-12-18 07:54:35 +0000 |
commit | 712f3cbae6bfd3c6f6cc40d44f438aa0affcd371 (patch) | |
tree | 913762a241b5f97b3ef4df086ba6adaeb2ff45c4 /cparser/C.mli | |
parent | c629161139899e43a2fe7c5af59ca926cdab370e (diff) | |
download | compcert-712f3cbae6bfd3c6f6cc40d44f438aa0affcd371.tar.gz compcert-712f3cbae6bfd3c6f6cc40d44f438aa0affcd371.zip |
Support for inline assembly (asm statements).
cparser: add primitive support for enum types.
bitfield emulation: for bitfields with enum type, choose signed/unsigned as appropriate
git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@2074 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'cparser/C.mli')
-rw-r--r-- | cparser/C.mli | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/cparser/C.mli b/cparser/C.mli index 8e73bc56..ce58504b 100644 --- a/cparser/C.mli +++ b/cparser/C.mli @@ -150,6 +150,7 @@ type typ = | TNamed of ident * attributes | TStruct of ident * attributes | TUnion of ident * attributes + | TEnum of ident * attributes (** Expressions *) @@ -187,6 +188,7 @@ and stmt_desc = | Sreturn of exp option | Sblock of stmt list | Sdecl of decl + | Sasm of string and slabel = | Slabel of string @@ -218,6 +220,10 @@ type struct_or_union = | Struct | Union +(** Enumerator *) + +type enumerator = ident * int64 * exp option + (** Function definitions *) type fundef = { @@ -244,7 +250,8 @@ and globdecl_desc = | Gcompositedef of struct_or_union * ident * attributes * field list (* struct/union definition *) | Gtypedef of ident * typ (* typedef *) - | Genumdef of ident * (ident * exp option) list (* enum definition *) + | Genumdef of ident * attributes * enumerator list + (* enum definition *) | Gpragma of string (* #pragma directive *) type program = globdecl list |