all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Alan Mackenzie <acm@muc.de>
To: Yasushi SHOJI <yasushi.shoji@gmail.com>
Cc: emacs-devel@gnu.org
Subject: Re: c-indent-line-or-region with 500 char
Date: Mon, 28 Jan 2019 11:11:20 +0000	[thread overview]
Message-ID: <20190128111120.GA16059@ACM> (raw)
In-Reply-To: <20181208135351.GA17410@ACM>

Hello, Yashi.

Unfortunately, the patch I suggested in my last post was faulty.

I've now committed a better patch to Emacs master, which should have
fixed the problem.

All the best!

-- 
Alan Mackenzie (Nuremberg, Germany).


On Sat, Dec 08, 2018 at 13:53:51 +0000, Alan Mackenzie wrote:
> Hello, Yashi.

> On Mon, Nov 26, 2018 at 22:19:15 +0900, Yasushi SHOJI wrote:
> > Hello,

> > I just found this odd behavior on my Emacs and I'd like to ask how to
> > fix it.  I'm attaching a.c with 500 chars in. Go to the very bottom of
> > the file and hitting the tab will move the cursors to the right. hitting the
> > tab key again moves it again. It just keeps going.

> > If you delete some char from the file, it stop behaving.

> > I can reproduce this with the following Emacs with `-q`.

> >  - Debian Sid's Emacs 1:25.2+1-11
> >  - The current tip of emacs-26 branch (ea624626)

> > Does anyone see the behavior?

> Yes, this was one of these bugs which was fairly easy to diagnose, but
> difficult to decide how to fix.  Thanks for taking the trouble to report
> this.

> Your file is actually 502 bytes long.  At some place in CC Mode, there
> was a call to (c-beginning-of-statement-1 ...) with a search limit of
> 500 bytes.  This just failed to reach the # of the #define at the
> beginning of the buffer, hence mis-analysed the text, leading to the
> strange behaviour.

> When a random byte is removed, this 500 limit was just big enough to
> reach that # at the beginning of the buffer, hence analysed it
> correctly, and the <tab> key worked properly.

> The fix in the patch below amends c-beginning-of-statement-1 to detect
> hitting the limit.  It should apply cleanly to the emacs-26 branch.

> Could you please try out this patch (to
> emacs/lisp/progmodes/cc-engine.el), byte compile cc-engine.el, try it
> out on your real code, and confirm to me that it fixes the bug, or tell
> me what's still not working.  If you want any help applying the patch or
> byte compiling the file, feel free to send me private email.

> Thanks again for the report!

[ .... ]



      reply	other threads:[~2019-01-28 11:11 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-26 13:19 c-indent-line-or-region with 500 char Yasushi SHOJI
2018-12-08 13:53 ` Alan Mackenzie
2019-01-28 11:11   ` Alan Mackenzie [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190128111120.GA16059@ACM \
    --to=acm@muc.de \
    --cc=emacs-devel@gnu.org \
    --cc=yasushi.shoji@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.