From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21911 invoked by alias); 18 Nov 2004 04:18:54 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 21858 invoked from network); 18 Nov 2004 04:18:50 -0000 Received: from unknown (HELO mail-out3.apple.com) (17.254.13.22) by sourceware.org with SMTP; 18 Nov 2004 04:18:50 -0000 Received: from mailgate1.apple.com (a17-128-100-225.apple.com [17.128.100.225]) by mail-out3.apple.com (8.12.11/8.12.11) with ESMTP id iAI4OrnE003952 for ; Wed, 17 Nov 2004 20:24:53 -0800 (PST) Received: from relay4.apple.com (relay4.apple.com) by mailgate1.apple.com (Content Technologies SMTPRS 4.3.14) with ESMTP id ; Wed, 17 Nov 2004 20:19:27 -0800 Received: from [17.219.197.172] ([17.219.197.172]) by relay4.apple.com (8.12.11/8.12.11) with ESMTP id iAI4Il8h027323; Wed, 17 Nov 2004 20:18:47 -0800 (PST) In-Reply-To: References: <8AD5AEEF-3914-11D9-8BD2-000A95BCF344@apple.com> Mime-Version: 1.0 (Apple Message framework v619) Content-Type: text/plain; charset=US-ASCII; format=flowed Message-Id: Content-Transfer-Encoding: 7bit Cc: gcc mailing list From: Matt Austern Subject: Re: generalized lvalues Date: Thu, 18 Nov 2004 04:24:00 -0000 To: Andrew Pinski X-SW-Source: 2004-11/txt/msg00611.txt.bz2 On Nov 17, 2004, at 7:50 PM, Andrew Pinski wrote: > > On Nov 17, 2004, at 10:47 PM, Matt Austern wrote: > >> 1. It broke valid C++ programs. If we overload a function on >> constness, like foo(int&) and foo(const int&), then invoking it as >> foo((int) x) is required to call the const version. Generalized >> lvalues made us choose the latter. > > If it broke it please file a bug and don't complain that we broke it. No, no! Other way around. The fact that we used to have generalized lvalues broke valid C++ programs, and getting rid of generalized lvalues fixed that class of bugs. That's one of the reasons we got rid of them. That's what I was trying to say, anyway. I was trying to list all the reasons I knew of why we got rid of generalized lvalues. I was not trying to list reasons for bringing them back. My apologies if I was unclear. --Matt