This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [C++ Patch] PR 84423 ("[6/7/8/9 Regression] [concepts] ICE with invalid using declaration")
- From: Jason Merrill <jason at redhat dot com>
- To: Paolo Carlini <paolo dot carlini at oracle dot com>
- Cc: gcc-patches List <gcc-patches at gcc dot gnu dot org>, Nathan Sidwell <nathan at acm dot org>
- Date: Tue, 9 Oct 2018 11:17:16 -0400
- Subject: Re: [C++ Patch] PR 84423 ("[6/7/8/9 Regression] [concepts] ICE with invalid using declaration")
- References: <61471b27-ea85-8fc2-a7e3-178547e518d6@oracle.com> <CADzB+2kqCdAf679uR8iqP3RbHyzK3TtbUBn6Ah_7ZhF7hR++3w@mail.gmail.com> <b104f694-e139-ab3d-b1fd-f44d1bee4c25@oracle.com> <909171c0-805e-25c3-7279-43f8f194bc4a@oracle.com>
On Sat, Sep 29, 2018 at 3:27 PM Paolo Carlini <paolo.carlini@oracle.com> wrote:
> Hi again,
>
> On 9/28/18 9:15 PM, Paolo Carlini wrote:
> > Thanks. About the location, you are certainly right, but doesn't seem
> > trivial. Something we can do *now* is using
> > declspecs->locations[ds_typedef] and declspecs->locations[ds_alias],
> > but that gives us the location of the keyword 'typedef' and 'using',
> > respectively, whereas I think that we would like to have the location
> > of 'auto' itself. I could look into that as a follow-up piece work
>
> In fact, completing the work turned out to be easy: ensure that
> cp_parser_alias_declaration saves the location of the defining-type-id
> too and then consistently use locations[ds_type_spec] in the error
> messages. Tested x86_64-linux. Still Ok? ;)
Hmm, I think you need to look past any cv-qualifiers at the beginning
of the type-id.
Jason