Skip to Content.
Sympa Menu

coq-club - [Coq-Club] Ltac match with unification variables (Regression in 8.3pl4?)

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

[Coq-Club] Ltac match with unification variables (Regression in 8.3pl4?)


chronological Thread 
  • From: Gregory Malecha <gmalecha AT eecs.harvard.edu>
  • To: Coq Club <coq-club AT inria.fr>
  • Subject: [Coq-Club] Ltac match with unification variables (Regression in 8.3pl4?)
  • Date: Fri, 20 Apr 2012 15:28:10 -0400

Hello,

For the 8.3 release there was a change in the semantics of Ltac match as it pertains to unification variables. In 8.2 and before, if X referred to a unification variable, then

match X with
  | X => idtac
end

would fail. This was viewed as a bug and changed in: http://www.lix.polytechnique.fr/coq/bugs/show_bug.cgi?id=2433

The old behavior seems to be back in 8.3pl4:

Goal exists x : nat, x = x.
  eexists.
  match goal with
    | [ |- ?X = ?Y ] =>
      match X with
        | Y => idtac "matched! Y"
        | X => idtac "matched! X"
        | _ => idtac "didn't match!"
      end
  end.

prints out "didn't match".

Thanks.

--
gregory malecha
http://www.people.fas.harvard.edu/~gmalecha/




Archive powered by MhonArc 2.6.16.

Top of Page