From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Alan Mackenzie Newsgroups: gmane.emacs.bugs Subject: bug#30393: 24.4; cperl-mode: indentation failure Date: Tue, 6 Mar 2018 18:09:17 +0000 Message-ID: <20180306180917.GA7774@ACM> References: <20180209175040.63536.qmail@mail.muc.de> <3331f80a-c5aa-5cb9-8088-0a88888bdaca@yandex.ru> <20180210112654.GA4537@ACM> <20180211103610.GA4515@ACM> <20180212183800.GA5601@ACM> <20180305084255.GA4786@ACM> <83zi3msdms.fsf@gnu.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: blaine.gmane.org 1520360624 3690 195.159.176.226 (6 Mar 2018 18:23:44 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 6 Mar 2018 18:23:44 +0000 (UTC) User-Agent: Mutt/1.7.2 (2016-11-26) Cc: dgutov@yandex.ru, 30393@debbugs.gnu.org, monnier@IRO.UMontreal.CA, npostavs@users.sourceforge.net To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Tue Mar 06 19:23:40 2018 Return-path: Envelope-to: geb-bug-gnu-emacs@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 1etHFH-0007ao-JD for geb-bug-gnu-emacs@m.gmane.org; Tue, 06 Mar 2018 19:23:27 +0100 Original-Received: from localhost ([::1]:57479 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1etHHK-0003fy-7G for geb-bug-gnu-emacs@m.gmane.org; Tue, 06 Mar 2018 13:25:34 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:40126) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1etHGs-0003TA-Ik for bug-gnu-emacs@gnu.org; Tue, 06 Mar 2018 13:25:07 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1etHGo-00083T-Dm for bug-gnu-emacs@gnu.org; Tue, 06 Mar 2018 13:25:06 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:40099) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1etHGo-00083H-9H for bug-gnu-emacs@gnu.org; Tue, 06 Mar 2018 13:25:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1etHGo-00015R-3j for bug-gnu-emacs@gnu.org; Tue, 06 Mar 2018 13:25:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Alan Mackenzie Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 06 Mar 2018 18:25:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 30393 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 30393-submit@debbugs.gnu.org id=B30393.15203606744138 (code B ref 30393); Tue, 06 Mar 2018 18:25:02 +0000 Original-Received: (at 30393) by debbugs.gnu.org; 6 Mar 2018 18:24:34 +0000 Original-Received: from localhost ([127.0.0.1]:47996 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1etHGM-00014g-IX for submit@debbugs.gnu.org; Tue, 06 Mar 2018 13:24:34 -0500 Original-Received: from colin.muc.de ([193.149.48.1]:60158 helo=mail.muc.de) by debbugs.gnu.org with smtp (Exim 4.84_2) (envelope-from ) id 1etHGK-00014X-Vq for 30393@debbugs.gnu.org; Tue, 06 Mar 2018 13:24:33 -0500 Original-Received: (qmail 98428 invoked by uid 3782); 6 Mar 2018 18:24:31 -0000 Original-Received: from acm.muc.de (p548C78E6.dip0.t-ipconnect.de [84.140.120.230]) by colin.muc.de (tmda-ofmipd) with ESMTP; Tue, 06 Mar 2018 19:24:30 +0100 Original-Received: (qmail 7882 invoked by uid 1000); 6 Mar 2018 18:09:17 -0000 Content-Disposition: inline In-Reply-To: <83zi3msdms.fsf@gnu.org> X-Delivery-Agent: TMDA/1.1.12 (Macallan) X-Primary-Address: acm@muc.de X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:143963 Archived-At: Hello, Eli. On Mon, Mar 05, 2018 at 18:14:51 +0200, Eli Zaretskii wrote: > > Date: Mon, 5 Mar 2018 08:42:55 +0000 > > From: Alan Mackenzie > > Cc: 30393@debbugs.gnu.org, Dmitry Gutov , > > Noam Postavsky > > Existing C functions have been modified as follows: > > o - signal_after_change. > > * - Regardless of the settings of the change hooks, > > syntax-ppss-flush-cache will be called for an actual textual > > change. > > o - Fset_syntax_table. > > * - If the new table is literally different from the old, > > syntax-ppss-flush-cache will be called with an argument of -1. > > o - Fmodify_syntax_entry. > > * - If the new entry is literally different from the old one, > > syntax-ppss-flush-cache will be called with an argument of -1. > > o - init_syntax_once and syms_of_syntax. > > * - Administrative amendments. > > o - set_properties, add_properties, remove_properties. If a > > syntax-table property set or removed, whether directly or via a > > category property, potentially alters the parsing of literals, > > syntax-ppss-flush-cache will be called. > Any reason why you introduce 2 new primitives that no Lisp code uses? least-literal-difference-between-syntax-tables and syntax-tables-literally-different-p? They're for helping with debugging. Syntax tables, like char tables in general, are awkward unwieldy beasts. Sooner or later, somebody debugging is going to want to compare two syntax tables which aren't behaving as she expects they should. Those primitives (which, yes, will need documenting) were cheap and easy to write, but would be awkward and unwieldy to write as one-offs in Lisp. > In any case, this needs documentation changes if and when it's agreed > upon. Yes, but less documentation that would be needed without it. Introducing the syntax-ppss mechanism into syntax primitives broke them, since its cache invalidation is imperfect. With my patch, aside from any bugs in it, those primitives are less broken, hence less documentation of the breakage is needed. > Thanks. -- Alan Mackenzie (Nuremberg, Germany).