boostorg / ublas

Boost.uBlas
https://www.boost.org/doc/libs/release/libs/numeric/ublas
111 stars 152 forks source link

C++17 deprecates std::iterator #76

Closed zvilius closed 4 years ago

zvilius commented 4 years ago

Compiling with Visual Studio 2017 with c++17 language flag set:

warning C4996: 'std::iterator<IC,T,ptrdiff_t,_Ty *,_Ty &>::iterator_category': warning STL4015: The std::iterator class template (used as a base class to provide typedefs) is deprecated in C++17. Results from using one of the iterator base classes, e.g. random_access_iterator_base.

Not urgent as it is easy enough to suppress the warning, but I thought I'd note the issue since I don't see it here already.

bassoy commented 4 years ago

thanks @zvilius . We will hopefully soon migrate to C++17 and use a different approach for iterating over matrix and tensor index spaces.

jwakely commented 4 years ago

Looks like this is (partially?) fixed by #100

bassoy commented 4 years ago

Looks like this is (partially?) fixed by #100

Yes. True. Yet, PR https://github.com/boostorg/ublas/pull/100 has not been merged. However, PR https://github.com/boostorg/ublas/pull/97 with the same changes has been merged into develop branch.

SpareSimian commented 2 years ago

With the recent discussion on the boost-devel list about establishing a minimum-supported C++ standard, I test-compiled my ublas-using C++14-compatible app with C++20 and got this warning. I suggest revisiting this upgrade to C++17.