Update minimum required C++ version for Ceres to C++14

- Removes all workarounds for pre-C++14 versions
- Removes '11' qualifier from C++ threading option and associated
  defines.
- Fix missing inclusion of 'Multithreading' in reported Ceres components
  when C++ threading model is enabled.
- Update Sphinx documentation to specify C++14 as minimum requirement.

Change-Id: I706c8b367b3221e3c4d1a0aaf669a8f9c911e438
This commit is contained in:
Alex Stewart
2020-05-30 11:30:01 +01:00
parent 1d75e75681
commit 7ef83e0759
35 changed files with 124 additions and 602 deletions
+6 -5
View File
@@ -26,28 +26,29 @@
#include <gtest/gtest.h>
#include <type_traits>
#include <utility>
namespace ceres {
namespace internal {
// Is valid parameter dims unit test
static_assert(IsValidParameterDimensionSequence(integer_sequence<int>()) ==
static_assert(IsValidParameterDimensionSequence(std::integer_sequence<int>()) ==
true,
"Unit test of is valid parameter dimension sequence failed.");
static_assert(
IsValidParameterDimensionSequence(integer_sequence<int, 2, 1>()) == true,
IsValidParameterDimensionSequence(std::integer_sequence<int, 2, 1>()) == true,
"Unit test of is valid parameter dimension sequence failed.");
static_assert(
IsValidParameterDimensionSequence(integer_sequence<int, 0, 1>()) == false,
IsValidParameterDimensionSequence(std::integer_sequence<int, 0, 1>()) == false,
"Unit test of is valid parameter dimension sequence failed.");
static_assert(
IsValidParameterDimensionSequence(integer_sequence<int, 3, 0>()) == false,
IsValidParameterDimensionSequence(std::integer_sequence<int, 3, 0>()) == false,
"Unit test of is valid parameter dimension sequence failed.");
// Static parameter dims unit test
static_assert(
std::is_same<StaticParameterDims<4, 2, 1>::Parameters,
integer_sequence<int, 4, 2, 1>>::value == true,
std::integer_sequence<int, 4, 2, 1>>::value == true,
"Unit test of type 'parameters' for static parameter dims failed.");
static_assert(StaticParameterDims<4, 2, 1>::kIsValid == true,