aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-05-18Tentative fix for #3461: Anomaly: Uncaught exception ↵Pierre-Marie Pédrot
Pretype_errors.PretypeError. Instad of trying to print the exception, we raise it in the tactic monad.
2015-05-18Fixed CHANGES to reflect -color option.Pierre Courtieu
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-18Adding the -color option to coqc.Pierre Courtieu
coqc by default uses colors, this allows to disable it. Moreover, colors are not yet correctly disabled when compiling from emacs (emacs bugs?), making this option even more useful.
2015-05-18Removing option -no-native-compiler from test #3539 since this option is nowHugo Herbelin
negated into -native-compiler.
2015-05-17Fixing bug #4201: The native compiler is not race-free.Pierre-Marie Pédrot
Instead of checking if the native compiler directory exists before creating it, we simply create it by default and catch the potential exception due to its presence.
2015-05-16Fixing bug #2814: "Anomaly: Uncaught exception Option.IsNone".Pierre-Marie Pédrot
2015-05-15Removing option -no-native-compiler from test #3539 since this option is nowHugo Herbelin
negated into -native-compiler.
2015-05-15On MacOS X, ensuring that files found in the file system have theHugo Herbelin
expected lowercase/uppercase spelling (based on a patch by Pierre B.). This should fix #2554 (and see also discussion on coq-club, May 2015).
2015-05-15Granting wish #4048: Locate Ltac prints the source of redefined Ltac.Pierre-Marie Pédrot
2015-05-15Make Coercion.inh_app_fun respect its specification.Pierre-Marie Pédrot
It enhances bug #3527, as instead of raising an anomaly "Uncaught exception Coercion.NoCoercion(_)", it now fails with a typing error.
2015-05-15Turning "Set Regular Subst Tactic" on by default (for 8.6).Hugo Herbelin
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-14Do not regenerate .d files when cleaning them. (Fix bug #4079)Guillaume Melquiond
2015-05-14#3953 now closed.Hugo Herbelin
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-13Fixing bug #4216:Pierre-Marie Pédrot
Internal error: Anomaly: Uncaught exception Not_found. Please report. An evarmap was lost because of an unsound typing primitive.
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-13Fix for a second avatar of bug #4234.Pierre-Marie Pédrot
2015-05-13Documenting Set Regular Subst Tactic (though unsure this is worth theHugo Herbelin
level of details, and this option should certainly disappear eventually).
2015-05-13Better fixing #4198 such that the term to match is looked for beforeHugo Herbelin
the predicate, thus respecting the visual left-to-right top-down order (see a45bd5981092). This fixes CFGV.
2015-05-13Documenting the Loose Hint Behavior flag.Pierre-Marie Pédrot
2015-05-12List.nth_error directly produces Some/None instead of value/errorPierre Letouzey
List.nth_error and List.hd_error were the only remaining places in the whole stdlib to use type "Exc" instead of "option" directly. So let's simplify things and use option everywhere. In particular, during teaching sessions about lists, we won't have anymore to explain the (lack of) difference between Exc,value,error and option,Some,None. This might cause a few incompatibilities in proof scripts, if they syntactically expect "value" or "error" to occur, but this should hopefully be very rare and quite easy to fix.
2015-05-12Mark PreOrder as a consequence of Equivalence. (Fix bug #4213)Guillaume Melquiond
2015-05-12Fix my previous commit on ~polypropPierre Letouzey
Oups, sorry, I should have compiled the stdlib in full. Not only the ~polyprop wasn't propagated properly, but Matthieu made it be false by default somewhere instead of true. Argl...
2015-05-12Adding an option Loose Hint Behavior to handle hints loaded but not imported.Pierre-Marie Pédrot
It accepts three distinct flags: - "Lax", which is the default one, sets the old behaviour, i.e. a non-imported hint behaves the same as an imported one. - "Warn" outputs a warning when a non-imported hint is used. Note that this is an over-approximation, because a hint may be triggered by an eauto run that will eventually fail and backtrack. - "Strict" changes the behaviour of an unloaded hint to the one of the fail tactic, allowing to emulate the hopefully future import-scoped hint mechanism.
2015-05-12Adding unique identifiers to hints.Pierre-Marie Pédrot
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-09Tentatively setting cons and Some with 1st implicit argument maximalHugo Herbelin
(see #3695).
2015-05-08A more user-friendly naming of variables of ltac names defined byHugo Herbelin
TACTIC EXTEND (based on user-given name).
2015-05-07Adding a primitive to the tactic monad to modify the exceptional content.Pierre-Marie Pédrot
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-06Exposing the minimal amount of internal of the Logic monad in order toPierre-Marie Pédrot
allow reusability of the implementation throughout the Coq codebase. We effectively feature a generalized version of the logical monad where the input state, the output state and the inner exception can be arbitrarily chosen. This will allow for more efficient implementations of close variants of the monad.
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