diff options
author | Andy Wingo <wingo@pobox.com> | 2012-01-09 17:24:57 +0100 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2012-01-09 17:50:56 +0100 |
commit | b2637c985ce93bc15e0378b8120d04a98ebdd212 (patch) | |
tree | bde14a0e946c1a9e165284b75e91d17b6dca5aa1 /libguile/tags.h | |
parent | 017eb4a6be938c50df7fe6a27ca38486e75e02d5 (diff) | |
download | guile-b2637c985ce93bc15e0378b8120d04a98ebdd212.tar.gz |
allocate a tc7 to arrays
* libguile/tags.h (scm_tc7_array): Allocate a tag for arrays.
* libguile/arrays.h (SCM_I_ARRAYP): Change to use scm_tc7_array. The
previous definition was not externally usable because scm_i_tc16_array
was internal.
(scm_i_print_array): Declare, though internally.
* libguile/arrays.c (scm_i_make_array): Use scm_cell with the tc7
instead of NEWSMOB.
(scm_i_print_array): Make not static.
(SCM_ARRAY_IMPLEMENTATION): Adapt.
(scm_init_arrays): Remove array smob declaration.
* libguile/eq.c (scm_equal_p): Refactor to put the string, pointer, and
bytevector cases in the switch. Add a case for arrays.
* libguile/goops.c: Add <array> declarations.
* libguile/print.c (iprin1): Call scm_i_print_array as needed.
* libguile/evalext.c (scm_self_evaluating_p): Add a case for arrays.
Diffstat (limited to 'libguile/tags.h')
-rw-r--r-- | libguile/tags.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libguile/tags.h b/libguile/tags.h index 26ec16425..37fcb8063 100644 --- a/libguile/tags.h +++ b/libguile/tags.h @@ -3,7 +3,7 @@ #ifndef SCM_TAGS_H #define SCM_TAGS_H -/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2008,2009,2010 +/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2008,2009,2010,2012 * Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or @@ -424,7 +424,7 @@ typedef union SCM { struct { scm_t_bits n; } n; } SCM; #define scm_tc7_with_fluids 63 #define scm_tc7_unused_19 69 #define scm_tc7_program 79 -#define scm_tc7_unused_9 85 +#define scm_tc7_array 85 #define scm_tc7_unused_10 87 #define scm_tc7_unused_20 93 #define scm_tc7_unused_11 95 |