Boost logo

Ublas :

Subject: Re: [ublas] broken coordinate_matrix::sort with gcc 4.7 (was: patches for #7297, #7296, #6514, #6511 on trunk - please verify)
From: Gunter Winkler (guwi17_at_[hidden])
Date: 2012-08-28 15:19:44


Am Tuesday 28 August 2012 schrieb sguazt:
> However, the compilation of test_inplace_solve (together with
> test_coordinate_matrix_sort and test_assignment) still fails.
> Here is the output of compiler that I get when I try to compile
> test_inplace_solve (sorry it's very long):

It looks like the new gcc 4.7 breaks the index_triple_array hack (see
storage.hpp). I introduced this class to sort the three parallel arrays
(index1, index2, value) from coordinate matrix without the need to
create a temporary permutation vector. Unfortunately the index triple
(which essentially holds the index and references of the three arrays)
must behave like a reference but is not allowed to be referenced.

see storage.hpp:1844

Looks like this hack does not work with gcc 4.7 any more. Maybe we can
improve coordinate_matrix::sort() somehow to use the zip_iterator. (see

What happens if you remove USE_COORDINATE_MATRIX from the sparse test
set in libs/numeric/ublas/test/Jamfile.v2 ? Then all tests should