diff options
| author | Kenichi Handa | 1997-04-07 07:12:13 +0000 |
|---|---|---|
| committer | Kenichi Handa | 1997-04-07 07:12:13 +0000 |
| commit | 3701b5de07a2998b089ef9e4f65bebedbb554039 (patch) | |
| tree | 39f1fc64eed0169aed1249fb61d2aa6babeaa3ab /src/lread.c | |
| parent | ed8ec86d08a6f2b656e67493003aa4624f868299 (diff) | |
| download | emacs-3701b5de07a2998b089ef9e4f65bebedbb554039.tar.gz emacs-3701b5de07a2998b089ef9e4f65bebedbb554039.zip | |
(read1): Adjusted for the new structure of Lisp_Char_Table.
Diffstat (limited to 'src/lread.c')
| -rw-r--r-- | src/lread.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/lread.c b/src/lread.c index 882b09bf5a3..5b4cd3e748f 100644 --- a/src/lread.c +++ b/src/lread.c | |||
| @@ -1336,8 +1336,25 @@ read1 (readcharfun, pch, first_in_list) | |||
| 1336 | || XVECTOR (tmp)->size > CHAR_TABLE_STANDARD_SLOTS + 10) | 1336 | || XVECTOR (tmp)->size > CHAR_TABLE_STANDARD_SLOTS + 10) |
| 1337 | error ("Invalid size char-table"); | 1337 | error ("Invalid size char-table"); |
| 1338 | XSETCHAR_TABLE (tmp, XCHAR_TABLE (tmp)); | 1338 | XSETCHAR_TABLE (tmp, XCHAR_TABLE (tmp)); |
| 1339 | XCHAR_TABLE (tmp)->top = Qt; | ||
| 1339 | return tmp; | 1340 | return tmp; |
| 1340 | } | 1341 | } |
| 1342 | else if (c == '^') | ||
| 1343 | { | ||
| 1344 | c = READCHAR; | ||
| 1345 | if (c == '[') | ||
| 1346 | { | ||
| 1347 | Lisp_Object tmp; | ||
| 1348 | tmp = read_vector (readcharfun); | ||
| 1349 | if (XVECTOR (tmp)->size != SUB_CHAR_TABLE_STANDARD_SLOTS) | ||
| 1350 | error ("Invalid size char-table"); | ||
| 1351 | XSETCHAR_TABLE (tmp, XCHAR_TABLE (tmp)); | ||
| 1352 | XCHAR_TABLE (tmp)->top = Qnil; | ||
| 1353 | return tmp; | ||
| 1354 | } | ||
| 1355 | Fsignal (Qinvalid_read_syntax, | ||
| 1356 | Fcons (make_string ("#^^", 3), Qnil)); | ||
| 1357 | } | ||
| 1341 | Fsignal (Qinvalid_read_syntax, Fcons (make_string ("#^", 2), Qnil)); | 1358 | Fsignal (Qinvalid_read_syntax, Fcons (make_string ("#^", 2), Qnil)); |
| 1342 | } | 1359 | } |
| 1343 | if (c == '&') | 1360 | if (c == '&') |