diff options
| author | msozeau | 2008-02-26 15:58:32 +0000 |
|---|---|---|
| committer | msozeau | 2008-02-26 15:58:32 +0000 |
| commit | d081dcfaedb5b7e2ad78574a053bcebc4bfb564a (patch) | |
| tree | dfdb78d703b6eb48d43b4ca555a3fd24e37db574 /contrib | |
| parent | e467f77a19229058070d43e9cf1080534b9aee74 (diff) | |
Proper implicit arguments handling for assumptions
(Axiom/Variable...). New tactic clapply to apply unapplied class methods
in tactic mode, simple solution to the fact that apply does not work
up-to classes yet. Add Functions.v for class definitions related to
functional morphisms.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@10589 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'contrib')
| -rw-r--r-- | contrib/subtac/subtac.ml | 4 | ||||
| -rw-r--r-- | contrib/subtac/subtac_classes.ml | 3 | ||||
| -rw-r--r-- | contrib/subtac/subtac_classes.mli | 2 |
3 files changed, 5 insertions, 4 deletions
diff --git a/contrib/subtac/subtac.ml b/contrib/subtac/subtac.ml index f3696f6ec9..e9c2ed4e52 100644 --- a/contrib/subtac/subtac.ml +++ b/contrib/subtac/subtac.ml @@ -100,7 +100,7 @@ let declare_assumption env isevars idl is_coe k bl c nl = Subtac_pretyping.subtac_process env isevars id [] (Command.generalize_constr_expr c bl) None in let c = solve_tccs_in_type env id isevars evm c typ in - List.iter (Command.declare_one_assumption is_coe k c nl) idl + List.iter (Command.declare_one_assumption is_coe k c imps nl) idl else errorlabstrm "Command.Assumption" (str "Cannot declare an assumption while in proof editing mode.") @@ -149,7 +149,7 @@ let subtac (loc, command) = vernac_assumption env isevars stre l nl | VernacInstance (sup, is, props) -> - Subtac_classes.new_instance sup is props + ignore(Subtac_classes.new_instance sup is props) | VernacCoFixpoint (l, b) -> let _ = trace (str "Building cofixpoint") in diff --git a/contrib/subtac/subtac_classes.ml b/contrib/subtac/subtac_classes.ml index fb15e41b6a..e439021635 100644 --- a/contrib/subtac/subtac_classes.ml +++ b/contrib/subtac/subtac_classes.ml @@ -221,4 +221,5 @@ let new_instance ctx (instid, bk, cl) props = in let evm = Subtac_utils.evars_of_term (Evd.evars_of !isevars) Evd.empty term in let obls, constr, typ = Eterm.eterm_obligations env id !isevars evm 0 term termtype in - ignore (Subtac_obligations.add_definition id constr typ ~kind:Instance ~hook obls) + ignore(Subtac_obligations.add_definition id constr typ ~kind:Instance ~hook obls); + id diff --git a/contrib/subtac/subtac_classes.mli b/contrib/subtac/subtac_classes.mli index f9b36b0c06..12a6e29549 100644 --- a/contrib/subtac/subtac_classes.mli +++ b/contrib/subtac/subtac_classes.mli @@ -36,4 +36,4 @@ val new_instance : Topconstr.local_binder list -> typeclass_constraint -> binder_def_list -> - unit + identifier |
