aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-09-13CoqIDE: push to message win feedback Message(Debug,Info,Notice)Enrico Tassi
2016-09-13coqc: print debug feedback coming from workersEnrico Tassi
This way par:eauto and all:eato print the same debugging traecs
2016-09-13stm: feedback forwarding has to be atomicEnrico Tassi
I think that a better place for the mutex would be the printing routine, but I still hope we will get rid of threads in favor of coroutines. So I keep all mutexes in Stm.
2016-09-13feedback: provide a feeder that prints debug messagesEnrico Tassi
2016-09-12Refolding: disable in 8.4 compat file, documentMatthieu Sozeau
2016-09-12Merge remote-tracking branch 'github-coq/pr/249' into v8.6Matthieu Sozeau
2016-09-11Add support for testing output mod timing changesJason Gross
Uses sed 's/\s*[0-9]*\.[0-9]\+\s*//g' and 's/\s*0\.\s*//g' to strip numbers of seconds and to strip percentages. (This can potentially be extended later.) Add a test-suite file to make sure that LtacProf outputs some table.
2016-09-11Fix newlines in printout of LtacProfJason Gross
Previously, newlines were missing if a node had no children.
2016-09-11Revert the LtacProf tactic table headerJason Gross
This removes a space (making the final letter of the right-aligned columns line come right before the vertical separators, rather than overlapping them), and left-aligns "tactic", as it was in Tobias' original code, which I think is easier to read. (This way, the alignment of the headers matches the alignment of the entries.)
2016-09-11Add a test for 4836Jason Gross
This required improving the machinery of the test-suite Makefile to support -compile.
2016-09-10Avoid putting a useless "toploop" directory in the ML search path if it does ↵Guillaume Melquiond
not exist.
2016-09-09Updating .gitignore.Hugo Herbelin
2016-09-09no-refold patchPaul Steckler
Add a boolean for refolding during reduction, and an option that is off by default in 8.6, to turn refolding on in all reduction functions, as in 8.5.
2016-09-09Fix output test-suite after commit 0d3c319.Pierre-Marie Pédrot
2016-09-09Fast path in Clenvtac.clenv_refine typeclass resolution.Pierre-Marie Pédrot
This legacy function is still used by destruct, and is a hotspot in various examples from the wild. We hijack the check from Typeclass and perform a double check at once not to mark unresolvable evars in vain a lot.
2016-09-09Monomorphize a costly boolean equality operation.Pierre-Marie Pédrot
2016-09-09Fix bug #4940: Tactic notation printing could be more informative.Pierre-Marie Pédrot
2016-09-09Merge branch 'v8.5' into v8.6Pierre-Marie Pédrot
2016-09-09Restore native compiler optimizations after they were broken by 9e2ee58.Maxime Dénès
The greatest danger of OCaml's polymorphic equality is that PMP can replace it with pointer equality at any time, be warned :) The lack of optimization may account for an exponential blow-up in size of the generated code, as well as worse runtime performance.
2016-09-09Make it explicit when paths are added to the ML search paths.Guillaume Melquiond
When Mltop.add_rec_path was called to add paths to the loadpath, it was also adding the top directory to the mlpath. In particular, "theories" was added to the mlpath although it was explicitly marked "~with_ml:false". The "plugins" and "user-contribs" subdirectories were scanned twice, once for filling the loadpath and then for filling the mlpath. This patch adds an argument to Mltop.add_rec_path to explicitly control which paths from the loadpath are added to the mlpath (none, the top one, all of them). The "top" option was the single old behavior; the "none" option is used for "theories"; the "all" option is used to avoid duplicate scanning for "plugins" and "user-contribs".
2016-09-09Update csdp cache.Pierre-Marie Pédrot
This was making the test-suite fail on machines where csdp was not installed.
2016-09-09Fix bug #3920 for good after 44ada64.Pierre-Marie Pédrot
The previous commit did not apply the beta reduction for compatibility on the correct goal. We rather apply it on the first generated subgoal. This fixes the ergo contrib.
2016-09-08Fix Bug #5073 : regression of micromega pluginFrédéric Besson
esprit d'escalier : is now also fixed for R
2016-09-08Avoid canonizing the same paths over and over.Guillaume Melquiond
The number of path canonizations was quadratic in the number of potential plugin directories. This patch makes it linear; on a standard Coq tree, this brings the number of chdir and getcwd system calls from more than 1,000 down to about 200 at startup. This also fixes a bug where the Cd vernacular command could cause plugins to break since relative paths were used to locate them.
2016-09-08Fix Bug #5073 : regression of micromega pluginFrédéric Besson
The computed proof term is now more explicit exact (__arith P1 ... Pn X1 ... Xm) instead of apply (__arith P1 ... Pn) which unification could fail.
2016-09-08Merge PR #271 into v8.6Pierre-Marie Pédrot
2016-09-07Fix a typo in the reference manualJason Gross
2016-09-07Merge branch 'v8.5' into v8.6Pierre-Marie Pédrot
2016-09-07CoqIDE: Errors are sticky (fix #4368)Enrico Tassi
2016-09-07Removing useless tactic compatibility layer in Rewrite.Pierre-Marie Pédrot
2016-09-07STM: if_verbose on "Checking task ..." (fix #4058)Enrico Tassi
2016-09-07ltacprof: rec-calls are coaleshedEnrico Tassi
2016-09-07micromega : more robust generation of proof termsFrédéric Besson
- Assert a purely arihtmetic sub-goal that is proved independently by reflexion. (This reduces the stress on the conversion test) - Does not use 'abstract' anymore (more natural proof-term) - Fix a parsing bug (certain terms in Prop where not recognized)
2016-09-06A proposal to unify the messages given by Test and Print Options (#5062).Hugo Herbelin
2016-09-06STM: queries give back a dummy safe_id in case of error (#5041)Enrico Tassi
2016-09-06STM: sideff: report safe_id correctly (fix #4968)Enrico Tassi
2016-09-06STM: nested Abort is like nested Qed (fix #4756)Enrico Tassi
There was an "optimization", since Abort is an empty side effect. But that optimization had an impact on the DAG shape. Now a nested proof, no matter if it is kept or dropped, is handled the same.
2016-09-05coqide: use Document instead of tags to detect sentences to `Skip (#4829)Enrico Tassi
When one jumps from a focused area to a point after the focused zone, sentences that are already processed (in the Doc.context of the focused area) have not to be processed again (they are tagged as `Skip). Detection of such sentences was based on tags (i.e. colors) that is shaky. Now we use the sentence-marks as stored in the document data structure.
2016-09-05Test file for #5065 - Anomaly: Not a proof by inductionMaxime Dénès
2016-09-05Fix #5065: Anomaly: Not a proof by inductionMaxime Dénès
Using abstract can create beta-redexes or let-ins in the head of the proof terms. The code projecting out mutual lemmas was not robust enough.
2016-09-05Fast path in push_rel_context_to_named_context.Pierre-Marie Pédrot
Essentially, we do not reconstruct the named_context_val when the rel_context is empty.
2016-09-05profile_ltac: rewritten to be purely functional and STM awareEnrico Tassi
Changes: - data structures are purely functional (so retracting do work) - profiling data flows towards master using the feedback bus - master aggregates the data on printing
2016-09-05xml_printer: use sensible names for putc and putsEnrico Tassi
They used to be called output and output' ...
2016-09-05feedback: support multiple feedback listenersEnrico Tassi
So that a module can add his own and look at the traffic
2016-09-05Summary: simpler API for process-local storageEnrico Tassi
2016-09-04Do not normalize evars in Eauto.e_give_exact.Pierre-Marie Pédrot
This is not needed, as the terms are then checked up to unification or convertibility.
2016-09-03Fixing what is probably a typo in Strict Proofs mode (#5062).Hugo Herbelin
2016-09-02Fast path in whd_evar.Pierre-Marie Pédrot
Before computing the whd_evar-form of the arguments of an evar, we first check that it is indeed defined.
2016-09-02Silence the CAMLP5 warnings on command line.Pierre-Marie Pédrot
They were mostly useless, and people complained about it. Not that because there is no API to make CAMLP4 silent, a CAMLP4-based Coq will still spit out its share of noisy warnings.
2016-09-02Remove useless debug code.Guillaume Melquiond