From 1ea3ee1bfba682c99c9472f29fa14c963872a488 Mon Sep 17 00:00:00 2001 From: "s.kolesnik" <7fosGbc9S> Date: Mon, 29 Mar 2021 15:49:30 +0500 Subject: [PATCH 1/4] added explicit initialization in the copy constructor due to occurring warning --- include/tl/optional.hpp | 33 +++++++++++++++++++++------------ 1 file changed, 21 insertions(+), 12 deletions(-) diff --git a/include/tl/optional.hpp b/include/tl/optional.hpp index 9b13b7c..e53f98d 100644 --- a/include/tl/optional.hpp +++ b/include/tl/optional.hpp @@ -448,21 +448,30 @@ struct optional_copy_base : optional_operations_base { // This specialization is for when T is not trivially copy constructible template -struct optional_copy_base : optional_operations_base { - using optional_operations_base::optional_operations_base; +struct optional_copy_base : optional_operations_base +{ + using optional_operations_base::optional_operations_base; - optional_copy_base() = default; - optional_copy_base(const optional_copy_base &rhs) { - if (rhs.has_value()) { - this->construct(rhs.get()); - } else { - this->m_has_value = false; + optional_copy_base() = default; + + optional_copy_base(const optional_copy_base &rhs) + : optional_copy_base() + { + if (rhs.has_value()) + { + this->construct(rhs.get()); + } + else + { + this->m_has_value = false; + } } - } - optional_copy_base(optional_copy_base &&rhs) = default; - optional_copy_base &operator=(const optional_copy_base &rhs) = default; - optional_copy_base &operator=(optional_copy_base &&rhs) = default; + optional_copy_base(optional_copy_base &&rhs) = default; + + optional_copy_base &operator=(const optional_copy_base &rhs) = default; + + optional_copy_base &operator=(optional_copy_base &&rhs) = default; }; // This class manages conditionally having a trivial move constructor From b71e8fd5cd80be1e3e1e679693e98f5b690a68f4 Mon Sep 17 00:00:00 2001 From: "s.kolesnik" <7fosGbc9S> Date: Mon, 29 Mar 2021 15:51:01 +0500 Subject: [PATCH 2/4] added explicit initialization in the copy constructor due to occurring warning. reversed autoformatting --- include/tl/optional.hpp | 34 +++++++++++++--------------------- 1 file changed, 13 insertions(+), 21 deletions(-) diff --git a/include/tl/optional.hpp b/include/tl/optional.hpp index e53f98d..1a78a41 100644 --- a/include/tl/optional.hpp +++ b/include/tl/optional.hpp @@ -448,30 +448,22 @@ struct optional_copy_base : optional_operations_base { // This specialization is for when T is not trivially copy constructible template -struct optional_copy_base : optional_operations_base -{ - using optional_operations_base::optional_operations_base; +struct optional_copy_base : optional_operations_base { + using optional_operations_base::optional_operations_base; - optional_copy_base() = default; - - optional_copy_base(const optional_copy_base &rhs) - : optional_copy_base() - { - if (rhs.has_value()) - { - this->construct(rhs.get()); - } - else - { - this->m_has_value = false; - } + optional_copy_base() = default; + optional_copy_base(const optional_copy_base &rhs) + : optional_copy_base() { + if (rhs.has_value()) { + this->construct(rhs.get()); + } else { + this->m_has_value = false; } + } - optional_copy_base(optional_copy_base &&rhs) = default; - - optional_copy_base &operator=(const optional_copy_base &rhs) = default; - - optional_copy_base &operator=(optional_copy_base &&rhs) = default; + optional_copy_base(optional_copy_base &&rhs) = default; + optional_copy_base &operator=(const optional_copy_base &rhs) = default; + optional_copy_base &operator=(optional_copy_base &&rhs) = default; }; // This class manages conditionally having a trivial move constructor From 433984a572a946ee41f411dd8bdaf91d103e4daf Mon Sep 17 00:00:00 2001 From: "s.kolesnik" <7fosGbc9S> Date: Tue, 30 Mar 2021 11:28:25 +0500 Subject: [PATCH 3/4] changed delegated constructor to base class constructor in optional_copy_base --- include/tl/optional.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/tl/optional.hpp b/include/tl/optional.hpp index 1a78a41..37b774a 100644 --- a/include/tl/optional.hpp +++ b/include/tl/optional.hpp @@ -453,7 +453,7 @@ struct optional_copy_base : optional_operations_base { optional_copy_base() = default; optional_copy_base(const optional_copy_base &rhs) - : optional_copy_base() { + : optional_operations_base() { if (rhs.has_value()) { this->construct(rhs.get()); } else { From f8f7c4953454257409f16e7666ec6a31b663112b Mon Sep 17 00:00:00 2001 From: "s.kolesnik" <7fosGbc9S> Date: Tue, 30 Mar 2021 11:29:31 +0500 Subject: [PATCH 4/4] added .idea from CLion to gitignore --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 7876dc6..8e08448 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ \#* .\#* /build/ +.idea +cmake-* \ No newline at end of file