emacs-devel
[Top][All Lists]
Advanced

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

xasserts and vertical motion.


From: David Kastrup
Subject: xasserts and vertical motion.
Date: Mon, 21 Feb 2005 00:08:58 +0100
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux)

There are now several xasserts in the vertical motion routines that
are supposed to check for some assumptions about progress made on
display.  I strongly recommend taking them out.

a) they are causing frequent aborts in normal editing operations.  At
a time where one has to refer people to the trunk Emacs for quite a
bit of functionality that feels somewhat unfortunate.

b) they don't check for _structural_ incoherence (namely that Emacs'
internal data structures are not garbled), but for _visual_
incoherence.  But for debugging this one needs information about what
kind of things happen on the screen at the time, and just in what
manner some expectations might get violated.  This is much easier to
get when Emacs remains operative and gets a chance to _display_ the
result of the operation instead of committing suicide.  After all, one
can then repeat the process and narrow down just what causes it.  And
it significantly widens the audience that can help with debugging.  It
is much easier to describe what happens on the screen than to pick
apart the data structures in an aborting Emacs (which are not usually
accessible with most compilers and the standard compiler flags for
optimization, anyway).

Those xasserts that replace visual cues with an aborting Emacs do not
just make using Emacs for serious work harder, but they also actively
_hinder_ debugging possibly occuring display problems.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum




reply via email to

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