Skip to content

Propagate C++11 throughout Nektar++

Dave Moxey requested to merge dmoxey/nektar:feature/boost-std-cleanup into master

This is a very large MR that changes Boost to C++11 functionality throughout the library, utilities and solvers. A basic overview of changes:

  • Many boost classes replaced by native C++11 objects, including: shared_ptr, weak_ptr, unordered_map, unordered_set, tuple, bind, function
  • Added some utilities for unordered structures in HashUtils.hpp, since std:: doesn't support hashes of enums or pairs
  • Memory manager allocation/deallocation has been modified to remove the use of bind, due to compiler issues in VS2013.
  • Dependence on boost_date_time has been removed using chrono
  • boost::mpl metaprogramming replaced with C++11 variadic templates, static_assert, etc
  • Removed a lot of iterator typedefs, and replaced a number of iterators with loops of the form for (auto &it : container)
  • Additionally, this removes the (unused) expression templates and removes a few more unused headers and unit tests.
Edited by Dave Moxey

Merge request reports