diff options
author | Ken Raeburn <raeburn@raeburn.org> | 2017-07-31 01:13:53 -0400 |
---|---|---|
committer | Ken Raeburn <raeburn@raeburn.org> | 2017-07-31 01:13:53 -0400 |
commit | 13f3370400031e2ac1c9be0932f411370fc6984e (patch) | |
tree | 06f349b2b0f1cda9e36f7c4390d9d2d9bf49303c /src/lread.c | |
parent | cd0966b33c1fe975520e85e0e7af82c09e4754dc (diff) | |
parent | dcfcaf40d577808d640016c886d4fae7280a7fd5 (diff) | |
download | emacs-scratch/raeburn-startup.tar.gz |
; Merge from branch 'master'scratch/raeburn-startup
Diffstat (limited to 'src/lread.c')
-rw-r--r-- | src/lread.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/lread.c b/src/lread.c index 901e40b3489..dbaadce4b40 100644 --- a/src/lread.c +++ b/src/lread.c @@ -3479,6 +3479,24 @@ read1 (Lisp_Object readcharfun, int *pch, bool first_in_list) if (! NILP (result)) return unbind_to (count, result); } + if (!quoted && multibyte) + { + int ch = STRING_CHAR ((unsigned char *) read_buffer); + switch (ch) + { + case 0x2018: /* LEFT SINGLE QUOTATION MARK */ + case 0x2019: /* RIGHT SINGLE QUOTATION MARK */ + case 0x201B: /* SINGLE HIGH-REVERSED-9 QUOTATION MARK */ + case 0x201C: /* LEFT DOUBLE QUOTATION MARK */ + case 0x201D: /* RIGHT DOUBLE QUOTATION MARK */ + case 0x201F: /* DOUBLE HIGH-REVERSED-9 QUOTATION MARK */ + case 0x301E: /* DOUBLE PRIME QUOTATION MARK */ + case 0xFF02: /* FULLWIDTH QUOTATION MARK */ + case 0xFF07: /* FULLWIDTH APOSTROPHE */ + xsignal2 (Qinvalid_read_syntax, build_string ("strange quote"), + CALLN (Fstring, make_number (ch))); + } + } { Lisp_Object result; ptrdiff_t nbytes = p - read_buffer; |