factor/basis/compiler/tests/redefine9.factor

34 lines
901 B
Factor
Raw Normal View History

2009-09-20 23:42:40 -04:00
USING: eval tools.test compiler.units vocabs words
kernel generic.math ;
2009-04-26 01:51:47 -04:00
IN: compiler.tests.redefine9
! Mixin redefinition did not recompile all necessary words.
[ ] [ [ "compiler.tests.redefine9" forget-vocab ] with-compilation-unit ] unit-test
[ ] [
2009-09-20 23:42:40 -04:00
"USING: kernel math math.order sorting ;
IN: compiler.tests.redefine9
MIXIN: my-mixin
INSTANCE: fixnum my-mixin
GENERIC: my-generic ( a -- b )
! We add the bogus quotation here to hinder inlining
! since otherwise we cannot trigger this bug.
2009-09-20 23:42:40 -04:00
M: my-mixin my-generic 1 + [ [ <=> ] sort ] drop ;"
eval( -- )
] unit-test
[ ] [
2009-09-20 23:42:40 -04:00
"USE: math
IN: compiler.tests.redefine9
TUPLE: my-tuple ;
2009-09-20 23:42:40 -04:00
INSTANCE: my-tuple my-mixin"
eval( -- )
] unit-test
[
2008-08-31 02:34:00 -04:00
"my-tuple" "compiler.tests.redefine9" lookup boa
"my-generic" "compiler.tests.redefine9" lookup
execute
] [ no-math-method? ] must-fail-with