#define Are_The_Constants_Incompatible \
((TC_FALSE != 0x00) || (TC_CONSTANT != 0x08) || \
(TC_FIXNUM != 0x1A) || (TC_BROKEN_HEART != 0x22) || \
- (TC_BYTEVECTOR != 0x1E))
+ (TC_CHARACTER_STRING != 0x1E))
/* The values used above are in sdata.h and types.h,
check for consistency if the check below fails. */
Expr = (MEMORY_REF ((MEMORY_REF (Expr, ASSIGN_NAME)), VARIABLE_SYMBOL));
goto SPrint;
- case TC_BYTEVECTOR:
+ case TC_CHARACTER_STRING:
print_string (stream, Expr);
return;
GC_UNDEFINED, /* was TC_PCOMB1 */
GC_VECTOR, /* TC_CONTROL_POINT */
GC_PAIR, /* TC_INTERNED_SYMBOL */
- GC_VECTOR, /* TC_BYTEVECTOR */
+ GC_VECTOR, /* TC_CHARACTER_STRING */
GC_PAIR, /* TC_ACCESS */
GC_TRIPLE, /* TC_HUNK3_A */
GC_PAIR, /* TC_DEFINITION */
GC_UNDEFINED, /* was TC_PCOMB0 */
GC_VECTOR, /* TC_VECTOR_16B */
GC_SPECIAL, /* TC_REFERENCE_TRAP */
- GC_UNDEFINED, /* 0x33 */
+ GC_VECTOR, /* TC_BYTEVECTOR */
GC_TRIPLE, /* TC_CONDITIONAL */
GC_PAIR, /* TC_DISJUNCTION */
GC_CELL, /* TC_CELL */
case TC_BIG_FIXNUM: /* The self evaluating items */
case TC_BIG_FLONUM:
case TC_BYTEVECTOR:
+ case TC_CHARACTER_STRING:
case TC_CHARACTER:
case TC_COMPILED_CODE_BLOCK:
case TC_COMPLEX:
#define COMPLEX_P(object) ((OBJECT_TYPE (object)) == TC_COMPLEX)
#define CHARACTER_P(object) ((OBJECT_TYPE (object)) == TC_CHARACTER)
#define BYTEVECTOR_P(object) ((OBJECT_TYPE (object)) == TC_BYTEVECTOR)
+#define STRING_P(object) ((OBJECT_TYPE (object)) == TC_CHARACTER_STRING)
#define BIT_STRING_P(object) ((OBJECT_TYPE (object)) == TC_BIT_STRING)
#define CELL_P(object) ((OBJECT_TYPE (object)) == TC_CELL)
#define PAIR_P(object) ((OBJECT_TYPE (object)) == TC_LIST)
\f
/* String Operations */
-#define STRING_P BYTEVECTOR_P
-
/* Add 1 byte to length to account for '\0' at end of string.
Add 1 word to length to account for string header word. */
#define STRING_LENGTH_TO_GC_LENGTH(n_chars) \
long arity = (FIXNUM_TO_LONG (*entries++));
SCHEME_OBJECT prim
= (find_primitive
- ((MAKE_POINTER_OBJECT (TC_BYTEVECTOR, entries)),
+ ((MAKE_POINTER_OBJECT (TC_CHARACTER_STRING, entries)),
true, true, arity));
if (!PRIMITIVE_P (prim))
allocate_string (unsigned long nbytes)
{
SCHEME_OBJECT result
- = (allocate_non_marked_vector (TC_BYTEVECTOR,
+ = (allocate_non_marked_vector (TC_CHARACTER_STRING,
(STRING_LENGTH_TO_GC_LENGTH (nbytes)),
true));
SET_STRING_LENGTH (result, nbytes);
allocate_string_no_gc (unsigned long nbytes)
{
SCHEME_OBJECT result
- = (allocate_non_marked_vector (TC_BYTEVECTOR,
+ = (allocate_non_marked_vector (TC_CHARACTER_STRING,
(STRING_LENGTH_TO_GC_LENGTH (nbytes)),
false));
SET_STRING_LENGTH (result, nbytes);
/* #define TC_PCOMB1 0x1B */
#define TC_CONTROL_POINT 0x1C
#define TC_INTERNED_SYMBOL 0x1D
-#define TC_BYTEVECTOR 0x1E
+#define TC_CHARACTER_STRING 0x1E
#define TC_ACCESS 0x1F
#define TC_HUNK3_A 0x20
#define TC_DEFINITION 0x21
/* #define TC_PCOMB0 0x30 */
#define TC_VECTOR_16B 0x31
#define TC_REFERENCE_TRAP 0x32
-/* #define TC_UNUSED_33 0x33 */
+#define TC_BYTEVECTOR 0x33
#define TC_CONDITIONAL 0x34
#define TC_DISJUNCTION 0x35
#define TC_CELL 0x36
/* 0x1B */ 0, \
/* 0x1C */ "control-point", \
/* 0x1D */ "interned-symbol", \
- /* 0x1e */ "bytevector", \
+ /* 0x1e */ "string", \
/* 0x1f */ "access", \
/* 0x20 */ "hunk3-a", \
/* 0x21 */ "definition", \
/* 0x30 */ 0, \
/* 0x31 */ "vector-16b", \
/* 0x32 */ "reference-trap", \
- /* 0x33 */ 0, \
+ /* 0x33 */ "bytevector", \
/* 0x34 */ "conditional", \
/* 0x35 */ "disjunction", \
/* 0x36 */ "cell", \
(BIGNUM BIG-FIXNUM)
(PROMISE DELAYED)
(FIXNUM ADDRESS POSITIVE-FIXNUM NEGATIVE-FIXNUM)
- (BYTEVECTOR STRING CHARACTER-STRING VECTOR-8B)
+ (STRING CHARACTER-STRING VECTOR-8B)
(HUNK3-A UNMARKED-HISTORY)
(TRIPLE HUNK3 HUNK3-B MARKED-HISTORY)
(REFERENCE-TRAP UNASSIGNED)