diff options
author | herbelin <herbelin@85f007b7-540e-0410-9357-904b9bb8a0f7> | 2010-10-03 13:12:11 +0000 |
---|---|---|
committer | herbelin <herbelin@85f007b7-540e-0410-9357-904b9bb8a0f7> | 2010-10-03 13:12:11 +0000 |
commit | 4a452a508a6c411599d6f34bafdec41a3e1d8303 (patch) | |
tree | 61dc105ea02aeb7853fba203299295045ad9bda2 /theories/Program/Syntax.v | |
parent | b82cb93d2020783f72a8f99142799b51ca7991a9 (diff) |
Using multiple lists of implicit arguments in Program for preserving
the compatibility with the rest of the theories. Used multiple lists
of implicit arguments in Init only when the maximality status is not
modified in Program (and thus the compatibility is strictly
preserved). This improves the compatibility for the implicit arguments
of eq_refl and JMeq_refl between 8.2 and 8.3 when using Program (up to
the residual differences in the maximality status). For the constants
Acc_inv, inl, inr, left, right, Vnil, Vcons, the compatibility with
8.2 is not improved but the consistency between Program and the rest
of the library is.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@13485 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'theories/Program/Syntax.v')
-rw-r--r-- | theories/Program/Syntax.v | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/theories/Program/Syntax.v b/theories/Program/Syntax.v index c185ced8f..fb8dc087b 100644 --- a/theories/Program/Syntax.v +++ b/theories/Program/Syntax.v @@ -18,16 +18,14 @@ Notation " () " := tt. (** Set maximally inserted implicit arguments for standard definitions. *) -Implicit Arguments eq [[A]]. - Implicit Arguments Some [[A]]. Implicit Arguments None [[A]]. -Implicit Arguments inl [[A] [B]]. -Implicit Arguments inr [[A] [B]]. +Implicit Arguments inl [[A] [B]] [A]. +Implicit Arguments inr [[A] [B]] [B]. -Implicit Arguments left [[A] [B]]. -Implicit Arguments right [[A] [B]]. +Implicit Arguments left [[A] [B]] [A]. +Implicit Arguments right [[A] [B]] [B]. Implicit Arguments pair [[A] [B]]. Implicit Arguments fst [[A] [B]]. @@ -46,8 +44,8 @@ Notation " [ x ; .. ; y ] " := (cons x .. (cons y nil) ..) : list_scope. Require Import Bvector. -Implicit Arguments Vnil [[A]]. -Implicit Arguments Vcons [[A] [n]]. +Implicit Arguments Vnil [[A]] []. +Implicit Arguments Vcons [[A] [n]] []. (** Treating n-ary exists *) |