From 8e62537604d38d553922e42296ad227657e362f6 Mon Sep 17 00:00:00 2001 From: Patrick Pelissier Date: Wed, 20 Feb 2019 11:46:58 +0100 Subject: [PATCH] Update ISSUE --- doc/ISSUES.org | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/doc/ISSUES.org b/doc/ISSUES.org index 63aac275..1ec4e6cc 100644 --- a/doc/ISSUES.org +++ b/doc/ISSUES.org @@ -1,6 +1,30 @@ *Long term issues* ------------------ +* #23: Force MOVE semantic + +Some type may need to have a force MOVE semantic (for example, they can store +pointer to themselves). Currently the INIT_MOVE & MOVE operators are more +a help for performance than a strict semantic. + +** ARRAY container + +The ARRAY container doesn't support strict MOVE semantic for example. +It is not a simple matter as it performs a realloc of the table, thus +moving the data before they can be moved using MOVE. Two solutions: + +- New operator MOVE_SELF to fix a type after it has been moved. +- If MOVE defined, force another table and then copy by hand the type. This will be slower and consumme more memory. + +** MOVE in OPLIST + +Proposal: do not export MOVE operator in OPLIST if the MOVE operator is +compatible with a pure COPY semantic. An exported MOVE operator will tell +other containers than the type shall be carefully moved using the provided +MOVE operator. + +INIT_MOVE is probably safe. + * DONE #22: Enhanced services for SPSC Queue :ENHANCEMENT: Add services: