From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#18438: 24.4.50; assertion failed in bidi.c Date: Thu, 09 Oct 2014 10:29:50 +0300 Message-ID: <83ppe1itu9.fsf@gnu.org> References: <4745242cd3e424a6c4d5db0e8d3e33d0@amuri.net> <83h9zrlzc8.fsf@gnu.org> <54297FDB.6090606@cornell.edu> <837g0mmkf3.fsf@gnu.org> <6b19fab333f3d362ae61b30b299d7206@amuri.net> <83iok5ku74.fsf@gnu.org> <88ccbe34bf58322ae4b2a5657390c041@amuri.net> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1412839825 13199 80.91.229.3 (9 Oct 2014 07:30:25 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 9 Oct 2014 07:30:25 +0000 (UTC) Cc: 18438@debbugs.gnu.org To: aidalgol@amuri.net Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu Oct 09 09:30:19 2014 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Xc8Ax-0001ln-W6 for geb-bug-gnu-emacs@m.gmane.org; Thu, 09 Oct 2014 09:30:16 +0200 Original-Received: from localhost ([::1]:40881 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xc8Ax-00012Q-C4 for geb-bug-gnu-emacs@m.gmane.org; Thu, 09 Oct 2014 03:30:15 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:50932) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xc8Ap-00010A-N5 for bug-gnu-emacs@gnu.org; Thu, 09 Oct 2014 03:30:12 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Xc8Ak-0006s2-OI for bug-gnu-emacs@gnu.org; Thu, 09 Oct 2014 03:30:07 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:46897) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xc8Ak-0006ry-LL for bug-gnu-emacs@gnu.org; Thu, 09 Oct 2014 03:30:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1Xc8Ak-0003xQ-4K for bug-gnu-emacs@gnu.org; Thu, 09 Oct 2014 03:30:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 09 Oct 2014 07:30:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 18438 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: moreinfo Original-Received: via spool by 18438-submit@debbugs.gnu.org id=B18438.141283978115161 (code B ref 18438); Thu, 09 Oct 2014 07:30:01 +0000 Original-Received: (at 18438) by debbugs.gnu.org; 9 Oct 2014 07:29:41 +0000 Original-Received: from localhost ([127.0.0.1]:38461 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Xc8AO-0003wT-L7 for submit@debbugs.gnu.org; Thu, 09 Oct 2014 03:29:40 -0400 Original-Received: from mtaout21.012.net.il ([80.179.55.169]:38855) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Xc8AL-0003wJ-38 for 18438@debbugs.gnu.org; Thu, 09 Oct 2014 03:29:39 -0400 Original-Received: from conversion-daemon.a-mtaout21.012.net.il by a-mtaout21.012.net.il (HyperSendmail v2007.08) id <0ND600E001274000@a-mtaout21.012.net.il> for 18438@debbugs.gnu.org; Thu, 09 Oct 2014 10:29:35 +0300 (IDT) Original-Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout21.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0ND600ESI25A2060@a-mtaout21.012.net.il>; Thu, 09 Oct 2014 10:29:35 +0300 (IDT) In-reply-to: <88ccbe34bf58322ae4b2a5657390c041@amuri.net> X-012-Sender: halo1@inter.net.il X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:94325 > Date: Thu, 09 Oct 2014 11:20:51 +1300 > From: aidalgol@amuri.net > Cc: <18438@debbugs.gnu.org>, > > > --- src/bidi.c 2014-04-06 15:56:01 +0000 > > +++ src/bidi.c 2014-09-30 15:21:28 +0000 > > @@ -326,7 +326,12 @@ bidi_get_type (int ch, bidi_dir_t overri > > static void > > bidi_check_type (bidi_type_t type) > > { > > - eassert (UNKNOWN_BT <= type && type <= NEUTRAL_ON); > > + if (!(suppress_checking || (UNKNOWN_BT <= type && type <= > > NEUTRAL_ON))) > > + { > > + fprintf (stderr, "\r\n%s:%d: bidi type %d is not in > > [%d..%d]\r\n", > > + __FILE__, __LINE__, type, UNKNOWN_BT, NEUTRAL_ON); > > + emacs_abort (); > > + } > > } > > > > /* Given a bidi TYPE of a character, return its category. */ > > OK, it finally happened. It printed out... > > bidi.c:332: bidi type 22 is not in [0..23] Bidi type 22 is whitespace, most likely the SPC character. > Isn't that a logical impossibility? Of course, it is. It always was. This is what this bug is all about. > What the hell is going on? That's what we are trying to establish. My working hypothesis is that some unrelated code, either in another Emacs thread or maybe (less likely) in the OS bowels preempts this function and doesn't restore all the registers when it passes control back to the function. Any other ideas are welcome. Could you show the disassembly of this function in its new form? I'd like to see if the value of the bidi type being checked is loaded into the same register as in the original version. Also, if you have the backtrace, including from all the other threads, please post that. Thanks.