diff -up boost_1_54_0/boost/numeric/ublas/detail/matrix_assign.hpp~ boost_1_54_0/boost/numeric/ublas/detail/matrix_assign.hpp --- boost_1_54_0/boost/numeric/ublas/detail/matrix_assign.hpp~ 2010-10-19 00:01:35.000000000 -0700 +++ boost_1_54_0/boost/numeric/ublas/detail/matrix_assign.hpp 2013-07-22 04:33:26.399038120 -0700 @@ -1303,7 +1303,6 @@ namespace detail { void matrix_swap (M &m, matrix_expression &e, packed_proxy_tag, row_major_tag) { typedef F functor_type; // R unnecessary, make_conformant not required - typedef typename M::size_type size_type; typedef typename M::difference_type difference_type; typename M::iterator1 it1 (m.begin1 ()); typename E::iterator1 it1e (e ().begin1 ()); @@ -1329,7 +1328,6 @@ namespace detail { void matrix_swap (M &m, matrix_expression &e, packed_proxy_tag, column_major_tag) { typedef F functor_type; // R unnecessary, make_conformant not required - typedef typename M::size_type size_type; typedef typename M::difference_type difference_type; typename M::iterator2 it2 (m.begin2 ()); typename E::iterator2 it2e (e ().begin2 ()); @@ -1357,7 +1355,6 @@ namespace detail { typedef R conformant_restrict_type; typedef typename M::size_type size_type; typedef typename M::difference_type difference_type; - typedef typename M::value_type value_type; BOOST_UBLAS_CHECK (m.size1 () == e ().size1 (), bad_size ()); BOOST_UBLAS_CHECK (m.size2 () == e ().size2 (), bad_size ()); @@ -1482,7 +1479,6 @@ namespace detail { typedef R conformant_restrict_type; typedef typename M::size_type size_type; typedef typename M::difference_type difference_type; - typedef typename M::value_type value_type; BOOST_UBLAS_CHECK (m.size1 () == e ().size1 (), bad_size ()); BOOST_UBLAS_CHECK (m.size2 () == e ().size2 (), bad_size ()); diff -up boost_1_54_0/boost/numeric/ublas/detail/vector_assign.hpp~ boost_1_54_0/boost/numeric/ublas/detail/vector_assign.hpp --- boost_1_54_0/boost/numeric/ublas/detail/vector_assign.hpp~ 2007-11-25 10:07:19.000000000 -0800 +++ boost_1_54_0/boost/numeric/ublas/detail/vector_assign.hpp 2013-07-22 04:32:21.774650296 -0700 @@ -379,7 +379,6 @@ namespace detail { typedef typename V::size_type size_type; typedef typename V::difference_type difference_type; typedef typename V::value_type value_type; - typedef typename V::reference reference; #if BOOST_UBLAS_TYPE_CHECK vector cv (v.size ()); indexing_vector_assign (cv, v); @@ -513,7 +512,6 @@ namespace detail { typedef F functor_type; typedef typename V::size_type size_type; typedef typename V::difference_type difference_type; - typedef typename V::value_type value_type; detail::make_conformant (v, e); // FIXME should be a seperate restriction for E diff -up boost_1_54_0/boost/numeric/ublas/lu.hpp~ boost_1_54_0/boost/numeric/ublas/lu.hpp --- boost_1_54_0/boost/numeric/ublas/lu.hpp~ 2010-07-04 23:06:24.000000000 -0700 +++ boost_1_54_0/boost/numeric/ublas/lu.hpp 2013-07-22 04:40:06.634440205 -0700 @@ -63,7 +63,6 @@ namespace boost { namespace numeric { na BOOST_UBLAS_INLINE void swap_rows (const PM &pm, MV &mv, vector_tag) { typedef typename PM::size_type size_type; - typedef typename MV::value_type value_type; size_type size = pm.size (); for (size_type i = 0; i < size; ++ i) { @@ -75,7 +74,6 @@ namespace boost { namespace numeric { na BOOST_UBLAS_INLINE void swap_rows (const PM &pm, MV &mv, matrix_tag) { typedef typename PM::size_type size_type; - typedef typename MV::value_type value_type; size_type size = pm.size (); for (size_type i = 0; i < size; ++ i) { diff -up boost_1_54_0/boost/numeric/ublas/operation.hpp~ boost_1_54_0/boost/numeric/ublas/operation.hpp --- boost_1_54_0/boost/numeric/ublas/operation.hpp~ 2007-11-25 10:07:19.000000000 -0800 +++ boost_1_54_0/boost/numeric/ublas/operation.hpp 2013-07-22 04:42:19.436046788 -0700 @@ -129,7 +129,6 @@ namespace boost { namespace numeric { na const vector_expression &e2, V &v, packed_random_access_iterator_tag, row_major_tag) { typedef const E1 expression1_type; - typedef const E2 expression2_type; typedef typename V::size_type size_type; typename expression1_type::const_iterator1 it1 (e1 ().begin1 ()); @@ -159,7 +158,6 @@ namespace boost { namespace numeric { na const vector_expression &e2, V &v, packed_random_access_iterator_tag, column_major_tag) { typedef const E1 expression1_type; - typedef const E2 expression2_type; typedef typename V::size_type size_type; typename expression1_type::const_iterator2 it2 (e1 ().begin2 ()); @@ -188,9 +186,7 @@ namespace boost { namespace numeric { na axpy_prod (const matrix_expression &e1, const vector_expression &e2, V &v, sparse_bidirectional_iterator_tag) { - typedef const E1 expression1_type; typedef const E2 expression2_type; - typedef typename V::size_type size_type; typename expression2_type::const_iterator it (e2 ().begin ()); typename expression2_type::const_iterator it_end (e2 ().end ()); @@ -350,7 +346,6 @@ namespace boost { namespace numeric { na axpy_prod (const vector_expression &e1, const matrix_expression &e2, V &v, packed_random_access_iterator_tag, column_major_tag) { - typedef const E1 expression1_type; typedef const E2 expression2_type; typedef typename V::size_type size_type; @@ -380,7 +375,6 @@ namespace boost { namespace numeric { na axpy_prod (const vector_expression &e1, const matrix_expression &e2, V &v, packed_random_access_iterator_tag, row_major_tag) { - typedef const E1 expression1_type; typedef const E2 expression2_type; typedef typename V::size_type size_type; @@ -411,8 +405,6 @@ namespace boost { namespace numeric { na const matrix_expression &e2, V &v, sparse_bidirectional_iterator_tag) { typedef const E1 expression1_type; - typedef const E2 expression2_type; - typedef typename V::size_type size_type; typename expression1_type::const_iterator it (e1 ().begin ()); typename expression1_type::const_iterator it_end (e1 ().end ()); @@ -501,9 +493,6 @@ namespace boost { namespace numeric { na const matrix_expression &e2, M &m, TRI, dense_proxy_tag, row_major_tag) { - typedef M matrix_type; - typedef const E1 expression1_type; - typedef const E2 expression2_type; typedef typename M::size_type size_type; typedef typename M::value_type value_type; @@ -530,11 +519,9 @@ namespace boost { namespace numeric { na const matrix_expression &e2, M &m, TRI, sparse_proxy_tag, row_major_tag) { - typedef M matrix_type; typedef TRI triangular_restriction; typedef const E1 expression1_type; typedef const E2 expression2_type; - typedef typename M::size_type size_type; typedef typename M::value_type value_type; #if BOOST_UBLAS_TYPE_CHECK @@ -580,9 +567,6 @@ namespace boost { namespace numeric { na const matrix_expression &e2, M &m, TRI, dense_proxy_tag, column_major_tag) { - typedef M matrix_type; - typedef const E1 expression1_type; - typedef const E2 expression2_type; typedef typename M::size_type size_type; typedef typename M::value_type value_type; @@ -609,11 +593,9 @@ namespace boost { namespace numeric { na const matrix_expression &e2, M &m, TRI, sparse_proxy_tag, column_major_tag) { - typedef M matrix_type; typedef TRI triangular_restriction; typedef const E1 expression1_type; typedef const E2 expression2_type; - typedef typename M::size_type size_type; typedef typename M::value_type value_type; #if BOOST_UBLAS_TYPE_CHECK @@ -738,9 +720,6 @@ namespace boost { namespace numeric { na const matrix_expression &e2, M &m, dense_proxy_tag, row_major_tag) { - typedef M matrix_type; - typedef const E1 expression1_type; - typedef const E2 expression2_type; typedef typename M::size_type size_type; typedef typename M::value_type value_type; @@ -769,9 +748,6 @@ namespace boost { namespace numeric { na const matrix_expression &e2, M &m, dense_proxy_tag, column_major_tag) { - typedef M matrix_type; - typedef const E1 expression1_type; - typedef const E2 expression2_type; typedef typename M::size_type size_type; typedef typename M::value_type value_type; diff -up boost_1_54_0/boost/numeric/ublas/triangular.hpp~ boost_1_54_0/boost/numeric/ublas/triangular.hpp --- boost_1_54_0/boost/numeric/ublas/triangular.hpp~ 2012-09-18 14:07:07.000000000 -0700 +++ boost_1_54_0/boost/numeric/ublas/triangular.hpp 2013-07-22 04:39:31.667230329 -0700 @@ -1859,7 +1859,6 @@ namespace boost { namespace numeric { na void inplace_solve (const matrix_expression &e1, vector_expression &e2, lower_tag, column_major_tag, dense_proxy_tag) { typedef typename E2::size_type size_type; - typedef typename E2::difference_type difference_type; typedef typename E2::value_type value_type; BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); @@ -1914,7 +1913,6 @@ namespace boost { namespace numeric { na void inplace_solve (const matrix_expression &e1, vector_expression &e2, lower_tag, column_major_tag, unknown_storage_tag) { typedef typename E2::size_type size_type; - typedef typename E2::difference_type difference_type; typedef typename E2::value_type value_type; BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); @@ -1943,7 +1941,6 @@ namespace boost { namespace numeric { na void inplace_solve (const matrix_expression &e1, vector_expression &e2, lower_tag, row_major_tag, dense_proxy_tag) { typedef typename E2::size_type size_type; - typedef typename E2::difference_type difference_type; typedef typename E2::value_type value_type; BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); @@ -1969,7 +1966,6 @@ namespace boost { namespace numeric { na void inplace_solve (const matrix_expression &e1, vector_expression &e2, lower_tag, row_major_tag, packed_proxy_tag) { typedef typename E2::size_type size_type; - typedef typename E2::difference_type difference_type; typedef typename E2::value_type value_type; BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); @@ -1998,7 +1994,6 @@ namespace boost { namespace numeric { na void inplace_solve (const matrix_expression &e1, vector_expression &e2, lower_tag, row_major_tag, unknown_storage_tag) { typedef typename E2::size_type size_type; - typedef typename E2::difference_type difference_type; typedef typename E2::value_type value_type; BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); @@ -2374,7 +2369,6 @@ namespace boost { namespace numeric { na void inplace_solve (const matrix_expression &e1, matrix_expression &e2, lower_tag, dense_proxy_tag) { typedef typename E2::size_type size_type; - typedef typename E2::difference_type difference_type; typedef typename E2::value_type value_type; BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); @@ -2435,7 +2429,6 @@ namespace boost { namespace numeric { na void inplace_solve (const matrix_expression &e1, matrix_expression &e2, lower_tag, unknown_storage_tag) { typedef typename E2::size_type size_type; - typedef typename E2::difference_type difference_type; typedef typename E2::value_type value_type; BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ());