From 033f56e5181f78a7904fac65b505452286ce67ab Mon Sep 17 00:00:00 2001 From: John Benediktsson Date: Mon, 11 Mar 2013 11:41:22 -0700 Subject: [PATCH] words: add safety checks for word? type. --- core/words/words.factor | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/core/words/words.factor b/core/words/words.factor index 8b3f60e8f1..56ef998d7d 100644 --- a/core/words/words.factor +++ b/core/words/words.factor @@ -110,11 +110,17 @@ M: word parent-word drop f ; : make-deprecated ( word -- ) t "deprecated" set-word-prop ; -: inline? ( word -- ? ) "inline" word-prop ; inline +: inline? ( obj -- ? ) + dup word? [ "inline" word-prop ] [ drop f ] if ; inline -: inline-recursive? ( word -- ? ) - dup "inline" word-prop - [ "recursive" word-prop ] [ drop f ] if ; inline +: recursive? ( obj -- ? ) + dup word? [ "recursive" word-prop ] [ drop f ] if ; inline + +: inline-recursive? ( obj -- ? ) + dup word? [ + dup "inline" word-prop + [ "recursive" word-prop ] [ drop f ] if + ] [ drop f ] if ; inline ERROR: cannot-be-inline word ;