aboutsummaryrefslogtreecommitdiffhomepage
path: root/pretyping
Commit message (Collapse)AuthorAge
...
* | | | | | | Merge PR#481: [option] Remove support for non-synchronous options.Gravatar Maxime Dénès2017-05-25
|\ \ \ \ \ \ \
* \ \ \ \ \ \ \ Merge branch 'trunk' into located_switchGravatar Emilio Jesus Gallego Arias2017-05-24
|\ \ \ \ \ \ \ \
| | * | | | | | | [option] Remove support for non-synchronous options.Gravatar Emilio Jesus Gallego Arias2017-05-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Inspired by https://coq.inria.fr/bugs/show_bug.cgi?id=5229 , which this PR solves, I propose to remove support for non-synchronous options. It seems the few uses of `optsync = false` we legacy and shouldn't have any impact. Moreover, non synchronous options may create particularly tricky situations as for instance, they won't be propagated to workers.
| * | | | | | | | Merge PR#650: Fixing an extra bug with pattern_of_constrGravatar Maxime Dénès2017-05-24
| |\ \ \ \ \ \ \ \
| * | | | | | | | | unification.mli: Fix a spelling typo in a commentGravatar Jason Gross2017-05-23
| | |/ / / / / / / | |/| | | | | | |
| | | | * | | | | Postponing of universe constraints unification in term equality.Gravatar Pierre-Marie Pédrot2017-05-23
| | |_|/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of calling the universe unification at each term node, we accumulate them and try to perform unification at the very end. This seems to be experimentally faster.
| | * | | | | | Fixing an extra bug with pattern_of_constr.Gravatar Hugo Herbelin2017-05-19
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ensure in type constr_pattern that those preexisting existential variables of the goal which do not contribute as pattern variables are expanded: constr_pattern is not observed up to evar expansion (like EConstr does), so we need to pre-normalize defined evars in patterns to that matching against an EConstr works.
| | * | | | | Merge branch 'master' into ltac2-hooksGravatar Pierre-Marie Pédrot2017-05-19
| | |\ \ \ \ \ | | |/ / / / / | |/| | | | |
| | | * | | | fix swapping of ids in tuples, bug 5486Gravatar Paul Steckler2017-05-17
| | | | | | |
| * | | | | | Merge branch 'v8.6'Gravatar Pierre-Marie Pédrot2017-05-17
| |\ \ \ \ \ \ | | | |/ / / / | | |/| | | |
| | * | | | | Removing a line warned unused.Gravatar Hugo Herbelin2017-05-14
| | | | | | |
| * | | | | | Merge PR#594: An example showing the benefit of EconstrGravatar Maxime Dénès2017-05-11
| |\ \ \ \ \ \
| * \ \ \ \ \ \ Merge PR#373: A refined solution to the beta-iota discrepancies between 8.4 ↵Gravatar Maxime Dénès2017-05-11
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | and 8.5/8.6 "refine"
| * \ \ \ \ \ \ \ Merge PR#606: Added an option Set Debug CbvGravatar Maxime Dénès2017-05-09
| |\ \ \ \ \ \ \ \
| * | | | | | | | | Remove dead code and unused open.Gravatar Maxime Dénès2017-05-05
| | | | | | | | | |
| * | | | | | | | | Merge PR#558: Adding a fold_glob_constr_with_binders combinatorGravatar Maxime Dénès2017-05-05
| |\ \ \ \ \ \ \ \ \
| | | | | * | | | | | Upgrading some local function as a general-purpose combinator Option.List.map.Gravatar Hugo Herbelin2017-05-05
| | |_|_|/ / / / / / | |/| | | | | | | |
| * | | | | | | | | Merge PR#544: Anonymous universesGravatar Maxime Dénès2017-05-05
| |\ \ \ \ \ \ \ \ \
| | | | | | | * | | | Generalizing the tactic-in-term embedding to any generic argument.Gravatar Pierre-Marie Pédrot2017-05-03
| | |_|_|_|_|/ / / / | |/| | | | | | | |
| * | | | | | | | | Merge PR#404: patch for printing types of let bindingsGravatar Maxime Dénès2017-05-03
| |\ \ \ \ \ \ \ \ \
| | | | | * | | | | | Added an option Set Debug Cbv.Gravatar Hugo Herbelin2017-05-03
| | |_|_|/ / / / / / | |/| | | | | | | |
| | | * | | | | | | Type@{_} should not produce a flexible algebraic universe.Gravatar Gaetan Gilbert2017-05-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Otherwise [(fun x => x) (Type : Type@{_})] becomes [(fun x : Type@{i+1} => x) (Type@{i} : Type@{i+1})] breaking the invariant that terms do not contain algebraic universes (at the lambda abstraction).
| | | * | | | | | | Allow flexible anonymous universes in instances and sorts.Gravatar Gaetan Gilbert2017-05-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The addition to the test suite showcases the usage.
| * | | | | | | | | Merge PR#411: Mention template polymorphism in the documentation.Gravatar Maxime Dénès2017-05-03
| |\ \ \ \ \ \ \ \ \ | | |_|/ / / / / / / | |/| | | | | | | |
| | | * | | | | | | applied the patch for printing types of let bindings by @herbelinGravatar Abhishek Anand (@brixpro-home)2017-05-02
| | |/ / / / / / / | |/| | | | | | |
| | | | | * | | | Fixing #5487 (v8.5 regression on ltac-matching expressions with evars).Gravatar Hugo Herbelin2017-05-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The fix follows an invariant enforced in proofview.ml on the kind of evars that are goals or that occur in goals. One day, evar kinds will need a little cleaning... PS: This is a second attempt, completing db28e82 which was missing the case PEvar in constr_matching.ml. Indeed the attached fix to #5487 alone made #2602 failing, revealing that the real cause for #2602 was actually not fixed and that if the test for #2602 was working it was because of #5487 hiding the real problem in #2602.
| | | | | * | | | Really fixing #2602 which was wrongly working because of #5487 hiding the cause.Gravatar Hugo Herbelin2017-05-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The cause was a missing evar/evar clause in ltac pattern-matching function (constr_matching.ml).
| | | | | * | | | Revert "Fixing #5487 (v8.5 regression on ltac-matching expressions with evars)."Gravatar Maxime Dénès2017-04-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | One day I'll get bored of spending my nights fixing commits that were pushed without being tested, and I'll ask for removal of push rights. But for now let's pretend I haven't insisted enough: ~~~~ PLEASE TEST YOUR COMMITS BEFORE PUSHING ~~~~ Thank you!
| | | | | * | | | Fixing #5487 (v8.5 regression on ltac-matching expressions with evars).Gravatar Hugo Herbelin2017-04-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The fix follows an invariant enforced in proofview.ml on the kind of evars that are goals or that occur in goals. One day, evar kinds will need a little cleaning...
| * | | | | | | | Post-rebase warnings (unused opens and 2 unused values)Gravatar Gaetan Gilbert2017-04-27
| | | | | | | | |
| * | | | | | | | Fix 4.04 warningsGravatar Gaetan Gilbert2017-04-27
| | | | | | | | |
| * | | | | | | | Remove unused [open] statementsGravatar Gaetan Gilbert2017-04-27
| | | | | | | | |
| * | | | | | | | Remove some unused values and typesGravatar Gaetan Gilbert2017-04-27
| | | | | | | | |
| * | | | | | | | Fix omitted labels in function callsGravatar Gaetan Gilbert2017-04-27
| | | | | | | | |
| | | | * | | | | A refined solution to the beta-iota discrepancies between 8.4 and 8.5 "refine".Gravatar Hugo Herbelin2017-04-27
| | |_|/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is a long story of commits trying to improve the compatibility between 8.4 and 8.5 refine, as discussed in https://github.com/coq/coq/pull/346. ac9c5986b77bf4a783f2bd0ad571645694c960e1 add beta-iota in hypotheses and conclusion 8afac4f87d9d7e3add1c19485f475bd2207bfde7 remove beta-iota in hypotheses 08e87eb96ab67ead60d92394eec6066d9b52e55e re-add beta-iota in hypotheses c9c54122d1d9493a965b483939e119d52121d5a6 re-remove beta-iota in hypotheses 9194180e2da0f7f9a2b2c7574bb7261cc69ead17 revert re-remove beta-iota in hypotheses 6bb352a6743c7332b9715ac15e95c806a58d101c re-re-remove beta-iota in hypotheses if <= 8.5 d8baa76d86eaa691a5386669596a6004bb44bb7a idem if = 8.5 The current commit tries to identify (one of?) the exact points of divergence between 8.4 and 8.5 refine, namely the types inferred for the variables of a pattern-matching problem. Note that for the conclusion of each new goal, there were a nf_betaiota in 8.4 done in function Evarutil.evars_to_metas, so the compatibility expects that such a nf_betaiota on the conclusion of each goal remains.
| * | | | | | | Merge branch 'v8.6'Gravatar Pierre-Marie Pédrot2017-04-27
| |\ \ \ \ \ \ \ | | | |_|/ / / / | | |/| | | | |
* | | | | | | | [location] [ast] Port module AST to CAstGravatar Emilio Jesus Gallego Arias2017-04-25
| | | | | | | |
* | | | | | | | [location] Make location optional in Loc.locatedGravatar Emilio Jesus Gallego Arias2017-04-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This completes the Loc.ghost removal, the idea is to gear the API towards optional, but uniform, location handling. We don't print <unknown> anymore in the case there is no location. This is what the test suite expects. The old printing logic for located items was a bit inconsistent as it sometimes printed <unknown> and other times it printed nothing as the caller checked for `is_ghost` upstream.
* | | | | | | | [location] Remove Loc.ghost.Gravatar Emilio Jesus Gallego Arias2017-04-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now it is a private field, locations are optional.
* | | | | | | | [location] Use located in misctypes.Gravatar Emilio Jesus Gallego Arias2017-04-24
| | | | | | | |
* | | | | | | | [location] Switch glob_constr to Loc.locatedGravatar Emilio Jesus Gallego Arias2017-04-24
| | | | | | | |
* | | | | | | | [location] Move Glob_term.predicate_pattern to located.Gravatar Emilio Jesus Gallego Arias2017-04-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We continue the uniformization pass. No big news here, trying to be minimally invasive.
* | | | | | | | [location] Move Glob_term.cases_pattern to located.Gravatar Emilio Jesus Gallego Arias2017-04-24
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | We continue the uniformization pass. No big news here, trying to be minimally invasive.
* | | | | | | Merge PR#579: [flags] Deprecate is_silent/is_verbose in favor of single flag.Gravatar Maxime Dénès2017-04-24
|\ \ \ \ \ \ \
| * | | | | | | [flags] Deprecate is_silent/is_verbose in favor of single flag.Gravatar Emilio Jesus Gallego Arias2017-04-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Today, both modes are controlled by a single flag, however this is a bit misleading as is_silent really means "quiet", that is to say `coqc -q` whereas "verbose" is Coq normal operation. We also restore proper behavior of goal printing in coqtop on quiet mode, thanks to @Matafou for the report.
| | * | | | | | Fix bug #5377: @? patterns broken.Gravatar Pierre-Marie Pédrot2017-04-20
| | | | | | | |
* | | | | | | | Fix bug #5476: Ltac has an inconsistent view of hypotheses.Gravatar Pierre-Marie Pédrot2017-04-19
|/ / / / / / /
* | | | | | | Merge branch 'v8.6' into trunkGravatar Maxime Dénès2017-04-15
|\| | | | | |
| | | | | * | Reinstate fixpoint refolding in [cbn], deactivated by mistake.Gravatar Matthieu Sozeau2017-04-13
| | |_|_|/ / | |/| | | | | | | | | | | | | | | | Add a test-suite file to be sure we won't regress silently.
| | | * | | Using fold_glob_constr_with_binders to code bound_glob_vars.Gravatar Hugo Herbelin2017-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To use the generic combinator, we introduce a side effect. I believe that we have more to gain from a short code than from being purely functional. This also fixes the expected semantics since the variables binding the return type in "match" were not taking into account.