Dear all,
dealii::BlockSparseMatrix<double> systemMatrix;
auto systemMatrixIteratorEnd = systemMatrix.end(0);
auto systemMatrixIteratorBegin = systemMatrix.begin(0);
if (systemMatrixIteratorBegin != systemMatrixIteratorEnd) std::cout<<"Example"<<std::endl;
Using deal.ii 9.4.0, this results in the compilation error
include/deal.II/lac/matrix_iterator.h:184:20: error: ‘bool dealii::BlockMatrixIterators::Accessor<BlockMatrixType, false>::operator==(const dealii::BlockMatrixIterators::Accessor<BlockMatrixType, false>&) const [with BlockMatrixType = dealii::BlockMatrixBase<dealii::SparseMatrix<double> >]’ is protected within this context
184 | return (accessor == other.accessor);
include/deal.II/lac/block_matrix_base.h:1475:3: note: declared protected here
1475 | Accessor<BlockMatrixType, false>::operator==(const Accessor &a) const
Everything works if BlockSparseMatrix is replaced by SparseMatrix.
Is there anything I miss here?
Best
Simon