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

--- Comment #5 from Jonny Grant <jg at jguk dot org> ---
(In reply to Jonathan Wakely from comment #4)
> I fixed the std::__cxx11::string case on trunk, the output is now:

Great!

I wonder how this looks now with  -std=c++14    or -std=c++17 

(not sure why I still saw __cxx11 with both of these with my g++ 8.2.0

[..]
> The error: line shows the namespace for one parameter and not the other:
> 
> 81239.cc: In function 'int main()':
> 81239.cc:16:15: error: too few arguments to function 'void test_params(const
> cfoo&, a::b::cfoo&)'
>    16 |   test_params();
>       |               ^
> 81239.cc:10:6: note: declared here
>    10 | void test_params(const cfoo&, cfoo&)
>       |      ^~~~~~~~~~~


I imagine you may have found out that this goes away if the "const" is removed.
So it becomes
void test_params(string & mystr1, string & out_str)

Reply via email to