summaryrefslogtreecommitdiff
path: root/cparser/Cabs.ml
diff options
context:
space:
mode:
authorGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2012-11-03 10:36:15 +0000
committerGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2012-11-03 10:36:15 +0000
commitdcb9f48f51cec5e864565862a700c27df2a1a7e6 (patch)
treeb453b51b7406d3b1cf7191729637446a23ffc92c /cparser/Cabs.ml
parentbd93aa7ef9c19a4def8aa64c32faeb04ab2607e9 (diff)
Flocq-based parsing of floating-point literals (Jacques-Henri Jourdan)
git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@2065 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'cparser/Cabs.ml')
-rw-r--r--cparser/Cabs.ml10
1 files changed, 9 insertions, 1 deletions
diff --git a/cparser/Cabs.ml b/cparser/Cabs.ml
index a2bb512..23d3643 100644
--- a/cparser/Cabs.ml
+++ b/cparser/Cabs.ml
@@ -267,9 +267,17 @@ and expression =
| MEMBEROFPTR of expression * string
| GNU_BODY of block
+and floatInfo = {
+ isHex_FI:bool;
+ integer_FI:string option;
+ fraction_FI:string option;
+ exponent_FI:string option;
+ suffix_FI:char option;
+}
+
and constant =
| CONST_INT of string (* the textual representation *)
- | CONST_FLOAT of string (* the textual representaton *)
+ | CONST_FLOAT of floatInfo
| CONST_CHAR of int64 list
| CONST_WCHAR of int64 list
| CONST_STRING of string