From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Alan Mackenzie Newsgroups: gmane.emacs.devel Subject: Re: How long have I got? (For emacs-26 bug fixes.) Date: Tue, 12 Dec 2017 19:24:23 +0000 Message-ID: <20171212192423.GB5274@ACM> References: <20171206202643.GB4098@ACM> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: blaine.gmane.org 1513107136 11990 195.159.176.226 (12 Dec 2017 19:32:16 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 12 Dec 2017 19:32:16 +0000 (UTC) User-Agent: Mutt/1.7.2 (2016-11-26) Cc: emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Dec 12 20:32:12 2017 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eOqHj-0002sn-Io for ged-emacs-devel@m.gmane.org; Tue, 12 Dec 2017 20:32:11 +0100 Original-Received: from localhost ([::1]:60154 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eOqHq-0001ka-SA for ged-emacs-devel@m.gmane.org; Tue, 12 Dec 2017 14:32:18 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:57487) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eOqHh-0001aU-KH for emacs-devel@gnu.org; Tue, 12 Dec 2017 14:32:11 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eOqHe-0001am-Vp for emacs-devel@gnu.org; Tue, 12 Dec 2017 14:32:09 -0500 Original-Received: from colin.muc.de ([193.149.48.1]:16442 helo=mail.muc.de) by eggs.gnu.org with smtp (Exim 4.71) (envelope-from ) id 1eOqHe-0001Za-KG for emacs-devel@gnu.org; Tue, 12 Dec 2017 14:32:06 -0500 Original-Received: (qmail 87270 invoked by uid 3782); 12 Dec 2017 19:32:02 -0000 Original-Received: from acm.muc.de (p548C6C38.dip0.t-ipconnect.de [84.140.108.56]) by colin.muc.de (tmda-ofmipd) with ESMTP; Tue, 12 Dec 2017 20:32:02 +0100 Original-Received: (qmail 5843 invoked by uid 1000); 12 Dec 2017 19:24:23 -0000 Content-Disposition: inline In-Reply-To: X-Delivery-Agent: TMDA/1.1.12 (Macallan) X-Primary-Address: acm@muc.de X-detected-operating-system: by eggs.gnu.org: FreeBSD 9.x [fuzzy] X-Received-From: 193.149.48.1 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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" Xref: news.gmane.org gmane.emacs.devel:220943 Archived-At: Hello, Eli. On Wed, Dec 06, 2017 at 22:18:34 +0000, Eli Zaretskii wrote: > On December 6, 2017 8:26:43 PM GMT+00:00, Alan Mackenzie wrote: > > Hello, Emacs. > > I'm currently awaiting confirmatory feedback from a wonderfully > > prolific > > bug reporter that three CC Mode bugs actually are fixed. > > This could arrive tomorrow, but it could take longer. > > I would very much like these bugs to be corrected for Emacs 26. Are > > there any plans (secret or not) for a cut off day for bug fixes? > It depends on the severity of the bug and the risks inherent in the fix. > In general, we still plan one more pretest, so there's time. Whether > a given fix will be deemed safe enough and worth it to be included in > Emacs 26 is a case by case decision. I have heard back from the bug reporter: two of the bugs are fixed, one is partially fixed. Here are the three (fixed) bugs: (i) False fontification of C++ function call as type (partially fixed, see below). In the following, if ( nullptr == _someVar ) { std::string aStr( isQueued() ? "Send" : "Write" ); bool someBool = false; } , "isQueued" is being fontified as a type rather than being left unfontified as the function call it is. (ii) Misfontified C++ member initialiser list after "throw". In the following, 1 #define someNn 1 3 struct TheClass 4 { 5 int theABC, abcMode, theThing, abcConfig; 7 struct XMLInitFailedException 8 { 9 XMLInitFailedException(void) { } 10 ~XMLInitFailedException(void) { } 11 }; 13 TheClass( void ) throw( TheClass::XMLInitFailedException ) 14 : theABC( 0 ), 15 abcMode( someNn ), 16 theThing( 0 ), 17 abcConfig( 0 ) 18 { 19 // do not do anything! 20 } 22 ~TheClass( void ) { } 24 }; 26 int main() 27 { 28 return 0; 29 } , the initialiser list at L14-17 is being chaotically fontified: L14 has no face (correct), in L15 "abcMode" has function-face, on L16-17, the two identifiers have variable-name-face. (iii) Declaration in a C++ lambda form not fontified. In the following: 1 struct SomeType { }; 2 struct SomeOther { SomeType someMethod(void)const{return SomeType();} }; 3 int main() 4 { 5 auto someLambda = [&]( const SomeOther& access ) 6 { 7 const SomeType& someType = access.someMethod(); 8 }; 9 } , in L7, "SomeType" and "someType" aren't getting fontified at all. ######################################################################### The problem still remaining in (i) is in: someStruct x ( ( nullptr != x ) ? 3 : 4 ); , the extra parens around "nullptr != x" are causing "someStruct" to lose its fontification. I have a suspicion that this is really a distinct bug. Two and a half of these bugs are fixed, and I'm confident their risk level is low. I would like to commit the fixes to the release branch. Is that OK? (Otherwise I will commit them to master.) > Thanks. -- Alan Mackenzie (Nuremberg, Germany).