GC_NON_POINTER, /* TC_PRIMITIVE */
GC_PAIR, /* TC_SEQUENCE */
GC_NON_POINTER, /* TC_FIXNUM */
- GC_UNDEFINED, /* was TC_PCOMB1 */
+ GC_VECTOR, /* TC_UNICODE_STRING */
GC_VECTOR, /* TC_CONTROL_POINT */
GC_PAIR, /* TC_INTERNED_SYMBOL */
GC_VECTOR, /* TC_CHARACTER_STRING */
/* Type code definitions */
\f
-#define TC_FALSE 0x00
+#define TC_FALSE 0x00
#define TC_LIST 0x01
#define TC_CHARACTER 0x02
#define TC_SCODE_QUOTE 0x03
#define TC_PRIMITIVE 0x18
#define TC_SEQUENCE 0x19
#define TC_FIXNUM 0x1A
-/* #define TC_PCOMB1 0x1B */
+#define TC_UNICODE_STRING 0x1B
#define TC_CONTROL_POINT 0x1C
#define TC_INTERNED_SYMBOL 0x1D
#define TC_CHARACTER_STRING 0x1E
/* 0x18 */ "primitive", \
/* 0x19 */ "sequence", \
/* 0x1A */ "fixnum", \
- /* 0x1B */ 0, \
+ /* 0x1B */ "unicode-string", \
/* 0x1C */ "control-point", \
/* 0x1D */ "interned-symbol", \
/* 0x1e */ "string", \
(or (microcode-type/name->code name)
(cond ((eq? name 'bytevector) #x33)
((eq? name 'tagged-object) #x25)
+ ((eq? name 'unicode-string) #x1B)
(else #t))
(error "MICROCODE-TYPE: Unknown name" name))))
(->environment '()))
(else #f))))
(define (create-links-from-description description)
(let ((environment
- (find-package-environment (package-description/name description))))
+ (find-package-environment
+ (package-description/name description))))
(let ((bindings (package-description/exports description)))
(let ((n (vector-length bindings)))
(do ((i 0 (fix:+ i 1)))
((fix:= i n))
(let ((binding (vector-ref bindings i)))
- (link-variables (find-package-environment (vector-ref binding 1))
+ (link-variables (find-package-environment
+ (vector-ref binding 1))
(if (fix:= (vector-length binding) 3)
(vector-ref binding 2)
(vector-ref binding 0))