[
https://issues.apache.org/jira/browse/IGNITE-9161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16566455#comment-16566455
]
ASF GitHub Bot commented on IGNITE-9161:
----------------------------------------
GitHub user isapego opened a pull request:
https://github.com/apache/ignite/pull/4476
IGNITE-9161: Optimization for C++ (copy elision)
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/gridgain/apache-ignite ignite-9161
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/ignite/pull/4476.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #4476
----
commit 29cbdee193750df2b13ac0e37acccf6d5ef82be8
Author: Igor Sapego <isapego@...>
Date: 2018-08-02T07:35:50Z
IGNITE-9161: Optimization for C++ (copy elision)
----
> 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
> Assignee: 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)