From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ej1-x634.google.com (mail-ej1-x634.google.com [IPv6:2a00:1450:4864:20::634]) by sourceware.org (Postfix) with ESMTPS id 007C7384F494 for ; Mon, 21 Nov 2022 14:20:18 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 007C7384F494 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-ej1-x634.google.com with SMTP id me22so12291576ejb.8 for ; Mon, 21 Nov 2022 06:20:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=4pxCIRiq5TgrESlcsTVhkjk0KDsHphM/Zq/kUKPqXXs=; b=abCrbAmudVNua26OsrKnJBejf7S39RgooOy0tOk+87D2RP2kuNCHL2aREqcTOj4JbK stk/F/5DfIOx3Jt70B6PT+9b8KiI7vJgPJzCDD1qKqAIHjfW7dTCRLTSN8ApBd99Ptq9 4fdlP3oWZNKyq7pkdoD09BDMqMb35j1cKahnQUf5FX32KBFnlLVSYrrnRKC+IuvxdVNp BaBSlkQujwSDsYszV6IWc+zEXbuqn11emOk5eGq0cM93hXJkNW8AcaYGWYamhDs4TL0a DMYxVVKeGqcNVo3j7eT4gmp9eNcHuxhMzg9LMmFG9PPWQ/N1WUUwTN2VnGTbOCasXycx wK2A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=4pxCIRiq5TgrESlcsTVhkjk0KDsHphM/Zq/kUKPqXXs=; b=fE7BoD1EFN6gO6qXclGJHA82VRCdQiRdzqOy3ypmBsalVqnwNoQux5JHo1+2JxBuAg rs83l7nm2Owq+Ab+8/7aJtNQv2eKMYyzpwpPXHDIDCEYqm7W9/MOzC90MMCpeMyIuzZX vWP2bRxsXv+mnl39DAhq3WvoJFvXy7NOkQoF+ITCaMHuvjFm/3Fn56QJ7zX6/bbmEyBQ e32wK11U4tbp6zLqdhZZlJSFcKWUetqrXdvazcVeY7Xzi0qo54HLIoGlXVqo+vKpayr+ fWnTmMqE5yQ5pj8a5G7ORLHlsiz9U/O5GWnJuGg8iN1BaYPYu2UavujkAa0/pDNbrZqo 7nJA== X-Gm-Message-State: ANoB5pk3CtZB0XJXT9Ce5I7eOBDmINaQoyenMaB8F6g9gh0XHyI9lGsH /F+sKZiMesbzRwzeqjVC0GUFcS+iAuCROtObWpM= X-Google-Smtp-Source: AA0mqf7KgZH/FmyN3JVM7A8HX/EH7P4pc9PZroOx/IlnqYoBBg2Qjkq6OKI692eYWbhf8LoFKFNGGO+0FdlO8eSWIJ4= X-Received: by 2002:a17:906:2ccb:b0:7ad:9892:921a with SMTP id r11-20020a1709062ccb00b007ad9892921amr15232456ejr.506.1669040417808; Mon, 21 Nov 2022 06:20:17 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Jonathan Wakely Date: Mon, 21 Nov 2022 14:20:06 +0000 Message-ID: Subject: Re: Guaranteed copy elision To: Yubin Ruan Cc: gcc-help Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-0.8 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On Mon, 21 Nov 2022 at 14:17, Yubin Ruan wrote: > It seems that currently the only way to guarantee efficiency is to use move instead. The move will happen automatically. All you need to do is have an efficient move constructor, the compiler does the rest. You do not need to say 'return std::move(local1);' because that happens automatically.