id summary reporter owner description type status milestone component version severity resolution keywords cc 1915 Nested matrix products with transposes causes compiler to complain error: invalid application of ‘sizeof’ Leo Singer Gunter "When using ublas, a pair of nested products will cause the compiler to complain if there is a `trans` on any of the operands. For example: {{{ #!cpp using namespace boost::numeric::ublas; matrix A(3,3), B(3,3), C(3,3); prod(prod(A,B),trans(C)); // fails prod(prod(trans(A),B),C); // fails prod(prod(A,trans(B)),C); // fails prod(prod(A,B),C); // OK }}} The compiler produces the following error message: {{{ /opt/local/include/boost/numeric/ublas/matrix_expression.hpp: In function ‘typename boost::numeric::ublas::matrix_matrix_binary_traits::result_type boost::numeric::ublas::prod(const boost::numeric::ublas::matrix_expression&, const boost::numeric::ublas::matrix_expression&) [with E1 = boost::numeric::ublas::matrix_matrix_binary, boost::numeric::ublas::unbounded_array > >, boost::numeric::ublas::matrix, boost::numeric::ublas::unbounded_array > >, boost::numeric::ublas::matrix_matrix_prod >, E2 = boost::numeric::ublas::matrix_unary2, boost::numeric::ublas::unbounded_array > >, boost::numeric::ublas::scalar_identity >]’: bad_multiply.cpp:9: instantiated from here /opt/local/include/boost/numeric/ublas/matrix_expression.hpp:4815: error: invalid application of ‘sizeof’ to incomplete type ‘boost::STATIC_ASSERTION_FAILURE’ }}}" Support Requests assigned To Be Determined uBLAS Boost 1.34.1 Cosmetic ublas trans nested product