diff --git a/include/xo/expression2/DGlobalSymtab.hpp b/include/xo/expression2/DGlobalSymtab.hpp index c6fcdcf1..782e48f7 100644 --- a/include/xo/expression2/DGlobalSymtab.hpp +++ b/include/xo/expression2/DGlobalSymtab.hpp @@ -44,7 +44,7 @@ namespace xo { dp type_map, DArray * types); /** move constructor (needed because dp<> deletes copy ctor) **/ - DGlobalSymtab(DGlobalSymtab && other) = default; + DGlobalSymtab(DGlobalSymtab && other); /** create instance. * Use memory from @p fixed_mm for @ref map_. diff --git a/include/xo/expression2/define/IGCObject_DDefineExpr.hpp b/include/xo/expression2/define/IGCObject_DDefineExpr.hpp index b2c45805..e01e7be7 100644 --- a/include/xo/expression2/define/IGCObject_DDefineExpr.hpp +++ b/include/xo/expression2/define/IGCObject_DDefineExpr.hpp @@ -57,7 +57,7 @@ namespace xo { /** move instance using allocator **/ static Opaque shallow_move(DDefineExpr & self, obj gc) noexcept; /** during GC: forward immdiate children **/ - static size_type forward_children(DDefineExpr & self, obj gc) noexcept; + static void forward_children(DDefineExpr & self, obj gc) noexcept; ///@} }; diff --git a/include/xo/expression2/detail/IGCObject_DApplyExpr.hpp b/include/xo/expression2/detail/IGCObject_DApplyExpr.hpp index 75eac694..b85665c8 100644 --- a/include/xo/expression2/detail/IGCObject_DApplyExpr.hpp +++ b/include/xo/expression2/detail/IGCObject_DApplyExpr.hpp @@ -57,7 +57,7 @@ namespace xo { /** move instance using allocator **/ static Opaque shallow_move(DApplyExpr & self, obj gc) noexcept; /** during GC: forward immdiate children **/ - static size_type forward_children(DApplyExpr & self, obj gc) noexcept; + static void forward_children(DApplyExpr & self, obj gc) noexcept; ///@} }; diff --git a/include/xo/expression2/detail/IGCObject_DConstant.hpp b/include/xo/expression2/detail/IGCObject_DConstant.hpp index 9cb72026..91bf9638 100644 --- a/include/xo/expression2/detail/IGCObject_DConstant.hpp +++ b/include/xo/expression2/detail/IGCObject_DConstant.hpp @@ -57,7 +57,7 @@ namespace xo { /** move instance using allocator **/ static Opaque shallow_move(DConstant & self, obj gc) noexcept; /** during GC: forward immdiate children **/ - static size_type forward_children(DConstant & self, obj gc) noexcept; + static void forward_children(DConstant & self, obj gc) noexcept; ///@} }; diff --git a/include/xo/expression2/detail/IGCObject_DIfElseExpr.hpp b/include/xo/expression2/detail/IGCObject_DIfElseExpr.hpp index e7d6fcfd..59aae40f 100644 --- a/include/xo/expression2/detail/IGCObject_DIfElseExpr.hpp +++ b/include/xo/expression2/detail/IGCObject_DIfElseExpr.hpp @@ -57,7 +57,7 @@ namespace xo { /** move instance using allocator **/ static Opaque shallow_move(DIfElseExpr & self, obj gc) noexcept; /** during GC: forward immdiate children **/ - static size_type forward_children(DIfElseExpr & self, obj gc) noexcept; + static void forward_children(DIfElseExpr & self, obj gc) noexcept; ///@} }; diff --git a/include/xo/expression2/detail/IGCObject_DLambdaExpr.hpp b/include/xo/expression2/detail/IGCObject_DLambdaExpr.hpp index 6cf2cd6c..2351256d 100644 --- a/include/xo/expression2/detail/IGCObject_DLambdaExpr.hpp +++ b/include/xo/expression2/detail/IGCObject_DLambdaExpr.hpp @@ -57,7 +57,7 @@ namespace xo { /** move instance using allocator **/ static Opaque shallow_move(DLambdaExpr & self, obj gc) noexcept; /** during GC: forward immdiate children **/ - static size_type forward_children(DLambdaExpr & self, obj gc) noexcept; + static void forward_children(DLambdaExpr & self, obj gc) noexcept; ///@} }; diff --git a/include/xo/expression2/detail/IGCObject_DSequenceExpr.hpp b/include/xo/expression2/detail/IGCObject_DSequenceExpr.hpp index 9a9b3f9d..c3fba848 100644 --- a/include/xo/expression2/detail/IGCObject_DSequenceExpr.hpp +++ b/include/xo/expression2/detail/IGCObject_DSequenceExpr.hpp @@ -57,7 +57,7 @@ namespace xo { /** move instance using allocator **/ static Opaque shallow_move(DSequenceExpr & self, obj gc) noexcept; /** during GC: forward immdiate children **/ - static size_type forward_children(DSequenceExpr & self, obj gc) noexcept; + static void forward_children(DSequenceExpr & self, obj gc) noexcept; ///@} }; diff --git a/include/xo/expression2/detail/IGCObject_DVarRef.hpp b/include/xo/expression2/detail/IGCObject_DVarRef.hpp index 3ca237b6..97b0f3d6 100644 --- a/include/xo/expression2/detail/IGCObject_DVarRef.hpp +++ b/include/xo/expression2/detail/IGCObject_DVarRef.hpp @@ -57,7 +57,7 @@ namespace xo { /** move instance using allocator **/ static Opaque shallow_move(DVarRef & self, obj gc) noexcept; /** during GC: forward immdiate children **/ - static size_type forward_children(DVarRef & self, obj gc) noexcept; + static void forward_children(DVarRef & self, obj gc) noexcept; ///@} }; diff --git a/include/xo/expression2/symtab/IGCObject_DGlobalSymtab.hpp b/include/xo/expression2/symtab/IGCObject_DGlobalSymtab.hpp index 43436ac8..5de0f0da 100644 --- a/include/xo/expression2/symtab/IGCObject_DGlobalSymtab.hpp +++ b/include/xo/expression2/symtab/IGCObject_DGlobalSymtab.hpp @@ -57,7 +57,7 @@ namespace xo { /** move instance using allocator **/ static Opaque shallow_move(DGlobalSymtab & self, obj gc) noexcept; /** during GC: forward immdiate children **/ - static size_type forward_children(DGlobalSymtab & self, obj gc) noexcept; + static void forward_children(DGlobalSymtab & self, obj gc) noexcept; ///@} }; diff --git a/include/xo/expression2/symtab/IGCObject_DLocalSymtab.hpp b/include/xo/expression2/symtab/IGCObject_DLocalSymtab.hpp index c8b9cca1..6b9d81a1 100644 --- a/include/xo/expression2/symtab/IGCObject_DLocalSymtab.hpp +++ b/include/xo/expression2/symtab/IGCObject_DLocalSymtab.hpp @@ -57,7 +57,7 @@ namespace xo { /** move instance using allocator **/ static Opaque shallow_move(DLocalSymtab & self, obj gc) noexcept; /** during GC: forward immdiate children **/ - static size_type forward_children(DLocalSymtab & self, obj gc) noexcept; + static void forward_children(DLocalSymtab & self, obj gc) noexcept; ///@} }; diff --git a/include/xo/expression2/typename/IGCObject_DTypename.hpp b/include/xo/expression2/typename/IGCObject_DTypename.hpp index d002a847..5e94f460 100644 --- a/include/xo/expression2/typename/IGCObject_DTypename.hpp +++ b/include/xo/expression2/typename/IGCObject_DTypename.hpp @@ -55,7 +55,7 @@ namespace xo { /** move instance using allocator **/ static Opaque shallow_move(DTypename & self, obj gc) noexcept; /** during GC: forward immdiate children **/ - static size_type forward_children(DTypename & self, obj gc) noexcept; + static void forward_children(DTypename & self, obj gc) noexcept; ///@} }; diff --git a/include/xo/expression2/variable/IGCObject_DVariable.hpp b/include/xo/expression2/variable/IGCObject_DVariable.hpp index 5fd34c21..f7745ca9 100644 --- a/include/xo/expression2/variable/IGCObject_DVariable.hpp +++ b/include/xo/expression2/variable/IGCObject_DVariable.hpp @@ -57,7 +57,7 @@ namespace xo { /** move instance using allocator **/ static Opaque shallow_move(DVariable & self, obj gc) noexcept; /** during GC: forward immdiate children **/ - static size_type forward_children(DVariable & self, obj gc) noexcept; + static void forward_children(DVariable & self, obj gc) noexcept; ///@} }; diff --git a/src/expression2/DGlobalSymtab.cpp b/src/expression2/DGlobalSymtab.cpp index 58275e54..c125fb98 100644 --- a/src/expression2/DGlobalSymtab.cpp +++ b/src/expression2/DGlobalSymtab.cpp @@ -29,6 +29,14 @@ namespace xo { { } + DGlobalSymtab::DGlobalSymtab(DGlobalSymtab && other) + : var_map_{std::move(other.var_map_)}, + vars_{std::move(other.vars_)}, + type_map_{std::move(other.type_map_)}, + types_{std::move(other.types_)} + { + } + DGlobalSymtab * DGlobalSymtab::_make(obj mm, obj aux_mm, diff --git a/src/expression2/IGCObject_DApplyExpr.cpp b/src/expression2/IGCObject_DApplyExpr.cpp index 2a731c0b..d891b9de 100644 --- a/src/expression2/IGCObject_DApplyExpr.cpp +++ b/src/expression2/IGCObject_DApplyExpr.cpp @@ -27,9 +27,9 @@ namespace xo { return self.shallow_move(gc); } auto - IGCObject_DApplyExpr::forward_children(DApplyExpr & self, obj gc) noexcept -> size_type + IGCObject_DApplyExpr::forward_children(DApplyExpr & self, obj gc) noexcept -> void { - return self.forward_children(gc); + self.forward_children(gc); } } /*namespace scm*/ diff --git a/src/expression2/IGCObject_DConstant.cpp b/src/expression2/IGCObject_DConstant.cpp index ae5a701f..256ba991 100644 --- a/src/expression2/IGCObject_DConstant.cpp +++ b/src/expression2/IGCObject_DConstant.cpp @@ -27,9 +27,9 @@ namespace xo { return self.shallow_move(gc); } auto - IGCObject_DConstant::forward_children(DConstant & self, obj gc) noexcept -> size_type + IGCObject_DConstant::forward_children(DConstant & self, obj gc) noexcept -> void { - return self.forward_children(gc); + self.forward_children(gc); } } /*namespace scm*/ diff --git a/src/expression2/IGCObject_DDefineExpr.cpp b/src/expression2/IGCObject_DDefineExpr.cpp index 1e2c3bb8..b10d3ecd 100644 --- a/src/expression2/IGCObject_DDefineExpr.cpp +++ b/src/expression2/IGCObject_DDefineExpr.cpp @@ -27,9 +27,9 @@ namespace xo { return self.shallow_move(gc); } auto - IGCObject_DDefineExpr::forward_children(DDefineExpr & self, obj gc) noexcept -> size_type + IGCObject_DDefineExpr::forward_children(DDefineExpr & self, obj gc) noexcept -> void { - return self.forward_children(gc); + self.forward_children(gc); } } /*namespace scm*/ diff --git a/src/expression2/IGCObject_DGlobalSymtab.cpp b/src/expression2/IGCObject_DGlobalSymtab.cpp index 3f596d01..70f541d3 100644 --- a/src/expression2/IGCObject_DGlobalSymtab.cpp +++ b/src/expression2/IGCObject_DGlobalSymtab.cpp @@ -27,9 +27,9 @@ namespace xo { return self.shallow_move(gc); } auto - IGCObject_DGlobalSymtab::forward_children(DGlobalSymtab & self, obj gc) noexcept -> size_type + IGCObject_DGlobalSymtab::forward_children(DGlobalSymtab & self, obj gc) noexcept -> void { - return self.forward_children(gc); + self.forward_children(gc); } } /*namespace scm*/ diff --git a/src/expression2/IGCObject_DIfElseExpr.cpp b/src/expression2/IGCObject_DIfElseExpr.cpp index 240906f2..05e997cf 100644 --- a/src/expression2/IGCObject_DIfElseExpr.cpp +++ b/src/expression2/IGCObject_DIfElseExpr.cpp @@ -27,9 +27,9 @@ namespace xo { return self.shallow_move(gc); } auto - IGCObject_DIfElseExpr::forward_children(DIfElseExpr & self, obj gc) noexcept -> size_type + IGCObject_DIfElseExpr::forward_children(DIfElseExpr & self, obj gc) noexcept -> void { - return self.forward_children(gc); + self.forward_children(gc); } } /*namespace scm*/ diff --git a/src/expression2/IGCObject_DLambdaExpr.cpp b/src/expression2/IGCObject_DLambdaExpr.cpp index c0a95847..0999c696 100644 --- a/src/expression2/IGCObject_DLambdaExpr.cpp +++ b/src/expression2/IGCObject_DLambdaExpr.cpp @@ -27,9 +27,9 @@ namespace xo { return self.shallow_move(gc); } auto - IGCObject_DLambdaExpr::forward_children(DLambdaExpr & self, obj gc) noexcept -> size_type + IGCObject_DLambdaExpr::forward_children(DLambdaExpr & self, obj gc) noexcept -> void { - return self.forward_children(gc); + self.forward_children(gc); } } /*namespace scm*/ diff --git a/src/expression2/IGCObject_DLocalSymtab.cpp b/src/expression2/IGCObject_DLocalSymtab.cpp index 02941925..bf6d3b51 100644 --- a/src/expression2/IGCObject_DLocalSymtab.cpp +++ b/src/expression2/IGCObject_DLocalSymtab.cpp @@ -27,9 +27,9 @@ namespace xo { return self.shallow_move(gc); } auto - IGCObject_DLocalSymtab::forward_children(DLocalSymtab & self, obj gc) noexcept -> size_type + IGCObject_DLocalSymtab::forward_children(DLocalSymtab & self, obj gc) noexcept -> void { - return self.forward_children(gc); + self.forward_children(gc); } } /*namespace scm*/ diff --git a/src/expression2/IGCObject_DSequenceExpr.cpp b/src/expression2/IGCObject_DSequenceExpr.cpp index 93af6f10..9ba1cab8 100644 --- a/src/expression2/IGCObject_DSequenceExpr.cpp +++ b/src/expression2/IGCObject_DSequenceExpr.cpp @@ -27,9 +27,9 @@ namespace xo { return self.shallow_move(gc); } auto - IGCObject_DSequenceExpr::forward_children(DSequenceExpr & self, obj gc) noexcept -> size_type + IGCObject_DSequenceExpr::forward_children(DSequenceExpr & self, obj gc) noexcept -> void { - return self.forward_children(gc); + self.forward_children(gc); } } /*namespace scm*/ diff --git a/src/expression2/IGCObject_DTypename.cpp b/src/expression2/IGCObject_DTypename.cpp index 58df5bff..76bf837f 100644 --- a/src/expression2/IGCObject_DTypename.cpp +++ b/src/expression2/IGCObject_DTypename.cpp @@ -27,9 +27,9 @@ namespace xo { return self.shallow_move(gc); } auto - IGCObject_DTypename::forward_children(DTypename & self, obj gc) noexcept -> size_type + IGCObject_DTypename::forward_children(DTypename & self, obj gc) noexcept -> void { - return self.forward_children(gc); + self.forward_children(gc); } } /*namespace scm*/ diff --git a/src/expression2/IGCObject_DVarRef.cpp b/src/expression2/IGCObject_DVarRef.cpp index 64967c9b..e9869fdf 100644 --- a/src/expression2/IGCObject_DVarRef.cpp +++ b/src/expression2/IGCObject_DVarRef.cpp @@ -27,9 +27,9 @@ namespace xo { return self.shallow_move(gc); } auto - IGCObject_DVarRef::forward_children(DVarRef & self, obj gc) noexcept -> size_type + IGCObject_DVarRef::forward_children(DVarRef & self, obj gc) noexcept -> void { - return self.forward_children(gc); + self.forward_children(gc); } } /*namespace scm*/ diff --git a/src/expression2/facet/IGCObject_DVariable.cpp b/src/expression2/facet/IGCObject_DVariable.cpp index d418145c..657ce453 100644 --- a/src/expression2/facet/IGCObject_DVariable.cpp +++ b/src/expression2/facet/IGCObject_DVariable.cpp @@ -27,9 +27,9 @@ namespace xo { return self.shallow_move(gc); } auto - IGCObject_DVariable::forward_children(DVariable & self, obj gc) noexcept -> size_type + IGCObject_DVariable::forward_children(DVariable & self, obj gc) noexcept -> void { - return self.forward_children(gc); + self.forward_children(gc); } } /*namespace scm*/