Subject: 25.3; Errors in narrowed buffers in CC-mode
From: George Plymale II <[email-masked]>
To: [email-masked]
Date: Mon, 25 Sep 2017 02:21:25 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

The inception of this bug report can be found at:
https://github.com/josteink/csharp-mode/issues/119

For those too lazy to follow the link, here's the gist: When I press
`RET' at the beginning or end of a narrowed buffer in CC-mode, I see
errors like this:

c-determine-limit: Args out of range: #<buffer dired.c>, 1, 1564

A full backtrace yields something like this:

Debugger entered--Lisp error: (args-out-of-range #<buffer dired.c> 1 1564)
  parse-partial-sexp(1 1564)
  c-determine-limit(500)
  c-guess-basic-syntax()
  c-indent-line()
  indent-according-to-mode()
  electric-indent-post-self-insert-function()
  self-insert-command(1)
  newline(nil 1)
  funcall-interactively(newline nil 1)
  call-interactively(newline nil nil)
  command-execute(newline)
  
As you can see from the filename there, the file I was testing this with
was dired.c from the very Emacs source tree (although I have now tested
with various header files, other C files, and of course, C# files).

I initially tested this on a macOS system, but now I have also tested
this on Ubuntu and I see the same issue occurring on both systems (which
are both using Emacs 25.3).

I also noticed that this issue does not occur in Emacs 24.