[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#20434: 24.3.91.1; set-display-table-slot produces error only when by
From: |
Stefan Guath |
Subject: |
bug#20434: 24.3.91.1; set-display-table-slot produces error only when byte-compiled |
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". The
uncompiled "bug.el" version works fine though.
DETAILS
The purpose of the expression is to set the space character as the vertical
window separator, in order to achieve a cleaner visual design.
STRANGE WORK-AROUND
A strange work-around is to repeat the third arg to set-display-table-slot as a
dummy expression before the real expression, i.e. if the complete "bug.el"
looks like:
(make-glyph-code ?\s 'vertical-border) ;Dummy repeat that somehow prevents
bug...
(set-display-table-slot standard-display-table 'vertical-border
(make-glyph-code ?\s 'vertical-border)) ;Now this suddenly works!
Then it works in the byte-compiled version.
- bug#20434: 24.3.91.1; set-display-table-slot produces error only when byte-compiled,
Stefan Guath <=