From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 22503 invoked by alias); 10 Jul 2013 17:13:34 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 22493 invoked by uid 89); 10 Jul 2013 17:13:33 -0000 X-Spam-SWARE-Status: No, score=-6.1 required=5.0 tests=AWL,BAYES_00,RCVD_IN_HOSTKARMA_W,RCVD_IN_HOSTKARMA_WL,RP_MATCHES_RCVD,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.1 Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Wed, 10 Jul 2013 17:13:33 +0000 Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id r6AHDVKM014788 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Wed, 10 Jul 2013 13:13:31 -0400 Received: from barimba (ovpn-113-131.phx2.redhat.com [10.3.113.131]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id r6AHDTAc024550 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NO); Wed, 10 Jul 2013 13:13:30 -0400 From: Tom Tromey To: Pedro Alves Cc: Andrew Burgess , gdb-patches@sourceware.org Subject: Re: [PATCH] ada-lang.c:coerce_unspec_val_to_type: Preserve laziness. References: <20130704182244.16683.55719.stgit@brno.lan> <51D6A00A.2050803@broadcom.com> <51D6A2CE.7080502@redhat.com> Date: Wed, 10 Jul 2013 17:13:00 -0000 In-Reply-To: <51D6A2CE.7080502@redhat.com> (Pedro Alves's message of "Fri, 05 Jul 2013 11:41:18 +0100") Message-ID: <87mwpugwxy.fsf@fleche.redhat.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-SW-Source: 2013-07/txt/msg00281.txt.bz2 >>>>> "Pedro" == Pedro Alves writes: Pedro> That works, but I had originally discarded such an approach Pedro> because it looked brittle to me. E.g., I was toying with optimizing Pedro> value_optimized_out by only fetching lazy values if it really can't Pedro> avoid it, and such a change would render this subtly broken. This code in ada-lang.c and similar code elsewhere always seems to me to be a call for a new value copy-constructor that takes a type argument. Then any necessary wackiness can be isolated in value.c. Tom