aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-05-12Extraction: fix the detection of the "polyprop" situationPierre Letouzey
The ~polyprop argument wasn't propagated properly anymore, leading the extraction to try to operate on situations it cannot handle (yet). Cf Table.error_singleton_become_prop for more details. Regression test added.
2015-05-12Test for bug #4234.Pierre-Marie Pédrot
2015-05-12Fixing bug #4234.Pierre-Marie Pédrot
2015-05-12nice error for Restart outside a proof (Close: #4235)Enrico Tassi
2015-05-12STM: process_error_hook set in Vernac where fname is known (fix #4229)Enrico Tassi
In compiler mode, only vernac.ml knows the current file name. Stm.process_error_hook moved from Vernacentries to Vernac to be bale to properly enrich the exception with the current file name (if any).
2015-05-11Adding a test to check whether two tactic notations conflict.Pierre-Marie Pédrot
2015-05-11Test for bug #4232.Pierre-Marie Pédrot
2015-05-11Fixing bug #4232.Pierre-Marie Pédrot
We beta-iota normalize the type of the rewriting predicate to ensure that the non-dependency in the arrow argument is meaningful. Otherwise, terms of the form "forall x : A, (fun _ : A => P) x" generated by the retyping would confuse the non-dependency heuristic.
2015-05-11Rationalizing a bit the interface of Hints.Pierre-Marie Pédrot
2015-05-10Code factorization in Constr_matching.Pierre-Marie Pédrot
2015-05-09Adjusting test-suite after 5cbc018fe9347 (subst as in 8.4 by default).Hugo Herbelin
2015-05-09Adding a flag "Set Regular Subst Tactic" off by default in v8.5 forHugo Herbelin
preserving compatibility of subst after #4214 being solved.
2015-05-08A more user-friendly naming of variables of ltac names defined byHugo Herbelin
TACTIC EXTEND (based on user-given name).
2015-05-06Fixing treatment of recursive equations damaged by 857e82b2ca0d1.Hugo Herbelin
Improving treatment of recursive equations compared to 8.4 (see test-suite). Experimenting not to unfold local defs ever in subst. (+ Slight simplification in checking reflexive equalities only once).
2015-05-06Fixing "subst" to respect v8.4 most-ancient to most-recent hyps orderHugo Herbelin
after patch for #4214 on subst needed to be repeated (see 857e82b2ca0d1).
2015-05-05Compatibility ocaml 3.12.Hugo Herbelin
2015-05-05Granting wish #4221.Pierre-Marie Pédrot
2015-05-05Fix bug #4212, congruence forgetting about some universe constraints.Matthieu Sozeau
2015-05-05Removing dead code in Rewrite.Pierre-Marie Pédrot
The hypinfo cache was actually always set to None, so that there was no need to try to preserve it if it was set to an actual value.
2015-05-05Making the strategy type in Rewrite opaque.Pierre-Marie Pédrot
2015-05-04Code simplification in Tactics.Pierre-Marie Pédrot
2015-05-04Fix documentation of RedirectEnrico Tassi
2015-05-04Add a [Redirect] vernacular commandClément Pit--Claudel
The command [Redirect "filename" (...)] redirects all the output of [(...)] to file "filename.out". This is useful for storing the results of an [Eval compute], for redirecting the results of a large search, for automatically generating traces of interesting developments, and so on.
2015-05-01Fixing computation of implicit arguments by position in fixpoints (#4217).Hugo Herbelin
2015-05-01Giving to "subst" a more natural semantic (fixing #4214) by using allHugo Herbelin
equalities in configurations like x=y x=z === P(x,y,z) where it now produces === P(z,z,z) In particular (equations are processed from most ancient to most recent). Thanks to this, a "repeat subst" can just be a "subst" in List.v. Incidentally: moved a nf_enter to enter in subst_one, since the latter is normally called from other tactics having normalized evars.
2015-04-27Improve syntax highlighting.Guillaume Melquiond
- Arithmetic operators and brackets are no longer recognized as bullets, unless they follow a stop or start a line. - Most vernacular commands are no longer highlighted when used inside proof scripts. - Coqdoc comments now take precedence over regular comments.
2015-04-27Compile the VM code with some optimizations (+130% speedup).Guillaume Melquiond
Option -g has no impact on the code generated by GCC, so it is now systematically added, since it is quite helpful when the VM segfaults (e.g. bug #4203). Note that, even for a debug build, option -O1 is preferred to -O0, since -O0 produces assembly code that is much too noisy for debugging. For non-debugging builds, -O2 was chosen rather than -O3, since it led to a noticeably faster VM. I guess even recent GCC compilers still have a hard time optimizing humongous functions such as the VM. Here are the results on a simple benchmark: computing the factorial of a large number with Z and BigZ. (Factorial of 2*6! for Z, of 7! for BigZ.) For comparison purpose, the timings of native_compute are also provided. Z BigZ -O0 6.4 12.3 -O1 4.3 10.7 -O2 2.8 7.3 -O3 3.0 9.3 n_c 2.0 2.4
2015-04-27Fix some ill-typed debugging code in the VM.Guillaume Melquiond
2015-04-26Open the file chooser even if there is no current session. (Fix bug #4206)Guillaume Melquiond
2015-04-25Cleaning some uses of exceptions in tactics.Pierre-Marie Pédrot
2015-04-23Remove almost all the uses of string concatenation when building error messages.Guillaume Melquiond
Since error messages are ultimately passed to Format, which has its own buffers for concatenating strings, using concatenation for preparing error messages just doubles the workload and increases memory pressure.
2015-04-23Using tclZEROMSG instead of tclZERO in several places.Pierre-Marie Pédrot
2015-04-23Removing dead code in Pp.Pierre-Marie Pédrot
2015-04-22Tactical `progress` compares term up to potentially equalisable universes.Arnaud Spiwack
Followup of: f7b29094fe7cc13ea475447bd30d9a8b942f0fef . In particular, re-closes #3593. As a side effect, fixes an undiscovered bug of the `eq_constr` tactic which didn't consider terms up to evar instantiation.
2015-04-22Pp: obsolete comment.Arnaud Spiwack
Was made incorrect by 98a710caf5e907344329ee9e9f7b5fd87c50836f .
2015-04-22Declarative mode: remaining goals are "given up" when closing blocks.Arnaud Spiwack
Restores the intended behaviour from v8.3 and earlier.
2015-04-22Fixing non exhaustive pattern-matching.Hugo Herbelin
2015-04-22Test for #4198 (appcontext in return clause of match).Hugo Herbelin
2015-04-22More precise numbers about Benjamin's fix for the VM.Maxime Dénès
2015-04-22Update CHANGESMatthieu Sozeau
2015-04-22Do not use list concatenation when gluing streams together, just mark them ↵Guillaume Melquiond
as glued. Possible improvement: rotate using the left children in the glue function, so that the iter function becomes mostly tail-recursive. Drawback: two allocations per glue instead of a single one. This commit makes the following command go from 7.9s to 3.0s: coqtop <<< "Require Import BigZ ZBinary Reals OrdersEx. Time SearchPattern _." | tail -n 1
2015-04-22Remove some spurious spaces in generated Makefiles.Guillaume Melquiond
2015-04-21STM: print trace on "anomaly, no safe id attached"Enrico Tassi
2015-04-21Fixing #4198 (looking for subterms also in the return clause of match).Hugo Herbelin
This is actually not so perfect because of the lambdas in the return clause which we would not like to look in.
2015-04-21Fixing #3383 (a "return" clause without an "in" clause is not enoughHugo Herbelin
for being able to interpret a "match" as a constr pattern).
2015-04-21Fixing #3376 and #4191 (wrong index of maximally-inserted implicit argumentHugo Herbelin
in the presence of let-ins).
2015-04-21Some dead code.Hugo Herbelin
2015-04-20Remove spurious ".v" from warning message.Guillaume Melquiond
2015-04-20Change magic numbers.Matthieu Sozeau
2015-04-20Inlining "fun" and "forall" tokens in parser, so that alternative notations forHugo Herbelin
them (e.g. "fun ... ⇒ ...") factor well (see #2268).