GNU bug report logs - #20434
24.3.91.1; set-display-table-slot produces error only when byte-compiled

Previous Next

Package: emacs;

Reported by: Stefan Guath <stefan <at> automata.se>

Date: Sun, 26 Apr 2015 17:30:05 UTC

Severity: normal

Tags: notabug

Done: Glenn Morris <rgm <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #10 received at 20434 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Stefan Guath <stefan <at> automata.se>
Cc: 20434 <at> debbugs.gnu.org
Subject: Re: bug#20434: 24.3.91.1;
 set-display-table-slot produces error only when byte-compiled
Date: Sun, 26 Apr 2015 22:12:59 +0300
> From: Stefan Guath <stefan <at> automata.se>
> Date: Sun, 26 Apr 2015 19:29:34 +0200
> 
> VERSION:
> GNU Emacs 24.5.1 (x86_64-apple-darwin13.4.0, NS apple-appkit-1265.21) of 2015-04-10 on builder10-9.porkrind.org
> 
> TO REPRODUCE BUG:
> 1) Create file "bug.el" with the following single expression:
>     (set-display-table-slot standard-display-table 'vertical-border (make-glyph-code ?\s 'vertical-border))
> 2) Byte compile this "bug.el" file (i.e. create the file "bug.elc").
> 3) Start Emacs with emacs -Q
> 4) M-x load-file bug.elc
> 5) This will produce the error "Wrong type argument: char-table-p, nil".

That's expected: the default value of standard-display-table is nil.
You should use something like this instead:

  (or standard-display-table
      (setq standard-display-table (make-display-table)))

> The uncompiled "bug.el" version works fine though.

Probably because you load it into a session that already has
standard-display-table initialized to a non-nil value.




This bug report was last modified 10 years and 111 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.