[ 
https://issues.apache.org/jira/browse/IGNITE-9161?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-9161:
--------------------------------
    Description: 
Currently, helper classes from {{operations.h}} header file, e.g. 
{{Out1Operation}} contain additional value, that can't be optimized-out by the 
compiler on return, even though the operation itself is a temporary object.

As a solution, such classes should accept and operate on a reference to a 
temporary object, so that [copy 
elision|https://en.wikipedia.org/wiki/Copy_elision] can be used by a compiler.

  was:
Currently, helper classes from {{operations.h}} header file, e.g. 
{{Out1Operation}} contain additional value, that can't be optimized-out by the 
compiler on return, even though the operation itself is a temporary object.

As a solution, such classes should accept and operate on a reference to a 
temporary object, which can be 


> CPP: Get rid of additional copy on Get
> --------------------------------------
>
>                 Key: IGNITE-9161
>                 URL: https://issues.apache.org/jira/browse/IGNITE-9161
>             Project: Ignite
>          Issue Type: Improvement
>          Components: platforms
>    Affects Versions: 2.0
>            Reporter: Igor Sapego
>            Priority: Major
>              Labels: cpp
>             Fix For: 2.7
>
>
> Currently, helper classes from {{operations.h}} header file, e.g. 
> {{Out1Operation}} contain additional value, that can't be optimized-out by 
> the compiler on return, even though the operation itself is a temporary 
> object.
> As a solution, such classes should accept and operate on a reference to a 
> temporary object, so that [copy 
> elision|https://en.wikipedia.org/wiki/Copy_elision] can be used by a compiler.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to