Subject: bug#31676: 27.0.50; More helpful error message for unescaped character literals

From: Eli Zaretskii <[email-masked]>
Date: Sat, 09 Jun 2018 20:31:25 +0300

> From: Philipp Stephani <[email-masked]>
> Date: Sat, 9 Jun 2018 19:12:30 +0200
> Cc: [email-masked], [email-masked]
> 
>  Sounds okay, but can you tell why you implemented
>  lread--unescaped-character-literals in C?  If that's because you need
>  to call it from load_warn_unescaped_character_literals, then C
>  functions can call Lisp functions with no problems, we have several
>  examples of that in the sources.  AFAICT, the C implementation is just
>  a "transliteration" of straightforward Lisp code, so it reads strange.
> 
> The function uses an uninterned variable, so it has to be in C. I think that's slightly better than interning the
> variable and having some Lisp function access it (the latter would have one additional internal symbol). 

Why does it need an uninterned variable?  And if it does, why cannot
it create a symbol that is not in obarray?