aboutsummaryrefslogtreecommitdiffstats
path: root/common/AST.v
diff options
context:
space:
mode:
Diffstat (limited to 'common/AST.v')
-rw-r--r--common/AST.v11
1 files changed, 6 insertions, 5 deletions
diff --git a/common/AST.v b/common/AST.v
index 2550844b..387eb6b2 100644
--- a/common/AST.v
+++ b/common/AST.v
@@ -100,12 +100,13 @@ These signatures are used in particular to determine appropriate
calling conventions for the function. *)
Record calling_convention : Type := mkcallconv {
- cc_vararg: bool;
- cc_structret: bool
+ cc_vararg: bool; (**r variable-arity function *)
+ cc_unproto: bool; (**r old-style unprototyped function *)
+ cc_structret: bool (**r function returning a struct *)
}.
Definition cc_default :=
- {| cc_vararg := false; cc_structret := false |}.
+ {| cc_vararg := false; cc_unproto := false; cc_structret := false |}.
Record signature : Type := mksignature {
sig_args: list typ;
@@ -584,7 +585,7 @@ Inductive external_function : Type :=
(** Another form of annotation that takes one argument, produces
an event carrying the text and the value of this argument,
and returns the value of the argument. *)
- | EF_inline_asm (text: ident) (sg: signature) (clobbers: list ident).
+ | EF_inline_asm (text: ident) (sg: signature) (clobbers: list String.string).
(** Inline [asm] statements. Semantically, treated like an
annotation with no parameters ([EF_annot text nil]). To be
used with caution, as it can invalidate the semantic
@@ -642,7 +643,7 @@ Proof.
generalize ident_eq signature_eq chunk_eq typ_eq zeq Int.eq_dec; intros.
decide equality.
apply list_eq_dec. auto.
- apply list_eq_dec. auto.
+ apply list_eq_dec. apply String.string_dec.
Defined.
Global Opaque external_function_eq.