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
|
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
|
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
|
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
|
a79811afe9
|
Finish attributes on module/recursive modules in structures.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13354 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2013-03-06 10:12:21 +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
|
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
|
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
|
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
|
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 |
Hongbo Zhang
|
733654abab
|
raise an error when multiple private keywords are used in type declarations
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13157 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-12-24 05:09:22 +00:00 |
Xavier Clerc
|
b570a86fa7
|
PR#5119: camlp4 now raises a specific exception when 'DELETE_RULE' fails, rather than raising 'Not_found'
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13047 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-10-25 12:28:15 +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 |
Jérémie Dimino
|
9a718352b9
|
PR#5778: convert constructors on the right hand side of exception ... = ...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12994 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-10-09 12:42:13 +00:00 |
Damien Doligez
|
2352bbfa8b
|
bootstrap camlp4
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12855 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-08-10 07:20:10 +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 |
Jérémie Dimino
|
a2ad11e98c
|
PR#5692: fix computation of locations in the camlp4 parser
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12751 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-07-20 09:26:12 +00:00 |
Xavier Clerc
|
da7078d07b
|
PR#5637: invalid printing of anonymous type parameters (camlp4 revised syntax)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12668 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-07-09 09:43:49 +00:00 |
Xavier Clerc
|
c922570d0f
|
PR#5651: printer for abstract data type (camlp4 revised syntax)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12666 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-07-09 09:07:43 +00:00 |
Jérémie Dimino
|
6d308ad574
|
PR#5668: print using the syntax "let f x y z = ..." only when the pattern is an identifier
This form is incorrect when the pattern is not an identifier.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12656 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-07-04 16:29:35 +00:00 |
Jacques Garrigue
|
053f75b9ca
|
bootstrap camlp4 to fix PR#5633 (slow parsing)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12615 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-06-19 10:50:11 +00:00 |
Jérémie Dimino
|
318f731baa
|
PR#5646: reapply the fix for PR#5442
It was reverted when the bin-annot branch was merged
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12595 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-06-12 16:18:36 +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 |
Xavier Clerc
|
546d88ca52
|
PR#5620: invalid printing of type manifest (camlp4 revised syntax)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12473 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-05-23 08:19:46 +00:00 |
Jérémie Dimino
|
11741a8df7
|
Ensure that character literals are always escaped by the camlp4 printer.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12463 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-05-16 09:13:30 +00:00 |
Xavier Clerc
|
e884da3bdc
|
Fixes a camlp4 50x slowdown by changing the order of grammar rules.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12391 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-04-23 11:58:40 +00:00 |
Jérémie Dimino
|
7fa1f303c7
|
Set the revised syntax of GADTs
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12346 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-04-11 21:34:51 +00:00 |
Jérémie Dimino
|
ef8d15d4a1
|
PR#5579: always create a new token stream before parsing a phrase so new filters are applied
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12336 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-04-10 21:18:00 +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 |
Jérémie Dimino
|
62fc590a47
|
PR#5495: add "or" to the list of infix keywords in the camlp4 parser
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12162 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-02-17 12:52:04 +00:00 |
Jérémie Dimino
|
8c478a926a
|
PR#5481: update camlp4 ast magic numbers and add a comment before the ast definition
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12155 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-02-15 09:30:45 +00:00 |
Damien Doligez
|
d4522f062c
|
Change "Ocaml" to "OCaml" everywhere
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12152 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-02-13 17:48:41 +00:00 |
Damien Doligez
|
e4d22f63b7
|
PR#5159: better documentation of locations
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12150 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-02-13 17:45:53 +00:00 |
Alain Frisch
|
ff476d8431
|
Merge the unused_declarations branch.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12035 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-01-18 09:15:27 +00:00 |
Alain Frisch
|
c45bcb892d
|
Synchronize with trunk.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/unused_declarations@12034 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-01-18 08:31:11 +00:00 |
Damien Doligez
|
25065da568
|
PR#5387: typo in commit 11986
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12012 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-01-10 20:19:33 +00:00 |
Jérémie Dimino
|
76ff25a586
|
PR#5456: replace __LOCATION__ after macro expansion and add LOCATION_OF
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11992 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-01-05 14:33:56 +00:00 |
Jérémie Dimino
|
b0cf87a335
|
PR#5231: fix parsing of <:str_item< type t = $x$ >>
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11990 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-01-05 10:29:11 +00:00 |
Jérémie Dimino
|
0c37ea4c27
|
PR#5387: avoid extra Ast.CrNil and Ast.CgNil
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11987 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-01-05 09:43:50 +00:00 |
Jérémie Dimino
|
01b9028cb0
|
PR#5387: avoid extra Ast.StNil and Ast.SgNil
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11986 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2012-01-05 09:35:47 +00:00 |
Jérémie Dimino
|
6075cd4c6d
|
PR#5442: use safe_string_escaped instead of String.escaped
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11984 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2011-12-30 20:00:14 +00:00 |