Commit Graph

466 Commits (6d36ae683112c6484aa511ba91d8bf62df8160b7)

Author SHA1 Message Date
Alain Frisch 779580674f Move ast_mapper to parsing/, make it part of compiler-libs, and add an interface. Plus minor code cleanup.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13249 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-16 16:10:29 +00:00
Alain Frisch 2a7b2fc5f1 Extend ast_mapper to allow mapping locations.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13210 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-07 14:13:01 +00:00
Alain Frisch fbe6be791a Mark explicitly unused bound variables (warning 27) in tast_iter.ml.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13209 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-07 12:31:58 +00:00
Wojciech Meyer 7efba284ce Reverting "PR#5868: Bytecode dependencies should not appear in output of ocamldep"
-native flag semantics are currently different to that what the user
expects, and what was attempted to be fixed. The semantics of -native
are not to completely disable generation of dependencies for bytecode
instead make the compilation to native code more efficient.

Most of the project are expected to be buildable with both versions of
the compiler. So ocamldep is expected to always generate the
dependencies in both cases. When the .mli file is absent ocamldep
needs to still generate dependencies in bytecode to build the cmi only
and to build cmi and cmx for the dependent compilation unit . Because
of some make tool pecularities, handling of two different rules that
include the same depenency is problematic, so instead when the -native
flag is not used the cmo file is used as a proxy to build cmi, when
the -native enabled however, the cmx file is used as proxy to build
cmi file for the dependencies to avoid recompilation of the dependent
.cmo file just to get .cmi file.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13202 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-03 17:38:21 +00:00
Wojciech Meyer f97f2f5bab PR#5868: Somewhat a better fix for -native option.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13195 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-01 16:17:58 +00:00
Wojciech Meyer 04bca674d3 PR#5868: Bytecode dependencies should not appear in output of ocamldep when -native flag is used
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13194 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-01 15:09:08 +00:00
Alain Frisch a19a4642e5 Enable 'unused stuff' warnings in tools/ and get rid of them.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13140 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-12-19 09:25:21 +00:00
Alain Frisch f1d0e5afab Add a -dtypedtree flag to all tools (using Printtyped). Also fix ocamlnat.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13139 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-12-18 17:19:53 +00:00
Damien Doligez 1e2ddf4bd1 ignore stuff
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13114 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-12-06 15:40:24 +00:00
Alain Frisch 5668b31352 New implementation of cmt2annot, based on an OO iterator for typed trees. Mostly work for Partial_implementation (#5816).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13085 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-11-08 17:21:27 +00:00
Alain Frisch 0a96bac530 Header.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13084 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-11-08 14:30:38 +00:00
Alain Frisch 0cdf38d6e6 Move ast_mapper.ml to tools/.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13083 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-11-08 14:27:22 +00:00
Alain Frisch e65b4f2c6f Failed attempt at fixing #5816.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13082 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-11-08 14:15:11 +00:00
Alain Frisch 0031d158f9 #5814: rebuild environments from summaries when needed.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13077 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-11-08 10:19:36 +00:00
Alain Frisch cf72576e97 #5814: remove annotations from environments; to produce .annot file, use the location from the value_description record.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13076 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-11-08 09:40:21 +00:00
Alain Frisch 49f50409cd #5812: compile read_cmt.opt (about 10x faster than read_cmt to generate .annot files).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13067 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-11-06 16:55:18 +00:00
Hongbo Zhang 6b8f3706bd bug fix for parsing/pprintast.ml and add tools/eqparsetree to diff two parsetree
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13059 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-11-02 14:13:56 +00:00
Alain Frisch 0b37b27356 Stop keeping a Path.t to refer to labels and constructors in the Typedtree AST. This is not used internally and it is not a robust way to identify these objects unambiguously anyway
(especially when we will add more powerful disambiguation strategies).  The correct way to identify an item is through the pair (type,name), which can be deduced from the
label_description/constructor_description stored in the Typedtree.



git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13043 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-10-24 12:03:00 +00:00
Damien Doligez 4e31e840c5 more small changes
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13028 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-10-17 21:01:06 +00:00
Alain Frisch dfa500533a #5741: make Pprintast available from the command-line (-dsource).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13025 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-10-17 16:09:38 +00:00
Alain Frisch 3ffcd66100 #5741: link pprintast into the compiler (unused for now, but it is available in compiler-libs).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13024 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-10-17 15:50:07 +00:00
Damien Doligez 7224745796 PR#5775: several bug fixes for tools/pprintast.ml
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13016 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-10-16 09:51:42 +00:00
Damien Doligez def31744f9 remove all $Id keywords
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13013 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-10-15 17:50:56 +00:00
Damien Doligez 0a6f6a7857 add possibility of ignoring a directory
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13012 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-10-15 17:17:44 +00:00
Damien Doligez 85db48466a small tweaks
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13011 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-10-15 13:49:55 +00:00
Damien Doligez bb5c5b7e88 merge changes from 4.00.0 to 4.00.1
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12990 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-10-05 15:21:35 +00:00
Fabrice Le Fessant 807b1a2f90 Fix PR#5729 : Untypeast creates unexpected nodes
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12967 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-09-27 16:50:13 +00:00
Damien Doligez be4cf7d973 add *.cmt and *.cmti to lists of ignored files
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12913 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-09-10 10:27:35 +00:00
Jacques Garrigue 43de332b13 typo
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12882 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-08-25 11:34:27 +00:00
Jacques Garrigue 7acb0460b0 real fix for PR#5738
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12880 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-08-25 11:05:40 +00:00
Jacques Garrigue 0a11500cb1 fix PR#5738
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12878 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-08-25 09:54:29 +00:00
Damien Doligez 89077f5f46 Make ocamldep ignore toplevel directives in .ml files, as it did before
commit 12769.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12854 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-08-10 07:19:12 +00:00
Damien Doligez 8cf9581e20 remove leftover debug code from previous commit
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12853 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-08-09 22:27:53 +00:00
Damien Doligez 187e5f1a44 undo commit 12847, it breaks preprocessing
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12852 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-08-09 22:21:29 +00:00
Damien Doligez f605646709 Revert one change of commit 12769 that (inadvertently?) breaks ocamlnet 3.5.1
by triggering a syntax error on toplevel directives inside .ml files.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12847 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-08-09 19:40:10 +00:00
Alain Frisch 412ee0f3e0 Support -absname in ocamldep + update man pages.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12819 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-08-03 10:22:35 +00:00
Damien Doligez 6be05dae42 add some missing copyright headers
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12814 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-08-02 08:17:59 +00:00
Damien Doligez 170c7f433a add possibility of splitting long `...` strings across lines
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12811 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-08-02 07:41:05 +00:00
Damien Doligez 365b3843ea add check for $Id$; various fixes
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12810 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-08-02 07:39:50 +00:00
Damien Doligez 50d0e7f229 add detection of missing copyright headers
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12805 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-08-01 12:39:56 +00:00
Damien Doligez 4d44df1374 fix language name in header
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12804 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-08-01 12:38:51 +00:00
Damien Doligez 20e73da3a4 Tool to check the OCaml sources for simple typographic rules (no TABs, etc)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12801 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-31 13:00:48 +00:00
Damien Doligez 997a678d5e clean up TABs and whitespace
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12799 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-30 18:04:46 +00:00
Damien Doligez 0c3a7de507 merge changes from 4.00 branching to 4.00.0 (part 1)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12784 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-26 19:21:54 +00:00
Alain Frisch 936914100b Add support for -ppx in ocamldep (and reuse preprocessing code in Pparse).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12769 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-24 16:24:44 +00:00
Damien Doligez d90643aab8 PR#5659: ocamlmklib -L option breaks with MSVC
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12724 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-17 18:32:05 +00:00
Fabrice Le Fessant 776c46fce8 Fix problem of size of bin-annot files
- Reset most of the fields of Env.t when saving bin-annot files
- Move debugger/envaux.ml to typing/, and add a function to 
    recover environements from bin-annot files.
- Move tools/typedtreeIter.ml to typing/
- Move the code of typing/typedtreeMap.ml from cmt_format.ml



git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12702 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-12 11:02:18 +00:00
Jacques Garrigue 43c7d1b51c fix PR#5674: move Texp_poly and Texp_newtype to exp_extra
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12680 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-10 08:25:58 +00:00
Alain Frisch 60d0694e9f #5634: parstree rewriters (merge with ast_rewriter branch).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12597 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-06-13 08:00:27 +00:00
Fabrice Le Fessant c3b08c9149 merge with bin-annot: add missing files
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12517 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-05-30 15:25:49 +00:00