aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-12-20coqc: execvp is now available even on win32Pierre Letouzey
2013-12-20coqmktop without Unix (simpler all_subdirs)Pierre Letouzey
2013-12-20Remove unused Makefile lines about .elc compilationPierre Letouzey
2013-12-20Warning removalPierre Boutillier
2013-12-20List: Bug 3039 weaker requirement for fold symmetricPierre Boutillier
2013-12-20Coqdep always uses / as dir_sepPierre Boutillier
2013-12-20micromega: removal of spurious Export; addition of Lia.v encapsulating lia ↵Frédéric Besson
and nia.
2013-12-19Removing the useless pattern ident genarg.Pierre-Marie Pédrot
2013-12-19Using interp_genarg in tactic notations where possible, instead of an ad-hocPierre-Marie Pédrot
interpreter.
2013-12-19test-suite/output/Notations : evar number changePierre Boutillier
2013-12-19Bad use of Obj.magic in interpretation of TacAlias arguments.Pierre Boutillier
It triggered nonsensical behaviour of list-using tactic notation. Hopefully or not, nobody uses such notations out of the test-suite...
2013-12-19Printing function for Stdargs in debuggerPierre Boutillier
2013-12-19Missing Fail in r16792Pierre Boutillier
2013-12-17test guard condition against feature incompatible with prop-extBruno Barras
2013-12-17Fix make install after 3e972b3ff8e532be233f70567c87512324c99b4ePierre Boutillier
Attempt to adapt .el files too. doc/refman/RefMan-uti.tex has still to be fixed.
2013-12-17Merge branch 'trunk' of github.com:coq/coq into trunkMatthieu Sozeau
2013-12-17Tentative fix of the guardedness checker by Christine and me. All stdlib and ↵Matthieu Sozeau
test-suite pass.
2013-12-17Removing the need of evarmaps in constr internalization.Pierre-Marie Pédrot
Actually, this was wrong, as evars should not appear until interpretation. Evarmaps were only passed around uselessly, and often fed with dummy or irrelevant values.
2013-12-16Get rid of messages "emitting ..." when compiling .v filesPierre Letouzey
If these messages are still relevent to somebody, feel free to restore them in -debug or any non-default mode of your choice.
2013-12-16A few fixes to the build system (mostly for ocamlbuild)Pierre Letouzey
* vars.mli was mentionning Term instead of Constr, leading to a dep cycle * Having a file named toplevel/toplevel.ml isn't a good idea when we also have a toplevel/toplevel.mllib that ought to produce a toplevel.cma. We rename toplevel.ml into Coqloop.ml * Extra cleanup of toplevel.mllib : - Ppextra isn't anywhere around (?!) - Ppvernac was mentionned twice, and rather belongs to printing.mllib anyway - Vernacexpr is a .mli and shouldn't appear in an .mllib * During the link, printing.cma now comes after parsing.cma (Ppvernac uses Egramml) * A few extra -threads in ocamlbuild files (btw, it's a bit sad to need -thread for coqchk).
2013-12-16Added test-suite for bug #2990.Pierre-Marie Pédrot
2013-12-16Dedicated inductive for return values of rewrite strategies.Pierre-Marie Pédrot
2013-12-15Do not overallocate closures' named environments in infos. Modifying the accessPierre-Marie Pédrot
function is sufficient to skip the undefined variables.
2013-12-12Do not compile coqide with -threadPierre Boutillier
Coqide compiled with -thread seems to hang for ever at startup under MacOS
2013-12-12Patch for supporting [From Xxx Require Yyy Zzz.]Gregory Malecha
When using libraries I find it convenient (and future proof) to use fully qualified paths in many places. It would be nice to have a convenient short-hand for this so that you can: From Xxx Require Yyy Zzz. instead of having to type: Require Xxx.Yyy Xxx.Zzz. Signed-off-by: Pierre Boutillier <pierre.boutillier@ens-lyon.org>
2013-12-12Better unification for [projT1] and [proj1_sig].Jason Gross
This way, [fun A (P : A -> Prop) (X : sigT P) => proj1_sig X] unifies with [fun A (P : A -> Prop) (X : sigT P) => projT1 X]. This closes Bug 3043.
2013-12-12Generalize eq_proofs_unicityJason Gross
The generalizded version is eq_proofs_unicity_one_var. We preserve backwards compatibility, unless someone used nu_left_inv (which was defined as a Remark(!), but whose type depended on a number of Lets.) We could keep going in defining one variable variants, but I was lazy. I'm also not sure if we should be breaking backward compatiblity to generalize these theorems, if we should make separate files for the pointed versions, or if we should just have duplicate theorems in each file. (I'm also not sure if I should call it _one_var or _pointed or something else.) This closes Bug 3019.
2013-12-11Documenting the tactic-in-term construction.Pierre-Marie Pédrot
2013-12-11Fix CoqIDE compilation under standard version of lablgtk2Enrico Tassi
We use the win32 specific function only if WIN32 is defined
2013-12-11Fixing backtrace registering of various tactic-related try-with blocks.Pierre-Marie Pédrot
2013-12-10Fix CoqIDE on windowsEnrico Tassi
2013-12-10Renaming elisp files to avoid conflict with pg in distribs.Pierre Courtieu
2013-12-09Fix printing of Ltac's backtrace.Arnaud Spiwack
I used an exception wrapper to report Tactic failures. It had the consequence of making process_vernac_interp_error to look for the backtrace at the wrong place.
2013-12-09Stylistic change.Arnaud Spiwack
I doubt [catching_error] is performance critical in any way. But it looked silly to allocate a block to [(inner_trace,e)] when [e] was known in advance (and was already named [e]).
2013-12-06Fix test-suite/success/evars.v.Arnaud Spiwack
In commit a92a27 (Fix the compilation of pattern matching wrt to variables), I introduced a serious bug in which, in some case, the infered return predicate of a pattern matching would be lifted wrongly. Because I wrote [false] instead of [true] at one location (which prevented creation of aliases and so created shorter named_context than expected).
2013-12-06Remove duplicate test-suite file.Arnaud Spiwack
success/instantiate.v was a duplicate of bugs/closed/1041.v
2013-12-06Fix the refine related test-suite files to account for the new refine.Arnaud Spiwack
2013-12-06Missing file in commit 1fb883.Arnaud Spiwack
It would seem that I forgot to include the actual documentation in 1fb883. As a result, the reference manual didn't compile due to missing dependencies.
2013-12-04Fix g_derive.ml4.Arnaud Spiwack
My bad, I forgot to fix the classification before comitting.
2013-12-04Documentation of the Derive plugin.Arnaud Spiwack
I put it in a new chapter of the Addendum of the manual. Which is meant to be dedicated to plugins with short documentation.
2013-12-04Stm: remove an assertion.Arnaud Spiwack
In the code which indents proof scripts, you cannot assume that a single goal is closed at a time (because of dependent subgoals). This change had been lost in the rebase over the paral-itp commits in october.
2013-12-04Derive plugin.Arnaud Spiwack
A small plugin to support program deriving (à la Richard Bird) in Coq. It's fairly simple: Require Coq.Derive.Derive. Derive f From g Upto eq As h. Produces a goal (actually two, but the first one is automatically shelved): |- eq g ?42 And closing the proof produces two definitions: f is instantiated with the value of ?42 (it's always transparent). And h is instantiated with the content of the proof (it is transparent or opaque depending on whether the proof was closed with Defined or Qed).
2013-12-04Fix Admitted.Arnaud Spiwack
Commit "The commands that initiate proofs…" was a bit hasty in its treatment of Admitted (in an attempt of making things simple, I actually required the proof to be completed for Admitted to go through…).
2013-12-04Proof_global: fix start_proof comment after the preceding commits.Arnaud Spiwack
2013-12-04Factoring(continued).Arnaud Spiwack
This commit removes the hook.
2013-12-04Refactoring: storing more information in the terminator closure.Arnaud Spiwack
We used to keep a lot of information in the global proof environment, for the end-of-proof commands to use. Now that the end commands are dumb, they are better stored in the proof-termination closure allocated by the starting command. In this commit, we remove the compute_guard parameter.
2013-12-04The commands that initiate proofs are now in charge of what happens when ↵Arnaud Spiwack
proofs end. The proof ending commands like Qed and Defined had all the control on what happened to the proof when they are closed. In constrast, proof starting commands were dumb: start a proof, give it a name, that's it. In such a situation if we want to come up with new reasons to open proofs, we would need new proof-closing commands. In this commit we decide at proof-starting time how to dispatch the various Qed/Defined, etc… By registering a function in the interactive proof environment. This way, proofs are always closed the same but we can invent new ways to start them.
2013-12-04Vernac classification: allow for commands which start proofs but must be ↵Arnaud Spiwack
synchrone. The previous heuristic is to check whether the proof ends with Qed or not. This modification allows for commands which start proof but may produce transparent term even when the function ends with Qed.
2013-12-04Allow proofs to start with dependent goals.Arnaud Spiwack
I use a telescope to represent to goals, and let proofview.ml generate the appropriate existential variables.
2013-12-04Improved the presentation of the proof of UIP_refl_nat.Hugo Herbelin