compiler.tree.propagation: Fix build error
parent
79cca8e59d
commit
225c28f23a
|
|
@ -43,7 +43,7 @@ IN: compiler.tree.propagation.call-effect.tests
|
|||
2dip
|
||||
rot
|
||||
[ 2drop ]
|
||||
[ wrong-values ]
|
||||
[ throw-wrong-values ]
|
||||
if
|
||||
]
|
||||
( obj -- a b c )
|
||||
|
|
|
|||
|
|
@ -146,14 +146,14 @@ ERROR: uninferable ;
|
|||
: (infer-value) ( value-info -- effect )
|
||||
dup literal?>> [
|
||||
literal>>
|
||||
[ callable? [ uninferable ] unless ]
|
||||
[ already-inlined-quot? [ uninferable ] when ]
|
||||
[ safe-infer dup +unknown+ = [ uninferable ] when ] tri
|
||||
[ callable? [ throw-uninferable ] unless ]
|
||||
[ already-inlined-quot? [ throw-uninferable ] when ]
|
||||
[ safe-infer dup +unknown+ = [ throw-uninferable ] when ] tri
|
||||
] [
|
||||
dup class>> {
|
||||
{ \ curry [ slots>> third (infer-value) remove-effect-input ] }
|
||||
{ \ compose [ slots>> last2 [ (infer-value) ] bi@ compose-effects ] }
|
||||
[ uninferable ]
|
||||
[ throw-uninferable ]
|
||||
} case
|
||||
] if ;
|
||||
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@ ERROR: invalid-outputs #call infos ;
|
|||
|
||||
: check-outputs ( #call infos -- infos )
|
||||
over out-d>> over [ length ] bi@ =
|
||||
[ nip ] [ invalid-outputs ] if ;
|
||||
[ nip ] [ throw-invalid-outputs ] if ;
|
||||
|
||||
: call-outputs-quot ( #call word -- infos )
|
||||
dupd
|
||||
|
|
|
|||
|
|
@ -164,7 +164,7 @@ ERROR: bad-partial-eval quot word ;
|
|||
|
||||
: check-effect ( quot word -- )
|
||||
2dup [ infer ] [ stack-effect ] bi* effect<=
|
||||
[ 2drop ] [ bad-partial-eval ] if ;
|
||||
[ 2drop ] [ throw-bad-partial-eval ] if ;
|
||||
|
||||
:: define-partial-eval ( word quot n -- )
|
||||
word [
|
||||
|
|
|
|||
Loading…
Reference in New Issue