summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author couriersud <couriersud@gmx.org>2020-06-01 19:58:26 +0200
committer couriersud <couriersud@gmx.org>2020-06-01 19:59:53 +0200
commit9cd005b57433c66c35ddb6bb2953e3e29925d643 (patch)
tree8444bf303689fdb4d9847a7c583ad728fa23a353
parent3fd176a7a6700a1818059df4faf58e57d523119b (diff)
netlist: drop c++11 support. (nw)
This wasn't working since the last factory changes. Removed it. Basically replace C14CONSTEXPR with constexpr.
-rw-r--r--src/lib/netlist/devices/nld_74125.cpp2
-rw-r--r--src/lib/netlist/devices/nld_7442.cpp2
-rw-r--r--src/lib/netlist/devices/nld_7490.cpp2
-rw-r--r--src/lib/netlist/devices/nld_7492.cpp2
-rw-r--r--src/lib/netlist/nl_base.h14
-rw-r--r--src/lib/netlist/plib/palloc.h4
-rw-r--r--src/lib/netlist/plib/parray.h2
-rw-r--r--src/lib/netlist/plib/pconfig.h11
-rw-r--r--src/lib/netlist/plib/plists.h8
-rw-r--r--src/lib/netlist/plib/pmatrix2d.h2
-rw-r--r--src/lib/netlist/plib/ptime.h12
11 files changed, 30 insertions, 31 deletions
diff --git a/src/lib/netlist/devices/nld_74125.cpp b/src/lib/netlist/devices/nld_74125.cpp
index ed0bcc5fd4d..d803b80d984 100644
--- a/src/lib/netlist/devices/nld_74125.cpp
+++ b/src/lib/netlist/devices/nld_74125.cpp
@@ -24,7 +24,7 @@ namespace netlist
: unique_pool_ptr<T>(owner.template make_pool_object<T>(owner, name, std::forward<Args>(args)...))
{ }
- C14CONSTEXPR auto operator ()() noexcept -> decltype((*unique_pool_ptr<T>::get())()) { return (*this->get())(); }
+ constexpr auto operator ()() noexcept -> decltype((*unique_pool_ptr<T>::get())()) { return (*this->get())(); }
constexpr auto operator ()() const noexcept -> const decltype((*unique_pool_ptr<T>::get())()) { return (*this->get())(); }
};
diff --git a/src/lib/netlist/devices/nld_7442.cpp b/src/lib/netlist/devices/nld_7442.cpp
index 54bcb0feed4..4137f51bb6c 100644
--- a/src/lib/netlist/devices/nld_7442.cpp
+++ b/src/lib/netlist/devices/nld_7442.cpp
@@ -12,7 +12,7 @@ namespace netlist
{
namespace devices
{
- static C14CONSTEXPR const netlist_time delay = NLTIME_FROM_NS(30); // Worst-case through 3 levels of logic
+ static constexpr const netlist_time delay = NLTIME_FROM_NS(30); // Worst-case through 3 levels of logic
NETLIB_OBJECT(7442)
{
diff --git a/src/lib/netlist/devices/nld_7490.cpp b/src/lib/netlist/devices/nld_7490.cpp
index e923232f278..bcbad5f5a04 100644
--- a/src/lib/netlist/devices/nld_7490.cpp
+++ b/src/lib/netlist/devices/nld_7490.cpp
@@ -13,7 +13,7 @@ namespace netlist
namespace devices
{
- static C14CONSTEXPR const std::array<netlist_time, 4> delay =
+ static constexpr const std::array<netlist_time, 4> delay =
{
NLTIME_FROM_NS(18),
NLTIME_FROM_NS(36) - NLTIME_FROM_NS(18),
diff --git a/src/lib/netlist/devices/nld_7492.cpp b/src/lib/netlist/devices/nld_7492.cpp
index 39dce8217eb..ede934feac8 100644
--- a/src/lib/netlist/devices/nld_7492.cpp
+++ b/src/lib/netlist/devices/nld_7492.cpp
@@ -13,7 +13,7 @@ namespace netlist
namespace devices
{
- static C14CONSTEXPR const std::array<netlist_time, 4> delay =
+ static constexpr const std::array<netlist_time, 4> delay =
{
NLTIME_FROM_NS(18),
NLTIME_FROM_NS(36) - NLTIME_FROM_NS(18),
diff --git a/src/lib/netlist/nl_base.h b/src/lib/netlist/nl_base.h
index 1decef50e60..5f6e2529157 100644
--- a/src/lib/netlist/nl_base.h
+++ b/src/lib/netlist/nl_base.h
@@ -388,25 +388,25 @@ namespace netlist
//! Copy Constructor removed.
constexpr state_var(const state_var &rhs) = delete;
//! Assignment operator to assign value of a state var.
- C14CONSTEXPR state_var &operator=(const state_var &rhs) noexcept { m_value = rhs.m_value; return *this; } // OSX doesn't like noexcept
+ constexpr state_var &operator=(const state_var &rhs) noexcept { m_value = rhs.m_value; return *this; } // OSX doesn't like noexcept
//! Assignment operator to assign value of type T.
- C14CONSTEXPR state_var &operator=(const T &rhs) noexcept { m_value = rhs; return *this; }
+ constexpr state_var &operator=(const T &rhs) noexcept { m_value = rhs; return *this; }
//! Assignment move operator to assign value of type T.
- C14CONSTEXPR state_var &operator=(T &&rhs) noexcept { std::swap(m_value, rhs); return *this; }
+ constexpr state_var &operator=(T &&rhs) noexcept { std::swap(m_value, rhs); return *this; }
//! Return non-const value of state variable.
- C14CONSTEXPR operator T & () noexcept { return m_value; }
+ constexpr operator T & () noexcept { return m_value; }
//! Return const value of state variable.
constexpr operator const T & () const noexcept { return m_value; }
//! Return non-const value of state variable.
- C14CONSTEXPR T & var() noexcept { return m_value; }
+ constexpr T & var() noexcept { return m_value; }
//! Return const value of state variable.
constexpr const T & var() const noexcept { return m_value; }
//! Return non-const value of state variable.
- C14CONSTEXPR T & operator ()() noexcept { return m_value; }
+ constexpr T & operator ()() noexcept { return m_value; }
//! Return const value of state variable.
constexpr const T & operator ()() const noexcept { return m_value; }
//! Access state variable by ->.
- C14CONSTEXPR T * operator->() noexcept { return &m_value; }
+ constexpr T * operator->() noexcept { return &m_value; }
//! Access state variable by const ->.
constexpr const T * operator->() const noexcept{ return &m_value; }
diff --git a/src/lib/netlist/plib/palloc.h b/src/lib/netlist/plib/palloc.h
index 4adf287196d..ae8f29dec13 100644
--- a/src/lib/netlist/plib/palloc.h
+++ b/src/lib/netlist/plib/palloc.h
@@ -408,7 +408,7 @@ namespace plib {
};
template <typename T, std::size_t ALIGN>
- C14CONSTEXPR T *assume_aligned_ptr(T *p) noexcept
+ constexpr T *assume_aligned_ptr(T *p) noexcept
{
static_assert(ALIGN >= alignof(T), "Alignment must be greater or equal to alignof(T)");
static_assert(is_pow2(ALIGN), "Alignment must be a power of 2");
@@ -489,7 +489,7 @@ namespace plib {
base & as_base() noexcept { return *this; }
const base & as_base() const noexcept { return *this; }
- C14CONSTEXPR reference operator[](size_type i) noexcept
+ constexpr reference operator[](size_type i) noexcept
{
return assume_aligned_ptr<T, ALIGN>(&(base::operator[](0)))[i];
}
diff --git a/src/lib/netlist/plib/parray.h b/src/lib/netlist/plib/parray.h
index 43e723b00f4..50ee97bc0a5 100644
--- a/src/lib/netlist/plib/parray.h
+++ b/src/lib/netlist/plib/parray.h
@@ -129,7 +129,7 @@ namespace plib {
bool empty() const noexcept { return size() == 0; }
- C14CONSTEXPR reference operator[](size_type i) noexcept
+ constexpr reference operator[](size_type i) noexcept
{
return assume_aligned_ptr<FT, PALIGN_VECTOROPT>(&m_a[0])[i];
}
diff --git a/src/lib/netlist/plib/pconfig.h b/src/lib/netlist/plib/pconfig.h
index a0863db22ba..8b169260360 100644
--- a/src/lib/netlist/plib/pconfig.h
+++ b/src/lib/netlist/plib/pconfig.h
@@ -114,25 +114,24 @@
#if (NVCCBUILD > 0)
- #define C14CONSTEXPR constexpr
#if NVCCBUILD == 101
#define NVCC_CONSTEXPR constexpr
#else
#define NVCC_CONSTEXPR constexpr
#endif
#if __cplusplus != 201402L
- #error nvcc - something is wrong
+ #error nvcc - use c++14 to compile
#endif
#else
#define NVCC_CONSTEXPR constexpr
#if __cplusplus == 201103L
- #define C14CONSTEXPR
+ #error c++11 not supported - you need c++14
#elif __cplusplus == 201402L
- #define C14CONSTEXPR constexpr
+ // Ok
#elif __cplusplus == 201703L
- #define C14CONSTEXPR constexpr
+ // Ok
#elif defined(_MSC_VER)
- #define C14CONSTEXPR
+ // Ok
#else
#error "C++ version not supported"
#endif
diff --git a/src/lib/netlist/plib/plists.h b/src/lib/netlist/plib/plists.h
index c570f61e954..f5151b95011 100644
--- a/src/lib/netlist/plib/plists.h
+++ b/src/lib/netlist/plib/plists.h
@@ -150,11 +150,11 @@ namespace plib {
constexpr bool operator==(const iter_t& rhs) const noexcept { return p == rhs.p; }
constexpr bool operator!=(const iter_t& rhs) const noexcept { return p != rhs.p; }
- C14CONSTEXPR LC& operator*() noexcept { return *p; }
- C14CONSTEXPR LC* operator->() noexcept { return p; }
+ constexpr LC& operator*() noexcept { return *p; }
+ constexpr LC* operator->() noexcept { return p; }
- C14CONSTEXPR LC& operator*() const noexcept { return *p; }
- C14CONSTEXPR LC* operator->() const noexcept { return p; }
+ constexpr LC& operator*() const noexcept { return *p; }
+ constexpr LC* operator->() const noexcept { return p; }
};
constexpr linkedlist_t() noexcept : m_head(nullptr) {}
diff --git a/src/lib/netlist/plib/pmatrix2d.h b/src/lib/netlist/plib/pmatrix2d.h
index c3dfca46b23..b48c531a921 100644
--- a/src/lib/netlist/plib/pmatrix2d.h
+++ b/src/lib/netlist/plib/pmatrix2d.h
@@ -47,7 +47,7 @@ namespace plib
m_v.resize(N * m_stride);
}
- C14CONSTEXPR T * operator[] (size_type row) noexcept
+ constexpr T * operator[] (size_type row) noexcept
{
return assume_aligned_ptr<T, align_size>(&m_v[m_stride * row]);
}
diff --git a/src/lib/netlist/plib/ptime.h b/src/lib/netlist/plib/ptime.h
index 655fb84caeb..e2688cc13ac 100644
--- a/src/lib/netlist/plib/ptime.h
+++ b/src/lib/netlist/plib/ptime.h
@@ -46,8 +46,8 @@ namespace plib
constexpr ptime(ptime &&rhs) noexcept = default;
constexpr explicit ptime(const internal_type &time) noexcept : m_time(time) {}
constexpr explicit ptime(internal_type &&time) noexcept : m_time(time) {}
- C14CONSTEXPR ptime &operator=(const ptime &rhs) noexcept = default;
- C14CONSTEXPR ptime &operator=(ptime &&rhs) noexcept = default;
+ constexpr ptime &operator=(const ptime &rhs) noexcept = default;
+ constexpr ptime &operator=(ptime &&rhs) noexcept = default;
constexpr explicit ptime(const double t) = delete;
constexpr explicit ptime(const internal_type nom, const internal_type den) noexcept
@@ -60,14 +60,14 @@ namespace plib
}
template <typename O>
- C14CONSTEXPR ptime &operator+=(const ptime<O, RES> &rhs) noexcept
+ constexpr ptime &operator+=(const ptime<O, RES> &rhs) noexcept
{
static_assert(ptime_le<ptime<O, RES>, ptime>::value, "Invalid ptime type");
m_time += rhs.m_time;
return *this;
}
template <typename O>
- C14CONSTEXPR ptime &operator-=(const ptime<O, RES> &rhs) noexcept
+ constexpr ptime &operator-=(const ptime<O, RES> &rhs) noexcept
{
static_assert(ptime_le<ptime<O, RES>, ptime>::value, "Invalid ptime type");
m_time -= rhs.m_time;
@@ -75,7 +75,7 @@ namespace plib
}
template <typename M>
- C14CONSTEXPR ptime &operator*=(const M &factor) noexcept
+ constexpr ptime &operator*=(const M &factor) noexcept
{
static_assert(plib::is_integral<M>::value, "Factor must be an integral type");
m_time *= factor;
@@ -174,7 +174,7 @@ namespace plib
// for save states ....
#if 0
- C14CONSTEXPR internal_type *get_internaltype_ptr() noexcept { return &m_time; }
+ constexpr internal_type *get_internaltype_ptr() noexcept { return &m_time; }
#endif
template <typename ST>
void save_state(ST &st)