aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/script/script.hxx
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2020-06-26 18:04:09 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2020-06-26 18:35:19 +0300
commite21cfd4593932caefc08d1f7ad0f966dcda324d9 (patch)
treeae84667cb325794803a725c89044873b23da9b94 /libbuild2/script/script.hxx
parent64429b9e46c988256a1d196aa0159ba71744b332 (diff)
Drop workarounds for script::redirect struct compile errors
Thanks to the butl::optional improvement to better deal with lack of copy/move constructors.
Diffstat (limited to 'libbuild2/script/script.hxx')
-rw-r--r--libbuild2/script/script.hxx11
1 files changed, 4 insertions, 7 deletions
diff --git a/libbuild2/script/script.hxx b/libbuild2/script/script.hxx
index 8e1c852..4a62c77 100644
--- a/libbuild2/script/script.hxx
+++ b/libbuild2/script/script.hxx
@@ -210,16 +210,13 @@ namespace build2
assert (t == redirect_type::merge && (f == 1 || f == 2));
}
+ // Movable-only type.
+ //
redirect (redirect&&) noexcept;
redirect& operator= (redirect&&) noexcept;
- // @@ Defining optional movable-only redirects in the command class make
- // the older C++ compilers (GCC 4.9, Clang 4, VC 15) fail to compile the
- // command vector manipulating code. Thus, we make the redirect class
- // copyable to workaround the issue.
- //
- redirect (const redirect&);
- redirect& operator= (const redirect&);
+ redirect (const redirect&) = delete;
+ redirect& operator= (const redirect&) = delete;
~redirect ();