Alain Frisch
7994b4db28
Functions to close the open recursion in Ast_mapper.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14182 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-26 08:24:38 +00:00
Alain Frisch
91b2f18ef8
Cleanup ppx API.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14180 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-26 08:03:49 +00:00
Alain Frisch
48edce920b
Switch to a record-based API for Ast_mapper, so that it can be used within the compiler itself (where objects are banned). The class-based version will be shipped as part of the ppx_tools package. Only the ifdef example has been adapted in experimental/frisch.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14178 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-25 15:14:38 +00:00
Alain Frisch
884ca00fdf
Continue cleanup. driver/errors.ml is no longer needed.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/exception_registration@14120 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-12 14:45:03 +00:00
Alain Frisch
8660e346df
Continue.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/exception_registration@14119 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-12 14:34:13 +00:00
Alain Frisch
2e16ccd61f
Switch Includemod.Error, without trying to split the message (to keep current behavior).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/exception_registration@14117 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-12 14:21:04 +00:00
Alain Frisch
de72ef4a89
Simplify common case of unit-wide errors.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/exception_registration@14111 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-12 13:47:04 +00:00
Alain Frisch
71efb4666b
Switch Lexer.Error to the new system.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/exception_registration@14107 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-12 11:59:45 +00:00
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
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
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
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
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
411eb41b42
Allow an optional 'when' clause after a pattern payload.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13920 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-07-22 15:15:07 +00:00
Alain Frisch
87d9d6c877
More explicit internal representation of attribute payload. Now also support patterns as payload [%id ? pat].
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13919 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-07-22 14:58:15 +00:00
Alain Frisch
8df2057b46
Special syntax when the payload of attribute/extension is a single type expression: [@id : T], [%id : T]. Represented internally as (() : T).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13918 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-07-22 14:04:28 +00:00
Alain Frisch
525ef9d703
Synchronize with trunk.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13897 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-07-16 13:34:30 +00:00
Fabrice Le Fessant
b171e15a12
Fix fix to PR#3679 : discard CR instead of printing a dot
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13771 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-12 15:32:27 +00:00
Fabrice Le Fessant
5d82e6f17f
Fix PR#3679
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13767 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-12 11:53:38 +00:00
Alain Frisch
2e199ef1f2
Item attributes on each let-binding.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13736 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-03 15:14:19 +00:00
Damien Doligez
e69730e0d6
extend warning 3 to other deprecated features: Latin1, (&) and (or)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13706 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-28 11:05:58 +00:00
Jérémie Dimino
8cee3aedf9
Revert addition of raw literals to the parsetree
...
It turns out it is not possible to have the exact raw representation
since a constant does not always correspond to exactly one token, so
there is no point in making the AST more complex.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13702 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-23 15:12:04 +00:00
Damien Doligez
c3bf54a7b6
merge changes from version/4.00 from 4.00.1 to r13697
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13699 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-22 12:56:54 +00:00
Jérémie Dimino
3beb7a5da0
prepend "-" to raw representation of negative constants in patterns
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13697 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-21 15:35:16 +00:00
Jérémie Dimino
4e7ae971a7
add the raw representation of constants to the parsetree
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13696 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-20 11:37:41 +00:00
Alain Frisch
a3b1c67fff
#5980 : explicit way to silence the new warning (open! X).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13685 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-16 13:34:53 +00:00
Alain Frisch
365bcdeadc
Print attributes on types and patterns.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13598 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-23 13:53:47 +00:00
Alain Frisch
eb4130e47c
The arument of attributes and extension nodes is now a structure, which is syntactically more general than an expression (through the embedding E -> [Pexp_eval E]).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13579 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-19 07:40:57 +00:00
Alain Frisch
39ce6c23c3
Adapt js_of_ocaml ppx example.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13566 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-18 14:42:46 +00:00
Alain Frisch
67912da346
Allow abstract module declaration in structures to make the syntax and Parsetree more uniform.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13556 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-18 13:14:53 +00:00
Alain Frisch
519ac7daca
Doc.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13553 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-17 13:48:35 +00:00
Alain Frisch
84147074f9
Split Pexp_constraint into Pexp_coerce/Pexp_constraint.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13552 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-17 12:23:44 +00:00
Alain Frisch
d2171a98d8
Split Pexp_function into Pexp_function/Pexp_fun.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13551 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-17 11:43:29 +00:00
Alain Frisch
b22865d0a9
Check AST invariants.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13550 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-17 10:01:24 +00:00
Alain Frisch
b36ec9f764
Get rid of the 'explicit arity' flag on Pexp_construct/Ppat_construct. If really requires (for camlp5?), the feature should be reimplemented with attributes.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13549 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-17 09:46:52 +00:00
Alain Frisch
501dfd2b5e
Getting rid of Pexp_assertfalse/Texp_assertfalse.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13548 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-17 09:18:03 +00:00
Alain Frisch
088de517d8
Keep interval pattern sugar in the Parsetree (Camlp4 parsers still expand them).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13546 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-16 15:34:09 +00:00
Alain Frisch
b99a353158
Doc.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13545 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-16 14:40:49 +00:00
Alain Frisch
98ac2156ff
Doc.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13544 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-16 13:31:35 +00:00
Alain Frisch
c3b8fd2ff6
Fix doc.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13543 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-16 12:20:57 +00:00
Alain Frisch
158bc9c9e3
Get rid of the undocumented syntax #c[>`A] ( #5936 , #5983 ).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13542 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-16 12:17:17 +00:00
Alain Frisch
80c492fe64
Doc.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13541 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-16 10:53:50 +00:00
Alain Frisch
3fe10139ab
Better representation of with-constraints.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13540 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-16 10:47:45 +00:00
Alain Frisch
4f758291bc
Doc.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13539 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-16 09:31:16 +00:00
Alain Frisch
c8743ab55f
Remove pcsig_loc field + doc.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13538 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-16 09:21:05 +00:00
Alain Frisch
986fb105c1
Doc.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13537 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-16 09:11:54 +00:00
Alain Frisch
ecb088015f
Rename Pcty_fun to Pcty_arrow (and idem in Types, Typedtree, Outcometree) to be coherent with Ptyp_arrow.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13536 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-16 08:59:09 +00:00
Alain Frisch
da65939641
Reorganize.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13535 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-16 07:58:04 +00:00
Alain Frisch
bfc9a8f9e1
Get rid of the location argument on pci_params, and improve location of error messages.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13534 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-16 07:51:27 +00:00
Alain Frisch
fc9f8ee63f
Style.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13533 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-16 07:37:16 +00:00
Alain Frisch
dd200d9553
Allow the method body to be represented by a non Pexp_poly expression in the Parsetree.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13530 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-15 17:26:32 +00:00
Alain Frisch
abeb8c97f2
Document when Ptyp_poly can appear.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13529 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-15 16:47:27 +00:00
Alain Frisch
e7736899fb
Explicit representation of guards, get rid of Pexp_when.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13528 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-15 16:23:22 +00:00
Alain Frisch
c16b98ec9f
Document expressions.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13520 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-12 17:20:47 +00:00
Alain Frisch
b22d47ec0f
Document patterns.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13519 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-12 16:53:55 +00:00
Alain Frisch
0c0292340e
Typo.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13518 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-12 16:10:35 +00:00
Alain Frisch
57f1133e0a
Represent the closed flag of Ptyp_variant using closed_flag instead of bool, and start documenting the Parsetree.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13517 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-12 16:08:52 +00:00
Alain Frisch
f7fee51ae3
Example of simple type-driven code generation.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13513 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-11 15:26:24 +00:00
Alain Frisch
04de43bee5
Attributes on Pstr_eval.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13512 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-11 14:07:32 +00:00
Alain Frisch
92ad47d47b
Keep item attributes on let-binding structure items.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13511 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-11 13:52:06 +00:00
Alain Frisch
8a9188eb3f
Forgot to show attributes.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13510 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-11 13:28:37 +00:00
Alain Frisch
feb3e48ffe
Continue convenience functions.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13509 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-11 12:57:59 +00:00
Alain Frisch
3a5b7fe6b4
Convenience functions to build AST + implicit location.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13508 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-11 12:50:38 +00:00
Alain Frisch
d5682ed9cf
A -ppx rewriter to evaluate expressions at compile time.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13506 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-11 12:21:02 +00:00
Alain Frisch
94106bf007
Starting to work on printing attributes in pprintast.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13505 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-11 07:53:48 +00:00
Alain Frisch
a929cdb339
Cosmetic.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13503 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-10 18:00:11 +00:00
Alain Frisch
90bbd25948
Extension nodes as class field or class type field.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13502 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-10 17:54:54 +00:00
Alain Frisch
6e36fd566b
Extension nodes and attributes for class types.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13501 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-10 17:44:15 +00:00
Alain Frisch
ee5f754a42
Attributes and extension points in class_expr.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13500 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-10 17:26:55 +00:00
Alain Frisch
91a1d41047
Cosmetic.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13498 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-10 12:37:56 +00:00
Alain Frisch
e2036c5a22
Start to bring constructor names closer to concrete syntax.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13497 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-10 11:17:41 +00:00
Alain Frisch
580bb34579
Renaming pcstr_pat -> pcstr_self, cstr_pat -> cstr_self.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13496 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-10 09:35:09 +00:00
Alain Frisch
71787e0228
Support dot-separated attributes for extensions and attributes.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13495 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-10 09:22:54 +00:00
Alain Frisch
ec9dacb3f1
Support for attributes on class type fields.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13494 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-10 09:17:22 +00:00
Alain Frisch
d84ae41182
Item attributes on class fields.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13493 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-09 15:54:41 +00:00
Alain Frisch
d1751e4738
Allow to not have empty Ptyp_poly node in the Parsetree (the type-checker insert them automatically).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13491 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-09 14:10:54 +00:00
Alain Frisch
1eb1ec4c40
Get rid of core_field_type, more direct representation of object types.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13489 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-09 13:29:00 +00:00
Damien Doligez
1eda2af37b
fix whitespace
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13483 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-04 15:25:42 +00:00
Alain Frisch
47a3ee095e
Get rid of the Default case in Asttype.rec_flag.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13481 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-04 12:38:20 +00:00
Alain Frisch
8ebf39519e
Allow keywords as extension/attribute identifier.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13479 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-03 16:28:36 +00:00
Alain Frisch
27d523ea72
Better representation of variance in the Parsetree.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13474 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-02 15:33:35 +00:00
Alain Frisch
f510f9b4a1
Support for quoted strings within comments.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13469 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-29 15:36:24 +00:00
Alain Frisch
842e50f530
Add entry points to parse expressions/types/patterns.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13466 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-29 09:45:45 +00:00
Alain Frisch
5a0a3605f3
Remove dead code.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13465 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-29 08:20:12 +00:00
Damien Doligez
129a5b29f5
added a lot of missing newlines
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13455 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-28 16:08:54 +00:00
Alain Frisch
180aabbc6b
Simplify.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13452 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-26 11:29:48 +00:00
Alain Frisch
6bfcb1da5b
Support for quoted strings.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13450 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-26 11:17:17 +00:00
Alain Frisch
fbde1f7e52
Align module and module type declarations between Parsetree and Typedtree.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13443 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-25 17:47:28 +00:00
Alain Frisch
0b9347f482
Represent exception declarations as constructor declarations in the Parsetree.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13442 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-25 15:49:10 +00:00
Alain Frisch
dd61fb5e55
Represent label and constructor declarations as records in the typedtree. Also keep return type for GADT constructors.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13441 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-25 14:56:56 +00:00
Alain Frisch
5c98dd91fe
Starting to keep attributes in the typedtree.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13440 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-25 14:16:07 +00:00
Damien Doligez
ce4d6f7995
fix wrong error message
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13425 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-22 18:02:34 +00:00
Alain Frisch
f85f1e2759
Get rid of alternative syntax for '(module...)'.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13420 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-22 11:30:28 +00:00
Alain Frisch
b9ad592ac0
Infix syntax for attributes/extension nodes restricted to expression constructions starting with a (combination of) keywords.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13419 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-22 11:25:52 +00:00
Damien Doligez
3455ffd361
Allow parentheses around the typexpr in "type t = [> typexpr ]".
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13408 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-18 20:17:14 +00:00
Damien Doligez
d78a0b0bc3
Do not let indentation grow without bound when pretty-printing the parse tree.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13407 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-18 20:15:21 +00:00
Damien Doligez
c63f9e0957
fix a few problems with whitespace and over-long lines
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13393 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-09 22:38:52 +00:00
Alain Frisch
b0987fd693
Attributes on expresions (etc) are now stored in the expression record, to facilitate pattern matching on structured fragments of AST while ignoring attributes. Introducing a new Ast_helper module to help creating AST fragments.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13381 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-08 14:59:45 +00:00
Alain Frisch
a483bbaaf4
Experimenting with alternative syntax for extension nodes (as an annotation on the opening keyword/delimiter).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13378 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-08 09:17:30 +00:00
Alain Frisch
ab2a491ba0
Support attributes on opening delimiter/keyword for all kinds of expressions.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13377 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-08 08:42:53 +00:00
Alain Frisch
dec300a026
Allow seq_expr, not only expr as argument of attributes/extension nodes. This allows us to write [%do a; b; c <-- d; f c; ...].
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13376 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-08 08:18:01 +00:00
Alain Frisch
07e81b2f0d
Examples. Also accept uppercase idents (and some keywords) as ids for attributes/extension nodes.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13373 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-07 15:29:11 +00:00
Alain Frisch
eaf9e3744a
It is now possible to start a signature or a structure with a ';;' token and to have two successive ';;' tokens.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13372 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-07 14:15:23 +00:00
Alain Frisch
72a638757c
Stand-alone ("floating") sig_item/str_item attributes now use the
...
standard syntax for item attributes. They are recognized at the
beginning of the signature/structure and after a ";;" token.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13371 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-07 13:46:44 +00:00
Alain Frisch
378c1d92df
Simplify.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13370 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-07 13:13:36 +00:00
Alain Frisch
a555c12f52
Support attributes on recursive modules.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13369 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-07 13:07:32 +00:00
Alain Frisch
63b229658e
Remove prefix syntax for attributes.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13368 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-07 13:00:01 +00:00
Alain Frisch
076eca73cc
Alternative syntax for some constructions starting with a keyword.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13364 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-06 14:53:39 +00:00
Alain Frisch
97c5f1a253
Attributes on label in record type declarations.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13361 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-06 13:51:18 +00:00
Alain Frisch
d50038cae7
Attribute has structure/signature item.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13359 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-06 12:27:32 +00:00
Alain Frisch
2cf65c8c85
Record for module type declarations.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13358 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-06 12:14:02 +00:00
Alain Frisch
24a0c6eb0e
Name is part of the value_description record.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13357 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-06 12:00:18 +00:00
Alain Frisch
241abe55e6
Type name is part of the type declaration record.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13356 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-06 11:47:59 +00:00
Alain Frisch
59bdf321d3
Switch Pstr_modtype argument to a record type.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13355 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-06 10:49:44 +00:00
Alain Frisch
d32b19008a
Parse recursive module as standard modules, and check in the type-checker that an explicit type is provided. (Unfinished.)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13353 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-05 16:50:05 +00:00
Alain Frisch
e0045d42dd
Parse attributes on modules/recursive modules/module types in structures (currently not kept in Parsetree).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13352 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-05 12:49:27 +00:00
Alain Frisch
cc70961d4f
Support item attributes on exn rebind.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13351 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-05 12:44:40 +00:00
Alain Frisch
b01b7305bd
Put name in the exception_declaration record.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13350 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-05 12:37:17 +00:00
Alain Frisch
8823b9dd6c
Item attributes on external declarations in structures.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13349 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-05 12:17:12 +00:00
Alain Frisch
42a33460ed
Item attributes on classes.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13348 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-05 12:06:38 +00:00
Alain Frisch
7de8a9688e
Allow to put 'item' attributes before the 'type' or 'module rec' keywords. They apply to the first item in the declaration.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13347 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-05 11:51:51 +00:00
Alain Frisch
db579b0a1e
Extension as structure/signature items [%%lid expr].
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13346 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-05 11:46:25 +00:00
Alain Frisch
a64152ae6e
Use [%lid expr] syntax for extensions.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13345 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-05 11:30:15 +00:00
Alain Frisch
8461db39f1
Attributes on module/module type/recursive module declarations in interfaces.
...
Module:
[^^id expr] [^^id expr] ...
module X : S
[@@id expr] [@@id expr] ...
Module types:
[^^id expr] [^^id expr] ...
module type X = S
[@@id expr] [@@id expr] ...
Recursive modules:
module rec [^^id expr] [^^id expr] X1 : S1 [@@id expr] [@@id expr] ...
and [^^id expr] [^^id expr] X1 : S1 [@@id expr] [@@id expr] ...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13344 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-04 17:39:07 +00:00
Alain Frisch
a5059464fe
Attributes on open/include in signatures.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13343 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-04 16:36:32 +00:00
Alain Frisch
46c790a663
Attributes on exception declarations.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13342 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-04 16:20:49 +00:00
Alain Frisch
2825f94d5b
Attributes on value declared in signatures.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13341 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-04 16:03:20 +00:00
Alain Frisch
a3f6606793
Prefix attributes for 'items'.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13340 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-04 15:53:43 +00:00
Alain Frisch
f8706985c2
Adding prefix syntax for attributes [^id expr] ...
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13339 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-04 15:48:24 +00:00
Alain Frisch
5f0aead005
Adding attributes on constructor declarations (type t = A [@id expr] | B [@id expr] of ...), and switch to a record type to represent those constructor declarations in the Parsetree.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13338 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-04 15:35:47 +00:00
Alain Frisch
70bc46ef0c
New syntax:
...
Attributes: ... [@id expr]
Extension: [#id expr]
Attributes on items: ... [@@id expr]
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13337 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-04 15:00:30 +00:00
Alain Frisch
be76a15a6b
Attributes/extensions as module types.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13336 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-04 14:11:15 +00:00
Alain Frisch
a2acbc8d3b
Adding extension/attribute on patterns.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13335 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-04 13:52:23 +00:00
Alain Frisch
99bc01985f
Fix.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13334 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-04 12:58:14 +00:00
Alain Frisch
e58b2cd036
Continue.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13333 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-04 12:54:57 +00:00
Alain Frisch
c8d3ff52a2
Cleanup + support attributes on type declarations (syntax: type t = ... with (:a1 expr1) (:a2 expr2) ... (:an exprn)).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13332 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-01 12:44:04 +00:00
Alain Frisch
666d6574d7
More uniform syntax:
...
Attributes:
expr (:foo expr)
type (:foo expr)
str_item ..(:foo expr)
Extension nodes:
expr (&foo expr)
type (&foo expr)
str_item ..(&foo expr)
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13331 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-01 09:27:14 +00:00
Alain Frisch
152255e512
First version with attributes and extensions on expressions, type expressions and structure items.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13330 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-02-28 16:51:59 +00:00
Hongbo Zhang
23994ac6de
pprintast.ml: fix a bug for printing private types and tune some identations
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13308 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-02-22 04:04:16 +00:00
Alain Frisch
b54d688d1a
Typo.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13289 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-02-08 06:04:36 +00:00
Jacques Garrigue
1b5d02346c
Fix PR#5911: substituting in submodules should not be allowed
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13282 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-29 00:54:06 +00:00
Alain Frisch
7ef058b6f3
Better registration API.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13270 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-23 10:15:45 +00:00
Alain Frisch
0c856310f2
Registration API for ppx rewriters.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13269 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-23 09:15:41 +00:00
Alain Frisch
20a4b99758
#5902 : adapt standard ppx driver to support extra arguments.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13267 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-23 08:37:01 +00:00
Gabriel Scherer
06d3dfc6fb
fix a benign typo in the parser, spotted by Frédéric Bour
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13265 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-20 17:20:25 +00:00
Alain Frisch
7ac2a543cb
Allow to pass mapper objects with more methods.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13258 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-17 13:25:03 +00:00
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
Hongbo Zhang
2854b1d448
desuaring Bigarray syntax for -dsource
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13131 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-12-14 02:57:43 +00:00
Damien Doligez
f559b6e8f0
better locations
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13129 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-12-13 12:48:51 +00:00
Damien Doligez
773378a743
followup to r13120: output ALL locations
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13128 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-12-10 13:16:10 +00:00
Damien Doligez
4e20a37f46
fix white space
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13127 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-12-10 13:15:22 +00:00
Damien Doligez
7e263248d7
fix wrong locations in AST
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13122 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-12-08 20:56:07 +00:00
Damien Doligez
0c14bdda48
fix whitespace and long lines
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13121 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-12-08 20:55:42 +00:00
Damien Doligez
551e5c854b
shorter format for locations; output all locations
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13120 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-12-08 20:55:17 +00:00
Damien Doligez
06e853389f
fix missing locations
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13116 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-12-06 15:41:43 +00:00
Hongbo Zhang
8930e12294
tune the indentation of [let rec ... and ...] and fix the bug of ~+
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13092 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-11-12 14:30:45 +00:00
Hongbo Zhang
c1ba7d773a
fix indentation of parsing/pprintast.ml and a minor bug let _ as f = fun .. -> ..
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13064 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-11-05 14:30:56 +00:00
Hongbo Zhang
fe894aec5f
Ptyp_poly consistent in both methods and binding
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13061 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-11-03 02:58:08 +00:00
Hongbo Zhang
8c0fb4317c
bug fix for parsing/pprintast.ml, now pprintast pass tests of all the files in the compiler directory, including camlp4
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13060 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-11-03 02:20:16 +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
Hongbo Zhang
7ee1f3e11e
fix a typo in record printing
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13058 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-11-01 17:45:30 +00:00
Hongbo Zhang
6ee61c4c2f
desguaring record syntax sugar
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13055 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-10-31 23:52:00 +00:00
Hongbo Zhang
920fbd3145
make pprintast usable
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13054 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-10-31 18:11:33 +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
Alain Frisch
238814e293
#5770 : Syntax error messages involving unclosed parens are sometimes incorrect.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13019 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-10-16 14:04:33 +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
d228342e8a
update comment; remove spurious commas
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12918 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-09-10 10:32:49 +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
Alain Frisch
f6f54d325d
#4762 : QUESTIONQUESTION is no longer a token.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12795 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-30 10:15:10 +00:00
Alain Frisch
7630d3c41f
#5657 : fix location of punned record fields (for patterns as well).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12637 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-06-21 17:07:19 +00:00
Alain Frisch
98748d213d
#5657 : fix location of punned record fields.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12636 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-06-21 17:00:46 +00:00
Fabrice Le Fessant
d39d43e55f
merge with branch bin-annot
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12516 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-05-30 14:52:37 +00:00
Alain Frisch
a0a14c08fa
Enable and fix more warnings.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12498 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-05-29 11:47:28 +00:00
Alain Frisch
05c973e6ed
Compile with warning 33, and remove unused opens.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12497 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-05-29 11:10:03 +00:00
Damien Doligez
ee4e2fb927
PR#5598: fix bug in commit 12420
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12424 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-05-03 11:51:08 +00:00
Damien Doligez
8c17777b85
PR#5598: remove macos9-style newline support
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12420 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-05-02 14:44:38 +00:00
Damien Doligez
38162c1196
remove redundant colon in norepeat mode for the toplevel
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12363 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-04-17 08:02:02 +00:00
Damien Doligez
1b782a0122
PR#5585: typo explicitely -> explicitly
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12353 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-04-13 12:44:29 +00:00
Jacques Garrigue
b3e0f2e72a
Fix PR#5553: do not allow a type variable to have the same name as a local type
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12257 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-03-23 02:20:24 +00:00
Damien Doligez
6c24f4f90b
merge version 3.12 from 3.12.1 to r12205
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12210 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-03-08 19:52:03 +00:00
Alain Frisch
1be1d4e834
#5527 : use absolute filenames in the message for Warning 31, when requested (-absname).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12198 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-03-07 17:27:59 +00:00
Alain Frisch
ebc803bb63
Fix infinite loop (introduced by commit r11999).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12192 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-03-06 10:54:45 +00:00
Alain Frisch
4cfd2fc2a6
Reverting bad commit.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12058 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-01-20 14:23:34 +00:00
Alain Frisch
7fe8c8ce6f
Fix #5490 .
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12057 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-01-20 14:21:03 +00:00
Alain Frisch
33eefe4874
Remove unused constructors in the AST: Cf_let, Pcf_let.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11968 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-12-28 13:27:07 +00:00
Alain Frisch
7f7dc416fd
Reverting the let.expr syntax (no consensus on the proposal). Sorry for the noise.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11960 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-12-27 09:08:34 +00:00
Alain Frisch
d79455bc76
New syntax for 'custom let bindings': let.simple_expr pat = expr in expr
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11906 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-12-21 08:58:56 +00:00
Alain Frisch
16c26c6de3
let-like operators.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11894 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-12-20 11:22:32 +00:00
Alain Frisch
c1f154ea70
New option to force the compilers to show absolute paths in error messages.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11890 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-12-20 10:35:43 +00:00
Alain Frisch
ece3353035
#5358 : package types allow constraints on typed in sub-modules. Camlp4 compiles but does not support this new feature yet.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11311 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-12-14 10:26:15 +00:00
Jacques Garrigue
01dceea3cc
remove conflict
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11309 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-12-14 08:59:07 +00:00
Damien Doligez
893a3bed36
cleanup white space and robustify mkuminus
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11290 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-11-29 15:49:25 +00:00
Jacques Garrigue
6c78f42d36
merge branches/gadts-devel
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11284 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-11-24 09:02:48 +00:00
Pierre Weis
731b2a05dd
Too long lines.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11254 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-10-28 21:26:01 +00:00
Pierre Weis
67e74dbb61
Get rid of spurious warnings
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11253 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-10-28 21:24:27 +00:00
Pierre Weis
87946c9536
Get rid of spurious warnings
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11252 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-10-28 21:21:55 +00:00
Jacques Garrigue
b1f8048f39
merge branches/located_errors
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11228 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-10-21 03:26:35 +00:00
Damien Doligez
d9eb848d86
PR#5238, PR#5277: Sys_error when getting error location
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11166 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-08-04 14:59:13 +00:00