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#15594: trunk r114639: * lisp/progmodes/ruby-mode.el (ruby-smie-grammar): Add rule for paren-free Date: Sat, 26 Oct 2013 05:19:03 +0400 Message-ID: <526B1887.1000004@yandex.ru> References: <87a9icobbl.fsf@yandex.ru> <525C9926.9030202@yandex.ru> <5264C37E.6080300@yandex.ru> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1382750417 28141 80.91.229.3 (26 Oct 2013 01:20:17 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 26 Oct 2013 01:20:17 +0000 (UTC) Cc: 15594@debbugs.gnu.org To: Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sat Oct 26 03:20:20 2013 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 1VZsY8-0008Ih-1M for geb-bug-gnu-emacs@m.gmane.org; Sat, 26 Oct 2013 03:20:20 +0200 Original-Received: from localhost ([::1]:33169 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VZsY7-0007vW-JY for geb-bug-gnu-emacs@m.gmane.org; Fri, 25 Oct 2013 21:20:19 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:35977) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VZsXy-0007vO-4P for bug-gnu-emacs@gnu.org; Fri, 25 Oct 2013 21:20:17 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VZsXq-0002OS-Q1 for bug-gnu-emacs@gnu.org; Fri, 25 Oct 2013 21:20:10 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:58478) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VZsXq-0002ON-Mj for bug-gnu-emacs@gnu.org; Fri, 25 Oct 2013 21:20:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1VZsXq-0002Y4-0n for bug-gnu-emacs@gnu.org; Fri, 25 Oct 2013 21:20:02 -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, 26 Oct 2013 01:20:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 15594 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 15594-submit@debbugs.gnu.org id=B15594.13827503549731 (code B ref 15594); Sat, 26 Oct 2013 01:20:01 +0000 Original-Received: (at 15594) by debbugs.gnu.org; 26 Oct 2013 01:19:14 +0000 Original-Received: from localhost ([127.0.0.1]:44263 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1VZsX3-0002Ws-Og for submit@debbugs.gnu.org; Fri, 25 Oct 2013 21:19:13 -0400 Original-Received: from mail-lb0-f182.google.com ([209.85.217.182]:42029) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1VZsX1-0002Wd-W4 for 15594@debbugs.gnu.org; Fri, 25 Oct 2013 21:19:12 -0400 Original-Received: by mail-lb0-f182.google.com with SMTP id w6so1310876lbh.13 for <15594@debbugs.gnu.org>; Fri, 25 Oct 2013 18:19:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=hTP9xlszuw4+PQqIIb7vupJ9dYl27JPlXxbu1bNr7EI=; b=ucPjkpBpwm/GrWjAD4hAC6IiXtZa7aNGigvzKNLwNFlVS/UL0eMbhkIPx8Ph4TjQYN /CMiRljByVGp/0OdbOtg4CCii85br+wq3iGbCNeSChdtGFXSKI/ZsifKM7X2E2PsX7bE +e5yP7PoudbMrU+WdviyzGvhBe2caMs5rpVVhTnl00lYFREflO3j87bBSQUYn2BUBaL9 G3YRuGp9vnOLa7vwuntfX+YcdS1EC/JD7cF36O5KVdITZEtYufNb0roilrCz87Jq8xZi T/jkcqwsy39036be/gWuejGU2IvJHBJ3wF8oYk2ZS8S0r/QucV4htzw+9YS1rdRvepNg l0PQ== X-Received: by 10.112.64.36 with SMTP id l4mr3952380lbs.15.1382750345964; Fri, 25 Oct 2013 18:19:05 -0700 (PDT) Original-Received: from [192.168.1.3] ([178.252.98.87]) by mx.google.com with ESMTPSA id ac2sm4248445lbc.10.2013.10.25.18.19.04 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 25 Oct 2013 18:19:05 -0700 (PDT) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.0 In-Reply-To: X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.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:79664 Archived-At: On 21.10.2013 17:25, Stefan Monnier wrote: >>> Calling ruby-smie--forward-token is a bit dangerous since that function >>> might itself be called from ruby-smie--forward-token. It might work, >>> but you'll have to think hard about why an inf-loop is not possible. >> Hopefully because both `ruby-smie--forward-token' and >> ruby-smie--backward-token' would only call `ruby-smie--forward-token', and >> only when (> pos (point)), IOW there has to be some whitespace skipping done >> between the recursive calls. > > Only recursing in one direction (only forward or only backward) is > a good way to guarantee progress, indeed. But currently > ruby-smie--implicit-semi-p calls ruby-smie--backward-token, so beware. That's a good point. And this would probably be more expensive approach, so I went with local search, for now.