Related articles |
---|
[2 earlier articles] |
Re: Spell checking identifiers gah4@u.washington.edu (2020-06-23) |
Re: Spell checking identifiers derek@_NOSPAM_knosof.co.uk.invalid (Derek M. Jones) (2020-06-24) |
Re: Spell checking identifiers 937-053-0959@kylheku.com (Kaz Kylheku) (2020-06-24) |
Re: Spell checking identifiers tkoenig@netcologne.de (Thomas Koenig) (2020-06-24) |
Re: Spell checking identifiers gautier_niouzes@hotmail.com (2020-06-24) |
Re: Spell checking identifiers gah4@u.washington.edu (2020-06-24) |
Re: Spell checking identifiers johann@myrkraverk.invalid (Johann 'Myrkraverk' Oskarsson) (2020-06-25) |
Re: Spell checking identifiers johann@myrkraverk.invalid (Johann 'Myrkraverk' Oskarsson) (2020-06-25) |
Re: Spell checking identifiers acolvin@efunct.com (mac) (2020-07-09) |
Re: Spell checking identifiers tkoenig@netcologne.de (Thomas Koenig) (2020-07-10) |
Re: Spell checking identifiers gah4@u.washington.edu (2020-07-10) |
From: | Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> |
Newsgroups: | comp.compilers |
Date: | Thu, 25 Jun 2020 21:44:45 +0800 |
Organization: | Easynews - www.easynews.com |
References: | 20-06-010 20-06-014 20-06-015 |
Injection-Info: | gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="42191"; mail-complaints-to="abuse@iecc.com" |
Keywords: | lex, errors |
Posted-Date: | 25 Jun 2020 11:54:27 EDT |
In-Reply-To: | 20-06-015 |
Content-Language: | en-GB |
On 25/06/2020 4:08 am, Thomas Koenig wrote:
> Kaz Kylheku <937-053-0959@kylheku.com> schrieb:
>> On 2020-06-23, Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> wrote:
>>> 5 | return j; // the variable, not the type.
>>> | ^ help: a local variable with a similar name exists: `i`
>
>> I don't find these kinds of childish diagnostic messages useful at all.
>>
>> They have started to appear in GCC also.
>
>> The good old "undeclared identifier `j`" requires no update, thanks.
>
> At least gcc doesn't do the suggestion in that particular case:
>
> foo.c: In function 'foo':
> foo.c:8:7: error: 'j' undeclared (first use in this function)
> 8 | x[j] = a[i] > b[i];
> | ^
> foo.c:8:7: note: each undeclared identifier is reported only once for each function it appears in
>
A friend showed me the ghc code for this, and it deliberatly (according
to comments) excludes single variable names. I don't understand enough
Haskell to tell exactly what the code is doing, but they seem to be
using the Damerau-Levenshtein distance algorithm based on identifier
names.
Now, whether this is useful is of course debatable, and I would
personally like to give people a choice to either turn it on, or
off. We can argue about defaults if/when I have a published
compiler.
--
Johann | email: invalid -> com | www.myrkraverk.com/blog/
I'm not from the Internet, I just work there. | twitter: @myrkraverk
Return to the
comp.compilers page.
Search the
comp.compilers archives again.