This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] C/C++: add fix-it hints for various missing symbols
- From: Richard Sandiford <richard dot sandiford at linaro dot org>
- To: David Malcolm <dmalcolm at redhat dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Mon, 03 Jul 2017 19:57:17 +0100
- Subject: Re: [PATCH] C/C++: add fix-it hints for various missing symbols
- Authentication-results: sourceware.org; auth=none
- References: <1499107059-28855-1-git-send-email-dmalcolm@redhat.com>
[Thanks for all your diagnostic work btw.]
David Malcolm <dmalcolm@redhat.com> writes:
> clang can also print notes about matching opening symbols
> e.g. the note here:
>
> missing-symbol-2.c:25:22: error: expected ']'
> const char test [42;
> ^
> missing-symbol-2.c:25:19: note: to match this '['
> const char test [42;
> ^
> which, although somewhat redundant for this example, seems much more
> useful if there's non-trivial nesting of constructs, or more than a few
> lines separating the open/close symbols (e.g. showing a stray "namespace {"
> that the user forgot to close).
>
> I'd like to implement both of these ideas as followups, but in
> the meantime, is the fix-it hint patch OK for trunk?
> (successfully bootstrapped & regrtested on x86_64-pc-linux-gnu)
Just wondering: how easy would it be to restrict the note to the kinds
of cases you mention? TBH I think clang goes in for extra notes too
much, and it's not always that case that an "expected 'foo'" message
really is caused by a missing 'foo'. It'd be great if there was some
way of making the notes a bit more discerning. :-)
Or maybe do something like restrict the extra note to cases in which the
opening character is on a different line and use an underlined range
when the opening character is on the same line?
Thanks,
Richard