Package: emacs;
Reported by: Rupert Swarbrick <ruperts <at> broadcom.com>
Date: Tue, 7 Apr 2015 10:22:01 UTC
Severity: normal
Merged with 20259
Found in version 25.0.50
Fixed in version 25.1
Done: Stefan Monnier <monnier <at> iro.umontreal.ca>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 20270 in the body.
You can then email your comments to 20270 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
View this report as an mbox folder, status mbox, maintainer mbox
bug-gnu-emacs <at> gnu.org
:bug#20270
; Package emacs
.
(Tue, 07 Apr 2015 10:22:01 GMT) Full text and rfc822 format available.Rupert Swarbrick <ruperts <at> broadcom.com>
:bug-gnu-emacs <at> gnu.org
.
(Tue, 07 Apr 2015 10:22:02 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Rupert Swarbrick <ruperts <at> broadcom.com> To: <bug-gnu-emacs <at> gnu.org> Subject: 25.0.50; 'Invalid slot type: semanticdb-project-database-file, reference-directory, string, nil' with semantic-mode Date: Tue, 7 Apr 2015 11:20:34 +0100
With the current head of the master branch, I get the error in the subject line whenever I try to open a file with semantic mode enabled. I can reproduce this with '-Q' as follows: new-emacs.sh -Q --eval '(semantic-mode t)' --eval '(find-file "test.c")' (where new-emacs.sh is just a shell script that calls my locally compiled Emacs). Setting debug-on-error gives the following stack trace: Debugger entered--Lisp error: (invalid-slot-type semanticdb-project-database-file reference-directory string nil) signal(invalid-slot-type (semanticdb-project-database-file reference-directory string nil)) eieio--validate-slot-value([defclass semanticdb-project-database-file "Database of file tables saved to disk." ([defclass semanticdb-project-database "Database of file tables." ([defclass eieio-instance-tracker "This special class enables instance tracking.\nInheritors from this class must overload `tracking-symbol' which is\na variable symbol used to store a list of all instances." nil [] #s(hash-table size 65 test eq rehash-size 1.5 rehash-threshold 0.8 data ( ...)) (semanticdb-project-database) nil [[cl-struct-cl-slot-descriptor tracking-symbol unbound symbol (...)]] [unbound] [eieio-class-tag--eieio-instance-tracker] (:custom-groups nil :documentation "This special class enables instance tracking.\nInheritors from this class must overload `tracking-symbol' which is\na variable symbol used to store a list of all instances." :abstract t)]) [[cl-struct-cl-slot-descriptor reference-directory unbound string ((:documentation . "Directory this database refers to.\nWhen a cache directory is specified, then this refers to the directory\nthis database contains symbols for."))] [cl-struct-cl-slot-descriptor new-table-class semanticdb-table class ((:documentation . "New tables created for this database are of this class."))] [cl-struct-cl-slot-descriptor cache nil list ((:documentation . "List of cache information for tools.\nAny particular tool can cache data to a database at runtime\nwith `semanticdb-cache-get'.\n\nUsing a semanticdb cache does not save any information to a file,\nso your cache will need to be recalculated at runtime.\n\nNote: This index will not be saved in a persistent file."))] [cl-struct-cl-slot-descriptor tables unbound semanticdb-abstract-table-list ((:documentation . "List of `semantic-db-table' objects.") (:protection . protected))]] #s(hash-table size 65 test eq rehash-size 1.5 rehash-threshold 0.8 data (reference-directory 0 new-table-class 1 cache 2 tables 3 ...)) (semanticdb-project-database-file) ((:tables . tables)) [[cl-struct-cl-slot-descriptor tracking-symbol semanticdb-database-list symbol ((:documentation . "The symbol used to maintain a list of our instances.\nThe instance list is treated as a variable, with new instances added to it."))]] [semanticdb-database-list] [eieio-class-tag--semanticdb-project-database unbound semanticdb-table nil unbound] (:custom-groups nil :documentation "Database of file tables.")] [defclass eieio-persistent "This special class enables persistence through save files\nUse the `object-save' method to write this object to disk. The save\nformat is Emacs Lisp code which calls the constructor for the saved\nobject. For this reason, only slots which do not have an `:initarg'\nspecified will not be saved." nil [[cl-struct-cl-slot-descriptor file unbound string ((:documentation . "The save file for this persistent object.\nThis must be a string, and must be specified when the new object is\ninstantiated."))]] #s(hash-table size 65 test eq rehash-size 1.5 rehash-threshold 0.8 data (file 0 ...)) (semanticdb-project-database-file) ((:file . file)) [[cl-struct-cl-slot-descriptor do-backups t boolean ((:documentation . "Saving this object should make backup files.\nSetting to nil will mean no backups are made."))] [cl-struct-cl-slot-descriptor file-header-line ";; EIEIO PERSISTENT OBJECT" string ((:documentation . "Header line for the save file.\nThis is used with the `object-write' method."))] [cl-struct-cl-slot-descriptor extension ".eieio" string ((:documentation . "Extension of files saved by this object.\nEnables auto-choosing nice file names based on name."))]] [t ";; EIEIO PERSISTENT OBJECT" ".eieio"] [eieio-class-tag--eieio-persistent unbound] (:custom-groups nil :documentation "This special class enables persistence through save files\nUse the `object-save' method to write this object to disk. The save\nformat is Emacs Lisp code which calls the constructor for the saved\nobject. For this reason, only slots which do not have an `:initarg'\nspecified will not be saved." :abstract t)]) [[cl-struct-cl-slot-descriptor reference-directory unbound string ((:documentation . "Directory this database refers to.\nWhen a cache directory is specified, then this refers to the directory\nthis database contains symbols for."))] [cl-struct-cl-slot-descriptor new-table-class semanticdb-table class ((:documentation . "New tables created for this database are of this class."))] [cl-struct-cl-slot-descriptor cache nil list ((:documentation . "List of cache information for tools.\nAny particular tool can cache data to a database at runtime\nwith `semanticdb-cache-get'.\n\nUsing a semanticdb cache does not save any information to a file,\nso your cache will need to be recalculated at runtime.\n\nNote: This index will not be saved in a persistent file."))] [cl-struct-cl-slot-descriptor tables unbound semanticdb-abstract-table-list ((:documentation . "List of `semantic-db-table' objects.") (:protection . protected))] [cl-struct-cl-slot-descriptor file unbound string ((:documentation . "The save file for this persistent object.\nThis must be a string, and must be specified when the new object is\ninstantiated."))] [cl-struct-cl-slot-descriptor semantic-tag-version "1.4" t ((:documentation . "The version of the tags saved.\nThe default value is 1.4. In semantic 1.4 there was no versioning, so\nwhen those files are loaded, this becomes the version number.\nTo save the version number, we must hand-set this version string."))] [cl-struct-cl-slot-descriptor semanticdb-version "1.4" t ((:documentation . "The version of the object system saved.\nThe default value is 1.4. In semantic 1.4, there was no versioning,\nso when those files are loaded, this becomes the version number.\nTo save the version number, we must hand-set this version string."))]] #s(hash-table size 65 test eq rehash-size 1.5 rehash-threshold 0.8 data (reference-directory 0 new-table-class 1 cache 2 tables 3 file 4 semantic-tag-version 5 semanticdb-version 6 ...)) nil ((:tables . reference-directory) (:file . file) (:semantic-tag-version . semantic-tag-version) (:semanticdb-version . semanticdb-version)) [[cl-struct-cl-slot-descriptor extension ".eieio" string ((:documentation . "Extension of files saved by this object.\nEnables auto-choosing nice file names based on name."))] [cl-struct-cl-slot-descriptor file-header-line ";; SEMANTICDB Tags save file" string ((:documentation . "Header line for the save file.\nThis is used with the `object-write' method."))] [cl-struct-cl-slot-descriptor do-backups nil boolean ((:documentation . "Saving this object should make backup files.\nSetting to nil will mean no backups are made."))] [cl-struct-cl-slot-descriptor tracking-symbol semanticdb-database-list symbol ((:documentation . "The symbol used to maintain a list of our instances.\nThe instance list is treated as a variable, with new instances added to it."))]] [".eieio" ";; SEMANTICDB Tags save file" nil semanticdb-database-list] [eieio-class-tag--semanticdb-project-database-file unbound semanticdb-table nil unbound unbound "1.4" "1.4"] (:custom-groups nil :documentation "Database of file tables saved to disk.")] 1 nil reference-directory) eieio-oset([eieio-class-tag--semanticdb-project-database-file unbound semanticdb-table nil unbound "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" "1.4" "1.4"] reference-directory nil) #[514 "\211\2051^@\300^B\211\301HJ\262^A^B@\"\211\204 ^@\302^C^C@\303^EA@$\210\202(^@\304^C^B^DA@#\210\210\211AA\262^A\202^@^@\207" [eieio--initarg-to-attribute 0 slot-missing oset eieio-oset] 8 "Set slots of OBJ with SLOTS which is a list of name/value pairs.\nCalled from the constructor routine.\n\n(fn OBJ SLOTS)"]([eieio-class-tag--semanticdb-project-database-file unbound semanticdb-table nil unbound "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" "1.4" "1.4"] (:file "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" :tables nil :semantic-tag-version "2.0" :semanticdb-version "2.2")) apply(#[514 "\211\2051^@\300^B\211\301HJ\262^A^B@\"\211\204 ^@\302^C^C@\303^EA@$\210\202(^@\304^C^B^DA@#\210\210\211AA\262^A\202^@^@\207" [eieio--initarg-to-attribute 0 slot-missing oset eieio-oset] 8 "Set slots of OBJ with SLOTS which is a list of name/value pairs.\nCalled from the constructor routine.\n\n(fn OBJ SLOTS)"] [eieio-class-tag--semanticdb-project-database-file unbound semanticdb-table nil unbound "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" "1.4" "1.4"] (:file "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" :tables nil :semantic-tag-version "2.0" :semanticdb-version "2.2")) shared-initialize([eieio-class-tag--semanticdb-project-database-file unbound semanticdb-table nil unbound "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" "1.4" "1.4"] (:file "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" :tables nil :semantic-tag-version "2.0" :semanticdb-version "2.2")) #[513 "^A\211\301HJ\262^A\211\302H\211G\301\211^BW\203T^@\211^C^AH\211\301H>\204&^@\303\304\305^CD\"\210\211\306H\307^A!\211^B=\204K^@\310^F\n^D\301H>\204E^@\303\304\305^F^GD\"\210^D\311H^C#\210\266^D\211T\262^A\202^M^@\266^D\312^B^B\"\207" [cl-struct-cl-slot-descriptor-tags 0 4 signal wrong-type-argument cl-slot-descriptor 2 eieio-default-eval-maybe eieio-oset 1 shared-initialize] 16 "Construct the new object THIS based on SLOTS.\nSLOTS is a tagged list where odd numbered elements are tags, and\neven numbered elements are the values to store in the tagged slot.\nIf you overload the `initialize-instance', there you will need to\ncall `shared-initialize' yourself, or you can call `call-next-method'\nto have this constructor called automatically. If these steps are\nnot taken, then new objects of your class will not have their values\ndynamically set from SLOTS.\n\n(fn THIS &optional SLOTS)"]([eieio-class-tag--semanticdb-project-database-file unbound semanticdb-table nil unbound "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" "1.4" "1.4"] (:file "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" :tables nil :semantic-tag-version "2.0" :semanticdb-version "2.2")) apply(#[513 "^A\211\301HJ\262^A\211\302H\211G\301\211^BW\203T^@\211^C^AH\211\301H>\204&^@\303\304\305^CD\"\210\211\306H\307^A!\211^B=\204K^@\310^F\n^D\301H>\204E^@\303\304\305^F^GD\"\210^D\311H^C#\210\266^D\211T\262^A\202^M^@\266^D\312^B^B\"\207" [cl-struct-cl-slot-descriptor-tags 0 4 signal wrong-type-argument cl-slot-descriptor 2 eieio-default-eval-maybe eieio-oset 1 shared-initialize] 16 "Construct the new object THIS based on SLOTS.\nSLOTS is a tagged list where odd numbered elements are tags, and\neven numbered elements are the values to store in the tagged slot.\nIf you overload the `initialize-instance', there you will need to\ncall `shared-initialize' yourself, or you can call `call-next-method'\nto have this constructor called automatically. If these steps are\nnot taken, then new objects of your class will not have their values\ndynamically set from SLOTS.\n\n(fn THIS &optional SLOTS)"] ([eieio-class-tag--semanticdb-project-database-file unbound semanticdb-table nil unbound "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" "1.4" "1.4"] (:file "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" :tables nil :semantic-tag-version "2.0" :semanticdb-version "2.2"))) #[128 "\300\211\203^S^@\211@\303^A^D\"\210^AA\266\202\202^A^@\210\303\302^B\"\301\211\203+^@\211@\303^A^E\"\210^AA\266\202\202^Y^@\210\207" [nil (#[385 "\300^B\301\"^B^AJ>?\205^T^@\211\302^BJ^EC\"L\207" [eieio-oref tracking-symbol append] 7 "Make sure THIS is in our master list of this class.\nOptional argument SLOTS are the initialization arguments.\n\n(fn THIS &rest SLOTS)"]) #[513 "^A\211\301HJ\262^A\211\302H\211G\301\211^BW\203T^@\211^C^AH\211\301H>\204&^@\303\304\305^CD\"\210\211\306H\307^A!\211^B=\204K^@\310^F\n^D\301H>\204E^@\303\304\305^F^GD\"\210^D\311H^C#\210\266^D\211T\262^A\202^M^@\266^D\312^B^B\"\207" [cl-struct-cl-slot-descriptor-tags 0 4 signal wrong-type-argument cl-slot-descriptor 2 eieio-default-eval-maybe eieio-oset 1 shared-initialize] 16 "Construct the new object THIS based on SLOTS.\nSLOTS is a tagged list where odd numbered elements are tags, and\neven numbered elements are the values to store in the tagged slot.\nIf you overload the `initialize-instance', there you will need to\ncall `shared-initialize' yourself, or you can call `call-next-method'\nto have this constructor called automatically. If these steps are\nnot taken, then new objects of your class will not have their values\ndynamically set from SLOTS.\n\n(fn THIS &optional SLOTS)"] apply] 7 "\n\n(fn &rest ARGS)"]([eieio-class-tag--semanticdb-project-database-file unbound semanticdb-table nil unbound "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" "1.4" "1.4"] (:file "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" :tables nil :semantic-tag-version "2.0" :semanticdb-version "2.2")) apply(#[128 "\300\211\203^S^@\211@\303^A^D\"\210^AA\266\202\202^A^@\210\303\302^B\"\301\211\203+^@\211@\303^A^E\"\210^AA\266\202\202^Y^@\210\207" [nil (#[385 "\300^B\301\"^B^AJ>?\205^T^@\211\302^BJ^EC\"L\207" [eieio-oref tracking-symbol append] 7 "Make sure THIS is in our master list of this class.\nOptional argument SLOTS are the initialization arguments.\n\n(fn THIS &rest SLOTS)"]) #[513 "^A\211\301HJ\262^A\211\302H\211G\301\211^BW\203T^@\211^C^AH\211\301H>\204&^@\303\304\305^CD\"\210\211\306H\307^A!\211^B=\204K^@\310^F\n^D\301H>\204E^@\303\304\305^F^GD\"\210^D\311H^C#\210\266^D\211T\262^A\202^M^@\266^D\312^B^B\"\207" [cl-struct-cl-slot-descriptor-tags 0 4 signal wrong-type-argument cl-slot-descriptor 2 eieio-default-eval-maybe eieio-oset 1 shared-initialize] 16 "Construct the new object THIS based on SLOTS.\nSLOTS is a tagged list where odd numbered elements are tags, and\neven numbered elements are the values to store in the tagged slot.\nIf you overload the `initialize-instance', there you will need to\ncall `shared-initialize' yourself, or you can call `call-next-method'\nto have this constructor called automatically. If these steps are\nnot taken, then new objects of your class will not have their values\ndynamically set from SLOTS.\n\n(fn THIS &optional SLOTS)"] apply] 7 "\n\n(fn &rest ARGS)"] [eieio-class-tag--semanticdb-project-database-file unbound semanticdb-table nil unbound "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" "1.4" "1.4"] (:file "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" :tables nil :semantic-tag-version "2.0" :semanticdb-version "2.2")) initialize-instance([eieio-class-tag--semanticdb-project-database-file unbound semanticdb-table nil unbound "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" "1.4" "1.4"] (:file "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" :tables nil :semantic-tag-version "2.0" :semanticdb-version "2.2")) #[385 "\301^B\2119\203^P^@\211\302N\206^Q^@\202^S^@\211\262^A\211\303H\262^A!^A\203>^@^A@\211;\206&^@\211?\262^A\203>^@\2033^@\304\2024^@\305\306^C\211A\262^E\242^E#\210\307^A^C\"\210\211\207" [eieio-backward-compatibility copy-sequence eieio-class-definition 10 ignore message "Obsolete name %S passed to %S constructor" initialize-instance] 7 "Default constructor for CLASS `eieio-default-superclass'.\nSLOTS are the initialization slots used by `initialize-instance'.\nThis static method is called when an object is constructed.\nIt allocates the vector used to represent an EIEIO object, and then\ncalls `initialize-instance' on that object.\n\n(fn CLASS &rest SLOTS)"](semanticdb-project-database-file "include/" :file "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" :tables nil :semantic-tag-version "2.0" :semanticdb-version "2.2") apply(#[385 "\301^B\2119\203^P^@\211\302N\206^Q^@\202^S^@\211\262^A\211\303H\262^A!^A\203>^@^A@\211;\206&^@\211?\262^A\203>^@\2033^@\304\2024^@\305\306^C\211A\262^E\242^E#\210\307^A^C\"\210\211\207" [eieio-backward-compatibility copy-sequence eieio-class-definition 10 ignore message "Obsolete name %S passed to %S constructor" initialize-instance] 7 "Default constructor for CLASS `eieio-default-superclass'.\nSLOTS are the initialization slots used by `initialize-instance'.\nThis static method is called when an object is constructed.\nIt allocates the vector used to represent an EIEIO object, and then\ncalls `initialize-instance' on that object.\n\n(fn CLASS &rest SLOTS)"] semanticdb-project-database-file ("include/" :file "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" :tables nil :semantic-tag-version "2.0" :semanticdb-version "2.2")) make-instance(semanticdb-project-database-file "include/" :file "/home/ruperts/.emacs.d/semanticdb/!usr!include!semantic.cache" :tables nil :semantic-tag-version "2.0" :semanticdb-version "2.2") #[(dbc directory) "\306!^P\307 \"^Z\310\n!\206^X^@\311\n!\205^X^@\312\n!\211^[\2041^@\313 \314\315!!\316P\317\n\320\321\322\f\323^M&\n^S\324\325#\210*\207" [directory dbc fn db semantic-tag-version semanticdb-file-version file-truename semanticdb-cache-filename semanticdb-file-loaded-p file-exists-p semanticdb-load-database make-instance file-name-nondirectory directory-file-name "/" :file :tables nil :semantic-tag-version :semanticdb-version eieio-oset reference-directory] 12 "Create a new semantic database for DIRECTORY and return it.\nIf a database for DIRECTORY has already been loaded, return it.\nIf a database for DIRECTORY exists, then load that database, and return it.\nIf DIRECTORY doesn't exist, create a new one."](semanticdb-project-database-file "/usr/include/") apply(#[(dbc directory) "\306!^P\307 \"^Z\310\n!\206^X^@\311\n!\205^X^@\312\n!\211^[\2041^@\313 \314\315!!\316P\317\n\320\321\322\f\323^M&\n^S\324\325#\210*\207" [directory dbc fn db semantic-tag-version semanticdb-file-version file-truename semanticdb-cache-filename semanticdb-file-loaded-p file-exists-p semanticdb-load-database make-instance file-name-nondirectory directory-file-name "/" :file :tables nil :semantic-tag-version :semanticdb-version eieio-oset reference-directory] 12 "Create a new semantic database for DIRECTORY and return it.\nIf a database for DIRECTORY has already been loaded, return it.\nIf a database for DIRECTORY exists, then load that database, and return it.\nIf DIRECTORY doesn't exist, create a new one."] semanticdb-project-database-file "/usr/include/") semanticdb-create-database(semanticdb-project-database-file "/usr/include/") semanticdb-create-table-for-file("/usr/include/features.h") semanticdb-file-table-object("/usr/include/features.h" t) semantic-c-reset-preprocessor-symbol-map() byte-code("\300\301!\210\302 \207" [provide semantic/bovine/c semantic-c-reset-preprocessor-symbol-map] 2) semantic-default-c-setup() semantic-new-buffer-fcn() run-hooks(mode-local-init-hook) #[nil "\300 \210\301\302!\207" [activate-mode-local-bindings run-hooks mode-local-init-hook] 2]() mode-local-map-file-buffers(#[nil "\300 \210\301\302!\207" [activate-mode-local-bindings run-hooks mode-local-init-hook] 2] #[nil " =?\207" [mode-local--init-mode major-mode] 2] (#<buffer test.c>)) mode-local-post-major-mode-change() run-hooks(find-file-hook) after-find-file(t t) find-file-noselect-1(#<buffer test.c> "~/test.c" nil nil "~/test.c" nil) find-file-noselect("test.c" nil nil nil) find-file("test.c") eval((find-file "test.c")) command-line-1(("--eval" "(semantic-mode t)" "--eval" "(setq debug-on-error t)" "--eval" "(find-file \"test.c\")")) In case it's relevant, the /home/ruperts/.emacs.d/semanticdb directory does not exist. I last compiled myself a new Emacs a couple of weeks ago, so whatever change has broken things seems to have appeared in the meantime. Rupert In GNU Emacs 25.0.50.1 (x86_64-unknown-linux-gnu, X toolkit, Xaw scroll bars) of 2015-04-07 on xl-cam-20 Repository revision: 23468561682aea0705249a469f614bb873e4f411 Windowing system distributor `The X.Org Foundation', version 11.0.11300000 System Description: Red Hat Enterprise Linux Server release 6.4 (Santiago) Configured using: `configure --prefix=<something> --with-xml2 --without-sound --without-rsvg --without-imagemagick --with-x-toolkit=lucid' Configured features: XPM JPEG TIFF GIF PNG GPM DBUS GCONF NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE XFT ZLIB Important settings: value of $LC_COLLATE: C value of $LANG: en_GB.UTF-8 locale-coding-system: utf-8-unix Major mode: Emacs-Lisp Minor modes in effect: pyvenv-mode: t elisp-slime-nav-mode: t paredit-mode: t global-semanticdb-minor-mode: t global-semantic-idle-scheduler-mode: t global-semantic-idle-local-symbol-highlight-mode: t global-semantic-idle-summary-mode: t semantic-mode: t global-undo-tree-mode: t undo-tree-mode: t desktop-save-mode: t minibuffer-depth-indicate-mode: t icicle-mode: t keyfreq-autosave-mode: t keyfreq-mode: t show-paren-mode: t recentf-mode: t diff-auto-refine-mode: t magit-auto-revert-mode: t global-auto-revert-mode: t global-git-commit-mode: t shell-dirtrack-mode: t tooltip-mode: t global-eldoc-mode: t eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t column-number-mode: t line-number-mode: t <Omitting load-path shadowing list and recent messages because the bug appears with emacs -Q and they include various Broadcom-specific paths> Features: (shadow sort mail-extr emacsbug sendmail mc-edit-lines multiple-cursors-core rect smex misearch multi-isearch eww mm-url gnus gnus-ems nnheader url-queue url url-proxy url-privacy url-expand url-methods url-history url-cookie url-domsuf url-util mailcap shr dom subr-x browse-url company-files company-oddmuse company-keywords company-etags company-gtags company-dabbrev-code company-dabbrev company-cmake company-xcode company-clang company-eclim company-template company-css company-nxml company-bbdb mule-util yasnippet highlight-indentation flymake company elpy pyvenv elpy-refactor ido grep files-x semantic/wisent/python compile semantic/wisent/python-wy semantic/wisent semantic/wisent/wisent python json semantic/bovine/make semantic/bovine/make-by make-mode semantic/decorate/include semantic/decorate/mode semantic/decorate hideif semantic/bovine/c-by semantic/lex-spp semantic/bovine/gcc semantic/dep semantic/bovine semantic/analyze/refs semantic/db-find semantic/db-ref semantic/analyze semantic/sort semantic/scope semantic/analyze/fcn cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs vc vc-dispatcher vc-git dired-aux elisp-slime-nav etags xref paredit jka-compr semantic/db-mode semantic/db eieio-base pulse semantic/idle semantic/format ezimage semantic/tag-ls semantic/find semantic/ctxt em-ls esh-ext esh-opt esh-util semantic/util-modes semantic/util semantic semantic/tag semantic/lex semantic/fw mode-local cedet undo-tree diff fp_binutils adsl-mech apps rx fp_sdk broadcom diary-lib diary-loaddefs cal-menu calendar cal-loaddefs midnight desktop frameset icicles mb-depth two-column icicles-mode icicles-cmd2 icicles-cmd1 icicles-mcmd image-dired icicles-fn icicles-var icicles-opt ffap url-parse url-vars fuzzy-match fuzzy cl cus-theme cus-edit cus-start cus-load bookmark+ bookmark+-key derived bookmark+-1 bookmark+-bmu bookmark+-lit bookmark pp thingatpt icicles-face keyfreq dired-x paren windmove recentf tree-widget wid-edit edmacro kmacro magit-wip magit-extras magit-backup magit-ediff ediff-merg ediff-wind ediff-diff ediff-mult ediff-help ediff-init ediff-util ediff magit-blame magit-bisect magit-remote magit-commit magit-stash magit-sequence magit magit-log crm magit-apply magit-diff smerge-mode diff-mode magit-core magit-process magit-popup magit-mode help-mode autorevert filenotify magit-git magit-section magit-utils git-rebase git-commit log-edit easy-mmode message dired rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev mail-utils gmm-utils mailheader pcvs-util add-log with-editor tramp-sh tramp tramp-compat auth-source cl-macs eieio eieio-core cl-generic byte-opt gv bytecomp byte-compile cl-extra seq cconv gnus-util mm-util mail-prsvr password-cache tramp-loaddefs trampver shell pcomplete comint ansi-color ring format-spec advice help-fns server dash cl-loaddefs pcase cl-lib tex-site highline-autoloads info easymenu slime-autoloads package epg-config time-date tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment elisp-mode lisp-mode prog-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer cl-preloaded nadvice loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process dbusbind gfilenotify dynamic-setting system-font-setting font-render-setting x-toolkit x multi-tty emacs) Memory information: ((conses 16 470773 63274) (symbols 48 54546 0) (miscs 40 673 473) (strings 32 128238 13773) (string-bytes 1 4292289) (vectors 16 56669) (vector-slots 8 1058434 11501) (floats 8 1249 574) (intervals 56 4415 392) (buffers 976 34) (heap 1024 50955 7314))
bug-gnu-emacs <at> gnu.org
:bug#20270
; Package emacs
.
(Wed, 08 Apr 2015 21:26:01 GMT) Full text and rfc822 format available.Message #8 received at 20270 <at> debbugs.gnu.org (full text, mbox):
From: Stefan Monnier <monnier <at> iro.umontreal.ca> To: Rupert Swarbrick <ruperts <at> broadcom.com> Cc: 20270 <at> debbugs.gnu.org Subject: Re: bug#20270: 25.0.50; 'Invalid slot type: semanticdb-project-database-file, reference-directory, string, nil' with semantic-mode Date: Wed, 08 Apr 2015 17:24:51 -0400
> new-emacs.sh -Q --eval '(semantic-mode t)' --eval '(find-file "test.c")' [...] > Debugger entered--Lisp error: (invalid-slot-type semanticdb-project-database-file reference-directory string nil) Duh, indeed. I installed the patch below which should fix this blunder, Stefan diff --git a/lisp/emacs-lisp/eieio-core.el b/lisp/emacs-lisp/eieio-core.el index 6fd9c14..b0aa363 100644 --- a/lisp/emacs-lisp/eieio-core.el +++ b/lisp/emacs-lisp/eieio-core.el @@ -673,10 +673,9 @@ the new child class." (let ((pslots (eieio--class-slots pcv)) (pinit (eieio--class-initarg-tuples pcv))) (dotimes (i (length pslots)) - (eieio--add-new-slot newc (cl--copy-slot-descriptor (aref pslots i)) - (car-safe (car pinit)) nil nil sn) - ;; Increment each value. - (setq pinit (cdr pinit)) + (let* ((sd (cl--copy-slot-descriptor (aref pslots i))) + (init (car (rassq (cl--slot-descriptor-name sd) pinit)))) + (eieio--add-new-slot newc sd init nil nil sn)) )) ;; while/let ;; Now duplicate all the class alloc slots. (let ((pcslots (eieio--class-class-slots pcv)))
Stefan Monnier <monnier <at> iro.umontreal.ca>
to control <at> debbugs.gnu.org
.
(Thu, 09 Apr 2015 01:35:03 GMT) Full text and rfc822 format available.bug-gnu-emacs <at> gnu.org
:bug#20270
; Package emacs
.
(Thu, 09 Apr 2015 05:11:03 GMT) Full text and rfc822 format available.Message #13 received at 20270 <at> debbugs.gnu.org (full text, mbox):
From: Ivan Shmakov <ivan <at> siamics.net> To: 20270 <at> debbugs.gnu.org, 20259 <at> debbugs.gnu.org Subject: Re: bug#20270: 25.0.50; 'Invalid slot type: semanticdb-project-database-file, reference-directory, string, nil' with semantic-mode Date: Thu, 09 Apr 2015 05:10:27 +0000
>>>>> Stefan Monnier <monnier <at> iro.umontreal.ca> writes: >> new-emacs.sh -Q --eval '(semantic-mode t)' --eval '(find-file "test.c")' >> Debugger entered--Lisp error: (invalid-slot-type semanticdb-project-database-file reference-directory string nil) > Duh, indeed. I installed the patch below which should fix this > blunder, Should I expect it to fix bug#20259 just as well? (I hope to check it myself later.) […] -- FSF associate member #7257 http://boycottsystemd.org/ … 3013 B6A0 230E 334A
bug-gnu-emacs <at> gnu.org
:bug#20270
; Package emacs
.
(Thu, 09 Apr 2015 14:06:02 GMT) Full text and rfc822 format available.Message #16 received at 20270 <at> debbugs.gnu.org (full text, mbox):
From: Stefan Monnier <monnier <at> IRO.UMontreal.CA> To: 20270 <at> debbugs.gnu.org Cc: 20259 <at> debbugs.gnu.org Subject: Re: bug#20259: bug#20270: 25.0.50; 'Invalid slot type: semanticdb-project-database-file, reference-directory, string, nil' with semantic-mode Date: Thu, 09 Apr 2015 10:05:35 -0400
> Should I expect it to fix bug#20259 just as well? (I hope to > check it myself later.) I don't know. I share Paul's impression that it might be a bootstrap problem. The .elc files are not placed in the build directory but in the source directory (I know, it's weird), so I don't think your script reproduces the behavior of "make bootstrap". Stefan
bug-gnu-emacs <at> gnu.org
:bug#20270
; Package emacs
.
(Thu, 09 Apr 2015 15:06:02 GMT) Full text and rfc822 format available.Message #19 received at 20270 <at> debbugs.gnu.org (full text, mbox):
From: Ivan Shmakov <ivan <at> siamics.net> To: 20270 <at> debbugs.gnu.org, 20259 <at> debbugs.gnu.org Subject: Re: bug#20270: bug#20259: bug#20270: 25.0.50; 'Invalid slot type: semanticdb-project-database-file, reference-directory, string, nil' with semantic-mode Date: Thu, 09 Apr 2015 15:05:33 +0000
>>>>> Stefan Monnier <monnier <at> IRO.UMontreal.CA> writes: >> #!/bin/bash >> set -e -x >> mkdir -v -- emacs-$(date -uI)-build >> cd emacs-$(date -uI)-build >> lndir -- ../emacs-src >> autoreconf -v -i -I m4 The call to ./configure is obviously missing here: ./configure --prefix="$HOME" \ --disable-silent-rules \ --enable-dependency-tracking \ --enable-gcc-warnings \ --without-{pop,sound,x-toolkit,gpm,dbus,gconf,gsettings,makeinfo,x} \ --with-{wide-int,gnutls,zlib} >> ## Ensure there are no stray .elc files in the build directory. >> ! grep -q -- . < <(find -name \*.elc) >> LC_ALL=C nohup /usr/bin/time make \ >> -- lib lib-src src lisp >> Should I expect it to fix bug#20259 just as well? (I hope to check >> it myself later.) > I don't know. My point is that the error message is exactly the same for either report: Invalid slot type: semanticdb-project-database-file, reference-directory, string, nil > I share Paul's impression that it might be a bootstrap problem. > The .elc files are not placed in the build directory but in the > source directory (I know, it's weird), I know; it is. And that’s the whole point of using lndir(1): to create a symlink-based “shadow” of the /source/ directory and use it as the build one. > so I don't think your script reproduces the behavior of "make > bootstrap". Per emacs-2015-04-07-build/config.status, srcdir is ‘.’. If there’s no .elc in the directory $ make is invoked from (and the ‘grep’ line in my script above ensures that), where else would the build process find any .elc files to use? -- FSF associate member #7257 np. First Breath — David Modica … B6A0 230E 334A
bug-gnu-emacs <at> gnu.org
:bug#20270
; Package emacs
.
(Thu, 09 Apr 2015 18:22:02 GMT) Full text and rfc822 format available.Message #22 received at 20270 <at> debbugs.gnu.org (full text, mbox):
From: Stefan Monnier <monnier <at> IRO.UMontreal.CA> To: 20270 <at> debbugs.gnu.org Cc: 20259 <at> debbugs.gnu.org Subject: Re: bug#20270: bug#20259: bug#20270: 25.0.50; 'Invalid slot type: semanticdb-project-database-file, reference-directory, string, nil' with semantic-mode Date: Thu, 09 Apr 2015 14:21:08 -0400
> I know; it is. And that’s the whole point of using lndir(1): > to create a symlink-based “shadow” of the /source/ directory and > use it as the build one. Than I misunderstood your script. Does the recent patch fix your problems? Stefan
bug-gnu-emacs <at> gnu.org
:bug#20270
; Package emacs
.
(Fri, 17 Apr 2015 15:57:03 GMT) Full text and rfc822 format available.Message #25 received at 20270 <at> debbugs.gnu.org (full text, mbox):
From: Ivan Shmakov <ivan <at> siamics.net> To: control <at> debbugs.gnu.org, 20270 <at> debbugs.gnu.org, 20259 <at> debbugs.gnu.org Subject: Re: bug#20270: bug#20259: 25.0.50; 'Invalid slot type: semanticdb-project-database-file, reference-directory, string, nil' with semantic-mode Date: Fri, 17 Apr 2015 15:55:54 +0000
close 20259 fixed 20259 25.1 fixed 20270 25.1 merge 20259 20270 thanks >>>>> Stefan Monnier <monnier <at> IRO.UMontreal.CA> writes: >> I know; it is. And that’s the whole point of using lndir(1): to >> create a symlink-based “shadow” of the /source/ directory and use it >> as the build one. > Than I misunderstood your script. Does the recent patch fix your > problems? At the very least, I no longer observe the issue with 85c3e1be2418 (2015-04-17 04:32:33 +00:00), so I close #20259. And also merge it with #20270, as it looks like the same bug. Thanks again for the fix. -- FSF associate member #7257 http://boycottsystemd.org/ … 3013 B6A0 230E 334A
Ivan Shmakov <ivan <at> siamics.net>
to control <at> debbugs.gnu.org
.
(Fri, 17 Apr 2015 15:57:05 GMT) Full text and rfc822 format available.Ivan Shmakov <ivan <at> siamics.net>
to control <at> debbugs.gnu.org
.
(Fri, 17 Apr 2015 15:57:05 GMT) Full text and rfc822 format available.Debbugs Internal Request <help-debbugs <at> gnu.org>
to internal_control <at> debbugs.gnu.org
.
(Sat, 16 May 2015 11:24:05 GMT) Full text and rfc822 format available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.