--- Comment #7 from Jonathan Wakely <redi at gcc dot> ---
(In reply to Konstantin Kharlamov from comment #0)
> When the reason for an undefined function is too low c++ standard, g++ still
> suggests to include the header where it's supposed to be.

N.B. this isn't true in general, it was true only for std::make_unique and the
namespace std::complex_literals. In general it should tell you the problem is
the -std option, and that's what happens for your example now: In function 'int main()': error: 'make_unique' is not a member of 'std'
     auto foo = std::make_unique<char>();
                     ^~~~~~~~~~~ note: 'std::make_unique' is only available from C++14 onwards error: expected primary-expression before 'char'
     auto foo = std::make_unique<char>();

Reply via email to