GNU bug report logs - #70914
29.3; Crashes often on Windows

Previous Next

Package: emacs;

Reported by: Simen Endsjø <simendsjo <at> gmail.com>

Date: Mon, 13 May 2024 08:49:02 UTC

Severity: normal

Found in version 29.3

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Andrea Corallo <acorallo <at> gnu.org>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: simendsjo <at> gmail.com, 70914 <at> debbugs.gnu.org
Subject: bug#70914: 29.3; Crashes often on Windows
Date: Fri, 24 May 2024 03:59:51 -0400
Andrea Corallo <acorallo <at> gnu.org> writes:

> Eli Zaretskii <eliz <at> gnu.org> writes:
>
>>> From: Andrea Corallo <acorallo <at> gnu.org>
>>> Cc: Simen Endsjø <simendsjo <at> gmail.com>,
>>>   70914 <at> debbugs.gnu.org
>>> Date: Thu, 16 May 2024 08:11:03 -0400
>>> 
>>> Eli Zaretskii <eliz <at> gnu.org> writes:
>>> 
>>> > Another possible idea is to disable native-compilation and use of
>>> > *.eln files that were already compiled.  The simplest way of doing the
>>> > former is to set the variables native-comp-jit-compilation and
>>> > native-comp-enable-subr-trampolines to nil in your early-init file,
>>> > then start Emacs as usual.  Can you try that?
>>> >
>>> > AFAIK, the above does not prevent Emacs from loading and using the
>>> > *.eln files that were already generated.  Andrea, what is the best way
>>> > of disabling the use of existing *.eln files without rebuilding Emacs?
>>> > Maybe renaming libgccjit-0.dll and restarting Emacs?
>>> 
>>> I don't recall any pre-cooked way of doing it.  I suspect renaming
>>> libgccjit-0.dll on Windows should hinibit the compilation but not the
>>> load.
>>> 
>>> The only option that comes to my mind would be applying the following
>>> and running make.
>>> 
>>> ================
>>> modified   src/lread.c
>>> @@ -1430,7 +1430,7 @@ DEFUN ("load", Fload, Sload, 1, 5, 0,
>>>    else
>>>      file = Fsubstitute_in_file_name (file);
>>> 
>>> -  bool no_native = suffix_p (file, ".elc");
>>> +  bool no_native = true;/* suffix_p (file, ".elc"); */
>>> 
>>>    /* Avoid weird lossage with null string as arg,
>>>       since it would try to load a directory as a Lisp file.  */
>>> ================
>>> 
>>> But I guess is not an option here if one can't recompile.
>>
>> Probably not.
>>
>> For the non-preloaded *.eln files, I guess moving them out of
>> native-comp-eln-load-path and setting native-comp-jit-compilation and
>> native-comp-enable-subr-trampolines to nil in early-init should force
>> Emacs to load the *.elc files, right?  If not, why not?
>
> Yeah right, if moving files is an option it should work.
>
>> But if we don't have any way of disabling loading of *.eln, I think we
>> should provide it.  WDYT?
>
> I agree, will do.

Going to implemnt it I realized I might already have done it in 2020 and
forgot about it 😬

Is 'load-no-native' what we wanted here?

Thanks

  Andrea




This bug report was last modified 1 year and 54 days ago.

Previous Next


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