Skip to content

Instantly share code, notes, and snippets.

@fwsGonzo
Created June 7, 2018 08:23
Show Gist options
  • Save fwsGonzo/42e22e4bd076f61f5f6c52c06988ac9b to your computer and use it in GitHub Desktop.
Save fwsGonzo/42e22e4bd076f61f5f6c52c06988ac9b to your computer and use it in GitHub Desktop.
clang++-7.0 t.cpp -o t
t.cpp:6:13: error: invalid operands to binary expression ('std::ostream'
(aka 'basic_ostream<char>') and 'T')
std::cout << T{} << std::endl;
~~~~~~~~~ ^ ~~~
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/system_error:217:5: note:
candidate function not viable: no known conversion from 'T' to 'const std::error_code' for
2nd argument
operator<<(basic_ostream<_CharT, _Traits>& __os, const error_code& __e)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:108:7: note: candidate
function not viable: no known conversion from 'T' to 'std::basic_ostream<char,
std::char_traits<char> >::__ostream_type &(*)(std::basic_ostream<char,
std::char_traits<char> >::__ostream_type &)' (aka 'basic_ostream<char,
std::char_traits<char> > &(*)(basic_ostream<char, std::char_traits<char> > &)') for 1st
argument
operator<<(__ostream_type& (*__pf)(__ostream_type&))
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:117:7: note: candidate
function not viable: no known conversion from 'T' to 'std::basic_ostream<char,
std::char_traits<char> >::__ios_type &(*)(std::basic_ostream<char, std::char_traits<char>
>::__ios_type &)' (aka 'basic_ios<char, std::char_traits<char> > &(*)(basic_ios<char,
std::char_traits<char> > &)') for 1st argument
operator<<(__ios_type& (*__pf)(__ios_type&))
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:127:7: note: candidate
function not viable: no known conversion from 'T' to 'std::ios_base &(*)(std::ios_base &)'
for 1st argument
operator<<(ios_base& (*__pf) (ios_base&))
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:166:7: note: candidate
function not viable: no known conversion from 'T' to 'long' for 1st argument
operator<<(long __n)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:170:7: note: candidate
function not viable: no known conversion from 'T' to 'unsigned long' for 1st argument
operator<<(unsigned long __n)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:174:7: note: candidate
function not viable: no known conversion from 'T' to 'bool' for 1st argument
operator<<(bool __n)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:178:7: note: candidate
function not viable: no known conversion from 'T' to 'short' for 1st argument
operator<<(short __n);
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:181:7: note: candidate
function not viable: no known conversion from 'T' to 'unsigned short' for 1st argument
operator<<(unsigned short __n)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:189:7: note: candidate
function not viable: no known conversion from 'T' to 'int' for 1st argument
operator<<(int __n);
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:192:7: note: candidate
function not viable: no known conversion from 'T' to 'unsigned int' for 1st argument
operator<<(unsigned int __n)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:201:7: note: candidate
function not viable: no known conversion from 'T' to 'long long' for 1st argument
operator<<(long long __n)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:205:7: note: candidate
function not viable: no known conversion from 'T' to 'unsigned long long' for 1st argument
operator<<(unsigned long long __n)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:220:7: note: candidate
function not viable: no known conversion from 'T' to 'double' for 1st argument
operator<<(double __f)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:224:7: note: candidate
function not viable: no known conversion from 'T' to 'float' for 1st argument
operator<<(float __f)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:232:7: note: candidate
function not viable: no known conversion from 'T' to 'long double' for 1st argument
operator<<(long double __f)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:245:7: note: candidate
function not viable: no known conversion from 'T' to 'const void *' for 1st argument
operator<<(const void* __p)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:270:7: note: candidate
function not viable: no known conversion from 'T' to 'std::basic_ostream<char,
std::char_traits<char> >::__streambuf_type *' (aka 'basic_streambuf<char,
std::char_traits<char> > *') for 1st argument
operator<<(__streambuf_type* __sb);
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:502:5: note: candidate
function not viable: no known conversion from 'T' to 'char' for 2nd argument
operator<<(basic_ostream<_CharT, _Traits>& __out, char __c)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:508:5: note: candidate
function not viable: no known conversion from 'T' to 'char' for 2nd argument
operator<<(basic_ostream<char, _Traits>& __out, char __c)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:514:5: note: candidate
function not viable: no known conversion from 'T' to 'signed char' for 2nd argument
operator<<(basic_ostream<char, _Traits>& __out, signed char __c)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:519:5: note: candidate
function not viable: no known conversion from 'T' to 'unsigned char' for 2nd argument
operator<<(basic_ostream<char, _Traits>& __out, unsigned char __c)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:556:5: note: candidate
function not viable: no known conversion from 'T' to 'const char *' for 2nd argument
operator<<(basic_ostream<char, _Traits>& __out, const char* __s)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:569:5: note: candidate
function not viable: no known conversion from 'T' to 'const signed char *' for 2nd argument
operator<<(basic_ostream<char, _Traits>& __out, const signed char* __s)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:574:5: note: candidate
function not viable: no known conversion from 'T' to 'const unsigned char *' for 2nd
argument
operator<<(basic_ostream<char, _Traits>& __out, const unsigned char* __s)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/bits/ostream.tcc:321:5: note:
candidate function not viable: no known conversion from 'T' to 'const char *' for 2nd
argument
operator<<(basic_ostream<_CharT, _Traits>& __out, const char* __s)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:497:5: note: candidate
template ignored: deduced conflicting types for parameter '_CharT' ('char' vs. 'T')
operator<<(basic_ostream<_CharT, _Traits>& __out, _CharT __c)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/bits/basic_string.h:6284:5: note:
candidate template ignored: could not match 'basic_string<type-parameter-0-0,
type-parameter-0-1, type-parameter-0-2>' against 'T'
operator<<(basic_ostream<_CharT, _Traits>& __os,
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:539:5: note: candidate
template ignored: could not match 'const _CharT *' against 'T'
operator<<(basic_ostream<_CharT, _Traits>& __out, const _CharT* __s)
^
/usr/lib/gcc/x86_64-linux-gnu/8.0.1/../../../../include/c++/8.0.1/ostream:682:5: note: candidate
template ignored: requirement '__and_<__not_<is_lvalue_reference<basic_ostream<char> &> >,
__is_convertible_to_basic_ostream<basic_ostream<char> &>,
__is_insertable<__rvalue_ostream_type<basic_ostream<char> &>, const T &> >::value' was not
satisfied [with _Ostream = std::basic_ostream<char> &, _Tp = T]
operator<<(_Ostream&& __os, const _Tp& __x)
^
1 error generated.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment