[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] master 753c875 3/5: Minor cleanups for character name esca
From: |
Paul Eggert |
Subject: |
[Emacs-diffs] master 753c875 3/5: Minor cleanups for character name escapes |
Date: |
Fri, 22 Apr 2016 02:29:45 +0000 |
branch: master
commit 753c875714f708c0257a2d352635c5616be66fdc
Author: Philipp Stephani <address@hidden>
Commit: Paul Eggert <address@hidden>
Minor cleanups for character name escapes
* src/lread.c (init_character_names): Add missing 'void'.
Remove top-level 'const'.
(read_escape): Simplify loop a bit. Remove top-level 'const'.
---
src/lread.c | 27 ++++++++++++---------------
1 file changed, 12 insertions(+), 15 deletions(-)
diff --git a/src/lread.c b/src/lread.c
index 9fa46a8..dbe51bb 100644
--- a/src/lread.c
+++ b/src/lread.c
@@ -2158,20 +2158,20 @@ static ptrdiff_t max_character_name_length;
/* Initializes `character_names' and `max_character_name_length'.
Called by `read_escape'. */
-void init_character_names ()
+void init_character_names (void)
{
character_names = CALLN (Fmake_hash_table,
QCtest, Qequal,
/* Currently around 100,000 Unicode
characters are defined. */
QCsize, make_natnum (100000));
- const Lisp_Object get_property =
+ Lisp_Object get_property =
Fsymbol_function (intern_c_string ("get-char-code-property"));
ptrdiff_t length = 0;
for (int i = 0; i <= MAX_UNICODE_CHAR; ++i)
{
- const Lisp_Object code = make_natnum (i);
- const Lisp_Object name = call2 (get_property, code, Qname);
+ Lisp_Object code = make_natnum (i);
+ Lisp_Object name = call2 (get_property, code, Qname);
if (NILP (name)) continue;
CHECK_STRING (name);
length = max (length, SBYTES (name));
@@ -2417,25 +2417,22 @@ read_escape (Lisp_Object readcharfun, bool stringp)
character names in e.g. multi-line strings. */
if (c_isspace (c))
{
- if (! whitespace)
- {
- whitespace = true;
- name[length++] = ' ';
- }
+ if (whitespace)
+ continue;
+ c = ' ';
+ whitespace = true;
}
else
- {
- whitespace = false;
- name[length++] = c;
- }
+ whitespace = false;
+ name[length++] = c;
if (length >= max_character_name_length)
invalid_syntax ("Character name too long");
}
if (length == 0)
invalid_syntax ("Empty character name");
name[length] = 0;
- const Lisp_Object lisp_name = make_unibyte_string (name, length);
- const Lisp_Object code =
+ Lisp_Object lisp_name = make_unibyte_string (name, length);
+ Lisp_Object code =
(length >= 3 && length <= 10 && name[0] == 'U' && name[1] == '+') ?
/* Code point as U+N, where N is between 1 and 8 hexadecimal
digits. */
- [Emacs-diffs] master updated (7621a52 -> bd1c7ca), Paul Eggert, 2016/04/21
- [Emacs-diffs] master e7cb38e 4/5: Use 'ucs-names' for character name escapes, Paul Eggert, 2016/04/21
- [Emacs-diffs] master 753c875 3/5: Minor cleanups for character name escapes,
Paul Eggert <=
- [Emacs-diffs] master de7d5f3 1/5: Implement named character escapes, similar to Perl, Paul Eggert, 2016/04/21
- [Emacs-diffs] master a58d4e3 2/5: Add documentation for character name escapes, Paul Eggert, 2016/04/21
- [Emacs-diffs] master bd1c7ca 5/5: Improve character name escapes, Paul Eggert, 2016/04/21