Coq

lp:~jgross-h/coq/v8.4

Created by Jason Gross and last modified
Get this branch:
bzr branch lp:~jgross-h/coq/v8.4

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Jason Gross
Project:
Coq
Status:
Development

Import details

Import Status: Reviewed

This branch is an import of the HEAD branch of the Git repository at https://github.com/coq/coq.git,branch=v8.4.

The next import is scheduled to run .

Last successful import was .

Import started on juju-98ee42-prod-launchpad-codeimport-4 and finished taking 20 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-1 and finished taking 15 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-0 and finished taking 40 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-4 and finished taking 40 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-5 and finished taking 25 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-0 and finished taking 25 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-0 and finished taking 15 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-0 and finished taking 30 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-1 and finished taking 10 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-1 and finished taking 15 seconds — see the log

Recent revisions

13165. By Hugo Herbelin <email address hidden>

Adding support for OCaml 4.06.0 (option -unsafe-string needed).

And other minor changes.

13164. By Hugo Herbelin <email address hidden>

Adding an option "Set Ltac Batch Debug" to additionally run Ltac debug in batch mode.

13163. By Hugo Herbelin <email address hidden>

Adding an option "Set Debug Cbv" for printing visited constants during cbv.

13162. By Pierre-Marie Pédrot <email address hidden>

Protecting the '-time' flag from changes in the summary.

This fixes #5478: Module Types break -time in Coq 8.4.

13161. By Hugo Herbelin <email address hidden>

Updating a misleading comment in Logic library.

It was implicitly assuming that impredicative Set is the default
option, while it is not the case anymore since Coq 8.0.

Thanks to A.M. for noticing.

13160. By Hugo Herbelin <email address hidden>

Fixing a little ennoying approximation in configure when detecting camlp5.

Note: not to be merged beyond 8.4.

13159. By Pierre Letouzey

Extraction: adapt the test-suite after 4b1429d (was a fix for #2842)

13158. By Pierre Letouzey

Extraction: an extra space forgotten in previous commit

13157. By Pierre Letouzey

Extraction: fix complexity issue #5310

  A double call to pp_module_type inside Ocaml.pp_specif was
  causing an complexity blowup when pretty-printing heavily modular
  extracted code.

  I wasn't able to figure out why this double call is there. It could
  be the leftover of some intermediate work in 2007 before commit 350398eae
  (which introduced global printing phases Pre/Impl/Intf).

  Anyway I'm reasonably sure that today these two pp_module_type calls produce
  the exact same pretty-printed signature (even if there's a large bunch of
  imperative states around). Moreover, this duplicated signature is actually
  slightly wrong: when we alias a module M with a unambiguous name like Coq__123,
  the type of Coq__123 should not be an exact copy of the type of M, but rather
  a "strengthened" version of it (with equality between inductive types).
  So the best solution is now to use this funny feature of OCaml introduced in 3.12 :

  module Coq__123 : module type of struct include M end

  This "module type of struct include" is slightly awkward, but short, correct,
  and trivial to produce :-). And I doubt anybody will object to the (rare) use
  of some 3.12 features in extracted code of 2017...

13156. By Nickolai Zeldovich <email address hidden>

Fix Haskell extraction for terms over 45 characters long

The Haskell extraction code would allow line-wrapping of the Haskell
type definition, which would lead to unparseable Haskell code when the
linebreak occured just before the type name. In particular, with a term
name of 46 characters or more, the following Coq code:

  Definition xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx := tt.
  Extraction Language Haskell.
  Extraction xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.

would produce:

  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ::
  Unit
  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx =
    Tt

which failed to compile with GHC (according to Haskell's indentation
rules, the "Unit" line must be indented to be treated as a continuation
of the previous line).

This patch always forces the type onto a separate line, and ensures that
it is always indented by 2 spaces (just like the body of each definition).

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
This branch contains Public information 
Everyone can see this information.

Subscribers