https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84917

Eric Gallager <egallager at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |ASSIGNED
   Last reconfirmed|                            |2018-06-17
     Ever confirmed|0                           |1

--- Comment #1 from Eric Gallager <egallager at gcc dot gnu.org> ---
(In reply to David Malcolm from comment #0)
> In
> https://www.reddit.com/r/programming/comments/84oizv/usability_improvements_in_gcc_8/dvsa8dw/
> Reddit user "rifeid" reports excess verbosity...
> 
> > [...] when dealing with nested template data structures. For example,
> 
> #include <string>
> #include <vector>
> using vec = std::vector<std::string>;
> void blah() {
>     vec x;
>     x.foo();
> }
> 
> > results in
> 
> test.cpp: In function ‘void blah()’:
> test.cpp:6:4: error: ‘using vec = class
> std::vector<std::__cxx11::basic_string<char> > {aka class
> std::vector<std::__cxx11::basic_string<char> >}’ has no member named ‘foo’
>   x.foo();
>     ^~~
> 
> > My issues with this:
> >
> > It may look better if the error: line just uses vec, and
> > have the full expansion relegated to a note: line. Not sure.
> >
> > The expansion is printed twice.
> >
> > As std::string is part of the C++ standard, I'd prefer it unexpanded.
> 
> Confirmed on godbolt.org.

So, confirmed then. And ASSIGNED as with other bugs.

> 
> I think parts of these are a dup (maybe of PR c++/84360) but it seems worth
> capturing here and fixing.

Reply via email to