diff --git a/src/base/blob.hpp b/src/base/blob.hpp index 53622685..78fb2caf 100644 --- a/src/base/blob.hpp +++ b/src/base/blob.hpp @@ -39,8 +39,9 @@ namespace sgns::base { * @brief constructor enabling initializer list * @param l initializer list */ - explicit Blob(const std::array &l) { - std::copy(l.begin(), l.end(), this->begin()); + explicit constexpr Blob( const std::array &l ) + { + std::copy( l.begin(), l.end(), this->begin() ); } /** diff --git a/src/primitives/common.hpp b/src/primitives/common.hpp index 8a7a5683..9ee64bfd 100644 --- a/src/primitives/common.hpp +++ b/src/primitives/common.hpp @@ -1,5 +1,3 @@ - - #ifndef SUPERGENIUS_SRC_PRIMITIVES_COMMON_HPP #define SUPERGENIUS_SRC_PRIMITIVES_COMMON_HPP @@ -19,10 +17,11 @@ namespace sgns::primitives { // (BlockInfo, Prevote, Precommit, PrimaryPropose) template struct BlockInfoT : public boost::equality_comparable> { - BlockInfoT() = default; + constexpr BlockInfoT() = default; - BlockInfoT(const BlockNumber &n, const BlockHash &h) - : block_number(n), block_hash(h) {} + constexpr BlockInfoT( BlockNumber n, BlockHash h ) : block_number( n ), block_hash( h ) + { + } BlockNumber block_number{}; BlockHash block_hash; diff --git a/src/verification/authority/impl/schedule_node.hpp b/src/verification/authority/impl/schedule_node.hpp index f47d004e..42a794c1 100644 --- a/src/verification/authority/impl/schedule_node.hpp +++ b/src/verification/authority/impl/schedule_node.hpp @@ -27,7 +27,7 @@ namespace sgns::authority { std::shared_ptr makeDescendant( const primitives::BlockInfo &block, bool finalized = false); - const primitives::BlockInfo block; + const primitives::BlockInfo block{}; std::weak_ptr parent; std::vector> descendants;