in
let ty,_ =
CicTypeChecker.type_of_aux' metasenv context rhs CicUniv.empty_ugraph in
- let just =
+ let just' =
match just with
`Auto params ->
let params =
~continuations:[Tacticals.id_tac ; continuation]) (proof,goal)
in
let goals =
- match goals with
- [g1;g2] -> [g2;newmeta;g1]
+ match just,goals with
+ `Proof, [g1;g2;g3] -> [g2;g3;newmeta;g1]
+ | _, [g1;g2] -> [g2;newmeta;g1]
| _ -> assert false
in
proof,goals)
let continuation =
if last_step then
(*CSC:manca controllo sul fatto che rhs sia convertibile con prhs*)
- just
+ just'
else
Tacticals.thens
~start:(Tactics.apply ~term:(Cic.Appl [trans;ty;plhs;rhs;prhs]))
- ~continuations:[just ; Tacticals.id_tac]
+ ~continuations:[just' ; Tacticals.id_tac]
in
prepare continuation
in