Commit Graph

9261 Commits (6ad98b3d0927ab206eec09aeaa3d7f776e1d2c0e)

Author SHA1 Message Date
Alain Frisch 6ad98b3d09 Port Syntaxerr.Error to the new system. Trickier, because of special way to report some errors in the toplevel (is it really worth the trouble?).
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/exception_registration@14105 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-11 18:10:59 +00:00
Alain Frisch 47be69c2b0 Cherry-picking commit 14093 from trunk.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/exception_registration@14104 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-11 16:08:00 +00:00
Alain Frisch 2493d3414b Branch for experimenting with a new way to define and use error printers.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/exception_registration@14103 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-11 16:05:40 +00:00
Alain Frisch 4b6c40b8ba Branch for experimenting with a new way to define and use error printers.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/exception_registration@14101 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-11 15:57:10 +00:00
Alain Frisch dc7fa347ca Experimenting with exception registration, to avoid explicit pattern matching on many exception constructors in 'driver' code.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14093 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-11 14:26:52 +00:00
Alain Frisch 637893aa3c Fix dependencies.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14092 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-11 14:23:43 +00:00
Alain Frisch 97f19db88e Adding an ocp-indent customization file for the project.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14091 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-11 14:13:58 +00:00
Gabriel Scherer 7b0694c3d0 Changes: attribution information for 4.01
I had collected attribution information for the announce only, but
Damien agreed to put them in the Changes file as well.

This change also fixes minor problems with the Changes content:
- type-based disambiguation of constructors and labels was not mentioned
- the open! syntax was not mentioned
- PR#5552 was mislabeled
- PR#5758 (matching on floats) was announced despite being also
  present in the 4.00.1 changes
- I moved PR#5986 (Marshal.Compat_32) from 'bug' to 'feature'
- PR#5243 was absent (ocamlbuild API documentation)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14089 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-11 13:11:03 +00:00
Alain Frisch ef35b10412 Remove the dump_ast tool. A better replacement is part of the standalone ppx_tools package.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14087 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-10 14:28:36 +00:00
Alain Frisch eb0f68d351 Fix order of application of ppx rewriters (matching the order on the command-line).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14086 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-10 14:15:47 +00:00
Alain Frisch e01f145c2e More direct style, remove the temporary file created by -pp processor right after it has been read.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14085 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-10 13:48:43 +00:00
Alain Frisch 0769ab46a7 Introduce and use higher-level wrappers around parsing routine for .ml/.mli files, taking care of -pp and -ppx preprocessors.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14084 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-10 13:44:34 +00:00
Alain Frisch 202483b02c Cleanup.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14083 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-10 12:21:45 +00:00
Alain Frisch a3dbe15046 Move some tools to a dedicated external project (https://github.com/alainfrisch/ppx_tools).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14082 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-09 16:59:23 +00:00
Alain Frisch c33ca79107 Some more helper functions.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14081 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-09 16:43:59 +00:00
Alain Frisch 30d350779f Support for patterns in concrete syntax.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14080 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-09 13:04:09 +00:00
Alain Frisch 1c7e67c782 Use Ast_helper.default_loc instead of Location.none by default.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14079 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-09 12:23:32 +00:00
Alain Frisch 0a93a84a06 Doc, cleanup.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14078 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-09 12:12:33 +00:00
Xavier Clerc e82104a755 Remove labltk from the distribution (will be available as a third-party library).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14077 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-09 09:32:00 +00:00
Xavier Clerc 83ca86dd23 PR#6166: document -ocamldoc option of ocamlbuild
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14076 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-09 08:52:42 +00:00
Fabrice Le Fessant a20f6e647b Fix PR#6164
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14075 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-07 07:14:19 +00:00
Alain Frisch abdbda7e33 Cosmetic.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14073 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-06 16:21:00 +00:00
Gabriel Scherer b57aca60ad ocamlbuild: make -plugin-tags and -use-ocamlfind interact better
When both those features are used together, we use ocamlfind packages
instead of hardlinking unix.cmxa and ocamlbuildlib.cmxa during the
ocamlbuild plugin compilation. This helps to avoid double-linking
errors (with unix.cmxa and "-package unix") when -plugin-tags request
ocamlfind packages depending on unix (or ocamlbuild).

This change was designed and implemented in collaboration with Jun Maillard.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14069 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-06 11:36:32 +00:00
Jacques Garrigue 1d1b6c157b add test results for PR#6163
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14066 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-06 05:44:48 +00:00
Jacques Garrigue d09dee8f9c Fix PR#6163
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14065 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-06 05:35:55 +00:00
Jacques Garrigue 567bca77d2 Fix PR#6158
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14063 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-05 08:26:01 +00:00
Jacques Garrigue 7185e693f5 Fix PR#6158
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14062 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-05 08:25:30 +00:00
Damien Doligez fe6ff6a033 remove leftover conflicts from .depend
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14061 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-04 15:37:10 +00:00
Damien Doligez 7844495624 Merge branch 4.01 from branching point to 4.01.0+rc1
Command line used:
  svn merge --accept postpone -r 13776:14055 $REPO/version/4.01 .


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14060 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-04 15:12:37 +00:00
Alain Frisch e972313976 #6146: emulate Unix.kill with signal = Sys.sigkill under Windows.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14059 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-03 13:10:56 +00:00
Alain Frisch cb146ec66b Doc, export a convenience function.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14058 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-03 08:59:23 +00:00
Alain Frisch 462d83344f Porting pa_matches.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14050 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-30 14:55:37 +00:00
Alain Frisch bc05874f5d Accept changes.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14049 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-30 14:31:27 +00:00
Alain Frisch bbb30a93b2 PR#6148: speed improvement for Buffer (patch by John Whitington).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14048 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-30 13:12:47 +00:00
Alain Frisch 6afbdfb724 Mention extension_points in Changes.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14047 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-30 13:11:16 +00:00
Alain Frisch f6e4122b85 Do not compile or install by default ocamlast.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14045 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-29 12:51:03 +00:00
Alain Frisch 76d35efd0a Reintegrate the extension_point branch.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14044 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-29 11:42:23 +00:00
Alain Frisch 6f15a5da7b These two files slipped through a synchronization with trunk.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@14043 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-29 10:06:50 +00:00
Alain Frisch 842f6794a9 Synchronize with trunk.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@14042 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-28 17:10:04 +00:00
Jacques Garrigue a18853fde9 Test not generalizing local lets
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14038 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-28 09:59:11 +00:00
Gabriel Scherer cb1d7a036d ocamlbuild: get myocamlbuild.ml tags from a new -plugin-tag(s) option instead of _tags
The previous approach to use _tags to get tags to compile
myocamlbuild.ml had one irritating downside: it would also take the
tags of the (true: foo) lines, which are certainly not intended by the
user to be applied to plugin compilation as well.

These additional tags looked mostly harmless. Of course, it turns out
that there is one case where they're not: as the plugin compilation
command already links "unix.cma" with the plugin, a user having
`true: use_unix` or `true: package(unix)` in its _tags file would get
a plugin compilation error due to double-linking of unix.cmxa. This
caused a regression breaking build in some projects, which is not
acceptable.

The current approach of using a specific command-line option is a bit
more annoying for end-users (you have to retype it each time, or script
ocamlbuild invocation from somewhere else), so we expect it to get
less widely used. It is still interesting for OASIS for example, or
people already using a convenience wrapper (eg. corebuild).

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14035 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-24 20:46:05 +00:00
Jacques Garrigue 3831bcee99 types
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14034 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-23 08:16:00 +00:00
Jacques Garrigue d1c176690e add unification example using GADTs
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14032 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-21 10:01:47 +00:00
Gabriel Scherer 5e9836d003 bootstrap myocamlbuild.boot and adapt build/boot.sh
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14028 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-20 16:02:41 +00:00
Gabriel Scherer 93f0dd4dad ocamlbuild: fix plugin rebuild when no target is given
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14027 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-20 16:02:39 +00:00
Gabriel Scherer 2fa50bab5f ocamlbuild testsuite: minor fixes
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14026 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-20 16:02:37 +00:00
Jacques Garrigue 7a6d827026 Fix PR#6123
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14021 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-20 03:00:19 +00:00
Gabriel Scherer e8bef60f8d ocamlbuild testsuite: test modular plugin compilation
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14016 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-19 07:42:39 +00:00
Gabriel Scherer 6929678509 ocamlbuild: polish the interaction between Param_tags.init() and plugin execution
Before this path, [Param_tags.init()] was run before
[Plugin.execute_plugin_if_needed()]. It had the downside of making
plugin compilation warn about any unknown parametrized tag present in
a _tags file, even those that would be defined by the plugin
itself. The fix is to [really_acknowledge] only the tags used for the
plugin compilation, and delay the full [Param_tags.init()] call to
after plugin execution.

This was discussed in detail in PR#5680, comment 0010186.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14015 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-19 07:42:36 +00:00
Hongbo Zhang 58d23575b7 fix let a = ( *) 1 problem
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14012 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-18 02:26:00 +00:00