Browse thread
3.10.0+beta - "Not_found" from a custom camlp4 executable (Delete.delete_rule_in_suffix)
-
Aleksey Nogin
-
Nicolas Pouillard
-
Aleksey Nogin
-
Aleksey Nogin
- Nicolas Pouillard
-
Aleksey Nogin
-
Aleksey Nogin
-
Nicolas Pouillard
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | Nicolas Pouillard <nicolas.pouillard@g...> |
| Subject: | Re: 3.10.0+beta: Corrected and improved Camlp4MacroParser |
On 4/17/07, Aleksey Nogin <nogin@metaprl.org> wrote: > As I wrote to the list earlier, I have noticed that the > Camlp4MacroParser in 3.10.0+beta has an unfortunate problem - when > processing an "IFDEF" (or "IFNDEF") directive, it will execute the > "DEFINE"s in _both_ branches, regardless of whether the test is true or > not (this was caused by the fact that the DEFINE directives would be > executed eagerly at parse-time). > > Attached is a corrected and improved version of the Camlp4MacroParser: > > - Fixes the above problem; now the execution of the "DEFINE" directives > inside IFDEF/IFNDEF is correct. Ok > - Adds support for "local" definitions Cool, thanks. I've merged your fix with the current status of Camlp4MacroParser which now handles signature items and a more general -D<uident>=<expr> option. I've applied it to the CVS (release310 branch) that is now available from the public CVS repository. Since some changes have been applied to camlp4 since OCaml-3.10+beta release I suggest you to get the last version to do your porting work. Best regard and many thanks, -- Nicolas Pouillard