/in/foo.cc: In function 'int main()':
/in/foo.cc:68:12: error: no match for 'operator>>' (operand types are 'std::istream' {aka 'std::basic_istream<char>'} and 'Matrix3')
68 | cin>>m1>>m2>>m3;
| ~~~^~~~
| | |
| | Matrix3
| std::istream {aka std::basic_istream<char>}
In file included from /usr/include/c++/12/iostream:40,
from /in/foo.cc:1:
/usr/include/c++/12/istream:120:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(__istream_type& (*)(__istream_type&)) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]'
120 | operator>>(__istream_type& (*__pf)(__istream_type&))
| ^~~~~~~~
/usr/include/c++/12/istream:120:36: note: no known conversion for argument 1 from 'Matrix3' to 'std::basic_istream<char>::__istream_type& (*)(std::basic_istream<char>::__istream_type&)' {aka 'std::basic_istream<char>& (*)(std::basic_istream<char>&)'}
120 | operator>>(__istream_type& (*__pf)(__istream_type&))
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12/istream:124:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(__ios_type& (*)(__ios_type&)) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>; __ios_type = std::basic_ios<char>]'
124 | operator>>(__ios_type& (*__pf)(__ios_type&))
| ^~~~~~~~
/usr/include/c++/12/istream:124:32: note: no known conversion for argument 1 from 'Matrix3' to 'std::basic_istream<char>::__ios_type& (*)(std::basic_istream<char>::__ios_type&)' {aka 'std::basic_ios<char>& (*)(std::basic_ios<char>&)'}
124 | operator>>(__ios_type& (*__pf)(__ios_type&))
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
/usr/include/c++/12/istream:131:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(std::ios_base& (*)(std::ios_base&)) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]'
131 | operator>>(ios_base& (*__pf)(ios_base&))
| ^~~~~~~~
/usr/include/c++/12/istream:131:30: note: no known conversion for argument 1 from 'Matrix3' to 'std::ios_base& (*)(std::ios_base&)'
131 | operator>>(ios_base& (*__pf)(ios_base&))
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/usr/include/c++/12/istream:168:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(bool&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]'
168 | operator>>(bool& __n)
| ^~~~~~~~
/usr/include/c++/12/istream:168:24: note: no known conversion for argument 1 from 'Matrix3' to 'bool&'
168 | operator>>(bool& __n)
| ~~~~~~^~~
/usr/include/c++/12/istream:172:7: note: candidate: 'std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::operator>>(short int&) [with _CharT = char; _Traits = std::char_traits<char>]'
172 | operator>>(short& __n);
| ^~~~~~~~
/usr/include/c++/12/istream:172:25: note: no known conversion for argument 1 from 'Matrix3' to 'short int&'
172 | operator>>(short& __n);
| ~~~~~~~^~~
/usr/include/c++/12/istream:175:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(short unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]'
175 | operator>>(unsigned short& __n)
| ^~~~~~~~
/usr/include/c++/12/istream:175:34: note: no known conversion for argument 1 from 'Matrix3' to 'short unsigned int&'
175 | operator>>(unsigned short& __n)
| ~~~~~~~~~~~~~~~~^~~
/usr/include/c++/12/istream:179:7: note: candidate: 'std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::operator>>(int&) [with _CharT = char; _Traits = std::char_traits<char>]'
179 | operator>>(int& __n);
| ^~~~~~~~
/usr/include/c++/12/istream:179:23: note: no known conversion for argument 1 from 'Matrix3' to 'int&'
179 | operator>>(int& __n);
| ~~~~~^~~
/usr/include/c++/12/istream:182:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]'
182 | operator>>(unsigned int& __n)
| ^~~~~~~~
/usr/include/c++/12/istream:182:32: note: no known conversion for argument 1 from 'Matrix3' to 'unsigned int&'
182 | operator>>(unsigned int& __n)
| ~~~~~~~~~~~~~~^~~
/usr/include/c++/12/istream:186:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long int&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]'
186 | operator>>(long& __n)
| ^~~~~~~~
/usr/include/c++/12/istream:186:24: note: no known conversion for argument 1 from 'Matrix3' to 'long int&'
186 | operator>>(long& __n)
| ~~~~~~^~~
/usr/include/c++/12/istream:190:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]'
190 | operator>>(unsigned long& __n)
| ^~~~~~~~
/usr/include/c++/12/istream:190:33: note: no known conversion for argument 1 from 'Matrix3' to 'long unsigned int&'
190 | operator>>(unsigned long& __n)
| ~~~~~~~~~~~~~~~^~~
/usr/include/c++/12/istream:195:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long long int&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]'
195 | operator>>(long long& __n)
| ^~~~~~~~
/usr/include/c++/12/istream:195:29: note: no known conversion for argument 1 from 'Matrix3' to 'long long int&'
195 | operator>>(long long& __n)
| ~~~~~~~~~~~^~~
/usr/include/c++/12/istream:199:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long long unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]'
199 | operator>>(unsigned long long& __n)
| ^~~~~~~~
/usr/include/c++/12/istream:199:38: note: no known conversion for argument 1 from 'Matrix3' to 'long long unsigned int&'
199 | operator>>(unsigned long long& __n)
| ~~~~~~~~~~~~~~~~~~~~^~~
/usr/include/c++/12/istream:214:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(float&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]'
214 | operator>>(float& __f)
| ^~~~~~~~
/usr/include/c++/12/istream:214:25: note: no known conversion for argument 1 from 'Matrix3' to 'float&'
214 | operator>>(float& __f)
| ~~~~~~~^~~
/usr/include/c++/12/istream:218:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(double&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]'
218 | operator>>(double& __f)
| ^~~~~~~~
/usr/include/c++/12/istream:218:26: note: no known conversion for argument 1 from 'Matrix3' to 'double&'
218 | operator>>(double& __f)
| ~~~~~~~~^~~
/usr/i