From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Dmitry Gutov Newsgroups: gmane.emacs.bugs Subject: bug#22983: syntax-ppss returns wrong result. Date: Sun, 20 Mar 2016 01:20:13 +0200 Message-ID: References: <20160311151512.GD2888@acm.fritz.box> <44b4fa9e-ec8e-98a4-d8ad-e799fffa7959@yandex.ru> <87zitucbtu.fsf@gmail.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1458429681 22761 80.91.229.3 (19 Mar 2016 23:21:21 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 19 Mar 2016 23:21:21 +0000 (UTC) Cc: Alan Mackenzie , 22983@debbugs.gnu.org To: Vitalie Spinu Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun Mar 20 00:21:10 2016 Return-path: Envelope-to: geb-bug-gnu-emacs@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 1ahQBA-0007ma-Og for geb-bug-gnu-emacs@m.gmane.org; Sun, 20 Mar 2016 00:21:08 +0100 Original-Received: from localhost ([::1]:50863 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ahQBA-0004Ll-3K for geb-bug-gnu-emacs@m.gmane.org; Sat, 19 Mar 2016 19:21:08 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:54978) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ahQB7-0004LZ-0u for bug-gnu-emacs@gnu.org; Sat, 19 Mar 2016 19:21:05 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ahQB3-0003eE-R9 for bug-gnu-emacs@gnu.org; Sat, 19 Mar 2016 19:21:04 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:56881) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ahQB3-0003eA-MQ for bug-gnu-emacs@gnu.org; Sat, 19 Mar 2016 19:21:01 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1ahQB3-0006yJ-I8 for bug-gnu-emacs@gnu.org; Sat, 19 Mar 2016 19:21:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 19 Mar 2016 23:21:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22983 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 22983-submit@debbugs.gnu.org id=B22983.145842962226746 (code B ref 22983); Sat, 19 Mar 2016 23:21:01 +0000 Original-Received: (at 22983) by debbugs.gnu.org; 19 Mar 2016 23:20:22 +0000 Original-Received: from localhost ([127.0.0.1]:54008 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ahQAQ-0006xK-5M for submit@debbugs.gnu.org; Sat, 19 Mar 2016 19:20:22 -0400 Original-Received: from mail-wm0-f48.google.com ([74.125.82.48]:38431) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ahQAO-0006x5-SC for 22983@debbugs.gnu.org; Sat, 19 Mar 2016 19:20:21 -0400 Original-Received: by mail-wm0-f48.google.com with SMTP id l68so80959008wml.1 for <22983@debbugs.gnu.org>; Sat, 19 Mar 2016 16:20:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=FpDLQm7PBW+EuFFIbgcREsig3n7Iw/iK3Pm2qcmg6Pk=; b=S9BdT79nVWwSLI2+a/N2xNAlHrjAlIY1s0Si/1bO1Rqid0YV3VkqvzebBSjW0V668T KttbK7YM56cyAdHbYXdgJOSv9smiDz6gGbGq4PI6EgkaVcHLxkI6YI/lfQeGbSQ5OHM3 gblXq0R+9wvrExBnWv221Yb8RMONCxXRTEZYY9LY2DGObOwGYcXrylzyqu1aIL3eStEl i9Rqzxk37KXtBxIlPJBGMREh+Emstv9zz/E9SGsNjmHRVceINB74LaBkNpFz5V/FNxHG +q9/ojl6yOEOd0krrtIqmWEsfnzO8DUtmKetjHJ+bHueGJzIUywgBBntaKgVhfO+F3W/ iu+w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:subject:to:references:cc:from:message-id :date:user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=FpDLQm7PBW+EuFFIbgcREsig3n7Iw/iK3Pm2qcmg6Pk=; b=LNGK+anQcNBWpk1322IAoC99qXkXyahfbJel9NW0D10ndqhRZs2Ed4FacG3XCqIX04 3iOzQDUbBd058wxmtdI03SHbKnAqDmH/k0PxCTxDHWG7fHPUKHPo0cNsYBHE3WOee7y9 sicgg5/hkDjCvaMRGVC7CiMrDBARyz65r79ZbtwTBzLNpi6+UdKtmvmBa8MjfiEWzaYC 3phtM3REh9ATtHhoG3YuFa2ecqE8bN6gM7s2quAl9FJOE06kYVRIVPnX2WsdY6s/G6bn rFN7RzewrgJeV60kL34ZM/ykuiY8GkXzTrsQbpNqEqL4S+gG8pJ27Wn+0RVa+wwfVDXG zIVA== X-Gm-Message-State: AD7BkJL8meKDaaPQFCoyEoSKo9BnDVD8RDXPR6Qbz4i/5dKZAR6PlpgZWAJj+3U3Bto9Ow== X-Received: by 10.28.93.79 with SMTP id r76mr6371349wmb.32.1458429615341; Sat, 19 Mar 2016 16:20:15 -0700 (PDT) Original-Received: from [192.168.1.2] ([185.105.175.24]) by smtp.googlemail.com with ESMTPSA id ll9sm18377265wjc.29.2016.03.19.16.20.13 (version=TLSv1/SSLv3 cipher=OTHER); Sat, 19 Mar 2016 16:20:14 -0700 (PDT) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.0 In-Reply-To: <87zitucbtu.fsf@gmail.com> 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-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:115107 Archived-At: On 03/20/2016 01:00 AM, Vitalie Spinu wrote: > > Thanks for this. This is a step in right direction IMHO. > > One side note. `parsep-ppss` has a condition-case for args-out-of-range which > could be easily optimized out. You already know that you are calling > parse-partial-sexp with out of range arguments if narrowing is in place. That seems like it might make the code more complex: there are several parse-partial-sexp calls inside condition-case (for different situations with the existing cache), and we may have to add a comparison near each of them. > The > current error check obfuscates the logic and makes debugging harder. Would it be > possible for you to have a look once you are on it? Not a big deal though. I think you can still follow the execution flow with edebug, can't you? If you're debugging a problem with args-out-of-range, another option is to replace `condition-case' with `condition-case-unless-debug' and re-evaluate the definition (but restore it when you're done, otherwise the args-out-of-range handler won't fire, I think).