-
Notifications
You must be signed in to change notification settings - Fork 23
Open
Description
I noticed that janet's [1] flychecking reports an error for scaffold.janet:
$ janet -k scaffold.janet
error: scaffold.janet:42:1: compile error: (macro) grammar error in nil, unexpected peg source
in peg/match [src/core/peg.c] on line 1904
in make-template [scaffold.janet] on line 19, column 14
in deftemplate [scaffold.janet] on line 32, column 34
in dofile [boot.janet] (tail call) on line 3107, column 7
The following smaller sample seems to reproduce:
(def template-peg
(peg/compile 1))
(defn make-template
[]
(peg/match template-peg ""))
(defmacro deftemplate
[template-name body]
(make-template))
(deftemplate project-template
``
fun
``)One thing that seemed to work was to apply *flychecking* from Janet v1.40.0 like this:
(def template-peg
(peg/compile 1))
(defn make-template
[]
(if (dyn *flychecking*)
(peg/match 1 "")
(peg/match template-peg "")))
(defmacro deftemplate
[template-name body]
(make-template))
(deftemplate project-template
``
fun
``)But may be there's a nicer way.
Any ideas?
[1] For recent janet versions 1.39.1 through 1.40.1.
Metadata
Metadata
Assignees
Labels
No labels