diff options
Diffstat (limited to 'cfrontend')
-rw-r--r-- | cfrontend/Initializers.v | 2 | ||||
-rw-r--r-- | cfrontend/Initializersproof.v | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/cfrontend/Initializers.v b/cfrontend/Initializers.v index 657f607..cb2f132 100644 --- a/cfrontend/Initializers.v +++ b/cfrontend/Initializers.v @@ -147,7 +147,7 @@ Definition transl_init_single (ty: type) (a: expr) : res init_data := do v1 <- constval a; do v2 <- do_cast v1 (typeof a) ty; match v2, ty with - | Vint n, Tint I8 sg _ => OK(Init_int8 n) + | Vint n, Tint (I8|IBool) sg _ => OK(Init_int8 n) | Vint n, Tint I16 sg _ => OK(Init_int16 n) | Vint n, Tint I32 sg _ => OK(Init_int32 n) | Vint n, Tpointer _ _ => OK(Init_int32 n) diff --git a/cfrontend/Initializersproof.v b/cfrontend/Initializersproof.v index c2ca135..2f29514 100644 --- a/cfrontend/Initializersproof.v +++ b/cfrontend/Initializersproof.v @@ -504,6 +504,7 @@ Proof. destruct s; simpl in H2; inv H2. rewrite <- Mem.store_signed_unsigned_8; auto. auto. destruct s; simpl in H2; inv H2. rewrite <- Mem.store_signed_unsigned_16; auto. auto. simpl in H2; inv H2. assumption. + simpl in H2; inv H2. assumption. inv EQ2. simpl in H2; inv H2. assumption. (* long *) destruct ty; inv EQ2. simpl in H2; inv H2. assumption. |