From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23296 invoked by alias); 7 Nov 2011 19:46:31 -0000 Received: (qmail 23281 invoked by uid 22791); 7 Nov 2011 19:46:30 -0000 X-SWARE-Spam-Status: No, hits=-7.0 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI,RP_MATCHES_RCVD,SPF_HELO_PASS X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 07 Nov 2011 19:46:16 +0000 Received: from int-mx02.intmail.prod.int.phx2.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id pA7JkFEp017578 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Mon, 7 Nov 2011 14:46:15 -0500 Received: from anchor.twiddle.net (vpn-225-162.phx2.redhat.com [10.3.225.162]) by int-mx02.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id pA7JkEjJ012893; Mon, 7 Nov 2011 14:46:15 -0500 Message-ID: <4EB83586.2010109@redhat.com> Date: Mon, 07 Nov 2011 20:28:00 -0000 From: Richard Henderson User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:7.0) Gecko/20110927 Thunderbird/7.0 MIME-Version: 1.0 To: Torvald Riegel CC: Jason Merrill , GCC Patches , Aldy Hernandez Subject: Re: [trans-mem] Fix instantiation of transaction expressions. References: <1320675134.18023.349.camel@triegel.csb> <4EB807FF.3070300@redhat.com> <4EB82BD3.1030507@redhat.com> <1320694411.32515.6.camel@triegel.csb> In-Reply-To: <1320694411.32515.6.camel@triegel.csb> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org X-SW-Source: 2011-11/txt/msg01047.txt.bz2 On 11/07/2011 11:33 AM, Torvald Riegel wrote: > Fix instantiation of transaction expressions. > > * cp/pt.c (tsubst_expr) [TRANSACTION_EXPR]: If body is not a > statement, create an expression instead. > * cp/cp-tree.h (TRANSACTION_EXPR_IS_STMT, build_transaction_expr): New. > * cp/parser.c (cp_parser_transaction_expression): Use > build_transaction_expr. > * cp/semantics.c (build_transaction_expr): New. > (finish_transaction_stmt): Set TRANSACTION_EXPR_IS_STMT. > * testsuite/g++.dg/tm/template-1.C: New. Looks good to me. > + tmp = RECUR (TRANSACTION_EXPR_BODY (t)); Dead store now. r~