From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3907 invoked by alias); 11 Mar 2011 14:41:22 -0000 Received: (qmail 3899 invoked by uid 22791); 11 Mar 2011 14:41:21 -0000 X-SWARE-Spam-Status: No, hits=-1.8 required=5.0 tests=AWL,BAYES_00,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mail.codesourcery.com (HELO mail.codesourcery.com) (38.113.113.100) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 11 Mar 2011 14:41:13 +0000 Received: (qmail 12359 invoked from network); 11 Mar 2011 14:41:11 -0000 Received: from unknown (HELO digraph.polyomino.org.uk) (joseph@127.0.0.2) by mail.codesourcery.com with ESMTPA; 11 Mar 2011 14:41:11 -0000 Received: from jsm28 (helo=localhost) by digraph.polyomino.org.uk with local-esmtp (Exim 4.72) (envelope-from ) id 1Py3Wf-0003Mk-QU; Fri, 11 Mar 2011 14:41:09 +0000 Date: Fri, 11 Mar 2011 14:41:00 -0000 From: "Joseph S. Myers" To: Jason Merrill cc: Nathan Froyd , gcc-patches@gcc.gnu.org Subject: Re: [PATCH 15/18] move REAL_IDENTIFIER_TYPE_VALUE to be a field of lang_identifier In-Reply-To: <4D7A2648.40005@redhat.com> Message-ID: References: <1299817406-16745-1-git-send-email-froydnj@codesourcery.com> <1299817406-16745-16-git-send-email-froydnj@codesourcery.com> <4D7A2648.40005@redhat.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII 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-03/txt/msg00616.txt.bz2 On Fri, 11 Mar 2011, Jason Merrill wrote: > On 03/10/2011 11:23 PM, Nathan Froyd wrote: > > I'm not overly fond of the conditionals (especially in error_operand_p) > > but I don't think it's reasonable to make IDENTIFIER_NODE bigger and > > penalize the other FEs just because the C++ FE is playing games with > > TREE_TYPE. > > The C++ FE expects that we can check the TREE_TYPE of anything that appears as > an expression, and uses IDENTIFIER_NODE to indicate a dependent name within > templates. If you want to break TREE_TYPE on IDENTIFIER_NODE, you need to > change the representation of dependent names so that we can continue to use > TREE_TYPE on all expressions. There's a longstanding ambition to give identifiers a static type other than "tree". That would tend to suggest a representation such as DEPENDENT_NAME_EXPR (a tree wrapping an identifier). -- Joseph S. Myers joseph@codesourcery.com