From 8c0c374a530af6723724955d3782a6139b633503 Mon Sep 17 00:00:00 2001 From: Danny Robson Date: Fri, 9 Nov 2018 15:01:35 +1100 Subject: [PATCH] darray: correct the empty condition --- array/darray.hpp | 2 +- test/array/darray.cpp | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/array/darray.hpp b/array/darray.hpp index 9f30dd1b..31097f20 100644 --- a/array/darray.hpp +++ b/array/darray.hpp @@ -89,7 +89,7 @@ namespace cruft { constexpr auto capacity (void) const noexcept { return CapacityV; } constexpr auto remain (void) const noexcept { return capacity () - size (); } - constexpr bool empty (void) const noexcept { return !!m_size; } + constexpr bool empty (void) const noexcept { return m_size == 0; } constexpr bool full (void) const noexcept { return m_size == CapacityV; } diff --git a/test/array/darray.cpp b/test/array/darray.cpp index fe347148..dc14c7e7 100644 --- a/test/array/darray.cpp +++ b/test/array/darray.cpp @@ -6,6 +6,11 @@ main (int, char**) { cruft::TAP::logger tap; + { + cruft::darray<8,int> val; + tap.expect (val.empty (), "default initialisation is empty"); + } + { cruft::darray<8,int> val ({ 0, 1, 2, 3, 4, 5, 6, 7});