comparison src/syntax.c @ 9333:925795f1a594

(Fmodify_syntax_entry): Don't use XFASTINT as an lvalue.
author Karl Heuer <kwzh@gnu.org>
date Tue, 04 Oct 1994 17:32:17 +0000
parents 4be3f8f9f090
children 0b9c70f56cf8
comparison
equal deleted inserted replaced
9332:1ff5359ac932 9333:925795f1a594
289 (c, newentry, syntax_table) 289 (c, newentry, syntax_table)
290 Lisp_Object c, newentry, syntax_table; 290 Lisp_Object c, newentry, syntax_table;
291 { 291 {
292 register unsigned char *p, match; 292 register unsigned char *p, match;
293 register enum syntaxcode code; 293 register enum syntaxcode code;
294 Lisp_Object val; 294 int val;
295 295
296 CHECK_NUMBER (c, 0); 296 CHECK_NUMBER (c, 0);
297 CHECK_STRING (newentry, 1); 297 CHECK_STRING (newentry, 1);
298 if (NILP (syntax_table)) 298 if (NILP (syntax_table))
299 syntax_table = current_buffer->syntax_table; 299 syntax_table = current_buffer->syntax_table;
307 307
308 match = *p; 308 match = *p;
309 if (match) p++; 309 if (match) p++;
310 if (match == ' ') match = 0; 310 if (match == ' ') match = 0;
311 311
312 XSETFASTINT (val, (match << 8) + (int) code); 312 val = (match << 8) + (int) code;
313 while (*p) 313 while (*p)
314 switch (*p++) 314 switch (*p++)
315 { 315 {
316 case '1': 316 case '1':
317 XFASTINT (val) |= 1 << 16; 317 val |= 1 << 16;
318 break; 318 break;
319 319
320 case '2': 320 case '2':
321 XFASTINT (val) |= 1 << 17; 321 val |= 1 << 17;
322 break; 322 break;
323 323
324 case '3': 324 case '3':
325 XFASTINT (val) |= 1 << 18; 325 val |= 1 << 18;
326 break; 326 break;
327 327
328 case '4': 328 case '4':
329 XFASTINT (val) |= 1 << 19; 329 val |= 1 << 19;
330 break; 330 break;
331 331
332 case 'p': 332 case 'p':
333 XFASTINT (val) |= 1 << 20; 333 val |= 1 << 20;
334 break; 334 break;
335 335
336 case 'b': 336 case 'b':
337 XFASTINT (val) |= 1 << 21; 337 val |= 1 << 21;
338 break; 338 break;
339 } 339 }
340 340
341 XVECTOR (syntax_table)->contents[0xFF & XINT (c)] = val; 341 XSETFASTINT (XVECTOR (syntax_table)->contents[0xFF & XINT (c)], val);
342 342
343 return Qnil; 343 return Qnil;
344 } 344 }
345 345
346 /* Dump syntax table to buffer in human-readable format */ 346 /* Dump syntax table to buffer in human-readable format */