From 30698cc534164368d816e9a43d1115a7904418bf Mon Sep 17 00:00:00 2001 From: Jeremy Hughes <jedahu@gmail.com> Date: Wed, 15 Jul 2009 16:40:41 +1200 Subject: [PATCH] alien.marshall.types: robustifying --- extra/alien/inline/types/types.factor | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/extra/alien/inline/types/types.factor b/extra/alien/inline/types/types.factor index bf0a7936ba..b90bde1850 100644 --- a/extra/alien/inline/types/types.factor +++ b/extra/alien/inline/types/types.factor @@ -31,12 +31,13 @@ MEMO: resolved-primitives ( -- seq ) ] [ 2drop f ] recover ; : pointer? ( type -- ? ) - [ "*" tail? ] [ "&" tail? ] bi or ; + factorize-type [ "*" tail? ] [ "&" tail? ] bi or ; : type-sans-pointer ( type -- type' ) - [ '[ _ = ] "*&" swap any? ] trim-tail ; + factorize-type [ '[ _ = ] "*&" swap any? ] trim-tail ; : pointer-to-primitive? ( type -- ? ) + factorize-type { [ pointer? ] [ type-sans-pointer primitive-type? ] } 1&& ; : types-effect>params-return ( types effect -- params return )