I think this case has more problems than just verbosity...

On Mon, Aug 26, 2013 at 10:38 PM, Nick Lewycky <[email protected]> wrote:

> a.cc:1:56: error: no template named 'Foox'; did you mean 'Foo'?
> template <typename T> class Foo {}; class Bar : public Foox {};
> [point at 'Foox' suggest 'Foo']
>

Why does it assume Foox is a template?


> a.cc:1:29: note: 'Foo' declared here
> template <typename T> class Foo {}; class Bar : public Foox {};
> [point at 'Foo']
> a.cc:1:56: error: expected template argument list after template-id
> template <typename T> class Foo {}; class Bar : public Foox {};
> [point at 'Foox']
>

And given that we then hit this error, why do we even consider the Foo typo
correction? Do we prefer that over a "Fooxie" class due to shorter edit
distance? That doesn't seem right. I would intuitively expect the lack of
"<..." to be a stronger signal than any edit distance, and thus disqualify
template-ids from the typo correction candidate set.

-Chandler
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to