renamed to 'lread--old-style-backquotes'. No user code should use
this variable.
----
-** To avoid confusion caused by "smart quotes", the reader no longer
-accepts Lisp symbols which begin with the following quotation
-characters: ‘’‛“”‟〞"', unless they are escaped with backslash.
-
+++
** 'default-file-name-coding-system' now defaults to a coding system
that does not process CRLF. For example, it defaults to 'utf-8-unix'
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;
"unescaped character literals "
"`?\"', `?(', `?)', `?;', `?[', `?]' detected!")))))
-(ert-deftest lread-tests--funny-quote-symbols ()
- "Check that 'smart quotes' or similar trigger errors in symbol names."
- (dolist (quote-char
- '(#x2018 ;; LEFT SINGLE QUOTATION MARK
- #x2019 ;; RIGHT SINGLE QUOTATION MARK
- #x201B ;; SINGLE HIGH-REVERSED-9 QUOTATION MARK
- #x201C ;; LEFT DOUBLE QUOTATION MARK
- #x201D ;; RIGHT DOUBLE QUOTATION MARK
- #x201F ;; DOUBLE HIGH-REVERSED-9 QUOTATION MARK
- #x301E ;; DOUBLE PRIME QUOTATION MARK
- #xFF02 ;; FULLWIDTH QUOTATION MARK
- #xFF07 ;; FULLWIDTH APOSTROPHE
- ))
- (let ((str (format "%cfoo" quote-char)))
- (should-error (read str) :type 'invalid-read-syntax)
- (should (eq (read (concat "\\" str)) (intern str))))))
-
(ert-deftest lread-test-bug26837 ()
"Test for https://debbugs.gnu.org/26837 ."
(let ((load-path (cons