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 |