From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Alan Mackenzie Newsgroups: gmane.emacs.devel Subject: Re: [PATCH] support a few of the new features of C++11 in syntax highlighting Date: Sun, 26 Jan 2014 15:21:44 +0000 Message-ID: <20140126152144.GC2646@acm.acm> References: <52E43BFD.3020209@dancol.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1390749906 16182 80.91.229.3 (26 Jan 2014 15:25:06 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 26 Jan 2014 15:25:06 +0000 (UTC) Cc: emacs-devel@gnu.org, Stefan Monnier , Paul Pogonyshev To: Daniel Colascione Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Jan 26 16:25:12 2014 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1W7RaC-0006x5-IS for ged-emacs-devel@m.gmane.org; Sun, 26 Jan 2014 16:25:12 +0100 Original-Received: from localhost ([::1]:55015 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W7RaB-00045p-U2 for ged-emacs-devel@m.gmane.org; Sun, 26 Jan 2014 10:25:11 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:37588) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W7Ra4-00042J-1i for emacs-devel@gnu.org; Sun, 26 Jan 2014 10:25:10 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1W7RZy-0006oh-0q for emacs-devel@gnu.org; Sun, 26 Jan 2014 10:25:03 -0500 Original-Received: from colin.muc.de ([193.149.48.1]:12098 helo=mail.muc.de) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W7RZx-0006oR-NT for emacs-devel@gnu.org; Sun, 26 Jan 2014 10:24:57 -0500 Original-Received: (qmail 36015 invoked by uid 3782); 26 Jan 2014 15:24:57 -0000 Original-Received: from acm.muc.de (pD951B5E9.dip0.t-ipconnect.de [217.81.181.233]) by colin.muc.de (tmda-ofmipd) with ESMTP; Sun, 26 Jan 2014 16:24:55 +0100 Original-Received: (qmail 4806 invoked by uid 1000); 26 Jan 2014 15:21:44 -0000 Content-Disposition: inline In-Reply-To: <52E43BFD.3020209@dancol.org> User-Agent: Mutt/1.5.21 (2010-09-15) X-Delivery-Agent: TMDA/1.1.12 (Macallan) X-Primary-Address: acm@muc.de X-detected-operating-system: by eggs.gnu.org: FreeBSD 8.x X-Received-From: 193.149.48.1 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:169125 Archived-At: Hello, all. On Sat, Jan 25, 2014 at 02:34:37PM -0800, Daniel Colascione wrote: > On 01/25/2014 01:56 PM, Stefan Monnier wrote: > >> I would advise you to send this to the bug list. > >> Although a similar (?) patch has been there for a year. > >> http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13871 > >> So maybe send it as followup to that if it seems appropriate to you. > > Agreed. Of course, we can't install this right now since we're in > > feature freeze, but if someone could deal with this soon after we re-open > > the trunk, that would be helpful, > I have a much older C++11 (from back when it was called C++0x) patch (it > should be in the archives somewhere) that supports "auto", attributes, > the ">>" template-closing syntax, and a few of C++'s contextual > keywords, like "override". I should update it after the feature freeze. > A big challenge is making uniform initialization work properly; I'd love > Alan's thoughts on the best way to approach that subject. I think we > also need a new indentation type for lambdas. I've had enhancements for some C++11 features integrated into CC Mode at SourceForge for some while, but I haven't yet pushed them to the repository there (with one exception). These features are: (i) ">>" as double template ender (already at SourceForge); (ii) "auto foo = ;"; (iii) "decltype (foo)" as a type; (iv) "auto foo () -> { ..... }". Daniel, in the end I didn't use the code in your patch, though the test file was handy indeed. I'd been hoping to implement more C++11 features before releasing all the above, but I'm not getting much done. I don't have enough time to spend on CC Mode, and I'm largely bogged down with bug fixes at the moment. If somebody were willing to spend the time to learn how CC Mode works, then implement more of C++11's features, I'd be most grateful for the help. -- Alan Mackenzie (Nuremberg, Germany).