Subject: bug#16934: closed (Re: bug#16934: 24.3.50; completion-table-dynamic causes error numberp nil)

From: [email-masked] (GNU bug Tracking System)
Date: Tue, 04 Mar 2014 14:39:05 +0000

Your bug report

#16934: 24.3.50; completion-table-dynamic causes error numberp nil

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
16934: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16934
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#16934: 24.3.50; completion-table-dynamic causes error numberp nil
From: Bastien <[email-masked]>
To: Leo Liu <[email-masked]>
Cc: [email-masked]
Date: Tue, 04 Mar 2014 15:38:05 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Leo Liu <[email-masked]> writes:

> If I modify octave-completion-at-point to allow (= beg end), i.e.

Closing too - see my reply to bug #16934.

PS: I assume it's fine to close two related bugs separately instead of
merging them first.  If not, please let me know.

-- 
 Bastien

Subject: 24.3.50; completion-table-dynamic causes error numberp nil
From: Leo Liu <[email-masked]>
To: [email-masked]
Date: Tue, 04 Mar 2014 19:31:15 +0800
List-Id: <debbugs-submit.debbugs.gnu.org>

If I modify octave-completion-at-point to allow (= beg end), i.e.

=== modified file 'lisp/progmodes/octave.el'
--- lisp/progmodes/octave.el	2014-02-10 01:34:22 +0000
+++ lisp/progmodes/octave.el	2014-03-04 11:22:04 +0000
@@ -1414,10 +1414,9 @@
         ;; Extend region past point, if applicable.
         (save-excursion (skip-syntax-forward "w_")
                         (setq end (point))))
-    (when (> end beg)
-      (list beg end (or (and (inferior-octave-process-live-p)
-                             (inferior-octave-completion-table))
-                        octave-reserved-words)))))
+    (list beg end (or (and (inferior-octave-process-live-p)
+                           (inferior-octave-completion-table))
+                      octave-reserved-words))))
 
 (define-obsolete-function-alias 'octave-complete-symbol
   'completion-at-point "24.1")

I can reproduce the error this way:

1. Create a new buffer
2. M-x run-octave
3. M-x octave-mode
4. M-x completion-at-point a few times

Debugger entered--Lisp error: (wrong-type-argument numberp nil)
  zerop(nil)
  minibuffer-completion-help(#<marker at 533 in *Scratch*> 533)
  completion--do-completion(#<marker at 533 in *Scratch*> 533)
  completion--in-region-1(#<marker at 533 in *Scratch*> 533)
  ....
  completion-at-point()
  indent-for-tab-command(nil)
  call-interactively(indent-for-tab-command nil nil)
  command-execute(indent-for-tab-command)

I also tried with ggtags-completing-table and got the same error in 24.4

Both completion tables work well in 24.3.

Leo