0_0_36447056_20169.cpp:113:14: error: expected primary-expression before 'auto'
decltype(auto) row() const {
^
0_0_36447056_20169.cpp:113:14: error: expected ')' before 'auto'
0_0_36447056_20169.cpp:113:5: error: expected unqualified-id before 'decltype'
decltype(auto) row() const {
^
0_0_36447056_20169.cpp:116:14: error: expected primary-expression before 'auto'
decltype(auto) col() const {
^
0_0_36447056_20169.cpp:116:14: error: expected ')' before 'auto'
0_0_36447056_20169.cpp:116:5: error: expected unqualified-id before 'decltype'
decltype(auto) col() const {
^
0_0_36447056_20169.cpp:119:14: error: expected primary-expression before 'auto'
decltype(auto) size() const {
^
0_0_36447056_20169.cpp:119:14: error: expected ')' before 'auto'
0_0_36447056_20169.cpp:119:5: error: expected unqualified-id before 'decltype'
decltype(auto) size() const {
^
0_0_36447056_20169.cpp:122:14: error: expected primary-expression before 'auto'
decltype(auto) empty() const {
^
0_0_36447056_20169.cpp:122:14: error: expected ')' before 'auto'
0_0_36447056_20169.cpp:122:5: error: expected unqualified-id before 'decltype'
decltype(auto) empty() const {
^
0_0_36447056_20169.cpp:126:14: error: expected primary-expression before 'auto'
decltype(auto) begin() {
^
0_0_36447056_20169.cpp:126:14: error: expected ')' before 'auto'
0_0_36447056_20169.cpp:126:5: error: expected unqualified-id before 'decltype'
decltype(auto) begin() {
^
0_0_36447056_20169.cpp:129:14: error: expected primary-expression before 'auto'
decltype(auto) end() {
^
0_0_36447056_20169.cpp:129:14: error: expected ')' before 'auto'
0_0_36447056_20169.cpp:129:5: error: expected unqualified-id before 'decltype'
decltype(auto) end() {
^
0_0_36447056_20169.cpp:132:14: error: expected primary-expression before 'auto'
decltype(auto) begin() const {
^
0_0_36447056_20169.cpp:132:14: error: expected ')' before 'auto'
0_0_36447056_20169.cpp:132:5: error: expected unqualified-id before 'decltype'
decltype(auto) begin() const {
^
0_0_36447056_20169.cpp:135:14: error: expected primary-expression before 'auto'
decltype(auto) end() const {
^
0_0_36447056_20169.cpp:135:14: error: expected ')' before 'auto'
0_0_36447056_20169.cpp:135:5: error: expected unqualified-id before 'decltype'
decltype(auto) end() const {
^
0_0_36447056_20169.cpp: In member function 'Matrix<m32> Matrix<m32>::transpose() const':
0_0_36447056_20169.cpp:147:21: error: there are no arguments to 'row' that depend on a template parameter, so a declaration of 'row' must be available [-fpermissive]
int n = row(), m = col();
^
0_0_36447056_20169.cpp:147:21: note: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)
0_0_36447056_20169.cpp:147:32: error: there are no arguments to 'col' that depend on a template parameter, so a declaration of 'col' must be available [-fpermissive]
int n = row(), m = col();
^
In file included from GCC4.9.2/x86_64-w64-mingw32/include/c++/cassert:43:0,
from GCC4.9.2/x86_64-w64-mingw32/include/c++/x86_64-w64-mingw32/bits/stdc++.h:33,
from 0_0_36447056_20169.cpp:1:
0_0_36447056_20169.cpp: In member function 'Matrix<m32>& Matrix<m32>::operator+=(const Matrix<m32>&)':
0_0_36447056_20169.cpp:162:20: error: there are no arguments to 'row' that depend on a template parameter, so a declaration of 'row' must be available [-fpermissive]
assert(row() == rhs.row());
^
0_0_36447056_20169.cpp:163:20: error: there are no arguments to 'col' that depend on a template parameter, so a declaration of 'col' must be available [-fpermissive]
assert(col() == rhs.col());
^
0_0_36447056_20169.cpp:164:21: error: there are no arguments to 'row' that depend on a template parameter, so a declaration of 'row' must be available [-fpermissive]
int n = row(), m = col();
^
0_0_36447056_20169.cpp:164:32: error: there are no arguments to 'col' that depend on a template parameter, so a declaration of 'col' must be available [-fpermissive]
int n = row(), m = col();
^
In file included from GCC4.9.2/x86_64-w64-mingw32/include/c++/cassert:43:0,
from GCC4.9.2/x86_64-w64-mingw32/include/c++/x86_64-w64-mingw32/bits/stdc++.h:33,
from 0_0_36447056_20169.cpp:1:
0_0_36447056_20169.cpp: In member function 'Matrix<m32>& Matrix<m32>::operator-=(const Matrix<m32>&)':
0_0_36447056_20169.cpp:175:20: error: there are no arguments to 'row' that depend on a template parameter, so a declaration of 'row' must be available [-fpermissive]
assert(row() == rhs.row());
^
0_0_36447056_20169.cpp:176:20: error: there are no arguments to 'col' that depend on a template parameter, so a declaration of 'col' must be available [-fpermissive]
assert(col() == rhs.col());
^
0_0_36447056_20169.cpp:177:21: error: there are no arguments to 'row' that depend on a template parameter, so a declaration of 'row' must be available [-fpermissive]
int n = row(), m = col();
^
0_0_36447056_20169.cpp:177:32: error: there are no arguments to 'col' that depend on a template parameter, so a declaration of 'col' must be available [-fpermissive]
int n = row(), m = col();
^
0_0_36447056_20169.cpp: In member function 'Matrix<m32>& Matrix<m32>::operator*=(const Matrix<m32>&)':
0_0_36447056_20169.cpp:188:21: error: there are no arguments to 'row' that depend on a template parameter, so a declaration of 'row' must be available [-fpermissive]
int n = row(), m = rhs.col(), l = col();
^
0_0_36447056_20169.cpp:188:47: error: there are no arguments to 'col' that depend on a template parameter, so a declaration of 'col' must be available [-fpermissive]
int n = row(), m = rhs.col(), l = col();
^
0_0_36447056_20169.cpp: In member function 'std::tuple<Matrix<m32>, std::vector<int, std::allocator<int> >, bool> Matrix<m32>::Gaussian_elimination() const':
0_0_36447056_20169.cpp:207:21: error: there are no arguments to 'row' that depend on a template parameter, so a declaration of 'row' must be available [-fpermissive]
int n = row(), m = col();
^
0_0_36447056_20169.cpp:207:32: error: there are no arguments to 'col' that depend on a template parameter, so a declaration of 'col' must be available [-fpermissive]
int n = row(), m = col();
^
0_0_36447056_20169.cpp: In member function 'std::tuple<Matrix<m32>, std::vector<int, std::allocator<int> >, bool> Matrix<m32>::Gauss_Jordan_elimination() const':
0_0_36447056_20169.cpp:255:21: error: there are no arguments to 'row' that depend on a template parameter, so a declaration of 'row' must be available [-fpermissive]
int n = row(), m = col();
^
0_0_36447056_20169.cpp:255:32: error: there are no arguments to 'col' that depend on a template parameter, so a declaration of 'col' must be available [-fpermissive]
int n = row(), m = col();
^
In file included from GCC4.9.2/x86_64-w64-mingw32/include/c++/cassert:43:0,
from GCC4.9.2/x86_64-w64-mingw32/include/c++/x86_64-w64-mingw32/bits/stdc++.h:33,
from 0_0_36447056_20169.cpp:1:
0_0_36447056_20169.cpp: In member function 'm32 Matrix<m32>::det() const':
0_0_36447056_20169.cpp:318:20: error: there are no arguments to 'col' that depend on a template parameter, so a declaration of 'col' must be available [-fpermissive]
assert(col() == row());
^
0_0_36447056_20169.cpp:318:29: error: there are no arguments to 'row' that depend on a template parameter, so a declaration of 'row' must be available [-fpermissive]
assert(col() == row());
^
0_0_36447056_20169.cpp: In member function 'Matrix<m32> Matrix<m32>::inv() const':
0_0_36447056_20169.cpp:335:20: error: there are no arguments to 'col' that depend on a template parameter, so a declaration of 'col' must be available [-fpermissive]
assert(col() == row());
^
0_0_36447056_20169.cpp:335:29: error: there are no arguments to 'row' that depend on a template parameter, so a declaration of 'row' must be available [-fpermissive]
assert(col() == row());
^
0_0_36447056_20169.cpp:336:21: error: there are no arguments to 'col' that depend on a template parameter, so a declaration of 'col' must be available [-fpermissive]
int n = col();
^
0_0_36447056_20169.cpp: In instantiation of 'std::tuple<Matrix<m32>, std::vector<int, std::allocator<int> >, bool> Matrix<m32>::Gauss_Jordan_elimination() const [with m32 = ModInt<998244353>]':
0_0_36447056_20169.cpp:428:49: required from here
0_0_36447056_20169.cpp:255:21: error: 'row' was not declared in this scope
int n = row(), m = col();
^
0_0_36447056_20169.cpp:255:32: error: 'col' was not declared in this scope
int n = row(), m = col();
|