aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-10-03Adapting output/Arguments_renaming continued.Hugo Herbelin
2014-10-02Implement module subtyping for polymorphic constants (errors onMatthieu Sozeau
inductives). The implementation constant should have the a universe instance of the same length, we assume the universes are in the same order and we check that the definition does not add any constraints to the expected ones. This fixes bug #3670.
2014-10-02Fixing interpretation of constr under binders which was broken afterHugo Herbelin
it became possible to have binding names themselves bound to ltac variables (2fcc458af16b).
2014-10-02Fixing bug #2810 (autounfold on local variable declared as hint but cleared).Hugo Herbelin
2014-10-02Completing fixing order of parameters when translating fromHugo Herbelin
glob_constr to constr_pattern. Was partially fixed to solve #3088 (8e88b7adab) in but the order of lambdas was still incorrect as the fix of the order of lambdas in second-order pattern-matching for #3136 showed (83159124ce22).
2014-10-02An evar name changed in output test.Hugo Herbelin
2014-10-02Adapting the output test Notations:Hugo Herbelin
- unbound variables in notation are allowed, forcing only parsing mode - plus and mult are now themselves abbreviations - evars are named
2014-10-02Added make dependency in %.out in output tests.Hugo Herbelin
2014-10-02Revert "test-suite: New names for vars but the expected invariant is preserved"Hugo Herbelin
This reverts commit cc06ffe3df0ecc023ad046a085b0751ed4161cbf. Going back to the convention of naming bound variables in hypotheses of the goal as in 8.4. My arguments for the revert are: - apply ... with (id:=...) would have to be changed too, then possibly breaking the compatibility - the naming became dependent of the order of variables as in x:nat H:forall x0, x0=0 ===== goal but H:forall x, x=0 x:nat ===== goal Accordingly, this is all a matter of convention, since the meaning of bindings is anyway the same in both cases.
2014-10-02Adapting output/Arguments_renaming.out after fixing printing ofHugo Herbelin
constants which without a @ would have a maximally inserted implicit argument.
2014-10-02Print type and environment of unsolved holes.Arnaud Spiwack
Was just printed in the case of internal holes. Also: replace [str] by [strbrk] in error message of unsolved holes for better layout.
2014-10-02Work around issues with FO unification trying to unify terms ofMatthieu Sozeau
potentially different types, resulting in ill-typed terms due to eta. Projection expansion now fails gracefully on retyping errors. The proper fix to unification, checking that the heads for FO have unifiable types, is currently too strong, adding unnecessary universe constraints, so it is disabled for now. It might be quite expensive too also it's not noticeable on the stdlib.
2014-10-02Move eta-expansion after delta reduction in kernel reduction. This makesMatthieu Sozeau
it closer to evarconv/unification's behavior and it is less prone to weird failures and successes in case of first-order unification sending problems where the two terms have different types.
2014-10-02Fix treatment of projections in Cst_stacks and unfolding behavior in evarconv.Matthieu Sozeau
2014-10-01eta contractionsPierre Boutillier
2014-10-01argument flip of Cyclic31.nshiftr and Cyclic31.nshiftlPierre Boutillier
2014-10-01Simpl less (so that cbn will not simpl too much)Pierre Boutillier
2014-10-01Fix cbn behavior wrt simpl no matchPierre Boutillier
2014-10-01Fix the refolding by cbn of mutal constants defined in not included modulesPierre Boutillier
2014-10-01Fixing nice printing of error reporting with ml tactics bound to ltac names.Hugo Herbelin
2014-10-01Made Tacsubst independent of Auto at linking time so that Tacenv doesHugo Herbelin
not draw Auto.
2014-10-01Going back on granting wish #1039 in f5d7b2b1e so that apply withHugo Herbelin
works correctly with an hypothesis of the context and knowing that related bug #3204 had its own fix.
2014-10-01Fixing new failure of #3017 after 012fe1a96ba81ab (Referring to evarsHugo Herbelin
by names): VarInstance behaves like GoalEvar for type class resolution.
2014-10-01Fixing use of arguments renaming in apply which was broken afterHugo Herbelin
reorganization of apply in d5fece25d8964d5d9fcd55b66164286aeef5fb9f: using renaming also in retyping.
2014-10-01Updating to the new use of 3 universes, after Hurkens is simplified.Hugo Herbelin
2014-10-01STM: report the (structured) goals as XMLCarst Tankink
The leafs of the XML trees are still pretty-printed strings, but this could be refined later on.
2014-10-01Factored out IDE goal structure.Carst Tankink
The more structured goal record type of CoqIDE is also useful for other interfaces (in particular, for PIDE). To support this, the datatype was factored out to the Proof module. In addition, the record gains a type parameter, to allow interfaces to adapt the output to their needs. To accommodate this type, the Proof module also gains the map_structured_proof that takes a Proof.proof and a function on the individual goals (in the context of an evar map) and produces a structured goal based on the goal transformer.
2014-10-01Add additional location information to AST XMLs.Carst Tankink
2014-10-01coq_makefile: build and install *top.cmxs pluginsEnrico Tassi
These plugins, like coqidetop, stmworkertop and tacworkertop are intended for toploop replacements (see -toploop command line option). With this commit coq_makefile can be used as the build system for any user-interface-specific plugins.
2014-10-01Removing test for bug #2080.Pierre-Marie Pédrot
Naming a Ltac definition like a built-in tactic used to fail, but now only spits out a warning. This is too complicated to test...
2014-09-30Add a bunch of reproduction files for closed bugs.Xavier Clerc
2014-09-30Add a bunch of reproduction files for bugs.Xavier Clerc
2014-09-30Seeing IntroWildcard as an action intro pattern rather than as a naming patternHugo Herbelin
(the action is "clear"). Added subst_intropattern which was missing since the introduction of ApplyOn intro patterns. Still to do: make "intros _ ?id" working without interferences when "id" is precisely the internal name used for hypotheses to discard.
2014-09-30Add syntax for naming new goals in refine: writing ?[id] instead of _Hugo Herbelin
will name the goal id; writing ?[?id] will use the first fresh name available based with prefix id. Tactics intro, rename, change, ... from logic.ml now preserve goal name; cut preserves goal name on its main premise.
2014-09-30Simplify evarconv thanks to new delta status of projections,Matthieu Sozeau
using whd_state_gen to handle unfolding. Add an isProj/destProj in term. Use the proper environment everywhere in unification.ml.
2014-09-29XML pretty printing for AST (work by François Poulain, project DoCoq)Enrico Tassi
It is not 100% complete, but the main part is there.
2014-09-29Notation: option to attach extra pretty printing rules to notationsEnrico Tassi
so that one can retrieve them and pass them to third party tools (i.e. print the AST with the notations attached to the nodes concerned). Available syntax: - all in one: Notation "a /\ b" := ... (format "...", format "latex" "#1 \wedge #2"). - a posteriori: Format Notation "a /\ b" "latex" "#1 \wedge #2".
2014-09-29CoqIDE: new message to print ASTEnrico Tassi
2014-09-29typoEnrico Tassi
2014-09-29do not explode if a plugin is not up to date on -help (Close: 3673)Enrico Tassi
2014-09-29Merging some functions from evarutil.ml/evd.ml.Hugo Herbelin
- Removed collect_evars which does not consider instance (use evars_of_term instead). - Also removed evars_of_evar_info which did not filter context (use evars_of_filterered_evar_info instead). This is consistent with printing goal contexts in the filtered way. Anyway, as of today, afaics goals filters are trivial because (if I interpret evarutil.ml correctly), evars with non-trivial filter necessarily occur in a conv pb. Conversely, conv pbs being solved when tactics are called, there should not be an evar used as a goal with a non-trivial filter.
2014-09-29Printing evar instance in a more intuitive order.Hugo Herbelin
2014-09-29Restoring non-uniform delta on local and global constants in 2nd orderHugo Herbelin
unification for apply (compatibility reason). Waiting for another way to provide a more uniform scheme by default (keyed unification?).
2014-09-29Documenting option -type-in-type.Hugo Herbelin
2014-09-29Adding a test for bug #2428.Pierre-Marie Pédrot
2014-09-29Bug fixed.Matthieu Sozeau
2014-09-29Fix test-suite filesMatthieu Sozeau
3566 gave a legitimate error, keyedrewrite was not setting keyed unification on.
2014-09-29Fix printing of primitive record info.Matthieu Sozeau
2014-09-29In evarconv and unification, expand folded primitive projections toMatthieu Sozeau
their eta-expanded forms which can then unfold back to the unfolded primitive projection form. This removes all special code that was necessary to handle primitive projections before, while keeping compatibility. Also fix cbn which was not refolding primitive projections correctly in all cases. Update some test-suite files accordingly.
2014-09-28Print information about primitive records (Print and About).Matthieu Sozeau