diff --git a/include/extern.h b/include/extern.h index 2364291..ef44a26 100644 --- a/include/extern.h +++ b/include/extern.h @@ -448,6 +448,7 @@ extern_c Object elk_import False; extern_c Object elk_import Void; extern_c Object elk_import Newline; extern_c Object elk_import Eof; +extern_c Object elk_import Unspecified; extern Object Intern P_((const char*)); extern Object CI_Intern P_((const char*)); extern Object P_Oblist P_((void)); diff --git a/include/object.h b/include/object.h index 148295f..8277b01 100644 --- a/include/object.h +++ b/include/object.h @@ -122,12 +122,13 @@ typedef struct { #define T_Promise 16 /* Result of (delay expression) */ #define T_Port 17 #define T_End_Of_File 18 -#define T_Autoload 19 -#define T_Macro 20 -#define T_Broken_Heart 21 /* only used internally */ +#define T_Unspecified 19 /* only used internally */ +#define T_Autoload 20 +#define T_Macro 21 +#define T_Broken_Heart 22 /* only used internally */ #ifdef GENERATIONAL_GC -# define T_Align_8Byte 22 /* only used internally */ -# define T_Freespace 23 /* only used internally */ +# define T_Align_8Byte 23 /* only used internally */ +# define T_Freespace 24 /* only used internally */ #endif #define BIGNUM(x) ((struct S_Bignum *)POINTER(x)) diff --git a/src/symbol.c b/src/symbol.c index 1abc201..f0da302 100644 --- a/src/symbol.c +++ b/src/symbol.c @@ -48,6 +48,7 @@ Object Null, Void, Newline, Eof, + Unspecified, Zero, One; @@ -59,6 +60,7 @@ void Init_Symbol () { SET(Unbound, T_Unbound, 0); SET(Special, T_Special, 0); SET(Eof, T_End_Of_File, 0); + SET(Unspecified, T_Unspecified, 0); Newline = Make_Char ('\n'); Zero = Make_Integer (0); One = Make_Integer (1);