diff options
author | Hugo Herbelin <Hugo.Herbelin@inria.fr> | 2015-11-07 07:20:34 +0100 |
---|---|---|
committer | Hugo Herbelin <Hugo.Herbelin@inria.fr> | 2015-11-18 14:18:13 +0100 |
commit | c71aa6bd368b801bb17d4da69d1ab1e2bd7cbf39 (patch) | |
tree | f5723156276688c3be4221521a218d1f7b818db1 /test-suite/success/primitiveproj.v | |
parent | c4fef5b9d2be739cad030131fd6fc4c07d5e2e08 (diff) |
Fixing logical bugs in the presence of let-ins in computiong primitive
projections.
- lift accounting for the record missing in computing the subst from
fields to projections of the record
- substitution for parameters should not lift the local definitions
- typo in building the latter (subst -> letsubst)
Diffstat (limited to 'test-suite/success/primitiveproj.v')
-rw-r--r-- | test-suite/success/primitiveproj.v | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/test-suite/success/primitiveproj.v b/test-suite/success/primitiveproj.v index 125615c53..281d707cb 100644 --- a/test-suite/success/primitiveproj.v +++ b/test-suite/success/primitiveproj.v @@ -194,4 +194,17 @@ Record wrap (A : Type) := { unwrap : A; unwrap2 : A }. Definition term (x : wrap nat) := x.(unwrap). Definition term' (x : wrap nat) := let f := (@unwrap2 nat) in f x. Recursive Extraction term term'. -(*Unset Printing Primitive Projection Parameters.*)
\ No newline at end of file +(*Unset Printing Primitive Projection Parameters.*) + +(* Primitive projections in the presence of let-ins (was not failing in beta3)*) + +Set Primitive Projections. +Record s (x:nat) (y:=S x) := {c:=x; d:x=c}. +Lemma f : 0=1. +Proof. +Fail apply d. +(* +split. +reflexivity. +Qed. +*) |