diff options
| author | Miles Bader | 2007-10-12 21:06:27 +0000 |
|---|---|---|
| committer | Miles Bader | 2007-10-12 21:06:27 +0000 |
| commit | 985773c9038f9847f9e7362f3b5fb0c8acac13a2 (patch) | |
| tree | 12d10cb76729ccbdc5ace4688d15f83894a70cc9 /src/alloc.c | |
| parent | 47632e43ca42e26da139289f1e0f4f69e8c140fd (diff) | |
| download | emacs-985773c9038f9847f9e7362f3b5fb0c8acac13a2.tar.gz emacs-985773c9038f9847f9e7362f3b5fb0c8acac13a2.zip | |
Fix up multi-tty merge
Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-261
Creator: Stefan Monnier <monnier@iro.umontreal.ca>
Diffstat (limited to 'src/alloc.c')
| -rw-r--r-- | src/alloc.c | 50 |
1 files changed, 4 insertions, 46 deletions
diff --git a/src/alloc.c b/src/alloc.c index fccdf2a88a7..ed003af3ea8 100644 --- a/src/alloc.c +++ b/src/alloc.c | |||
| @@ -3070,51 +3070,6 @@ See also the function `vector'. */) | |||
| 3070 | } | 3070 | } |
| 3071 | 3071 | ||
| 3072 | 3072 | ||
| 3073 | DEFUN ("make-char-table", Fmake_char_table, Smake_char_table, 1, 2, 0, | ||
| 3074 | doc: /* Return a newly created char-table, with purpose PURPOSE. | ||
| 3075 | Each element is initialized to INIT, which defaults to nil. | ||
| 3076 | PURPOSE should be a symbol which has a `char-table-extra-slots' property. | ||
| 3077 | The property's value should be an integer between 0 and 10. */) | ||
| 3078 | (purpose, init) | ||
| 3079 | register Lisp_Object purpose, init; | ||
| 3080 | { | ||
| 3081 | Lisp_Object vector; | ||
| 3082 | Lisp_Object n; | ||
| 3083 | CHECK_SYMBOL (purpose); | ||
| 3084 | n = Fget (purpose, Qchar_table_extra_slots); | ||
| 3085 | CHECK_NUMBER (n); | ||
| 3086 | if (XINT (n) < 0 || XINT (n) > 10) | ||
| 3087 | args_out_of_range (n, Qnil); | ||
| 3088 | /* Add 2 to the size for the defalt and parent slots. */ | ||
| 3089 | vector = Fmake_vector (make_number (CHAR_TABLE_STANDARD_SLOTS + XINT (n)), | ||
| 3090 | init); | ||
| 3091 | XSETPVECTYPE (XVECTOR (vector), PVEC_CHAR_TABLE); | ||
| 3092 | XCHAR_TABLE (vector)->top = Qt; | ||
| 3093 | XCHAR_TABLE (vector)->parent = Qnil; | ||
| 3094 | XCHAR_TABLE (vector)->purpose = purpose; | ||
| 3095 | XSETCHAR_TABLE (vector, XCHAR_TABLE (vector)); | ||
| 3096 | return vector; | ||
| 3097 | } | ||
| 3098 | |||
| 3099 | |||
| 3100 | /* Return a newly created sub char table with slots initialized by INIT. | ||
| 3101 | Since a sub char table does not appear as a top level Emacs Lisp | ||
| 3102 | object, we don't need a Lisp interface to make it. */ | ||
| 3103 | |||
| 3104 | Lisp_Object | ||
| 3105 | make_sub_char_table (init) | ||
| 3106 | Lisp_Object init; | ||
| 3107 | { | ||
| 3108 | Lisp_Object vector | ||
| 3109 | = Fmake_vector (make_number (SUB_CHAR_TABLE_STANDARD_SLOTS), init); | ||
| 3110 | XSETPVECTYPE (XVECTOR (vector), PVEC_CHAR_TABLE); | ||
| 3111 | XCHAR_TABLE (vector)->top = Qnil; | ||
| 3112 | XCHAR_TABLE (vector)->defalt = Qnil; | ||
| 3113 | XSETCHAR_TABLE (vector, XCHAR_TABLE (vector)); | ||
| 3114 | return vector; | ||
| 3115 | } | ||
| 3116 | |||
| 3117 | |||
| 3118 | DEFUN ("vector", Fvector, Svector, 0, MANY, 0, | 3073 | DEFUN ("vector", Fvector, Svector, 0, MANY, 0, |
| 3119 | doc: /* Return a newly created vector with specified arguments as elements. | 3074 | doc: /* Return a newly created vector with specified arguments as elements. |
| 3120 | Any number of arguments, even zero arguments, are allowed. | 3075 | Any number of arguments, even zero arguments, are allowed. |
| @@ -4964,7 +4919,10 @@ Does not copy symbols. Copies strings without text properties. */) | |||
| 4964 | for (i = 0; i < size; i++) | 4919 | for (i = 0; i < size; i++) |
| 4965 | vec->contents[i] = Fpurecopy (XVECTOR (obj)->contents[i]); | 4920 | vec->contents[i] = Fpurecopy (XVECTOR (obj)->contents[i]); |
| 4966 | if (COMPILEDP (obj)) | 4921 | if (COMPILEDP (obj)) |
| 4967 | XSETCOMPILED (obj, vec); | 4922 | { |
| 4923 | XSETPVECTYPE (vec, PVEC_COMPILED); | ||
| 4924 | XSETCOMPILED (obj, vec); | ||
| 4925 | } | ||
| 4968 | else | 4926 | else |
| 4969 | XSETVECTOR (obj, vec); | 4927 | XSETVECTOR (obj, vec); |
| 4970 | return obj; | 4928 | return obj; |