Hello everyone.
I'm trying to write a syntax extension that introduces two new tokens "[%" and "%]". But I'm getting a syntax error if token ")" follows token "%]". Could anybody help me please?
Here's the minimal syntax extension code that reproduces the issue:
===================================================================
open Camlp4.PreCast
open Syntax
EXTEND Gram
expr:
[ [ "[%"; e = expr LEVEL "simple"; "%]" -> e ] ] ;
END ;;
===================================================================
Usage sample:
===================================================================
# [% 5 %] ;;
- : int = 5
# ([% 5 %]) ;;
Characters 6-9:
([% 5 %]);;
^^^
Parse error: [expr level simple] expected after "[%" (in [expr])
===================================================================
Thanks in advance.
--
vadim.shender@gmail.com