| 
									
										
										
										
											2009-09-20 23:42:40 -04:00
										 |  |  | USING: eval tools.test compiler.units vocabs words | 
					
						
							| 
									
										
										
										
											2008-08-30 01:05:27 -04:00
										 |  |  | kernel generic.math ;
 | 
					
						
							| 
									
										
										
										
											2009-04-26 01:51:47 -04:00
										 |  |  | IN: compiler.tests.redefine9 | 
					
						
							| 
									
										
										
										
											2008-08-30 01:05:27 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  | ! 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 ;
 | 
					
						
							| 
									
										
										
										
											2008-08-30 01:05:27 -04:00
										 |  |  |     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( -- ) | 
					
						
							| 
									
										
										
										
											2008-08-30 01:05:27 -04:00
										 |  |  | ] unit-test | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [ ] [ | 
					
						
							| 
									
										
										
										
											2009-09-20 23:42:40 -04:00
										 |  |  |     "USE: math | 
					
						
							| 
									
										
										
										
											2008-08-30 01:05:27 -04:00
										 |  |  |     IN: compiler.tests.redefine9 | 
					
						
							|  |  |  |     TUPLE: my-tuple ;
 | 
					
						
							| 
									
										
										
										
											2009-09-20 23:42:40 -04:00
										 |  |  |     INSTANCE: my-tuple my-mixin" | 
					
						
							|  |  |  |     eval( -- ) | 
					
						
							| 
									
										
										
										
											2008-08-30 01:05:27 -04:00
										 |  |  | ] unit-test | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [ | 
					
						
							| 
									
										
										
										
											2011-11-06 18:57:24 -05:00
										 |  |  |     "my-tuple" "compiler.tests.redefine9" lookup-word boa
 | 
					
						
							|  |  |  |     "my-generic" "compiler.tests.redefine9" lookup-word | 
					
						
							| 
									
										
										
										
											2008-08-30 01:05:27 -04:00
										 |  |  |     execute
 | 
					
						
							|  |  |  | ] [ no-math-method? ] must-fail-with |