diff options
| author | Andreas Schwab | 2011-07-17 10:00:53 +0200 |
|---|---|---|
| committer | Andreas Schwab | 2011-07-17 10:00:53 +0200 |
| commit | 52968808d6b81ff29d6a0abb116807881b59078b (patch) | |
| tree | 2baf6893c502dbdacc3ba7de5592ab10214229a8 /src | |
| parent | a762e96652b2e8766522f3c0894ec3b825032067 (diff) | |
| download | emacs-52968808d6b81ff29d6a0abb116807881b59078b.tar.gz emacs-52968808d6b81ff29d6a0abb116807881b59078b.zip | |
* src/lread.c (read1): Read `#:' as empty uninterned symbol if no
symbol character follows.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 5 | ||||
| -rw-r--r-- | src/lread.c | 15 |
2 files changed, 19 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index d12558e5d6d..10f4186c31c 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2011-07-17 Andreas Schwab <schwab@linux-m68k.org> | ||
| 2 | |||
| 3 | * lread.c (read1): Read `#:' as empty uninterned symbol if no | ||
| 4 | symbol character follows. | ||
| 5 | |||
| 1 | 2011-07-17 Paul Eggert <eggert@cs.ucla.edu> | 6 | 2011-07-17 Paul Eggert <eggert@cs.ucla.edu> |
| 2 | 7 | ||
| 3 | * fileio.c (Fcopy_file): Pacify gcc re fchown. (Bug#9002) | 8 | * fileio.c (Fcopy_file): Pacify gcc re fchown. (Bug#9002) |
diff --git a/src/lread.c b/src/lread.c index 7dd566dc173..bb0edd898da 100644 --- a/src/lread.c +++ b/src/lread.c | |||
| @@ -2660,7 +2660,18 @@ read1 (register Lisp_Object readcharfun, int *pch, int first_in_list) | |||
| 2660 | { | 2660 | { |
| 2661 | uninterned_symbol = 1; | 2661 | uninterned_symbol = 1; |
| 2662 | c = READCHAR; | 2662 | c = READCHAR; |
| 2663 | goto default_label; | 2663 | if (!(c > 040 |
| 2664 | && c != 0x8a0 | ||
| 2665 | && (c >= 0200 | ||
| 2666 | || !(strchr ("\"';()[]#`,", c))))) | ||
| 2667 | { | ||
| 2668 | /* No symbol character follows, this is the empty | ||
| 2669 | symbol. */ | ||
| 2670 | if (c >= 0) | ||
| 2671 | UNREAD (c); | ||
| 2672 | return Fmake_symbol (build_string ("")); | ||
| 2673 | } | ||
| 2674 | goto read_symbol; | ||
| 2664 | } | 2675 | } |
| 2665 | /* Reader forms that can reuse previously read objects. */ | 2676 | /* Reader forms that can reuse previously read objects. */ |
| 2666 | if (c >= '0' && c <= '9') | 2677 | if (c >= '0' && c <= '9') |
| @@ -3002,6 +3013,8 @@ read1 (register Lisp_Object readcharfun, int *pch, int first_in_list) | |||
| 3002 | if (c <= 040) goto retry; | 3013 | if (c <= 040) goto retry; |
| 3003 | if (c == 0x8a0) /* NBSP */ | 3014 | if (c == 0x8a0) /* NBSP */ |
| 3004 | goto retry; | 3015 | goto retry; |
| 3016 | |||
| 3017 | read_symbol: | ||
| 3005 | { | 3018 | { |
| 3006 | char *p = read_buffer; | 3019 | char *p = read_buffer; |
| 3007 | int quoted = 0; | 3020 | int quoted = 0; |