From 40620d470fc50175aa709687c8633bff09b1810b Mon Sep 17 00:00:00 2001 From: Joe Groff Date: Wed, 16 Sep 2009 17:18:19 -0500 Subject: [PATCH] allow word c-types and definitions to coexist --- basis/alien/parser/parser.factor | 6 ++++++ basis/alien/syntax/syntax.factor | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/basis/alien/parser/parser.factor b/basis/alien/parser/parser.factor index ab09383d7c..9a24f7cd4d 100644 --- a/basis/alien/parser/parser.factor +++ b/basis/alien/parser/parser.factor @@ -24,6 +24,12 @@ IN: alien.parser [ drop \ } parse-until >array ] [ parse-c-type ] if ; +: reset-c-type ( word -- ) + { "c-type" "pointer-c-type" } reset-props ; + +: CREATE-C-TYPE ( -- word ) + scan current-vocab create dup reset-c-type ; + : normalize-c-arg ( type name -- type' name' ) [ length ] [ diff --git a/basis/alien/syntax/syntax.factor b/basis/alien/syntax/syntax.factor index fac45176a3..0e3b569fff 100644 --- a/basis/alien/syntax/syntax.factor +++ b/basis/alien/syntax/syntax.factor @@ -19,7 +19,7 @@ SYNTAX: FUNCTION: (FUNCTION:) define-declared ; SYNTAX: TYPEDEF: - scan-c-type CREATE typedef ; + scan-c-type CREATE-C-TYPE typedef ; SYNTAX: C-STRUCT: scan current-vocab parse-definition define-struct ; deprecated