summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2014-03-20PR#6184: ocamlbuild: `ocamlfind ocamldep` does not support -predicateGabriel Scherer
(patch by Jacques-Pascal Deplaix) git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14476 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-20PR#6187: Add a warning when using -plugin-tag(s) without myocamlbuild.mlGabriel Scherer
(Patch by Jacques-Pascal Deplaix) git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14475 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-20Shorten syntax for functor signatures (patch by Thomas Gazagnaire)Gabriel Scherer
``` (* Optional naming of parameter implementation *) module type X = functor (X:S) -> ... module type X = functor (_:S) -> ... (* shortening of functor module signatures *) module type F = functor (X:S) -> functor (Y:S) -> ... module type F = functor (X:S) (Y:S) -> ... ``` For consistency reasons, this commits also add shortening of functor implementations: ``` (* shortening of functor implementations *) module F = functor (X:S) -> functor (Y:S) -> ... module F = functor (X:S) (Y:S) -> ... ``` git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14474 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-20Fix Makefile.Alain Frisch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14473 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-20fix error in previous register naming patchMark Shinwell
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14472 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-20PR#6349: ocamlbuild.cm{o,x} must not be included in ocamlbuild.cm{a,xa}Gabriel Scherer
The bug, reported by Jacques-Pascal Deplaix, was only in trunk -- it appeared in the bootstrap->Makefile transition. git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14471 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-20Also check sharing of immutable constants.Alain Frisch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14470 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-20Add non-regression test for #5779.Alain Frisch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14469 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-18#6345: better compilation of optional arguments with default values.Alain Frisch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14466 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-17improved abstractions for register naming in the native code backendMark Shinwell
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14465 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-17be explicit when constructing integers that are block headersMark Shinwell
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14464 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-17[minor] update ChangesGabriel Scherer
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14463 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-14ocamllex: user-definable refill actions (patch by Frédéric Bour)Gabriel Scherer
The patch introduces a new "refill" action. It's optional and if unused the lexer specification and behavior are unchanged. When specified, it allows the user to control the way the lexer is refilled. For example, an appropriate refill handler could perform the blocking operations of refilling under a concurrency monad such as Lwt or Async, to work better in a cooperative concurrency setting. To make use of this feature, add refill {refill_function} between the header and the first rule. [refill_function] is a function which will be invoked by the lexer immediately before refilling the buffer. The function will receive as arguments the continuation to invoke to resume the lexing, and the current lexing buffer. More precisely, it's a function of type: (Lexing.lexbuf -> 'a) -> Lexing.lexbuf -> 'a where the first argument is the continuation which captures the processing ocamllex would usually perform (refilling the buffer, then calling the lexing function again), and the result type ['a] should unify with the result types of all rules. git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14461 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-13[minor] forgotten Changes entry for 4.01Gabriel Scherer
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14455 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-10Fix two makeblocks incorrectly marked as Immutable. The lazy-related one is ↵Alain Frisch
concretely problematic in presence of stronger constant propagation. git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14454 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-10Optimization: if a function doesn't use its environment, one can do as if it ↵Alain Frisch
it doesn't have any free variables, and its closure can be statically allocated (we could be more precise and remove unused free variables from the closure). git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14453 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-10#6343, #5537, #5573: improving access to values in nested modules.Alain Frisch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14452 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-10Fix PR#6307Jacques Garrigue
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14451 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-10Structural typing of first class modules (cf. PR#6333)Jacques Garrigue
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14450 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-07#5779: Revert change on camlinternalOO.Alain Frisch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14449 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-07use -bin-annot when buildingMark Shinwell
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14448 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-07#5779: adopt gasche's sentinel solution.Alain Frisch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14447 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-07Really remove debug output.Alain Frisch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14446 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-07remove debugging outputJacques Garrigue
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14445 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-06#5779: improve support for structured constants (better propagation, ↵Alain Frisch
sharing, cleaner representation). Also fix #6337 (constants emitted several times). git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14444 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-02-25Fix PR#6331Jacques Garrigue
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14443 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-02-20fix major performance problem on large heaps by making the heap increment ↵Damien Doligez
proportional to the heap size git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14442 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-02-19PR#6214: "sed: comment garbled" on make worldDamien Doligez
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14438 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-02-19PR#6208: Hashtbl.reset @since 4.00.0Damien Doligez
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14437 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-02-19add #includes to declare the functions enter/leave_blocking_sectionDamien Doligez
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14436 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-02-18#6328: use real temporary file names for ocamlyacc under Windows.Alain Frisch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14435 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-02-17Quick fix of PR#6325Jacques Garrigue
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14434 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-02-07Fix bug (structure-level attributes and ocamlopt).Alain Frisch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14433 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-02-06PR#6322 Corrected.Luc Maranget
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14432 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-02-04PR#6054: add support for M.[ foo ], M.[| foo |], etc.Gabriel Scherer
(Patch by Kaustuv Chaudhuri) The following are now supported: M.[ foo ] abbreviation for M.([ foo ]) M.[| foo |] " " M.([| foo |]) M.{ foo } " " M.({ foo }) M.{< foo >} " " M.({< foo >}) git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14431 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-01-31Fix a typo in close_functions.Gabriel Scherer
(Patch by Evgeny Roubinchtein) The typo isn't a bug since the variables `arity' and `body' are never actually referenced in the body of the function, but it does (negatively) affect readability of the code. git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14430 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-01-30#6311. Changelog.Alain Frisch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14429 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-01-30Add location to module and module type definitions. Improves #6311.Alain Frisch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14428 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-01-30#6311: show kind and location of missing item, in case of signature mismatch.Alain Frisch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14427 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-01-29release the lock in ftruncate, fchown, and fchmodJérémie Dimino
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14425 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-01-28PR#6310: fix ocamldoc's subscript/superscript CSS font sizeGabriel Scherer
(patch by Anil Madhavapeddy) git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14424 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-01-28Fix testsuite (rely on compilerlibs to be more robust).Alain Frisch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14423 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-01-28Record inclusion checks between value_descriptions in .cmt files. This ↵Alain Frisch
makes it easy in particular to track in external tools value declarations between implementations and interfaces. git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14422 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-01-27#6308: better error message when the types inferred for a variable on both ↵Alain Frisch
sides of an or-pattern don't match. git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14421 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-01-23Fix conditional installation of ocamldebug under Windows.Alain Frisch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14420 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-01-23PR#6183: enhanced documentation for 'Unix.shutdown_connection'Xavier Clerc
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14419 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-01-23PR#6267: more information printed by "bt" command of ocamldebugXavier Clerc
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14416 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-01-23Fix PR#6303Jacques Garrigue
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14415 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-01-22PR#6189, items (10) and (11)Damien Doligez
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14413 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-01-22PR#6189: items (8) and (9)Damien Doligez
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14412 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02