Merge branch 'master' of git://factorcode.org/git/factor
[factor/jcg.git] / basis / compiler / tests / peg-regression.factor
blob56a4021eed3e9f995fba9effb38eee1131651a4a
1 ! Calling the compiler at parse time and having it compile
2 ! generic words defined in the current compilation unit would
3 ! fail. This is a regression from the 'remake-generic'
4 ! optimization, which would batch generic word updates at the
5 ! end of a compilation unit.
7 USING: kernel accessors peg.ebnf ;
8 IN: compiler.tests
10 TUPLE: pipeline-expr background ;
12 GENERIC: blah ( a -- b )
14 M: pipeline-expr blah ;
16 : ast>pipeline-expr ( -- obj )
17     pipeline-expr new blah ;
19 EBNF: expr
20 pipeline = "hello" => [[ ast>pipeline-expr ]]
21 ;EBNF
23 USE: tools.test
25 [ t ] [ \ expr optimized>> ] unit-test
26 [ t ] [ \ ast>pipeline-expr optimized>> ] unit-test