aboutsummaryrefslogtreecommitdiff
path: root/printing
AgeCommit message (Collapse)Author
2016-11-07Merge remote-tracking branch 'github/pr/339' into v8.6Maxime Dénès
Was PR#339: Documenting type class options, typeclasses eauto
2016-11-05Do not print dependent evars by default (expensive)Matthieu Sozeau
The option can be turned on by the user though.
2016-11-03Lets Hints/Instances take an optional patternMatthieu Sozeau
In addition to a priority, cleanup the interfaces for passing this information as well. The pattern, if given, takes priority over the inferred one. We only allow Existing Instances gr ... gr | pri. for now, without pattern, as before. Make the API compatible to 8.5 as well.
2016-10-29Merge branch 'v8.6'Pierre-Marie Pédrot
2016-10-28Merge remote-tracking branch 'github/pr/337' into v8.6Maxime Dénès
Was PR#337: Fix arguments
2016-10-27Complete overhaul of the Arguments vernacular.Maxime Dénès
The main point of this change is to fix #3035: Avoiding trailing arguments in the Arguments command, and related issues occurring in HoTT for instance. When the "assert" flag is not specified, we now accept prefixes of the list of arguments. The semantics of _ w.r.t. to renaming has changed. Previously, it meant "restore the original name inferred from the type". Now it means "don't change the current name". The syntax of arguments is now restricted. Modifiers like /, ! and scopes are allowed only in the first arguments list. We also add *a lot* of missing checks on input values and fix various bugs. Note that this code is still way too complex for what it does, due to the complexity of the implicit arguments, reduction behaviors and renaming APIs.
2016-10-24Merge branch 'v8.6'Pierre-Marie Pédrot
2016-10-20Refine printing of pending unification constraintsMatthieu Sozeau
It now prints evars with candidates as well if there are any.
2016-10-18Merge branch 'v8.6'Pierre-Marie Pédrot
2016-10-17[toplevel] Remove duplicate beautify flags.Emilio Jesus Gallego Arias
Given the current style in flags.mli no reason to have a function. A deeper question is why a global flag is needed, in particular the use in `interp/constrextern.ml` seems strange, the condition in the lexer should be looked at and I'm not sure about `printing/`.
2016-10-12Merge branch 'v8.6'Pierre-Marie Pédrot
2016-10-12Fixing a few confusions on the name of the beautify flag.Hugo Herbelin
(It should apply also interactively.)
2016-10-09Moving Pp.comments to CLexer so that Pp is purer (no more side-effectHugo Herbelin
done by the Ppcmd_comment token) and so that lexing/parsing side-effects are collected at the same place, i.e. in CLexer.
2016-10-08Fix bug #5098: Symmetry broken in HoTT.Pierre-Marie Pédrot
We defactorize the in_clause grammar entry to allow parsing of the "symmetry" tactic when it has no arguments. Beforehand, the clause_dft_concl entry accepted the empty stream, preventing the definition of symmetry as a mere identifier.
2016-10-05Merge branch 'v8.6'Pierre-Marie Pédrot
2016-10-05Fixing a beautifier bug pointed out by Emilio.Hugo Herbelin
2016-10-04Merge remote-tracking branch 'github/pr/305' into v8.6Maxime Dénès
Was PR#305: A possible solution to the issue of fine-tuning warnings in script.
2016-10-02Merge branch 'v8.6'Pierre-Marie Pédrot
2016-10-01Fix bug #4661: Cannot mask the absolute name.Pierre-Marie Pédrot
The patch is quite dumb: it essentially consists in alpha-renaming bound module names when printing a functor, by checking that the name was not already present, and generating a fresh one otherwise.
2016-10-01Add command 'Set foo Append "bar"' for appending to an option (bug #5109).Guillaume Melquiond
For now, the only meaningful user is "Set Warnings". Example: Section Bar. Local Set Warnings Append "-foo". (* warning foo is now disabled *) End Bar. (* foo is now reenabled, assuming it was before entering the section *)
2016-09-30Merge remote-tracking branch 'github/pr/299' into v8.6Maxime Dénès
Was PR#299: Fix bug #4869, allow Prop, Set, and level names in constraints.
2016-09-29Fix bug #4798: compat notations should not modify the parser.Pierre-Marie Pédrot
This is a quick fix. The Metasyntax module should be thoroughly revised in trunk, because it starts featuring a lot of spaghetti code and redundant data.
2016-09-29Arguments: cleanup + detect discrepancy rename/implicit (#3753)Enrico Tassi
It seems warnings are not taken into account in output/ tests.
2016-09-29Fix bug #4869, allow Prop, Set, and level names in constraints.Matthieu Sozeau
2016-09-27Merge branch 'v8.6'Pierre-Marie Pédrot
2016-09-24Moving "move" in the new proof engine.Hugo Herbelin
2016-09-22Revert "Merge remote-tracking branch 'github/pr/283' into trunk"Maxime Dénès
I hadn't realized that this PR uses OCaml's 4.03 inlined records feature. I will advocate again for a switch to the latest OCaml stable version, but meanwhile, let's revert. Sorry for the noise. This reverts commit 3c47248abc27aa9c64120db30dcb0d7bf945bc70, reversing changes made to ceb68d1d643ac65f500e0201f61e73cf22e6e2fb.
2016-09-22Merge remote-tracking branch 'github/pr/283' into trunkMaxime Dénès
Was PR#283: Stylistic improvements in intf/decl_kinds.mli.
2016-09-21Merging Stdarg and Constrarg.Pierre-Marie Pédrot
There was no reason to keep them separate since quite a long time. Historically, they were making Genarg depend or not on upper strata of the code, but since it was moved to lib/ this is not justified anymore.
2016-09-20Stylistic improvements in intf/decl_kinds.mli.Maxime Dénès
We get rid of tuples containing booleans (typically for universe polymorphism) by replacing them with records. The previously common idom: if pi2 kind (* polymorphic *) then ... else ... becomes: if kind.polymorphic then ... else ... To make the construction and destruction of these records lightweight, the labels of boolean arguments for universe polymorphism are now usually also called "polymorphic".
2016-09-16Addressing OCaml compilation warnings.Hugo Herbelin
One of them revealed a true bug.
2016-09-15Made Ppanotation Ltac-agnostic.Pierre-Marie Pédrot
2016-09-15Moving Ltac printers to ltac/ folder.Pierre-Marie Pédrot
2016-09-09Fix bug #4940: Tactic notation printing could be more informative.Pierre-Marie Pédrot
2016-09-08Unplugging Pptactic from Ppvernac.Pierre-Marie Pédrot
2016-09-08Making Vernacexpr independent from Tacexpr.Pierre-Marie Pédrot
2016-09-08Merge PR #244.Pierre-Marie Pédrot
2016-09-02Merge branch 'v8.6'Pierre-Marie Pédrot
2016-08-30CLEANUP: using |> operator more consistentlyMatej Kosik
2016-08-29Fix tagging of notations.Pierre-Marie Pédrot
We only tag the non-whitespace substrings, rather than the whole terminal token.
2016-08-27Support qualified identifiers in Show Match (bug #5050).Guillaume Melquiond
2016-08-26CLEANUP: adding "Context.Compacted.Declaration.of_named_decl" function, ↵Matej Kosik
which can be useful in general, and then simplifying "Printer.pr_named_decl" function
2016-08-26CLEANUP: renaming "Printer.pr_var_decl" function to "Printer.pr_named_decl"Matej Kosik
2016-08-26CLEANUP: renaming "Context.ListNamed" module to "Context.Compacted"Matej Kosik
2016-08-25CLEANUP: changing the definition of the "Context.NamedList.Declaration" typeMatej Kosik
2016-08-24CLEANUP: minor readability improvementsMatej Kosik
mainly concerning referring to "Context.{Rel,Named}.get_{id,value,type}" functions. If multiple modules define a function with a same name, e.g.: Context.{Rel,Named}.get_type those calls were prefixed with a corresponding prefix to make sure that it is obvious which function is being called.
2016-08-24CLEANUP: removing calls of the "Context.Named.Declaration.to_tuple" functionMatej Kosik
2016-08-19Make the user_err header an optional parameter.Emilio Jesus Gallego Arias
Suggested by @ppedrot
2016-08-19Remove errorlabstrm in favor of user_errEmilio Jesus Gallego Arias
As noted by @ppedrot, the first is redundant. The patch is basically a renaming. We didn't make the component optional yet, but this could happen in a future patch.
2016-08-19Unify location handling of error functions.Emilio Jesus Gallego Arias
In some cases prior to this patch, there were two cases for the same error function, one taking a location, the other not. We unify them by using an option parameter, in the line with recent changes in warnings and feedback. This implies a bit of clean up in some places, but more importantly, is the preparation for subsequent patches making `Loc.location` opaque, change that could be use to improve modularity and allow a more functional implementation strategy --- for example --- of the beautifier.