34 lines
806 B
Factor
34 lines
806 B
Factor
USING: eval tools.test compiler.units vocabs multiline words
|
|
kernel ;
|
|
IN: compiler.tests
|
|
|
|
! Mixin redefinition did not recompile all necessary words.
|
|
|
|
[ ] [ [ "compiler.tests.redefine6" forget-vocab ] with-compilation-unit ] unit-test
|
|
|
|
[ ] [
|
|
<"
|
|
USING: kernel kernel.private ;
|
|
IN: compiler.tests.redefine6
|
|
GENERIC: my-generic ( a -- b )
|
|
MIXIN: my-mixin
|
|
M: my-mixin my-generic drop 0 ;
|
|
: my-inline ( a -- b ) { my-mixin } declare my-generic ;
|
|
"> eval
|
|
] unit-test
|
|
|
|
[ ] [
|
|
<"
|
|
USING: kernel ;
|
|
IN: compiler.tests.redefine6
|
|
TUPLE: my-tuple ;
|
|
M: my-tuple my-generic drop 1 ;
|
|
INSTANCE: my-tuple my-mixin
|
|
"> eval
|
|
] unit-test
|
|
|
|
[ 1 ] [
|
|
"my-tuple" "compiler.tests.redefine6" lookup boa
|
|
"my-inline" "compiler.tests.redefine6" lookup execute
|
|
] unit-test
|