Fixing infinite loop in loading benchmark.fib4

db4
Daniel Ehrenberg 2010-06-15 13:53:40 -04:00
parent 30cfbc8512
commit b362fe25b1
1 changed files with 3 additions and 2 deletions

View File

@ -153,14 +153,15 @@ TUPLE: depends-on-single-method method-class object-class generic ;
SYMBOL: +no-method+ SYMBOL: +no-method+
:: subclass-with-only-method ( class generic -- subclass/f/+no-method+ ) ! make it return +no-method+ sometimes :: subclass-with-only-method ( class generic -- subclass/f/+no-method+ )
f generic method-classes f generic method-classes
[| last-class new-class | [| last-class new-class |
class new-class classes-intersect? [ class new-class classes-intersect? [
last-class [ f f ] [ new-class t ] if last-class [ f f ] [ new-class t ] if
] [ last-class t ] if ] [ last-class t ] if
] all? ] all?
[ +no-method+ or ] [ drop f ] if ; [ +no-method+ or class null class<= not swap and ]
[ drop f ] if ;
M: depends-on-single-method satisfied? M: depends-on-single-method satisfied?
[ method-class>> ] [ object-class>> ] [ generic>> ] tri [ method-class>> ] [ object-class>> ] [ generic>> ] tri