diff options
author | xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e> | 2010-03-07 17:49:18 +0000 |
---|---|---|
committer | xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e> | 2010-03-07 17:49:18 +0000 |
commit | c24a652789e15b33153c1d90c6869eb6e6e28040 (patch) | |
tree | e5e5aa2767fe098e3b23f82091ff6d60b0c6d8f2 /cparser/Builtins.ml | |
parent | 6a8503115a9952dc793d15d0ea9033b68b30aae6 (diff) | |
download | compcert-c24a652789e15b33153c1d90c6869eb6e6e28040.tar.gz compcert-c24a652789e15b33153c1d90c6869eb6e6e28040.zip |
Handling of builtins, continued.
PrintCsyntax, PrintAsm: improve printing of float literals.
git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@1284 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'cparser/Builtins.ml')
-rw-r--r-- | cparser/Builtins.ml | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/cparser/Builtins.ml b/cparser/Builtins.ml index 020452f9..8eb1abfd 100644 --- a/cparser/Builtins.ml +++ b/cparser/Builtins.ml @@ -20,14 +20,17 @@ open Cutil let env = ref Env.empty let idents = ref [] +let decls = ref [] let environment () = !env let identifiers () = !idents +let declarations () = List.rev !decls let add_typedef (s, ty) = let (id, env') = Env.enter_typedef !env s ty in env := env'; - idents := id :: !idents + idents := id :: !idents; + decls := {gdesc = Gtypedef(id, ty); gloc = no_loc} :: !decls let add_function (s, (res, args, va)) = let ty = @@ -36,7 +39,8 @@ let add_function (s, (res, args, va)) = va, []) in let (id, env') = Env.enter_ident !env s Storage_extern ty in env := env'; - idents := id :: !idents + idents := id :: !idents; + decls := {gdesc = Gdecl(Storage_extern, id, ty, None); gloc = no_loc} :: !decls type t = { typedefs: (string * C.typ) list; |