aboutsummaryrefslogtreecommitdiffhomepage
path: root/test-suite/bugs/closed
Commit message (Collapse)AuthorAge
* A fix for #5097 (status of evars refined by "clear" in ltac: closed wrt evars).Gravatar Hugo Herbelin2016-10-20
| | | | | | | | | If an existing evar was cleared in pretyping (typically while processing "ltac:"), it created an evar considered as new. Updating them instead along the "cleared" flag. If correct, I suspect similar treatment should be done for refining along "change", "rename" and "move".
* Fixing to #3209 (Not_found due to an occur-check cycle).Gravatar Hugo Herbelin2016-10-17
| | | | | | | The fix solves the original bug report but it only turns the Not_found into a normal error in the alternative example by Guillaume. See test-suite file for comments on how to eventually improve the situation and find a solution in Guillaume's example too.
* Merge remote-tracking branch 'git/bug5123' into v8.5Gravatar Matthieu Sozeau2016-10-12
|\
| * Fix test-suite file 5123 to fail in case of regressionGravatar Matthieu Sozeau2016-10-11
| |
| * Fix bug #5123: mark all shelved evars unresolvableGravatar Matthieu Sozeau2016-10-11
| | | | | | | | | | Previously, some splipped through and were caught by unrelated calls to typeclass resolution.
* | Fix for bug #4863, update the Proofview's env withGravatar Matthieu Sozeau2016-10-11
|/ | | | | side_effects. Partial solution to the handling of side effects in proofview.
* Add test file for #4416.Gravatar Maxime Dénès2016-10-10
|
* evarconv.ml: Fix bug #4529, primproj unfoldingGravatar Matthieu Sozeau2016-10-06
| | | | | Evarconv was made precociously dependent on user-declared reduction behaviors. Only cbn should rely on that.
* unification.ml: fix for bug #4763, unif regressionGravatar Matthieu Sozeau2016-10-06
| | | | | | | Do not force all remaining conversions problems to be solved after the _first_ solution of an evar, but only at the end of assignment of terms to evars in w_merge. This was hell to track down, thanks for the help of Maxime. contribs pass and HoTT too.
* Fixing #4970 (confusion between special "{" and non special "{{" in notations).Gravatar Hugo Herbelin2016-10-03
|
* Fix #4762.Gravatar Cyprien Mangin2016-09-30
|
* Fixing #5095 (non relevant too strict test in let-in abstraction).Gravatar Hugo Herbelin2016-09-22
|
* Test for #5077.Gravatar Hugo Herbelin2016-09-10
|
* Test file for #5065 - Anomaly: Not a proof by inductionGravatar Maxime Dénès2016-09-05
|
* Fix bug #5043: [Admitted] lemmas pick up section variables.Gravatar Pierre-Marie Pédrot2016-08-31
| | | | | | We add a flag Keep Admitted Variables that allows to recover the legacy v8.4 behaviour of admitted lemmas. The statement of such lemmas did not depend on the current context variables.
* Fix bug #4673: regression in setoid_rewrite.Gravatar Matthieu Sozeau2016-07-29
| | | | Modulo delta for types should be fully transparent.
* Fix bug #3886, generation of obligations of fixesGravatar Matthieu Sozeau2016-07-29
| | | | This partially reverts c14ccd1b8a3855d4eb369be311d4b36a355e46c1
* Fix #4769, univ poly and elim schemes in sectionsGravatar Matthieu Sozeau2016-07-29
|
* Fix bug #4754, allow conversion problems to remainGravatar Matthieu Sozeau2016-07-26
| | | | | when checking that the rewrite relation is homogeneous in setoid_rewrite.
* Fix bug #4780: universe leak in letin_tacGravatar Matthieu Sozeau2016-07-20
|
* Fix test file for #4858.Gravatar Maxime Dénès2016-07-08
|
* Test file for #4858.Gravatar Maxime Dénès2016-07-08
|
* Add test file for #4880.Gravatar Maxime Dénès2016-07-08
|
* Merge remote-tracking branch 'github/pr/199' into v8.5Gravatar Maxime Dénès2016-07-06
|\ | | | | | | Was PR#199: Unbreak singleton list-like notation (-compat 8.4)
* | congruence fix: test-suite code and update CHANGESGravatar Matthieu Sozeau2016-07-05
| | | | | | | | This fixes bugs #4069 (not 4609 as mentionned in the git log) and #4718.
* | congruence/univs: properly refresh (fix #4609)Gravatar Matthieu Sozeau2016-07-04
| | | | | | | | | | | | | | In congruence, refresh universes including the Set/Prop ones so that congruence works with cumulativity, not restricting itself to the inferred types of terms that are manipulated but allowing them to be used at more general types. This fixes bug #4609.
* | Fixing #4882 (anomaly with Declare Implicit Tactic on hole of type with evars).Gravatar Hugo Herbelin2016-07-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | But there are still bugs with Declare Implicit Tactic, which should probably rather be reimplemented with ltac:(tac). Indeed, it does support evars in the type of the term, and solve_by_implicit_tactic should transfer universe constraints to the main goal. E.g., the following still fails, at Qed time. Definition Foo {T}{a : T} : T := a. Declare Implicit Tactic eassumption. Goal forall A (x : A), A. intros. apply Foo. Qed.
* | Univs: allowing notations to take univ instancesGravatar Matthieu Sozeau2016-06-27
| | | | | | | | They can apply to the head reference under a notation.
* | Forbidding silently dropped universes instances inGravatar Matthieu Sozeau2016-06-27
| | | | | | | | | | | | internalization. Patch by PMP, test-suite fix by MS.
* | More on f9695eb4b, 827663982 on resolving #4782, #4813 (typing "with" clause).Gravatar Hugo Herbelin2016-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When typing a "with clause fails, type classes are used to possibly help to insert coercions. If this heuristic fails, do not consider it anymore to be the best failure since it has made type classes choices which may be inconsistent with other constraints and on which no backtracking is possible anymore (see new example in test suite file 4782.v). This does not mean that using type classes at this point is good. It may find an instance which help to find a coercion, but which might still be a choice of instance and coercion which is incompatible with other constraints. I tend to think that a convenient way to go to deal with the absence of backtracking in inserting coercions would be to have special For the record, here is a some comments of what happens regarding f9695eb4b and 827663982. In the presence of an instance (x:=t) given in a "with" clause, with t:T, and x expected of type T', the situation is the following: Before f9695eb4b: - If T and T' are closed and T <= T' is not satisfiable (no coercion or not convertible), the test for possible insertion of a coercion is postponed to w_merge, even though there is no way to get more information since T ant T' are closed. As a result, t may be ill-typed and the unification may try to unify ill-formed terms, leading to #4872. - If T and T' are not closed and contains evars of type a type class, inference of type classes is tried. If it fails, e.g. because a wrong type class instance is found, it was postponed to w_merge as above, and the test for coercion is retried now interleaved with type classes. After f9695eb4b and 827663982e: - If T and T' are closed and T <= T' is not satisfiable (no coercion or not convertible), the test for possible insertion of a coercion is an immediate failure. This fixes #4872. - However, If T and T' are not closed and contains evars of type a type class, inference of type classes is tried. If it gives closed terms and fails, this is immediate failure without backtracking on type classes, resulting in the problem added here to file 4872.v. The current fix does not consider the result of the use of type classes while trying to insert a coercion to be the last word on it. So, it fails with an error which is not the error for conversion of closed terms (ConversionFailed), therefore in a way expected by f9695eb4b and 827663982e, and the "with" typing problem is then postponed again.
* | Merge branch 'bug4450' into v8.5Gravatar Matthieu Sozeau2016-06-14
|\ \
* \ \ Merge branch 'bug4725' into v8.5Gravatar Matthieu Sozeau2016-06-14
|\ \ \
* | | | Admitted: fix #4818 return initial stmt and univsGravatar Matthieu Sozeau2016-06-14
| | | |
* | | | Fix test-suite file, only part 2 is fixed in 8.5Gravatar Matthieu Sozeau2016-06-13
| | | |
* | | | Univs: fix for part #2 of bug #4816.Gravatar Matthieu Sozeau2016-06-13
| | | | | | | | | | | | | | | | | | | | Check that the polymorphic status of everything that is parameterized in nested sections is coherent.
* | | | Another fix to #4782 (a typing error not captured when dealing with bindings).Gravatar Hugo Herbelin2016-06-12
| | | | | | | | | | | | | | | | | | | | | | | | The tentative fix in f9695eb4b (which I was afraid it might be too strong, since it was implying failing more often) indeed broke other things (see #4813).
* | | | Fixing #4782 (a typing error not captured when dealing with bindings).Gravatar Hugo Herbelin2016-06-11
| | | | | | | | | | | | | | | | | | | | | | | | Trying to now catch all unification errors, but without a clear view at whether some errors could be tolerated at the point of checking the type of the binding.
| | | * Unbreak singleton list-like notation (-compat 8.4)Gravatar Jason Gross2016-06-09
| | | | | | | | | | | | | | | | | | | | | | | | With this commit, it is possible to write notations so that singleton lists are usable in both 8.4 and 8.5pl1 -compat. Longer lists await the ability to remove notations from the parser.
* | | | Fixing #4644 (regression of unification on evar-evar problems with a match).Gravatar Hugo Herbelin2016-06-09
| |_|/ |/| | | | | | | | | | | Typically, a problem of the form "?x args = match ?y with ... end" was a failure even if miller-unification was applicable.
| | * Univs/(e)auto: fix bug #4450 polymorphic exact hintsGravatar Matthieu Sozeau2016-06-09
| |/ |/| | | | | | | | | | | | | | | | | | | | | The exact and e_exact tactics were not registering the universes and constraints of the hint correctly. Now using the same connect_hint_clenv as unify_resolve, they do. Also correct the implementation of prepare_hint to normalize the universes of the hint before abstracting its undefined universes. They are going to be refreshed at each application. This means that eauto using term can use multiple different instantiations of the universes of term if term introduces new universes. If we want just one instantiation then the term should be abbreviated in the goal first.
* | Fix bug #4746: Anomaly: Evar ?X10 was not declared.Gravatar Pierre-Marie Pédrot2016-05-29
| | | | | | | | | | | | | | | | | | | | Some dubious evarmap manipulation is going on in destruct because of the use of clenv primitives. Here, building a clenv was introducing new evars that were not taken into account in the remainder of the tactic. We plug them back using a local workaround. Eventually, this code should be replaced by an evar-based one, but meanwhile, we rely on what is probably a hack.
* | rewrite/Univs: Fix bug # 4498.Gravatar Matthieu Sozeau2016-05-26
| |
| * Univs/Program/Function: Fix bug #4725Gravatar Matthieu Sozeau2016-05-26
|/ | | | | | | - In Program, a check_evars_are_solved was introduced too early. Program does it's checking of evars by itself. - In Function, the universe environments were not threaded correctly.
* Extraction/Projections: Fix bug #4710Gravatar Matthieu Sozeau2016-05-23
| | | | | Use the compatibility match construction to extract the compatibility constant associated to a primitive projection.
* Hints/Univs: fix bug #4628 anomaliesGravatar Matthieu Sozeau2016-05-23
| | | | | | | | | | | | Fix handling of non-polymorphic hints built from polymorphic values, or simply producing new universes. We have to record the side effects of global hints built from constrs which are not polymorphic when they declare global universes, which might need to be discharged at the end of sections too. Also issue a warning when a Hint is declared for a polymorphic reference but the Hint isn't polymorphic itself (this used to produce an anomaly). For [using] hints, treat all lemmas as polymorphic, refreshing their universes at each use, as is done for their existentials (also used to produce an anomaly).
* Fix bug #4737: cycle tactic doesn't like zero goals.Gravatar Pierre-Marie Pédrot2016-05-16
|
* Fix bug #4713: Anomaly: Assertion Failed for incorrect usage of Module.Gravatar Pierre-Marie Pédrot2016-05-08
|
* Handle primitive projections inside types when extracting (bug #4616).Gravatar Guillaume Melquiond2016-05-04
| | | | | Note that extracting terms containing primitive projections is still utterly broken, so don't use them.
* Fix bug #3825: Universe annotations on notations should pass through or be ↵Gravatar Pierre-Marie Pédrot2016-05-03
| | | | rejected.
* Test file for #4695: Slow Qed.Gravatar Maxime Dénès2016-05-03
|