[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: build-lexical-var vs. -Wunused-variable
From: |
Andy Wingo |
Subject: |
Re: build-lexical-var vs. -Wunused-variable |
Date: |
Wed, 16 Jan 2013 11:40:44 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.2 (gnu/linux) |
Hi,
On Thu 23 Feb 2012 04:36, Mark H Weaver <address@hidden> writes:
> Andy Wingo <address@hidden> writes:
>> On Fri 17 Feb 2012 12:00, address@hidden (Ludovic Courtès) writes:
>>
>>> Commit f9685f437312ea790981373ddc375b2a26ba9c4f changes
>>> ‘build-lexical-var’ like this:
>>>
>>> (define-syntax-rule (build-lexical-var src id)
>>> - (gensym (string-append (symbol->string id) " ")))
>>> + (gensym (string-append (symbol->string id) "-")))
>>>
>>> This breaks a heuristic used in the ‘unused-variable’ pass, which is
>>> that identifiers containing white space are likely introduced by a macro
>>> and can be ignored in unused-variable reports (see ‘gensym?’ in
>>> ‘tree-il/analyze.scm’).
>>>
>>> OK to change it back?
>>
>> How about we use `$' instead? I understand that's how Chez does it.
>> I'd really rather something that is printable without the #{#} syntax.
>
> Now that we have a (pending) patch to avoid printing gensyms to
> psyntax-pp.scm, does that change your opinion on this? I tend to agree
> with Ludovic here. In general, any character that doesn't require the
> #{}# syntax is likely to be used by some programs in their identifier
> names. It would be a shame if we disabled unused-variable warnings for
> variables whose name contains a '$', or any other standard identifier
> character for that matter.
Is this still a change we should make?
Andy
--
http://wingolog.org/
- Re: build-lexical-var vs. -Wunused-variable,
Andy Wingo <=