hello,
On 23/10/2021 23:16, David Kastrup wrote:
The following eventually crashes:
-*- mode: compilation; default-directory: "/tmp/" -*-
Compilation started at Sun Oct 24 00:14:20
lilypond /tmp/bah.ly
GNU LilyPond 2.23.5 (running Guile 1.8)
Processing `/tmp/bah.ly'
Parsing...
/tmp/bah.ly:1: warning: no \version statement found, please add
\version "2.23.5"
for future compatibility
Interpreting music...
programming error: no current dynamic
continuing, cross fingers
programming error: no current dynamic
continuing, cross fingers
programming error: no dynamic span to finish
continuing, cross fingers
MIDI output to `bah.midi'...
Compilation segmentation fault (core dumped) at Sun Oct 24 00:14:21
All I could come up with is a null pointer reference issue in '
--snip-
(gdb) f 0
#0 0x00005555558ecfa6 in Rational::compare (r=..., s=...)
at /home/james/Downloads/git_repos/lilypond-git/flower/rational.cc:207
207 if (r.sign_ < s.sign_)
(gdb) p r
$5 = (const Rational &) <error reading variable>
(gdb) p s
$6 = (const Rational &) <error reading variable>
--snip--
if I go up the stack a bit
--snip-
(gdb) f 3
#3 0x0000555555705abb in audio_item_less (a=0x555555d37e90,
b=0x555555d37df0)
at /home/james/Downloads/git_repos/lilypond-git/lily/midi-walker.cc:54
54 return a->get_column ()->when_ < b->get_column ()->when_;
(gdb) p a
$1 = (Audio_item * const) 0x555555d37e90
(gdb) p b
$2 = (Audio_item * const) 0x555555d37df0
--snip--
and this gives me
--snip--
(gdb) p * (Audio_item *) 0x555555d37e90
$3 = {<Audio_element> = {
_vptr.Audio_element = 0x555555a796b8 <vtable for Audio_text+16>},
audio_column_ = 0x0, channel_ = 0}
(gdb) p * (Audio_item *) 0x555555d37df0
$4 = {<Audio_element> = {
_vptr.Audio_element = 0x555555a796b8 <vtable for Audio_text+16>},
audio_column_ = 0x0, channel_ = 0}
--snip--
if I see what the code is at this point on midi-walker.cc
--snip--
(gdb) list
49
50 bool
51 audio_item_less (Audio_item *const a,
52 Audio_item *const b)
53 {
54 return a->get_column ()->when_ < b->get_column ()->when_;
55 }
56
57 Midi_walker::Midi_walker (Audio_staff *audio_staff, Midi_track
*track, int start_tick)
58 {
--snip--
Audio_item is not getting a value set?
Unfortunately that is the limit of my already-limited knowledge :D
And I have also found out that I cannot compile master beyond the last
few dev releases without getting a compilation error (probably python
related) when making lilypond. So I cannot usefully git bisect.
Anyway, hope this was helpful,
James
--
Regards
James
_______________________________________________
bug-lilypond mailing list
bug-lilypond@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-lilypond