bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#10164: 24.0.91; Instant crash enabling linum-mode


From: Dan Nicolaescu
Subject: bug#10164: 24.0.91; Instant crash enabling linum-mode
Date: Wed, 30 Nov 2011 07:52:40 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.3 (gnu/linux)

Eli Zaretskii <eliz@gnu.org> writes:

>> Date: Tue, 29 Nov 2011 19:05:20 -0700
>> From: Tim Crews <tim.crews@code-affinity.com>
>> 
>>     Start Emacs with runemacs -Q --no-init-file
>>     C-x C-f foo.txt
>>     M-x linum-mode
>>     (Emacs doesn't crash yet)
>>     Type anything.  Emacs instantly crashes.
>
> Arrgh!  This is GCC 4.6.x "as-is" code reordering in action.  Emacs
> crashes here:
>
>             xassert (!row->enabled_p
>                      || row->mode_line_p
>                      || verify_row_hash (row));
>
> Evidently, it calls verify_row_hash before it tests row->mode_line_p.

Are you sure?  Without interprocedural analysis the compiler cannot know
that `verify_row_hash' does not alter row->enabled_p, so it cannot
change the evaluation order.
BTW, the argument for row_hash should be const.





reply via email to

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