From c09cd7512491cee1e82c1ad8128ce9fd4bc3f79b Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Fri, 22 Sep 2017 23:32:28 +0200 Subject: Initial modularization with both Clang and VC hacks Note: gave up on VC about half way though. --- libbutl/process.ixx | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'libbutl/process.ixx') diff --git a/libbutl/process.ixx b/libbutl/process.ixx index 1f1a2f4..c355855 100644 --- a/libbutl/process.ixx +++ b/libbutl/process.ixx @@ -2,8 +2,6 @@ // copyright : Copyright (c) 2014-2017 Code Synthesis Ltd // license : MIT; see accompanying LICENSE file -#include // move() - namespace butl { // process_path @@ -35,14 +33,21 @@ namespace butl inline process_path& process_path:: operator= (process_path&& p) { + if (this != &p) { if (args0_ != nullptr) *args0_ = initial; initial = p.initial; + +#if defined(__cpp_modules) && defined(__clang__) //@@ MOD Clang ICE + recall = p.recall; + effect = p.effect; +#else recall = std::move (p.recall); effect = std::move (p.effect); +#endif args0_ = p.args0_; p.args0_ = nullptr; -- cgit v1.1