[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Fatal error 11: Segmentation Fault

From: Emanuel Berg
Subject: Re: Fatal error 11: Segmentation Fault
Date: Wed, 03 Apr 2019 07:30:19 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux)

Drew Adams wrote:

> If Emacs never crashes when you don't load
> your init file then something in your init
> file leads to it crashing. There's no way
> around that. [...] Only when you use your
> init file, right? [...] But if you can make
> Emacs crash without your init file, then put
> that recipe in a report

Comments: 0

> You do not need to explicitly require/load
> files that are required by other files that
> you load, as I'm sure you know. So presumably
> you loop only over the files you need to
> explicitly load. They will load the files
> they require.

I like to explicitly `require' everything and
anything any and all file need, every time,
then byte compile everything.

> "Remove" (comment out or don't include in
> your loading loop) only files that you need
> explicitly to load, not files that get loaded
> by those files. Your loop should do
> that anyway.

Again, remove one file, ~10 other files report
errors because they rely on that file.
Remove them, ~10*10 files report errors.
Binary search really is a poor choice for this
kind'a situation. It is not a list of `setq's
that do a bunch of configs independently of
each other. It is a 496 `defun's that rely on
each other to work, in 116 different files,
with 279 `require' and 62 `provide'!

> What's the alternative? Trying to reason
> about all of your code at once? Trying to
> guess what you might have changed recently
> that introduced a new problem? Tweaking this
> or that, based on some intuition?

The alternative is to *think*. The Elisp
couldn't have done it without some external
part. What is external?

    - my Emacs-zsh-tmux-X stuff

    - Emacs-w3m (3rd party, installed from the
      distros repos)

    - the packs from [M]ELPA - well, they are
      external in one sense, but I always
      thought them just even more Elisp, so I'm
      surprised the solution was the placement
      of `package-initialize' - it might has
      something to do with the byte-compiler as
      well, tho that doesn't make sense (?)
      either. Intuition, as you say.

    - something else?

And speaking of the byte-compiler, why didn't
it tell me about this?

Also, it could have told me about
"digit-char-p" (which I discovered should be
`cl-digit-char-p' [1], only because there was
a (require 'cl-lib) at the top of the file! [2]


underground experts united

reply via email to

[Prev in Thread] Current Thread [Next in Thread]