With -fno-crossjumping, the real assert came to light.
It is xdisp.c in line 6122:
/* The function move_it_vertically_backward may move over more
than the specified y-distance. If it->w is small, e.g. a
mini-buffer window, we may end up in front of the window's
display area. Start displaying at the start of the line
containing PT in this case. */
if (it.current_y <= 0)
{
init_iterator (&it, w, PT, PT_BYTE, NULL, DEFAULT_FACE_ID);
move_it_vertically_backward (&it, 0);
xassert (IT_CHARPOS (it) <= PT);
it.current_y = 0;
}
I suppose that the reseat_1 in move_it_vertically_backward will move
forward again. Something like that.
--
David Kastrup, Kriemhildstr. 15, 44793 Bochum
_______________________________________________
Emacs-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/emacs-devel