aboutsummaryrefslogtreecommitdiff
path: root/toplevel
AgeCommit message (Collapse)Author
2015-06-26Add a flag to deactivate guard checking in the kernel.Arnaud Spiwack
2015-06-25Moved fatal_error from Coqtop to Errors and corrected dependencies accordingly.Thomas Sibut-Pinote
This allows fatal_error to be used for printing anomalies at loading time.
2015-06-24When assuming an inductive type positive, then it is declared "unsafe" to ↵Arnaud Spiwack
the interfaces.
2015-06-24Add corresponding field in `VernacInductive`.Arnaud Spiwack
Makes sure not to generate inductive schemes of assumed positive types.
2015-06-24Add a corresponding field in `mutual_inductive_entry` (part 1).Arnaud Spiwack
The field in `mutual_inductive_entry` requires that a mutually inductive definition be checked or not, whereas the field in `mutual_inductive_body` asserts that it has or has not been.
2015-06-24Merge branch 'v8.5'Pierre-Marie Pédrot
2015-06-24improve --help documentation: the -m|--memory option was missingGabriel Scherer
2015-06-24when OCAML_GC_STATS points to a filepath, write Gc stats into itGabriel Scherer
This interface is promoted by the operf-macro tool https://github.com/OCamlPro/operf-macro which allows to run benchmarks of time and memory usage of various OCaml programs. Coq already has two ways to get Gc infos: - the -m|--memory command-line flag prints the total heap words allocated - the "Print Debug Gc" command prints much more information, but in a Coq-implementation-defined format that is not suitable for across-programs comparison (also an environment variable allows to profile Coq runs on any .v, in an non-intrusive way) Note to the Github Robot: This closes #75
2015-06-24Splitting the library representation on disk in two.Pierre-Marie Pédrot
The first part only contains the summary of the library, while the second one contains the effective content of it.
2015-06-23obligations: wrap Ephemeron.get to make error more informativeEnrico Tassi
A worker should never have to access the still-to-be-proved obligations. If that happens, raise an informative anomaly.
2015-06-23Wrap the program_info type up in the ephemeron mechanismAlec Faithfull
This type contains a few unmarshallable fields, which can cause STM workers to break in unpleasant ways when running queries
2015-06-23Moved fatal_error from Coqtop to Errors and corrected dependencies accordingly.Thomas Sibut-Pinote
This allows fatal_error to be used for printing anomalies at loading time.
2015-06-23Add a Set Dump Bytecode command for debugging purposes.Maxime Dénès
Prints the VM bytecode produced by compilation of a constant or a call to vm_compute.
2015-06-23Warning are enabled by default in interactive mode.Pierre-Marie Pédrot
2015-06-22Merge branch 'v8.5' into trunkPierre Letouzey
2015-06-22Remove uses of polymorphic equality from prev. commitClément Pit--Claudel
Message to the github robot: This closes #63
2015-06-22Replace 'try ... with Failure "List.last"' with 'if l <> []'Clément Pit--Claudel
2015-06-22Guard the List.hd call in [Show Intros]Clément Pit--Claudel
Fix for [Anomaly: Uncaught exception Failure("hd")] after running [Show Intros] at the end of a proof: Goal True. trivial. Show Intros.
2015-06-22All invocations to ocaml compilers go through ocamlfindPierre Boutillier
Nothing is done for camlp4 There is an issue with computing camlbindir
2015-06-01Merge branch 'v8.5'Pierre-Marie Pédrot
2015-05-29coqtop: reset the current file name after a load-vernac-sourceEnrico Tassi
2015-05-29Flag -test-mode intended to be used for ad-hoc prints in test-suiteEnrico Tassi
Of course there is an exception to the previous commit. Fail used to print even if silenced but loading a vernac file. This behavior is useful only in tests, hence this flag.
2015-05-29make Unset Silent work in coqcEnrico Tassi
Trying to untangle the flags: coqc -verbose coqtop -compile-verbose are used just to print the commands run; -quiet, -silent, Set Silent, Unset Silent control Flags.verbose flag. Flags.verbose controls many prints that are expected to be made in interactive mode. E.g. "Proof" or "tac" prints goals if such flag is true. To flip it, one can "Set/Unset Silent" in both coqtop and coqc mode. It is still messy, but the confusion between -verbose and Flags.verbose has gone (I must have identified the two things with my initial STM patch)
2015-05-27Fix bug #4159Matthieu Sozeau
Some asynchronous constraints between initial universes and the ones at the end of a proof were forgotten. Also add a message to print universes indicating if all the constraints are processed already or not.
2015-05-18Uncaught exception termination exits coqtop with the anomaly errno.Pierre-Marie Pédrot
2015-05-18The Fail command does not catch uncaught exception anomalies anymore.Pierre-Marie Pédrot
2015-05-18Disabling colors when tERM variable is "dumb".Pierre Courtieu
This disables colors in emacs compilation buffer, which does not support ansi colors by default.
2015-05-18Fix usage about -color.Pierre Courtieu
2015-05-15Merge v8.5 into trunkHugo Herbelin
Conflicts: tactics/eauto.ml4 (merging eauto.ml4 and adapting coq_micromega.ml to new typing.ml API)
2015-05-14The -list-tag options now prints the corresponding COQ_COLORS value.Pierre-Marie Pédrot
2015-05-14Adding an option -w to control Coq warning output.Pierre-Marie Pédrot
For now, warnings are still ignored by default, but this may change. This commit at least allows to print them whenever desired. The -w syntax is also opened to future additions to further control the display of warnings.
2015-05-14Disable precompilation for native_compute by default.Guillaume Melquiond
Note that this does not prevent using native_compute, but it will force on-the-fly recompilation of dependencies whenever it is used. Precompilation is enabled for the standard library, assuming native compilation was enabled at configuration time. If native compilation was disabled at configuration time, native_compute falls back to vm_compute. Failure to precompile is a hard error, since it is now explicitly required by the user.
2015-05-13Safer typing primitives.Pierre-Marie Pédrot
Some functions from pretyping/typing.ml and their derivatives were potential source of evarmap leaks, as they dropped their resulting evarmap. This commit clarifies the situation by renaming them according to a unsafe_* scheme. Their sound variant is likewise renamed to their old name. The following renamings were made. - Typing.type_of -> unsafe_type_of - Typing.e_type_of -> type_of - A new e_type_of function that matches the e_ prefix policy - Tacmach.pf_type_of -> pf_unsafe_type_of - A new safe pf_type_of function. All uses of unsafe_* functions should be eventually eliminated.
2015-05-13Better error message for non-existent required libraries with a From prefix.Pierre-Marie Pédrot
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-05Merge branch 'v8.5'Pierre-Marie Pédrot
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-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-17No longer add dev/ to the LoadPath, only to the ML path.Guillaume Melquiond
This patch should get rid of the following warning: Invalid character '-' in identifier "v8-syntax".
2015-04-16Fixing bug #4190.Pierre-Marie Pédrot
The solution is a bit ugly. In order for two tactic notations identifiers not to be confused by the inclusion from two distinct modules, we embed the name of the source module in the identifiers. This may still fail if the same module is included twice with two distinct parameters, but this should not be possible thanks to the fact any definition in there will forbid the inclusion, for it would be repeated. People including twice the same empty module otherwise probably deserve whatever will arise from it.
2015-04-15Merge branch 'v8.5'Pierre-Marie Pédrot
2015-04-13Program: Do not reduce obligation types preemptively, only atMatthieu Sozeau
definition time. The obligation tactic or user can still choose to do so.
2015-04-09Fix declarations of instances to perform restriction of universeMatthieu Sozeau
instances as definitions and lemmas do (fixes bug# 4121).
2015-04-09Merge branch 'v8.5' into trunkPierre Letouzey
2015-04-02Remove Mltop.add_path as it is no longer possible to import files from ↵Guillaume Melquiond
subdirectories. Using Mltop.add_path instead of Mltop.add_rec_path causes the following kind of behavior: $ coqtop -nois Coq < Require Import Coq.Init.Datatypes. Error: Cannot find a physical path bound to logical path Coq.Init. The only case where its use is still warranted is the implicit "." path. It shall not be recursive because Coq might be called from about anywhere. This patch also removes -I-as since its behavior is no longer the one from 8.4 so it is not worth keeping it around.
2015-04-02Make "Add LoadPath" behave accordingly to its documentation.Guillaume Melquiond
"Add LoadPath" is documented as acting as -Q, not as -I-as. Note that "Add Rec LoadPath" should be used when compatibility with 8.4 matters.
2015-04-02Display the proper error message when Require fails to find a library.Guillaume Melquiond