#include <iomanip>
#include <iostream>
#include <sstream>
#include <string>
using namespace std;
int main() {
const auto myString(static_cast<ostringstream>(ostringstream{} << setfill('!') << setw(13) << "lorem ipsum").str());
}
I2luY2x1ZGUgPGlvbWFuaXA+CiNpbmNsdWRlIDxpb3N0cmVhbT4KI2luY2x1ZGUgPHNzdHJlYW0+CiNpbmNsdWRlIDxzdHJpbmc+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKCWNvbnN0IGF1dG8gbXlTdHJpbmcoc3RhdGljX2Nhc3Q8b3N0cmluZ3N0cmVhbT4ob3N0cmluZ3N0cmVhbXt9IDw8IHNldGZpbGwoJyEnKSA8PCBzZXR3KDEzKSA8PCAibG9yZW0gaXBzdW0iKS5zdHIoKSk7CQp9
prog.cpp: In function 'int main()':
prog.cpp:8:109: error: no matching function for call to 'std::basic_ostringstream<char>::basic_ostringstream(std::basic_ostream<char>&)'
const auto myString(static_cast<ostringstream>(ostringstream{} << setfill('!') << setw(13) << "lorem ipsum").str());
^
In file included from /usr/include/c++/5/iomanip:45:0,
from prog.cpp:1:
/usr/include/c++/5/sstream:582:7: note: candidate: std::basic_ostringstream<_CharT, _Traits, _Alloc>::basic_ostringstream(std::basic_ostringstream<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]
basic_ostringstream(basic_ostringstream&& __rhs)
^
/usr/include/c++/5/sstream:582:7: note: no known conversion for argument 1 from 'std::basic_ostream<char>' to 'std::basic_ostringstream<char>&&'
/usr/include/c++/5/sstream:565:7: note: candidate: std::basic_ostringstream<_CharT, _Traits, _Alloc>::basic_ostringstream(const __string_type&, std::ios_base::openmode) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::basic_ostringstream<_CharT, _Traits, _Alloc>::__string_type = std::basic_string<char>; std::ios_base::openmode = std::_Ios_Openmode]
basic_ostringstream(const __string_type& __str,
^
/usr/include/c++/5/sstream:565:7: note: no known conversion for argument 1 from 'std::basic_ostream<char>' to 'const __string_type& {aka const std::basic_string<char>&}'
/usr/include/c++/5/sstream:547:7: note: candidate: std::basic_ostringstream<_CharT, _Traits, _Alloc>::basic_ostringstream(std::ios_base::openmode) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::ios_base::openmode = std::_Ios_Openmode]
basic_ostringstream(ios_base::openmode __mode = ios_base::out)
^
/usr/include/c++/5/sstream:547:7: note: no known conversion for argument 1 from 'std::basic_ostream<char>' to 'std::ios_base::openmode {aka std::_Ios_Openmode}'