From f7d58fff9003ca03d015ba676b801042e28ca759 Mon Sep 17 00:00:00 2001 From: John Benediktsson Date: Fri, 5 Oct 2012 09:54:51 -0700 Subject: [PATCH] compiler.tree.propagation: throw the proper error in >fixnum methods. --- .../tree/propagation/transforms/transforms.factor | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/basis/compiler/tree/propagation/transforms/transforms.factor b/basis/compiler/tree/propagation/transforms/transforms.factor index 6e0e8210a1..adaab539be 100644 --- a/basis/compiler/tree/propagation/transforms/transforms.factor +++ b/basis/compiler/tree/propagation/transforms/transforms.factor @@ -324,13 +324,13 @@ M\ set intersect [ intersect-quot ] 1 define-partial-eval [ \ push def>> ] [ f ] if ] "custom-inlining" set-word-prop -: custom-inline-fixnum ( x -- y ) - in-d>> first value-info class>> fixnum \ f class-or class<= - [ [ dup [ \ >fixnum no-method ] unless ] ] [ f ] if ; +: custom-inline-fixnum ( x method -- y ) + [ in-d>> first value-info class>> fixnum \ f class-or class<= ] dip + '[ [ dup [ _ no-method ] unless ] ] [ f ] if ; ! Speeds up fasta benchmark { >fixnum integer>fixnum integer>fixnum-strict } [ - [ custom-inline-fixnum ] "custom-inlining" set-word-prop + dup '[ _ custom-inline-fixnum ] "custom-inlining" set-word-prop ] each ! We want to constant-fold calls to heap-size, and recompile those