From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30911 invoked by alias); 12 Oct 2009 19:20:46 -0000 Received: (qmail 30903 invoked by uid 22791); 12 Oct 2009 19:20:45 -0000 X-SWARE-Spam-Status: No, hits=-2.5 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS,SPF_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, 12 Oct 2009 19:20:40 +0000 Received: from int-mx03.intmail.prod.int.phx2.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.16]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id n9CJKcKX019814 for ; Mon, 12 Oct 2009 15:20:38 -0400 Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199]) by int-mx03.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id n9CJKcHN000865; Mon, 12 Oct 2009 15:20:38 -0400 Received: from opsy.redhat.com (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id n9CJKaT8024904; Mon, 12 Oct 2009 15:20:37 -0400 Received: by opsy.redhat.com (Postfix, from userid 500) id 4629A37828F; Mon, 12 Oct 2009 13:20:36 -0600 (MDT) From: Tom Tromey To: Jakub Jelinek Cc: gcc-patches@gcc.gnu.org Subject: Re: Patch ping References: <20091012122237.GJ14664@tyan-ft48-01.lab.bos.redhat.com> Reply-To: Tom Tromey Date: Mon, 12 Oct 2009 19:23:00 -0000 In-Reply-To: <20091012122237.GJ14664@tyan-ft48-01.lab.bos.redhat.com> (Jakub Jelinek's message of "Mon, 12 Oct 2009 14:22:37 +0200") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux) 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: 2009-10/txt/msg00784.txt.bz2 >>>>> "Jakub" == Jakub Jelinek writes: Jakub> Could you please in light of Jakub> http://gcc.gnu.org/ml/gcc-patches/2009-10/msg00179.html Jakub> review the libcpp bits of Jakub> http://gcc.gnu.org/ml/gcc-patches/2009-04/msg01099.html Jakub> ? I read the patch. Sorry about the delay -- these days my attention wanders a lot so pings for libcpp patches are very helpful. Most of the patch is clearly fine. I didn't see anything limiting this to C++0x, but I suppose that will be done outside libcpp. The patch refers to `CPP_OPTION (pfile, uliterals)' but I didn't see an addition to struct cpp_options. Would it be too much trouble to use calls to cpp_error_with_line for all new errors? I think this is generally preferable, and in this code I think it would also let us emit errors against locations inside strings. (And, for errors about unterminated strings, it would let us point to the start of the string, which seems better to me.) lex_raw_string uses _cpp_get_fresh_line, failing if that returns false. _cpp_get_fresh_line will always return false inside of a directive -- do we care about raw strings containing newlines in directives? Some nits.. >From lex_raw_string: +/* Lexes raw a string. The stored string contains the spelling, including I think the first sentence should be "Lexes a raw string". >From _cpp_lex_direct: + case 'R': /* 'L', 'u' or 'U' may introduce wide characters or strings. */ This comment needs an update. This isn't part of libcpp, but it seems to me that C_LEX_RAW_STRINGS is now confusingly named. Tom