Mercurial > emacs
comparison src/lread.c @ 17325:c19c552c486f
(read1): Adjusted for the new structure of Lisp_Char_Table.
| author | Kenichi Handa <handa@m17n.org> |
|---|---|
| date | Mon, 07 Apr 1997 07:12:13 +0000 |
| parents | 4a6c43010388 |
| children | 83850481ae70 |
comparison
equal
deleted
inserted
replaced
| 17324:ed53084a1655 | 17325:c19c552c486f |
|---|---|
| 1334 tmp = read_vector (readcharfun); | 1334 tmp = read_vector (readcharfun); |
| 1335 if (XVECTOR (tmp)->size < CHAR_TABLE_STANDARD_SLOTS | 1335 if (XVECTOR (tmp)->size < CHAR_TABLE_STANDARD_SLOTS |
| 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; |
| 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)); | |
| 1340 } | 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 == '&') |
| 1344 { | 1361 { |
