diff options
Diffstat (limited to 'src/lread.c')
| -rw-r--r-- | src/lread.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/lread.c b/src/lread.c index c03aad4f722..5e737d690c6 100644 --- a/src/lread.c +++ b/src/lread.c | |||
| @@ -2309,6 +2309,7 @@ read_escape (Lisp_Object readcharfun, bool stringp) | |||
| 2309 | c = READCHAR; | 2309 | c = READCHAR; |
| 2310 | if (c != '-') | 2310 | if (c != '-') |
| 2311 | error ("Invalid escape character syntax"); | 2311 | error ("Invalid escape character syntax"); |
| 2312 | FALLTHROUGH; | ||
| 2312 | case '^': | 2313 | case '^': |
| 2313 | c = READCHAR; | 2314 | c = READCHAR; |
| 2314 | if (c == '\\') | 2315 | if (c == '\\') |
| @@ -2399,6 +2400,7 @@ read_escape (Lisp_Object readcharfun, bool stringp) | |||
| 2399 | case 'U': | 2400 | case 'U': |
| 2400 | /* Post-Unicode-2.0: Up to eight hex chars. */ | 2401 | /* Post-Unicode-2.0: Up to eight hex chars. */ |
| 2401 | unicode_hex_count = 8; | 2402 | unicode_hex_count = 8; |
| 2403 | FALLTHROUGH; | ||
| 2402 | case 'u': | 2404 | case 'u': |
| 2403 | 2405 | ||
| 2404 | /* A Unicode escape. We only permit them in strings and characters, | 2406 | /* A Unicode escape. We only permit them in strings and characters, |
| @@ -3278,11 +3280,11 @@ read1 (Lisp_Object readcharfun, int *pch, bool first_in_list) | |||
| 3278 | *pch = c; | 3280 | *pch = c; |
| 3279 | return Qnil; | 3281 | return Qnil; |
| 3280 | } | 3282 | } |
| 3281 | |||
| 3282 | /* Otherwise, we fall through! Note that the atom-reading loop | ||
| 3283 | below will now loop at least once, assuring that we will not | ||
| 3284 | try to UNREAD two characters in a row. */ | ||
| 3285 | } | 3283 | } |
| 3284 | /* The atom-reading loop below will now loop at least once, | ||
| 3285 | assuring that we will not try to UNREAD two characters in a | ||
| 3286 | row. */ | ||
| 3287 | FALLTHROUGH; | ||
| 3286 | default: | 3288 | default: |
| 3287 | default_label: | 3289 | default_label: |
| 3288 | if (c <= 040) goto retry; | 3290 | if (c <= 040) goto retry; |