[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#31676: 27.0.50; More helpful error message for unescaped character l
From: |
Noam Postavsky |
Subject: |
bug#31676: 27.0.50; More helpful error message for unescaped character literals |
Date: |
Fri, 19 Apr 2019 07:43:47 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux) |
Philipp Stephani <p.stephani2@gmail.com> writes:
>> > 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?
>
> It doesn't need to be uninterned, but it's cleaner that way because no
> other code can access the variable.
>
>> And if it does, why cannot
>> it create a symbol that is not in obarray?
>
> That's what the patch does.
The patch uninterns a symbol after it's interned in the obarray. I
think the question is, why put the symbol in the obarray in the first
place? Just a C static variable would do (although this would require
an additional (trivial) C function, to use with record_unwind_protect
instead of specbind). See for example Vloads_in_progress.