* installing *source* package 'RcppBlaze' ...
** this is package 'RcppBlaze' version '1.0.1'
** package 'RcppBlaze' successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C compiler: 'gcc.exe (GCC) 14.2.0'
using C++ compiler: 'g++.exe (GCC) 14.2.0'
make[1]: Entering directory '/d/temp/2025_10_14_01_50_00_4128/Rtmp0eVulz/R.INSTALL70182855901/RcppBlaze/src'
g++ -std=gnu++17 -I"D:/RCompile/recent/R/include" -DNDEBUG -I'D:/RCompile/CRANpkg/lib/4.6/Rcpp/include' -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include" -I../inst/include -fopenmp -pedantic -O2 -Wall -mfpmath=sse -msse2 -mstackrealign -c RcppBlaze.cpp -o RcppBlaze.o
In file included from D:/rtools45/x86_64-w64-mingw32.static.posix/include/windows.h:114,
from ../inst/include/blaze/util/Time.h:47,
from ../inst/include/blaze/Util.h:82,
from ../inst/include/blaze/Blaze.h:45,
from ../inst/include/RcppBlazeForward.h:28,
from ../inst/include/RcppBlaze.h:13,
from RcppBlaze.cpp:10:
D:/rtools45/x86_64-w64-mingw32.static.posix/include/stralign.h: In function 'WCHAR* ua_CharUpperW(LPUWSTR)':
D:/rtools45/x86_64-w64-mingw32.static.posix/include/stralign.h:62: note: '-Wmisleading-indentation' is disabled from this point onwards, since column-tracking was disabled due to the size of the code/headers
62 | if(WSTR_ALIGNED(String)) return CharUpperW((PWSTR)String);
D:/rtools45/x86_64-w64-mingw32.static.posix/include/stralign.h:62: note: adding '-flarge-source-files' will allow for more column-tracking support, at the expense of compilation time and memory
g++ -std=gnu++17 -I"D:/RCompile/recent/R/include" -DNDEBUG -I'D:/RCompile/CRANpkg/lib/4.6/Rcpp/include' -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include" -I../inst/include -fopenmp -pedantic -O2 -Wall -mfpmath=sse -msse2 -mstackrealign -c RcppExports.cpp -o RcppExports.o
In file included from D:/rtools45/x86_64-w64-mingw32.static.posix/include/windows.h:114,
from ../inst/include/blaze/util/Time.h:47,
from ../inst/include/blaze/Util.h:82,
from ../inst/include/blaze/Blaze.h:45,
from ../inst/include/RcppBlazeForward.h:28,
from ../inst/include/RcppBlaze.h:13,
from RcppExports.cpp:4:
D:/rtools45/x86_64-w64-mingw32.static.posix/include/stralign.h: In function 'WCHAR* ua_CharUpperW(LPUWSTR)':
D:/rtools45/x86_64-w64-mingw32.static.posix/include/stralign.h:62: note: '-Wmisleading-indentation' is disabled from this point onwards, since column-tracking was disabled due to the size of the code/headers
62 | if(WSTR_ALIGNED(String)) return CharUpperW((PWSTR)String);
D:/rtools45/x86_64-w64-mingw32.static.posix/include/stralign.h:62: note: adding '-flarge-source-files' will allow for more column-tracking support, at the expense of compilation time and memory
g++ -std=gnu++17 -I"D:/RCompile/recent/R/include" -DNDEBUG -I'D:/RCompile/CRANpkg/lib/4.6/Rcpp/include' -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include" -I../inst/include -fopenmp -pedantic -O2 -Wall -mfpmath=sse -msse2 -mstackrealign -c fastLm.cpp -o fastLm.o
In file included from D:/rtools45/x86_64-w64-mingw32.static.posix/include/windows.h:114,
from ../inst/include/blaze/util/Time.h:47,
from ../inst/include/blaze/Util.h:82,
from ../inst/include/blaze/Blaze.h:45,
from ../inst/include/RcppBlazeForward.h:28,
from ../inst/include/RcppBlaze.h:13,
from fastLm.cpp:13:
D:/rtools45/x86_64-w64-mingw32.static.posix/include/stralign.h: In function 'WCHAR* ua_CharUpperW(LPUWSTR)':
D:/rtools45/x86_64-w64-mingw32.static.posix/include/stralign.h:62: note: '-Wmisleading-indentation' is disabled from this point onwards, since column-tracking was disabled due to the size of the code/headers
62 | if(WSTR_ALIGNED(String)) return CharUpperW((PWSTR)String);
D:/rtools45/x86_64-w64-mingw32.static.posix/include/stralign.h:62: note: adding '-flarge-source-files' will allow for more column-tracking support, at the expense of compilation time and memory
In file included from ../inst/include/blaze/math/DenseMatrix.h:106,
from ../inst/include/blaze/math/CustomMatrix.h:47,
from ../inst/include/blaze/Math.h:51,
from ../inst/include/blaze/Blaze.h:43:
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h: In instantiation of 'void blaze::assign(DenseMatrix<MT, SO2>&, const DMatTDMatMultExpr< <template-parameter-1-1>, <template-parameter-1-2>, <anonymous>, <anonymous>, <anonymous>, <anonymous> >&) [with MT = CustomMatrix<double, blaze::aligned, blaze::padded, true>; bool SO = true; MT1 = DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>; MT2 = CustomMatrix<double, blaze::aligned, blaze::padded, true>; bool SF = false; bool HF = false; bool LF = false; bool UF = false]':
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:301:16: required from 'blaze::EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> blaze::smpAssign(Matrix<MT, SO>&, const Matrix<MT, SO>&) [with MT1 = CustomMatrix<double, blaze::aligned, blaze::padded, true>; bool SO1 = true; MT2 = DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> = void]'
301 | assign( *lhs, *rhs );
| ~~~~~~^~~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomMatrix.h:4656:16: required from 'blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>& blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>::operator=(const blaze::Matrix<MT, SO2>&) [with MT = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO = false; Type = double; blaze::AlignmentFlag AF = blaze::aligned; blaze::PaddingFlag PF = blaze::padded; Tag = blaze::GroupTag<0>; RT = blaze::DynamicMatrix<double, true, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
4656 | smpAssign( *this, *rhs );
| ~~~~~~~~~^~~~~~~~~~~~~~~
fastLm.cpp:77:0: required from here
77 | XTXinv = blaze::trans(X) * X;
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:509:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
509 | LT A( serial( rhs.lhs_ ) ); // Evaluation of the left-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:509:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, false>(rhs.blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>::lhs_).blaze::DMatSerialExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, false>::operator Operand()'
In file included from ../inst/include/blaze/math/DenseMatrix.h:121:
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>; MT = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>; VT = Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<CustomVector<double, blaze::aligned, blaze::padded>, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<CustomVector<double, blaze::aligned, blaze::padded>, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>; auto:2 = blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:129:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; OP = smpAssign<CustomVector<double, blaze::aligned, blaze::padded>, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<CustomVector<double, blaze::aligned, blaze::padded>, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)>]'
129 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomVector.h:3837:16: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::CustomVector<double, blaze::aligned, blaze::padded> >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3837 | smpAssign( *this, *rhs );
| ~~~~~~~~~^~~~~~~~~~~~~~~
fastLm.cpp:48:0: required from here
48 | fitted = X * coef;
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | LT A( serial( rhs.mat_ ) ); // Evaluation of the left-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true> >::mat_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
425 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>, false>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>, false>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>; MT = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>; VT = Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<CustomVector<double, blaze::aligned, blaze::padded>, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<CustomVector<double, blaze::aligned, blaze::padded>, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>; auto:2 = blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:134:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; OP = smpAssign<CustomVector<double, blaze::aligned, blaze::padded>, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<CustomVector<double, blaze::aligned, blaze::padded>, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)>]'
134 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomVector.h:3837:16: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::CustomVector<double, blaze::aligned, blaze::padded> >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3837 | smpAssign( *this, *rhs );
| ~~~~~~~~~^~~~~~~~~~~~~~~
fastLm.cpp:48:0: required from here
48 | fitted = X * coef;
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | LT A( serial( rhs.mat_ ) ); // Evaluation of the left-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true> >::mat_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
425 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>, false>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>, false>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>; MT = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>; VT = Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<CustomVector<double, blaze::aligned, blaze::padded>, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<CustomVector<double, blaze::aligned, blaze::padded>, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>; auto:2 = blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:139:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; OP = smpAssign<CustomVector<double, blaze::aligned, blaze::padded>, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<CustomVector<double, blaze::aligned, blaze::padded>, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)>]'
139 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomVector.h:3837:16: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::CustomVector<double, blaze::aligned, blaze::padded> >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3837 | smpAssign( *this, *rhs );
| ~~~~~~~~~^~~~~~~~~~~~~~~
fastLm.cpp:48:0: required from here
48 | fitted = X * coef;
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | LT A( serial( rhs.mat_ ) ); // Evaluation of the left-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true> >::mat_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
425 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>, false>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>, false>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>; MT = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>; VT = Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<CustomVector<double, blaze::aligned, blaze::padded>, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<CustomVector<double, blaze::aligned, blaze::padded>, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>; auto:2 = blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:144:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; OP = smpAssign<CustomVector<double, blaze::aligned, blaze::padded>, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<CustomVector<double, blaze::aligned, blaze::padded>, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)>]'
144 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomVector.h:3837:16: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::CustomVector<double, blaze::aligned, blaze::padded> >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3837 | smpAssign( *this, *rhs );
| ~~~~~~~~~^~~~~~~~~~~~~~~
fastLm.cpp:48:0: required from here
48 | fitted = X * coef;
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | LT A( serial( rhs.mat_ ) ); // Evaluation of the left-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true> >::mat_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
425 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>, false>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>, false>::operator Operand()'
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h: In instantiation of 'void blaze::assign(DenseMatrix<MT, SO2>&, const DMatTDMatMultExpr< <template-parameter-1-1>, <template-parameter-1-2>, <anonymous>, <anonymous>, <anonymous>, <anonymous> >&) [with MT = DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >; bool SO = false; MT1 = DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>; MT2 = CustomMatrix<double, blaze::aligned, blaze::padded, true>; bool SF = false; bool HF = false; bool LF = false; bool UF = false]':
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:301:16: required from 'blaze::EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> blaze::smpAssign(Matrix<MT, SO>&, const Matrix<MT, SO>&) [with MT1 = DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >; bool SO1 = false; MT2 = DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> = void]'
301 | assign( *lhs, *rhs );
| ~~~~~~^~~~~~~~~~~~~~
../inst/include/blaze/math/dense/DynamicMatrix.h:1000:13: required from 'blaze::DynamicMatrix<Type, SO, Alloc, Tag>::DynamicMatrix(const blaze::Matrix<MT, SO2>&) [with MT = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; Type = double; bool SO = false; Alloc = blaze::AlignedAllocator<double>; Tag = blaze::GroupTag<0>]'
1000 | smpAssign( *this, *m );
| ~~~~~~~~~^~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomMatrix.h:4650:30: required from 'blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>& blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>::operator=(const blaze::Matrix<MT, SO2>&) [with MT = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO = false; Type = double; blaze::AlignmentFlag AF = blaze::aligned; blaze::PaddingFlag PF = blaze::padded; Tag = blaze::GroupTag<0>; RT = blaze::DynamicMatrix<double, true, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
4650 | const ResultType_t<MT> tmp( *rhs );
| ^~~
fastLm.cpp:77:0: required from here
77 | XTXinv = blaze::trans(X) * X;
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:509:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
509 | LT A( serial( rhs.lhs_ ) ); // Evaluation of the left-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:509:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, false>(rhs.blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>::lhs_).blaze::DMatSerialExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, false>::operator Operand()'
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h: In instantiation of 'void blaze::assign(DenseMatrix<MT, SO2>&, const DMatTDMatMultExpr< <template-parameter-1-1>, <template-parameter-1-2>, <anonymous>, <anonymous>, <anonymous>, <anonymous> >&) [with MT = Submatrix<CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>; bool SO = true; MT1 = DMatTransExpr<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false>; MT2 = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>; bool SF = false; bool HF = false; bool LF = false; bool UF = false]':
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:305:72: required from 'blaze::smpAssign<CustomMatrix<double, blaze::aligned, blaze::padded, true>, true, DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>(Matrix<CustomMatrix<double, blaze::aligned, blaze::padded, true>, true>&, const Matrix<DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>&)::<lambda(auto:12&, const auto:13&)> [with auto:12 = blaze::Submatrix<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>; auto:13 = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false>, blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false, false, false, false>]'
305 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:140:12: required from 'void blaze::openmpAssign(DenseMatrix<MT1, SO1>&, const DenseMatrix<MT2, SO2>&, OP) [with MT1 = CustomMatrix<double, blaze::aligned, blaze::padded, true>; bool SO1 = true; MT2 = DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; OP = smpAssign<CustomMatrix<double, blaze::aligned, blaze::padded, true>, true, DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>(Matrix<CustomMatrix<double, blaze::aligned, blaze::padded, true>, true>&, const Matrix<DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>&)::<lambda(auto:12&, const auto:13&)>]'
140 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:305:22: required from 'blaze::EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> blaze::smpAssign(Matrix<MT, SO>&, const Matrix<MT, SO>&) [with MT1 = CustomMatrix<double, blaze::aligned, blaze::padded, true>; bool SO1 = true; MT2 = DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> = void]'
305 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomMatrix.h:4656:16: required from 'blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>& blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>::operator=(const blaze::Matrix<MT, SO2>&) [with MT = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO = false; Type = double; blaze::AlignmentFlag AF = blaze::aligned; blaze::PaddingFlag PF = blaze::padded; Tag = blaze::GroupTag<0>; RT = blaze::DynamicMatrix<double, true, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
4656 | smpAssign( *this, *rhs );
| ~~~~~~~~~^~~~~~~~~~~~~~~
fastLm.cpp:77:0: required from here
77 | XTXinv = blaze::trans(X) * X;
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:510:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
510 | RT B( serial( rhs.rhs_ ) ); // Evaluation of the right-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:510:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>(rhs.blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false>, blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false, false, false, false>::rhs_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h: In instantiation of 'void blaze::assign(DenseMatrix<MT, SO2>&, const DMatTDMatMultExpr< <template-parameter-1-1>, <template-parameter-1-2>, <anonymous>, <anonymous>, <anonymous>, <anonymous> >&) [with MT = Submatrix<CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>; bool SO = true; MT1 = DMatTransExpr<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false>; MT2 = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>; bool SF = false; bool HF = false; bool LF = false; bool UF = false]':
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:305:72: required from 'blaze::smpAssign<CustomMatrix<double, blaze::aligned, blaze::padded, true>, true, DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>(Matrix<CustomMatrix<double, blaze::aligned, blaze::padded, true>, true>&, const Matrix<DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>&)::<lambda(auto:12&, const auto:13&)> [with auto:12 = blaze::Submatrix<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>; auto:13 = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false>, blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false, false, false, false>]'
305 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:145:12: required from 'void blaze::openmpAssign(DenseMatrix<MT1, SO1>&, const DenseMatrix<MT2, SO2>&, OP) [with MT1 = CustomMatrix<double, blaze::aligned, blaze::padded, true>; bool SO1 = true; MT2 = DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; OP = smpAssign<CustomMatrix<double, blaze::aligned, blaze::padded, true>, true, DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>(Matrix<CustomMatrix<double, blaze::aligned, blaze::padded, true>, true>&, const Matrix<DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>&)::<lambda(auto:12&, const auto:13&)>]'
145 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:305:22: required from 'blaze::EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> blaze::smpAssign(Matrix<MT, SO>&, const Matrix<MT, SO>&) [with MT1 = CustomMatrix<double, blaze::aligned, blaze::padded, true>; bool SO1 = true; MT2 = DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> = void]'
305 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomMatrix.h:4656:16: required from 'blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>& blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>::operator=(const blaze::Matrix<MT, SO2>&) [with MT = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO = false; Type = double; blaze::AlignmentFlag AF = blaze::aligned; blaze::PaddingFlag PF = blaze::padded; Tag = blaze::GroupTag<0>; RT = blaze::DynamicMatrix<double, true, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
4656 | smpAssign( *this, *rhs );
| ~~~~~~~~~^~~~~~~~~~~~~~~
fastLm.cpp:77:0: required from here
77 | XTXinv = blaze::trans(X) * X;
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:510:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
510 | RT B( serial( rhs.rhs_ ) ); // Evaluation of the right-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:510:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>(rhs.blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false>, blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false, false, false, false>::rhs_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h: In instantiation of 'void blaze::assign(DenseMatrix<MT, SO2>&, const DMatTDMatMultExpr< <template-parameter-1-1>, <template-parameter-1-2>, <anonymous>, <anonymous>, <anonymous>, <anonymous> >&) [with MT = Submatrix<CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>; bool SO = true; MT1 = DMatTransExpr<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false>; MT2 = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>; bool SF = false; bool HF = false; bool LF = false; bool UF = false]':
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:305:72: required from 'blaze::smpAssign<CustomMatrix<double, blaze::aligned, blaze::padded, true>, true, DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>(Matrix<CustomMatrix<double, blaze::aligned, blaze::padded, true>, true>&, const Matrix<DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>&)::<lambda(auto:12&, const auto:13&)> [with auto:12 = blaze::Submatrix<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>; auto:13 = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false>, blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false, false, false, false>]'
305 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:150:12: required from 'void blaze::openmpAssign(DenseMatrix<MT1, SO1>&, const DenseMatrix<MT2, SO2>&, OP) [with MT1 = CustomMatrix<double, blaze::aligned, blaze::padded, true>; bool SO1 = true; MT2 = DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; OP = smpAssign<CustomMatrix<double, blaze::aligned, blaze::padded, true>, true, DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>(Matrix<CustomMatrix<double, blaze::aligned, blaze::padded, true>, true>&, const Matrix<DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>&)::<lambda(auto:12&, const auto:13&)>]'
150 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:305:22: required from 'blaze::EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> blaze::smpAssign(Matrix<MT, SO>&, const Matrix<MT, SO>&) [with MT1 = CustomMatrix<double, blaze::aligned, blaze::padded, true>; bool SO1 = true; MT2 = DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> = void]'
305 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomMatrix.h:4656:16: required from 'blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>& blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>::operator=(const blaze::Matrix<MT, SO2>&) [with MT = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO = false; Type = double; blaze::AlignmentFlag AF = blaze::aligned; blaze::PaddingFlag PF = blaze::padded; Tag = blaze::GroupTag<0>; RT = blaze::DynamicMatrix<double, true, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
4656 | smpAssign( *this, *rhs );
| ~~~~~~~~~^~~~~~~~~~~~~~~
fastLm.cpp:77:0: required from here
77 | XTXinv = blaze::trans(X) * X;
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:510:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
510 | RT B( serial( rhs.rhs_ ) ); // Evaluation of the right-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:510:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>(rhs.blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false>, blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false, false, false, false>::rhs_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h: In instantiation of 'void blaze::assign(DenseMatrix<MT, SO2>&, const DMatTDMatMultExpr< <template-parameter-1-1>, <template-parameter-1-2>, <anonymous>, <anonymous>, <anonymous>, <anonymous> >&) [with MT = Submatrix<CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>; bool SO = true; MT1 = DMatTransExpr<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false>; MT2 = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>; bool SF = false; bool HF = false; bool LF = false; bool UF = false]':
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:305:72: required from 'blaze::smpAssign<CustomMatrix<double, blaze::aligned, blaze::padded, true>, true, DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>(Matrix<CustomMatrix<double, blaze::aligned, blaze::padded, true>, true>&, const Matrix<DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>&)::<lambda(auto:12&, const auto:13&)> [with auto:12 = blaze::Submatrix<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>; auto:13 = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false>, blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false, false, false, false>]'
305 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:155:12: required from 'void blaze::openmpAssign(DenseMatrix<MT1, SO1>&, const DenseMatrix<MT2, SO2>&, OP) [with MT1 = CustomMatrix<double, blaze::aligned, blaze::padded, true>; bool SO1 = true; MT2 = DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; OP = smpAssign<CustomMatrix<double, blaze::aligned, blaze::padded, true>, true, DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>(Matrix<CustomMatrix<double, blaze::aligned, blaze::padded, true>, true>&, const Matrix<DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>&)::<lambda(auto:12&, const auto:13&)>]'
155 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:305:22: required from 'blaze::EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> blaze::smpAssign(Matrix<MT, SO>&, const Matrix<MT, SO>&) [with MT1 = CustomMatrix<double, blaze::aligned, blaze::padded, true>; bool SO1 = true; MT2 = DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> = void]'
305 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomMatrix.h:4656:16: required from 'blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>& blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>::operator=(const blaze::Matrix<MT, SO2>&) [with MT = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO = false; Type = double; blaze::AlignmentFlag AF = blaze::aligned; blaze::PaddingFlag PF = blaze::padded; Tag = blaze::GroupTag<0>; RT = blaze::DynamicMatrix<double, true, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
4656 | smpAssign( *this, *rhs );
| ~~~~~~~~~^~~~~~~~~~~~~~~
fastLm.cpp:77:0: required from here
77 | XTXinv = blaze::trans(X) * X;
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:510:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
510 | RT B( serial( rhs.rhs_ ) ); // Evaluation of the right-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:510:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>(rhs.blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false>, blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false, false, false, false>::rhs_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>::operator Operand()'
In file included from ../inst/include/blaze/math/DenseMatrix.h:79:
../inst/include/blaze/math/expressions/DMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const DMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; MT = DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>; VT = CustomVector<double, blaze::aligned, blaze::padded>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:280:16: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
280 | assign( *lhs, *rhs );
| ~~~~~~^~~~~~~~~~~~~~
../inst/include/blaze/math/dense/DynamicVector.h:890:13: required from 'blaze::DynamicVector<Type, TF, Alloc, Tag>::DynamicVector(const blaze::Vector<VT2, TF>&) [with VT = blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> >; Type = double; bool TF = false; Alloc = blaze::AlignedAllocator<double>; Tag = blaze::GroupTag<0>]'
890 | smpAssign( *this, *v );
| ~~~~~~~~~^~~~~~~~~~~~~
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:2303:10: required from 'blaze::EnableIf_t<((bool)UseSMPAssign_v<VT1>)> blaze::smpAssign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; MT = CustomMatrix<double, blaze::aligned, blaze::padded, true>; VT = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; EnableIf_t<((bool)UseSMPAssign_v<VT1>)> = void]'
2303 | RT x( rhs.vec_ ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/dense/CustomVector.h:3837:16: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> > >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3837 | smpAssign( *this, *rhs );
| ~~~~~~~~~^~~~~~~~~~~~~~~
fastLm.cpp:47:0: required from here
47 | coef = R * blaze::trans(Q) * y;
../inst/include/blaze/math/expressions/DMatDVecMultExpr.h:423:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
423 | LT A( serial( rhs.mat_ ) ); // Evaluation of the left-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/DMatDVecMultExpr.h:423:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, false>(rhs.blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> >::mat_).blaze::DMatSerialExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, false>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>; MT = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>; VT = Subvector<const DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::aligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<CustomVector<double, blaze::aligned, blaze::padded>, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>(Vector<CustomVector<double, blaze::aligned, blaze::padded>, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>; auto:2 = blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:129:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >; bool TF2 = false; OP = smpAssign<CustomVector<double, blaze::aligned, blaze::padded>, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>(Vector<CustomVector<double, blaze::aligned, blaze::padded>, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>&)::<lambda(auto:1&, const auto:2&)>]'
129 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:2310:16: required from 'blaze::EnableIf_t<((bool)UseSMPAssign_v<VT1>)> blaze::smpAssign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; MT = CustomMatrix<double, blaze::aligned, blaze::padded, true>; VT = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; EnableIf_t<((bool)UseSMPAssign_v<VT1>)> = void]'
2310 | smpAssign( *lhs, A * x );
| ~~~~~~~~~^~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomVector.h:3837:16: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> > >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3837 | smpAssign( *this, *rhs );
| ~~~~~~~~~^~~~~~~~~~~~~~~
fastLm.cpp:47:0: required from here
47 | coef = R * blaze::trans(Q) * y;
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | LT A( serial( rhs.mat_ ) ); // Evaluation of the left-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true> >::mat_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
425 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::aligned, false, true>, false>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true>, false>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>; MT = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>; VT = Subvector<const DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::unaligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<CustomVector<double, blaze::aligned, blaze::padded>, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>(Vector<CustomVector<double, blaze::aligned, blaze::padded>, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>; auto:2 = blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:134:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >; bool TF2 = false; OP = smpAssign<CustomVector<double, blaze::aligned, blaze::padded>, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>(Vector<CustomVector<double, blaze::aligned, blaze::padded>, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>&)::<lambda(auto:1&, const auto:2&)>]'
134 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:2310:16: required from 'blaze::EnableIf_t<((bool)UseSMPAssign_v<VT1>)> blaze::smpAssign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; MT = CustomMatrix<double, blaze::aligned, blaze::padded, true>; VT = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; EnableIf_t<((bool)UseSMPAssign_v<VT1>)> = void]'
2310 | smpAssign( *lhs, A * x );
| ~~~~~~~~~^~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomVector.h:3837:16: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> > >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3837 | smpAssign( *this, *rhs );
| ~~~~~~~~~^~~~~~~~~~~~~~~
fastLm.cpp:47:0: required from here
47 | coef = R * blaze::trans(Q) * y;
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | LT A( serial( rhs.mat_ ) ); // Evaluation of the left-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true> >::mat_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
425 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::unaligned, false, true>, false>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true>, false>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>; MT = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>; VT = Subvector<const DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::aligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<CustomVector<double, blaze::aligned, blaze::padded>, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>(Vector<CustomVector<double, blaze::aligned, blaze::padded>, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>; auto:2 = blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:139:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >; bool TF2 = false; OP = smpAssign<CustomVector<double, blaze::aligned, blaze::padded>, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>(Vector<CustomVector<double, blaze::aligned, blaze::padded>, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>&)::<lambda(auto:1&, const auto:2&)>]'
139 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:2310:16: required from 'blaze::EnableIf_t<((bool)UseSMPAssign_v<VT1>)> blaze::smpAssign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; MT = CustomMatrix<double, blaze::aligned, blaze::padded, true>; VT = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; EnableIf_t<((bool)UseSMPAssign_v<VT1>)> = void]'
2310 | smpAssign( *lhs, A * x );
| ~~~~~~~~~^~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomVector.h:3837:16: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> > >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3837 | smpAssign( *this, *rhs );
| ~~~~~~~~~^~~~~~~~~~~~~~~
fastLm.cpp:47:0: required from here
47 | coef = R * blaze::trans(Q) * y;
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | LT A( serial( rhs.mat_ ) ); // Evaluation of the left-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true> >::mat_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
425 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::aligned, false, true>, false>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true>, false>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>; MT = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>; VT = Subvector<const DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::unaligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<CustomVector<double, blaze::aligned, blaze::padded>, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>(Vector<CustomVector<double, blaze::aligned, blaze::padded>, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>; auto:2 = blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:144:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >; bool TF2 = false; OP = smpAssign<CustomVector<double, blaze::aligned, blaze::padded>, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>(Vector<CustomVector<double, blaze::aligned, blaze::padded>, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>&)::<lambda(auto:1&, const auto:2&)>]'
144 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:2310:16: required from 'blaze::EnableIf_t<((bool)UseSMPAssign_v<VT1>)> blaze::smpAssign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; MT = CustomMatrix<double, blaze::aligned, blaze::padded, true>; VT = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; EnableIf_t<((bool)UseSMPAssign_v<VT1>)> = void]'
2310 | smpAssign( *lhs, A * x );
| ~~~~~~~~~^~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomVector.h:3837:16: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> > >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3837 | smpAssign( *this, *rhs );
| ~~~~~~~~~^~~~~~~~~~~~~~~
fastLm.cpp:47:0: required from here
47 | coef = R * blaze::trans(Q) * y;
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | LT A( serial( rhs.mat_ ) ); // Evaluation of the left-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true> >::mat_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
425 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::unaligned, false, true>, false>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true>, false>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::aligned, false, true>; MT = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>; VT = Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true>; auto:2 = blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:129:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; OP = smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)>]'
129 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/DynamicVector.h:890:13: required from 'blaze::DynamicVector<Type, TF, Alloc, Tag>::DynamicVector(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::CustomVector<double, blaze::aligned, blaze::padded> >; Type = double; bool TF = false; Alloc = blaze::AlignedAllocator<double>; Tag = blaze::GroupTag<0>]'
890 | smpAssign( *this, *v );
| ~~~~~~~~~^~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomVector.h:3831:30: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::CustomVector<double, blaze::aligned, blaze::padded> >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3831 | const ResultType_t<VT> tmp( *rhs );
| ^~~
fastLm.cpp:48:0: required from here
48 | fitted = X * coef;
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | LT A( serial( rhs.mat_ ) ); // Evaluation of the left-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true> >::mat_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
425 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>, false>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>, false>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::aligned, false, true>; MT = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>; VT = Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true>; auto:2 = blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:134:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; OP = smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)>]'
134 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/DynamicVector.h:890:13: required from 'blaze::DynamicVector<Type, TF, Alloc, Tag>::DynamicVector(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::CustomVector<double, blaze::aligned, blaze::padded> >; Type = double; bool TF = false; Alloc = blaze::AlignedAllocator<double>; Tag = blaze::GroupTag<0>]'
890 | smpAssign( *this, *v );
| ~~~~~~~~~^~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomVector.h:3831:30: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::CustomVector<double, blaze::aligned, blaze::padded> >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3831 | const ResultType_t<VT> tmp( *rhs );
| ^~~
fastLm.cpp:48:0: required from here
48 | fitted = X * coef;
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | LT A( serial( rhs.mat_ ) ); // Evaluation of the left-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true> >::mat_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
425 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>, false>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>, false>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::unaligned, false, true>; MT = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>; VT = Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true>; auto:2 = blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:139:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; OP = smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)>]'
139 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/DynamicVector.h:890:13: required from 'blaze::DynamicVector<Type, TF, Alloc, Tag>::DynamicVector(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::CustomVector<double, blaze::aligned, blaze::padded> >; Type = double; bool TF = false; Alloc = blaze::AlignedAllocator<double>; Tag = blaze::GroupTag<0>]'
890 | smpAssign( *this, *v );
| ~~~~~~~~~^~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomVector.h:3831:30: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::CustomVector<double, blaze::aligned, blaze::padded> >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3831 | const ResultType_t<VT> tmp( *rhs );
| ^~~
fastLm.cpp:48:0: required from here
48 | fitted = X * coef;
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | LT A( serial( rhs.mat_ ) ); // Evaluation of the left-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true> >::mat_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
425 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>, false>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>, false>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::unaligned, false, true>; MT = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>; VT = Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true>; auto:2 = blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:144:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; OP = smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)>]'
144 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/DynamicVector.h:890:13: required from 'blaze::DynamicVector<Type, TF, Alloc, Tag>::DynamicVector(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::CustomVector<double, blaze::aligned, blaze::padded> >; Type = double; bool TF = false; Alloc = blaze::AlignedAllocator<double>; Tag = blaze::GroupTag<0>]'
890 | smpAssign( *this, *v );
| ~~~~~~~~~^~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomVector.h:3831:30: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::CustomVector<double, blaze::aligned, blaze::padded> >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3831 | const ResultType_t<VT> tmp( *rhs );
| ^~~
fastLm.cpp:48:0: required from here
48 | fitted = X * coef;
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | LT A( serial( rhs.mat_ ) ); // Evaluation of the left-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true> >::mat_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
425 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>, false>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>, false>::operator Operand()'
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h: In instantiation of 'void blaze::assign(DenseMatrix<MT, SO2>&, const DMatTDMatMultExpr< <template-parameter-1-1>, <template-parameter-1-2>, <anonymous>, <anonymous>, <anonymous>, <anonymous> >&) [with MT = Submatrix<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::aligned, false, true>; bool SO = false; MT1 = DMatTransExpr<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false>; MT2 = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>; bool SF = false; bool HF = false; bool LF = false; bool UF = false]':
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:305:72: required from 'blaze::smpAssign<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, false, DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>(Matrix<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Matrix<DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>&)::<lambda(auto:12&, const auto:13&)> [with auto:12 = blaze::Submatrix<blaze::DynamicMatrix<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true>; auto:13 = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false>, blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false, false, false, false>]'
305 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:140:12: required from 'void blaze::openmpAssign(DenseMatrix<MT1, SO1>&, const DenseMatrix<MT2, SO2>&, OP) [with MT1 = DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >; bool SO1 = false; MT2 = DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; OP = smpAssign<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, false, DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>(Matrix<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Matrix<DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>&)::<lambda(auto:12&, const auto:13&)>]'
140 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:305:22: required from 'blaze::EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> blaze::smpAssign(Matrix<MT, SO>&, const Matrix<MT, SO>&) [with MT1 = DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >; bool SO1 = false; MT2 = DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> = void]'
305 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/DynamicMatrix.h:1000:13: required from 'blaze::DynamicMatrix<Type, SO, Alloc, Tag>::DynamicMatrix(const blaze::Matrix<MT, SO2>&) [with MT = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; Type = double; bool SO = false; Alloc = blaze::AlignedAllocator<double>; Tag = blaze::GroupTag<0>]'
1000 | smpAssign( *this, *m );
| ~~~~~~~~~^~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomMatrix.h:4650:30: required from 'blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>& blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>::operator=(const blaze::Matrix<MT, SO2>&) [with MT = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO = false; Type = double; blaze::AlignmentFlag AF = blaze::aligned; blaze::PaddingFlag PF = blaze::padded; Tag = blaze::GroupTag<0>; RT = blaze::DynamicMatrix<double, true, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
4650 | const ResultType_t<MT> tmp( *rhs );
| ^~~
fastLm.cpp:77:0: required from here
77 | XTXinv = blaze::trans(X) * X;
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:510:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
510 | RT B( serial( rhs.rhs_ ) ); // Evaluation of the right-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:510:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>(rhs.blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false>, blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false, false, false, false>::rhs_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h: In instantiation of 'void blaze::assign(DenseMatrix<MT, SO2>&, const DMatTDMatMultExpr< <template-parameter-1-1>, <template-parameter-1-2>, <anonymous>, <anonymous>, <anonymous>, <anonymous> >&) [with MT = Submatrix<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::aligned, false, true>; bool SO = false; MT1 = DMatTransExpr<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false>; MT2 = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>; bool SF = false; bool HF = false; bool LF = false; bool UF = false]':
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:305:72: required from 'blaze::smpAssign<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, false, DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>(Matrix<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Matrix<DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>&)::<lambda(auto:12&, const auto:13&)> [with auto:12 = blaze::Submatrix<blaze::DynamicMatrix<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true>; auto:13 = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false>, blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false, false, false, false>]'
305 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:145:12: required from 'void blaze::openmpAssign(DenseMatrix<MT1, SO1>&, const DenseMatrix<MT2, SO2>&, OP) [with MT1 = DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >; bool SO1 = false; MT2 = DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; OP = smpAssign<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, false, DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>(Matrix<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Matrix<DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>&)::<lambda(auto:12&, const auto:13&)>]'
145 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:305:22: required from 'blaze::EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> blaze::smpAssign(Matrix<MT, SO>&, const Matrix<MT, SO>&) [with MT1 = DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >; bool SO1 = false; MT2 = DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> = void]'
305 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/DynamicMatrix.h:1000:13: required from 'blaze::DynamicMatrix<Type, SO, Alloc, Tag>::DynamicMatrix(const blaze::Matrix<MT, SO2>&) [with MT = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; Type = double; bool SO = false; Alloc = blaze::AlignedAllocator<double>; Tag = blaze::GroupTag<0>]'
1000 | smpAssign( *this, *m );
| ~~~~~~~~~^~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomMatrix.h:4650:30: required from 'blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>& blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>::operator=(const blaze::Matrix<MT, SO2>&) [with MT = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO = false; Type = double; blaze::AlignmentFlag AF = blaze::aligned; blaze::PaddingFlag PF = blaze::padded; Tag = blaze::GroupTag<0>; RT = blaze::DynamicMatrix<double, true, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
4650 | const ResultType_t<MT> tmp( *rhs );
| ^~~
fastLm.cpp:77:0: required from here
77 | XTXinv = blaze::trans(X) * X;
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:510:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
510 | RT B( serial( rhs.rhs_ ) ); // Evaluation of the right-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:510:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>(rhs.blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false>, blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false, false, false, false>::rhs_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h: In instantiation of 'void blaze::assign(DenseMatrix<MT, SO2>&, const DMatTDMatMultExpr< <template-parameter-1-1>, <template-parameter-1-2>, <anonymous>, <anonymous>, <anonymous>, <anonymous> >&) [with MT = Submatrix<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::unaligned, false, true>; bool SO = false; MT1 = DMatTransExpr<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false>; MT2 = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>; bool SF = false; bool HF = false; bool LF = false; bool UF = false]':
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:305:72: required from 'blaze::smpAssign<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, false, DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>(Matrix<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Matrix<DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>&)::<lambda(auto:12&, const auto:13&)> [with auto:12 = blaze::Submatrix<blaze::DynamicMatrix<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true>; auto:13 = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false>, blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false, false, false, false>]'
305 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:150:12: required from 'void blaze::openmpAssign(DenseMatrix<MT1, SO1>&, const DenseMatrix<MT2, SO2>&, OP) [with MT1 = DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >; bool SO1 = false; MT2 = DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; OP = smpAssign<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, false, DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>(Matrix<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Matrix<DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>&)::<lambda(auto:12&, const auto:13&)>]'
150 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:305:22: required from 'blaze::EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> blaze::smpAssign(Matrix<MT, SO>&, const Matrix<MT, SO>&) [with MT1 = DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >; bool SO1 = false; MT2 = DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> = void]'
305 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/DynamicMatrix.h:1000:13: required from 'blaze::DynamicMatrix<Type, SO, Alloc, Tag>::DynamicMatrix(const blaze::Matrix<MT, SO2>&) [with MT = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; Type = double; bool SO = false; Alloc = blaze::AlignedAllocator<double>; Tag = blaze::GroupTag<0>]'
1000 | smpAssign( *this, *m );
| ~~~~~~~~~^~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomMatrix.h:4650:30: required from 'blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>& blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>::operator=(const blaze::Matrix<MT, SO2>&) [with MT = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO = false; Type = double; blaze::AlignmentFlag AF = blaze::aligned; blaze::PaddingFlag PF = blaze::padded; Tag = blaze::GroupTag<0>; RT = blaze::DynamicMatrix<double, true, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
4650 | const ResultType_t<MT> tmp( *rhs );
| ^~~
fastLm.cpp:77:0: required from here
77 | XTXinv = blaze::trans(X) * X;
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:510:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
510 | RT B( serial( rhs.rhs_ ) ); // Evaluation of the right-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:510:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>(rhs.blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false>, blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false, false, false, false>::rhs_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h: In instantiation of 'void blaze::assign(DenseMatrix<MT, SO2>&, const DMatTDMatMultExpr< <template-parameter-1-1>, <template-parameter-1-2>, <anonymous>, <anonymous>, <anonymous>, <anonymous> >&) [with MT = Submatrix<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::unaligned, false, true>; bool SO = false; MT1 = DMatTransExpr<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false>; MT2 = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>; bool SF = false; bool HF = false; bool LF = false; bool UF = false]':
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:305:72: required from 'blaze::smpAssign<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, false, DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>(Matrix<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Matrix<DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>&)::<lambda(auto:12&, const auto:13&)> [with auto:12 = blaze::Submatrix<blaze::DynamicMatrix<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true>; auto:13 = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false>, blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false, false, false, false>]'
305 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:155:12: required from 'void blaze::openmpAssign(DenseMatrix<MT1, SO1>&, const DenseMatrix<MT2, SO2>&, OP) [with MT1 = DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >; bool SO1 = false; MT2 = DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; OP = smpAssign<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, false, DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>(Matrix<DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Matrix<DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>, false>&)::<lambda(auto:12&, const auto:13&)>]'
155 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseMatrix.h:305:22: required from 'blaze::EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> blaze::smpAssign(Matrix<MT, SO>&, const Matrix<MT, SO>&) [with MT1 = DynamicMatrix<double, false, AlignedAllocator<double>, GroupTag<0> >; bool SO1 = false; MT2 = DMatTDMatMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; EnableIf_t<((bool)((IsDenseMatrix_v<MT1> && IsSMPAssignable_v<MT1>) && IsSMPAssignable_v<MT2>))> = void]'
305 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/DynamicMatrix.h:1000:13: required from 'blaze::DynamicMatrix<Type, SO, Alloc, Tag>::DynamicMatrix(const blaze::Matrix<MT, SO2>&) [with MT = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO2 = false; Type = double; bool SO = false; Alloc = blaze::AlignedAllocator<double>; Tag = blaze::GroupTag<0>]'
1000 | smpAssign( *this, *m );
| ~~~~~~~~~^~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomMatrix.h:4650:30: required from 'blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>& blaze::CustomMatrix<Type, AF, PF, true, Tag, RT>::operator=(const blaze::Matrix<MT, SO2>&) [with MT = blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false, false, false, false>; bool SO = false; Type = double; blaze::AlignmentFlag AF = blaze::aligned; blaze::PaddingFlag PF = blaze::padded; Tag = blaze::GroupTag<0>; RT = blaze::DynamicMatrix<double, true, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
4650 | const ResultType_t<MT> tmp( *rhs );
| ^~~
fastLm.cpp:77:0: required from here
77 | XTXinv = blaze::trans(X) * X;
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:510:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
510 | RT B( serial( rhs.rhs_ ) ); // Evaluation of the right-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/DMatTDMatMultExpr.h:510:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>(rhs.blaze::DMatTDMatMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false>, blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false, false, false, false>::rhs_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::aligned, false, true>; MT = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>; VT = Subvector<const DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::aligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true>; auto:2 = blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:129:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >; bool TF2 = false; OP = smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>&)::<lambda(auto:1&, const auto:2&)>]'
129 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:2310:16: required from 'blaze::EnableIf_t<((bool)UseSMPAssign_v<VT1>)> blaze::smpAssign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; MT = CustomMatrix<double, blaze::aligned, blaze::padded, true>; VT = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; EnableIf_t<((bool)UseSMPAssign_v<VT1>)> = void]'
2310 | smpAssign( *lhs, A * x );
| ~~~~~~~~~^~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/DynamicVector.h:890:13: required from 'blaze::DynamicVector<Type, TF, Alloc, Tag>::DynamicVector(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> > >; Type = double; bool TF = false; Alloc = blaze::AlignedAllocator<double>; Tag = blaze::GroupTag<0>]'
890 | smpAssign( *this, *v );
| ~~~~~~~~~^~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomVector.h:3831:30: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> > >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3831 | const ResultType_t<VT> tmp( *rhs );
| ^~~
fastLm.cpp:47:0: required from here
47 | coef = R * blaze::trans(Q) * y;
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | LT A( serial( rhs.mat_ ) ); // Evaluation of the left-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true> >::mat_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
425 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::aligned, false, true>, false>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true>, false>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::aligned, false, true>; MT = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>; VT = Subvector<const DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::unaligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true>; auto:2 = blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:134:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >; bool TF2 = false; OP = smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>&)::<lambda(auto:1&, const auto:2&)>]'
134 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:2310:16: required from 'blaze::EnableIf_t<((bool)UseSMPAssign_v<VT1>)> blaze::smpAssign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; MT = CustomMatrix<double, blaze::aligned, blaze::padded, true>; VT = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; EnableIf_t<((bool)UseSMPAssign_v<VT1>)> = void]'
2310 | smpAssign( *lhs, A * x );
| ~~~~~~~~~^~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/DynamicVector.h:890:13: required from 'blaze::DynamicVector<Type, TF, Alloc, Tag>::DynamicVector(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> > >; Type = double; bool TF = false; Alloc = blaze::AlignedAllocator<double>; Tag = blaze::GroupTag<0>]'
890 | smpAssign( *this, *v );
| ~~~~~~~~~^~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomVector.h:3831:30: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> > >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3831 | const ResultType_t<VT> tmp( *rhs );
| ^~~
fastLm.cpp:47:0: required from here
47 | coef = R * blaze::trans(Q) * y;
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | LT A( serial( rhs.mat_ ) ); // Evaluation of the left-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true> >::mat_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
425 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::unaligned, false, true>, false>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true>, false>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::unaligned, false, true>; MT = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>; VT = Subvector<const DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::aligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true>; auto:2 = blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:139:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >; bool TF2 = false; OP = smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>&)::<lambda(auto:1&, const auto:2&)>]'
139 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:2310:16: required from 'blaze::EnableIf_t<((bool)UseSMPAssign_v<VT1>)> blaze::smpAssign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; MT = CustomMatrix<double, blaze::aligned, blaze::padded, true>; VT = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; EnableIf_t<((bool)UseSMPAssign_v<VT1>)> = void]'
2310 | smpAssign( *lhs, A * x );
| ~~~~~~~~~^~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/DynamicVector.h:890:13: required from 'blaze::DynamicVector<Type, TF, Alloc, Tag>::DynamicVector(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> > >; Type = double; bool TF = false; Alloc = blaze::AlignedAllocator<double>; Tag = blaze::GroupTag<0>]'
890 | smpAssign( *this, *v );
| ~~~~~~~~~^~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomVector.h:3831:30: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> > >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3831 | const ResultType_t<VT> tmp( *rhs );
| ^~~
fastLm.cpp:47:0: required from here
47 | coef = R * blaze::trans(Q) * y;
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | LT A( serial( rhs.mat_ ) ); // Evaluation of the left-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true> >::mat_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
425 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::aligned, false, true>, false>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true>, false>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::unaligned, false, true>; MT = Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>; VT = Subvector<const DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::unaligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true>; auto:2 = blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:144:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >; bool TF2 = false; OP = smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >, false>&)::<lambda(auto:1&, const auto:2&)>]'
144 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = TDMatDVecMultExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> > >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:2310:16: required from 'blaze::EnableIf_t<((bool)UseSMPAssign_v<VT1>)> blaze::smpAssign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; MT = CustomMatrix<double, blaze::aligned, blaze::padded, true>; VT = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; EnableIf_t<((bool)UseSMPAssign_v<VT1>)> = void]'
2310 | smpAssign( *lhs, A * x );
| ~~~~~~~~~^~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/DynamicVector.h:890:13: required from 'blaze::DynamicVector<Type, TF, Alloc, Tag>::DynamicVector(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> > >; Type = double; bool TF = false; Alloc = blaze::AlignedAllocator<double>; Tag = blaze::GroupTag<0>]'
890 | smpAssign( *this, *v );
| ~~~~~~~~~^~~~~~~~~~~~~
../inst/include/blaze/math/dense/CustomVector.h:3831:30: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> > >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3831 | const ResultType_t<VT> tmp( *rhs );
| ^~~
fastLm.cpp:47:0: required from here
47 | coef = R * blaze::trans(Q) * y;
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | LT A( serial( rhs.mat_ ) ); // Evaluation of the left-hand side dense matrix operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true> >::mat_).blaze::DMatSerialExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, true>::operator Operand()'
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
425 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:425:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::unaligned, false, true>, false>(rhs.blaze::TDMatDVecMultExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true>, false>::operator Operand()'
../inst/include/blaze/math/expressions/DMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const DMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::aligned, false, true>; MT = DMatTransExpr<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false>; VT = Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true>; auto:2 = blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:129:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; OP = smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)>]'
129 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/DynamicVector.h:890:13: required from 'blaze::DynamicVector<Type, TF, Alloc, Tag>::DynamicVector(const blaze::Vector<VT2, TF>&) [with VT = blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> >; Type = double; bool TF = false; Alloc = blaze::AlignedAllocator<double>; Tag = blaze::GroupTag<0>]'
890 | smpAssign( *this, *v );
| ~~~~~~~~~^~~~~~~~~~~~~
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:2303:10: required from 'blaze::EnableIf_t<((bool)UseSMPAssign_v<VT1>)> blaze::smpAssign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; MT = CustomMatrix<double, blaze::aligned, blaze::padded, true>; VT = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; EnableIf_t<((bool)UseSMPAssign_v<VT1>)> = void]'
2303 | RT x( rhs.vec_ ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/dense/CustomVector.h:3837:16: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> > >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3837 | smpAssign( *this, *rhs );
| ~~~~~~~~~^~~~~~~~~~~~~~~
fastLm.cpp:47:0: required from here
47 | coef = R * blaze::trans(Q) * y;
../inst/include/blaze/math/expressions/DMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/DMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>, false>(rhs.blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>, false>::operator Operand()'
../inst/include/blaze/math/expressions/DMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const DMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::aligned, false, true>; MT = DMatTransExpr<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false>; VT = Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::aligned, false, true>; auto:2 = blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:134:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; OP = smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)>]'
134 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/DynamicVector.h:890:13: required from 'blaze::DynamicVector<Type, TF, Alloc, Tag>::DynamicVector(const blaze::Vector<VT2, TF>&) [with VT = blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> >; Type = double; bool TF = false; Alloc = blaze::AlignedAllocator<double>; Tag = blaze::GroupTag<0>]'
890 | smpAssign( *this, *v );
| ~~~~~~~~~^~~~~~~~~~~~~
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:2303:10: required from 'blaze::EnableIf_t<((bool)UseSMPAssign_v<VT1>)> blaze::smpAssign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; MT = CustomMatrix<double, blaze::aligned, blaze::padded, true>; VT = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; EnableIf_t<((bool)UseSMPAssign_v<VT1>)> = void]'
2303 | RT x( rhs.vec_ ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/dense/CustomVector.h:3837:16: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> > >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3837 | smpAssign( *this, *rhs );
| ~~~~~~~~~^~~~~~~~~~~~~~~
fastLm.cpp:47:0: required from here
47 | coef = R * blaze::trans(Q) * y;
../inst/include/blaze/math/expressions/DMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/DMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>, false>(rhs.blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>, false>::operator Operand()'
../inst/include/blaze/math/expressions/DMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const DMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::unaligned, false, true>; MT = DMatTransExpr<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false>; VT = Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true>; auto:2 = blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:139:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; OP = smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)>]'
139 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/DynamicVector.h:890:13: required from 'blaze::DynamicVector<Type, TF, Alloc, Tag>::DynamicVector(const blaze::Vector<VT2, TF>&) [with VT = blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> >; Type = double; bool TF = false; Alloc = blaze::AlignedAllocator<double>; Tag = blaze::GroupTag<0>]'
890 | smpAssign( *this, *v );
| ~~~~~~~~~^~~~~~~~~~~~~
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:2303:10: required from 'blaze::EnableIf_t<((bool)UseSMPAssign_v<VT1>)> blaze::smpAssign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; MT = CustomMatrix<double, blaze::aligned, blaze::padded, true>; VT = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; EnableIf_t<((bool)UseSMPAssign_v<VT1>)> = void]'
2303 | RT x( rhs.vec_ ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/dense/CustomVector.h:3837:16: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> > >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3837 | smpAssign( *this, *rhs );
| ~~~~~~~~~^~~~~~~~~~~~~~~
fastLm.cpp:47:0: required from here
47 | coef = R * blaze::trans(Q) * y;
../inst/include/blaze/math/expressions/DMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/DMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>, false>(rhs.blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::aligned, true, true>, false>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::aligned, false, true>, false>::operator Operand()'
../inst/include/blaze/math/expressions/DMatDVecMultExpr.h: In instantiation of 'void blaze::assign(DenseVector<VT, false>&, const DMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = Subvector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, blaze::unaligned, false, true>; MT = DMatTransExpr<Submatrix<const CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false>; VT = Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>]':
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:72: required from 'blaze::smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)> [with auto:1 = blaze::Subvector<blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >, blaze::unaligned, false, true>; auto:2 = blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true> >]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~^~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:144:12: required from 'void blaze::openmpAssign(DenseVector<VT, TF>&, const DenseVector<VT, TF>&, OP) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; OP = smpAssign<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false, DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >, false>(Vector<DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >, false>&, const Vector<DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >, false>&)::<lambda(auto:1&, const auto:2&)>]'
144 | op( target, source );
| ~~^~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/smp/openmp/DenseVector.h:284:22: required from 'blaze::EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> blaze::smpAssign(Vector<VT, TF>&, const Vector<VT, TF>&) [with VT1 = DynamicVector<double, false, AlignedAllocator<double>, GroupTag<0> >; bool TF1 = false; VT2 = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; bool TF2 = false; EnableIf_t<((bool)((IsDenseVector_v<VT1> && IsSMPAssignable_v<VT1>) && IsSMPAssignable_v<VT2>))> = void]'
284 | openmpAssign( *lhs, *rhs, []( auto& a, const auto& b ){ assign( a, b ); } );
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../inst/include/blaze/math/dense/DynamicVector.h:890:13: required from 'blaze::DynamicVector<Type, TF, Alloc, Tag>::DynamicVector(const blaze::Vector<VT2, TF>&) [with VT = blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> >; Type = double; bool TF = false; Alloc = blaze::AlignedAllocator<double>; Tag = blaze::GroupTag<0>]'
890 | smpAssign( *this, *v );
| ~~~~~~~~~^~~~~~~~~~~~~
../inst/include/blaze/math/expressions/TDMatDVecMultExpr.h:2303:10: required from 'blaze::EnableIf_t<((bool)UseSMPAssign_v<VT1>)> blaze::smpAssign(DenseVector<VT, false>&, const TDMatDVecMultExpr< <template-parameter-1-1>, <template-parameter-1-2> >&) [with VT1 = CustomVector<double, blaze::aligned, blaze::padded>; MT = CustomMatrix<double, blaze::aligned, blaze::padded, true>; VT = DMatDVecMultExpr<DMatTransExpr<CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, CustomVector<double, blaze::aligned, blaze::padded> >; EnableIf_t<((bool)UseSMPAssign_v<VT1>)> = void]'
2303 | RT x( rhs.vec_ ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/dense/CustomVector.h:3837:16: required from 'blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>& blaze::CustomVector<Type, AF, blaze::padded, TF, Tag, RT>::operator=(const blaze::Vector<VT2, TF>&) [with VT = blaze::TDMatDVecMultExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, false>, blaze::CustomVector<double, blaze::aligned, blaze::padded> > >; Type = double; blaze::AlignmentFlag AF = blaze::aligned; bool TF = false; Tag = blaze::GroupTag<0>; RT = blaze::DynamicVector<double, false, blaze::AlignedAllocator<double>, blaze::GroupTag<0> >]'
3837 | smpAssign( *this, *rhs );
| ~~~~~~~~~^~~~~~~~~~~~~~~
fastLm.cpp:47:0: required from here
47 | coef = R * blaze::trans(Q) * y;
../inst/include/blaze/math/expressions/DMatDVecMultExpr.h:424:10: warning: possibly dangling reference to a temporary [-Wdangling-reference]
424 | RT x( serial( rhs.vec_ ) ); // Evaluation of the right-hand side dense vector operand
| ^
../inst/include/blaze/math/expressions/DMatDVecMultExpr.h:424:10: note: the temporary was destroyed at the end of the full expression 'blaze::serial<Subvector<const CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>, false>(rhs.blaze::DMatDVecMultExpr<blaze::DMatTransExpr<blaze::Submatrix<const blaze::CustomMatrix<double, blaze::aligned, blaze::padded, true>, blaze::unaligned, true, true>, false>, blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true> >::vec_).blaze::DVecSerialExpr<blaze::Subvector<const blaze::CustomVector<double, blaze::aligned, blaze::padded>, blaze::unaligned, false, true>, false>::operator Operand()'
gcc -I"D:/RCompile/recent/R/include" -DNDEBUG -I'D:/RCompile/CRANpkg/lib/4.6/Rcpp/include' -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include" -pedantic -Wstrict-prototypes -O2 -Wall -std=gnu2x -mfpmath=sse -msse2 -mstackrealign -c registerDynamicSymbols.c -o registerDynamicSymbols.o
g++ -std=gnu++17 -shared -s -static-libgcc -o RcppBlaze.dll tmp.def RcppBlaze.o RcppExports.o fastLm.o registerDynamicSymbols.o -LD:/RCompile/recent/R/bin/x64 -lRlapack -LD:/RCompile/recent/R/bin/x64 -lRblas -lgfortran -lquadmath -fopenmp -Ld:/rtools45/x86_64-w64-mingw32.static.posix/lib/x64 -Ld:/rtools45/x86_64-w64-mingw32.static.posix/lib -LD:/RCompile/recent/R/bin/x64 -lR
make[1]: Leaving directory '/d/temp/2025_10_14_01_50_00_4128/Rtmp0eVulz/R.INSTALL70182855901/RcppBlaze/src'
make[1]: Entering directory '/d/temp/2025_10_14_01_50_00_4128/Rtmp0eVulz/R.INSTALL70182855901/RcppBlaze/src'
make[1]: Leaving directory '/d/temp/2025_10_14_01_50_00_4128/Rtmp0eVulz/R.INSTALL70182855901/RcppBlaze/src'
installing to d:/Rcompile/CRANpkg/lib/4.6/00LOCK-RcppBlaze/00new/RcppBlaze/libs/x64
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* MD5 sums
packaged installation of 'RcppBlaze' as RcppBlaze_1.0.1.zip
* DONE (RcppBlaze)