Index: /trunk/ccl/lisp-kernel/errors.s
===================================================================
--- /trunk/ccl/lisp-kernel/errors.s	(revision 5454)
+++ /trunk/ccl/lisp-kernel/errors.s	(revision 5455)
@@ -27,65 +27,94 @@
 error_cant_call = 17
         
-error_type_error = 64
+error_type_error = 128
 
+define([__type_error_counter__],128)
 define([def_type_error],[
-error_object_not_$1 = (error_type_error+$2)])
+error_object_not_$1 = __type_error_counter__
+        define([__type_error_counter__],eval(__type_error_counter__+1))])
 
-	def_type_error(array,0)
-	def_type_error(bignum,1)
-	def_type_error(fixnum,2)
-	def_type_error(character,3)
-	def_type_error(integer,4)
-	def_type_error(list,5)
-	def_type_error(number,6)
-	def_type_error(sequence,7)
-	def_type_error(simple_string,8)
-	def_type_error(simple_vector,9)
-	def_type_error(string,10)
-	def_type_error(symbol,11)
-	def_type_error(macptr,12)
-	def_type_error(real,13)
-	def_type_error(cons,14)
-	def_type_error(unsigned_byte,15)
-	def_type_error(radix,16)
-	def_type_error(float,17)
-	def_type_error(rational,18)
-	def_type_error(ratio,19)
-	def_type_error(short_float,20)
-	def_type_error(double_float,21)
-	def_type_error(complex,22)
-	def_type_error(vector,23)
-	def_type_error(simple_base_string,24)
-	def_type_error(function,25)
-	def_type_error(unsigned_byte_16,26)
-	def_type_error(unsigned_byte_8,27)
-	def_type_error(unsigned_byte_32,28)
-	def_type_error(signed_byte_32,29)
-	def_type_error(signed_byte_16,30)
-	def_type_error(signed_byte_8,31)	
-	def_type_error(base_character,32)
-	def_type_error(bit,33)
-	def_type_error(unsigned_byte_24,34)
-	def_type_error(u64,35)
-	def_type_error(s64,36)
-        def_type_error(unsigned_byte_56,37)
-        def_type_error(simple_array_double_float_2d,38)
-        def_type_error(simple_array_single_float_2d,39)
-        def_type_error(mod_char_code_limit,40)
-        def_type_error(array_2d,41)
-        def_type_error(array_3d,42)
-        def_type_error(array_bit,43)
-        def_type_error(array_s8,44)
-        def_type_error(array_u8,45)
-        def_type_error(array_s16,46)
-        def_type_error(array_u16,47)
-        def_type_error(array_s32,48)
-        def_type_error(array_u32,49)
-        def_type_error(array_s64,50)
-        def_type_error(array_u64,51)
-        def_type_error(array_fixnum,52)
-        def_type_error(array_single_float,53)
-        def_type_error(array_double_float,54)
-        def_type_error(array_char,55)
+	def_type_error(array)
+	def_type_error(bignum)
+	def_type_error(fixnum)
+	def_type_error(character)
+	def_type_error(integer)
+	def_type_error(list)
+	def_type_error(number)
+	def_type_error(sequence)
+	def_type_error(simple_string)
+	def_type_error(simple_vector)
+	def_type_error(string)
+	def_type_error(symbol)
+	def_type_error(macptr)
+	def_type_error(real)
+	def_type_error(cons)
+	def_type_error(unsigned_byte)
+	def_type_error(radix)
+	def_type_error(float)
+	def_type_error(rational)
+	def_type_error(ratio)
+	def_type_error(short_float)
+	def_type_error(double_float)
+	def_type_error(complex)
+	def_type_error(vector)
+	def_type_error(simple_base_string)
+	def_type_error(function)
+	def_type_error(unsigned_byte_16)
+	def_type_error(unsigned_byte_8)
+	def_type_error(unsigned_byte_32)
+	def_type_error(signed_byte_32)
+	def_type_error(signed_byte_16)
+	def_type_error(signed_byte_8)	
+	def_type_error(base_character)
+	def_type_error(bit)
+	def_type_error(unsigned_byte_24)
+	def_type_error(u64)
+	def_type_error(s64)
+        def_type_error(unsigned_byte_56)
+        def_type_error(simple_array_double_float_2d)
+        def_type_error(simple_array_single_float_2d)
+        def_type_error(mod_char_code_limit)
+        def_type_error(array_2d)
+        def_type_error(array_3d)
+        def_type_error(array_t)
+        def_type_error(array_bit)
+        def_type_error(array_s8)
+        def_type_error(array_u8)
+        def_type_error(array_s16)
+        def_type_error(array_u16)
+        def_type_error(array_s32)
+        def_type_error(array_u32)
+        def_type_error(array_s64)
+        def_type_error(array_u64)
+        def_type_error(array_fixnum)
+        def_type_error(array_single_float)
+        def_type_error(array_double_float)
+        def_type_error(array_char)
+        def_type_error(array_t_2d)
+        def_type_error(array_bit_2d)
+        def_type_error(array_s8_2d)
+        def_type_error(array_u8_2d)
+        def_type_error(array_s16_2d)
+        def_type_error(array_u16_2d)
+        def_type_error(array_s32_2d)
+        def_type_error(array_u32_2d)
+        def_type_error(array_s64_2d)
+        def_type_error(array_u64_2d)
+        def_type_error(array_fixnum_2d)
+        def_type_error(array_single_float_2d)
+        def_type_error(array_double_float_2d)
+        def_type_error(array_char_2d)
+        def_type_error(simple_array_t_2d)
+        def_type_error(simple_array_bit_2d)
+        def_type_error(simple_array_s8_2d)
+        def_type_error(simple_array_u8_2d)
+        def_type_error(simple_array_s16_2d)
+        def_type_error(simple_array_u16_2d)
+        def_type_error(simple_array_s32_2d)
+        def_type_error(simple_array_u32_2d)
+        def_type_error(simple_array_s64_2d)
+        def_type_error(simple_array_u64_2d)
+        def_type_error(simple_array_fixnum_2d)
+        def_type_error(simple_array_char_2d)
         
 	
Index: /trunk/ccl/lisp-kernel/lisp-errors.h
===================================================================
--- /trunk/ccl/lisp-kernel/lisp-errors.h	(revision 5454)
+++ /trunk/ccl/lisp-kernel/lisp-errors.h	(revision 5455)
@@ -41,45 +41,91 @@
 #define error_cant_call 17
 
-#define error_type_error 64
-#define type_error(n) (error_type_error+(n))
+#define error_type_error 128
 
-#define error_object_not_array type_error(0)
-#define error_object_not_bignum type_error(1)
-#define error_object_not_fixnum type_error(2)
-#define error_object_not_character type_error(3)
-#define error_object_not_integer type_error(4)
-#define error_object_not_list type_error(5)
-#define error_object_not_number type_error(6)
-#define error_object_not_sequence type_error(7)
-#define error_object_not_simple_string type_error(8)
-#define error_object_not_simple_vector type_error(9)
-#define error_object_not_string type_error(10)
-#define error_object_not_symbol type_error(11)
-#define error_object_not_macptr type_error(12)
-#define error_object_not_real type_error(13)
-#define error_object_not_cons type_error(14)
-#define error_object_not_unsigned_byte type_error(15)
-#define error_object_not_radix type_error(16)
-#define error_object_not_float type_error(17)
-#define error_object_not_rational type_error(18)
-#define error_object_not_ratio type_error(19)
-#define error_object_not_short_float type_error(20)
-#define error_object_not_double_float type_error(21)
-#define error_object_not_complex type_error(22)
-#define error_object_not_vector type_error(23)
-#define error_object_not_simple_base_string type_error(24)
-#define error_object_not_function type_error(25)
-#define error_object_not_unsigned_byte_16 type_error(26)
-#define error_object_not_unsigned_byte_8 type_error(27)
-#define error_object_not_unsigned_byte_32 type_error(28)
-#define error_object_not_signed_byte_32 type_error(29)
-#define error_object_not_signed_byte_16 type_error(30)
-#define error_object_not_signed_byte_8 type_error(31)
-#define error_object_not_base_character type_error(32)
-#define error_object_not_bit type_error(33)
-#define error_object_not_unsigned_byte_24 type_error(34)
-#define error_object_not_u64 type_error(35)
-#define error_object_not_s64 type_error(36)
-#define error_object_not_unsigned_byte_56 type_error(37)
+typedef enum {
+  error_object_not_array = error_type_error,
+  error_object_not_bignum,
+  error_object_not_fixnum,
+  error_object_not_character,
+  error_object_not_integer,
+  error_object_not_list,
+  error_object_not_number,
+  error_object_not_sequence,
+  error_object_not_simple_string,
+  error_object_not_simple_vector,
+  error_object_not_string,
+  error_object_not_symbol,
+  error_object_not_macptr,
+  error_object_not_real,
+  error_object_not_cons,
+  error_object_not_unsigned_byte,
+  error_object_not_radix,
+  error_object_not_float,
+  error_object_not_rational,
+  error_object_not_ratio,
+  error_object_not_short_float,
+  error_object_not_double_float,
+  error_object_not_complex,
+  error_object_not_vector,
+  error_object_not_simple_base_string,
+  error_object_not_function,
+  error_object_not_unsigned_byte_16,
+  error_object_not_unsigned_byte_8,
+  error_object_not_unsigned_byte_32,
+  error_object_not_signed_byte_32,
+  error_object_not_signed_byte_16,
+  error_object_not_signed_byte_8,	
+  error_object_not_base_character,
+  error_object_not_bit,
+  error_object_not_unsigned_byte_24,
+  error_object_not_u64,
+  error_object_not_s64,
+  error_object_not_unsigned_byte_56,
+  error_object_not_simple_array_double_float_2d,
+  error_object_not_simple_array_single_float_2d,
+  error_object_not_mod_char_code_limit,
+  error_object_not_array_2d,
+  error_object_not_array_3d,
+  error_object_not_array_t,
+  error_object_not_array_bit,
+  error_object_not_array_s8,
+  error_object_not_array_u8,
+  error_object_not_array_s16,
+  error_object_not_array_u16,
+  error_object_not_array_s32,
+  error_object_not_array_u32,
+  error_object_not_array_s64,
+  error_object_not_array_u64,
+  error_object_not_array_fixnum,
+  error_object_not_array_single_float,
+  error_object_not_array_double_float,
+  error_object_not_array_char,
+  error_object_not_array_t_2d,
+  error_object_not_array_bit_2d,
+  error_object_not_array_s8_2d,
+  error_object_not_array_u8_2d,
+  error_object_not_array_s16_2d,
+  error_object_not_array_u16_2d,
+  error_object_not_array_s32_2d,
+  error_object_not_array_u32_2d,
+  error_object_not_array_s64_2d,
+  error_object_not_array_u64_2d,
+  error_object_not_array_fixnum_2d,
+  error_object_not_array_single_float_2d,
+  error_object_not_array_double_float_2d,
+  error_object_not_array_char_2d,
+  error_object_not_simple_array_t_2d,
+  error_object_not_simple_array_bit_2d,
+  error_object_not_simple_array_s8_2d,
+  error_object_not_simple_array_u8_2d,
+  error_object_not_simple_array_s16_2d,
+  error_object_not_simple_array_u16_2d,
+  error_object_not_simple_array_s32_2d,
+  error_object_not_simple_array_u32_2d,
+  error_object_not_simple_array_s64_2d,
+  error_object_not_simple_array_u64_2d,
+  error_object_not_simple_array_fixnum_2d,
+  error_object_not_simple_array_char_2d
+} type_error;
 
 #define error_FPU_exception_double 1024
