From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8607 invoked by alias); 7 Nov 2002 09:11:53 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 8599 invoked from network); 7 Nov 2002 09:11:52 -0000 Received: from unknown (HELO monkey.daikokuya.co.uk) (213.152.55.49) by sources.redhat.com with SMTP; 7 Nov 2002 09:11:52 -0000 Received: from neil by monkey.daikokuya.co.uk with local (Exim 3.36 #1 (Debian)) id 189iha-0003Lp-00; Thu, 07 Nov 2002 09:11:50 +0000 Date: Thu, 07 Nov 2002 01:11:00 -0000 From: Neil Booth To: "Martin v. L?wis" Cc: gcc-patches@gcc.gnu.org Subject: Re: Implementing Universal Character Names in identifiers Message-ID: <20021107091150.GA12793@daikokuya.co.uk> References: <200210280715.g9S7FdI2003815@paros.informatik.hu-berlin.de> <20021107080904.GE11859@daikokuya.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4i X-SW-Source: 2002-11/txt/msg00423.txt.bz2 Martin v. L?wis wrote:- > > It would be nice if you could handle escaped newline issues in > > the UCS; I don't think your patch does that. > > You mean, like > > \u00\ > c0 > > ? This is undefined behaviour, in 2.1/1.2, and I think it should be an > error. It is an error indeed in my patch; the compiler reports > > non-hex digit '\' in universal-character-name We should definitely accept it. Why should UCNs be different from everything else? I can see that C++ calls it undefined behaviour, but C99 appears to require it. It's also important, to me at least, from a QOI perspective. > > Also, as a QOI issue I'd like token pasting to work for UCS's, > > though the standard does not require it. Does your patch handle > > that? > > You mean, like > > #define Foo(x,y) x##y > > void Foo(bar\u00, c0){} > > I think this *must* be an error; it's not an option to accept it, > since bar\u00 is not a token. A backslash is a token; so is u00c0. Your example is indeed an error, but was not what I had in mind. I suspect pasting just works, anyway. Neil.