From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 14731 invoked by alias); 27 Mar 2005 06:23:35 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 14621 invoked by uid 48); 27 Mar 2005 06:23:24 -0000 Date: Sun, 27 Mar 2005 06:23:00 -0000 Message-ID: <20050327062324.14620.qmail@sourceware.org> From: "paulthomas2 at wanadoo dot fr" To: gcc-bugs@gcc.gnu.org In-Reply-To: <20050312174211.20442.paulthomas2@wanadoo.fr> References: <20050312174211.20442.paulthomas2@wanadoo.fr> Reply-To: gcc-bugzilla@gcc.gnu.org Subject: [Bug middle-end/20442] [3.3/3.4/4.0 Regression] problem mixing C++ exceptions and setjmp/longjmp with SJLJ exceptions X-Bugzilla-Reason: CC X-SW-Source: 2005-03/txt/msg03129.txt.bz2 List-Id: ------- Additional Comments From paulthomas2 at wanadoo dot fr 2005-03-27 06:23 ------- (In reply to comment #5) > (In reply to comment #0) > John Eaton's last word on the subject: ______________________________________________________________ Here is a fix for the Ctrl-C crashes Octave on Cygwin problem. My apologies to the GCC people for thinking this was a bug with GCC. jwe liboctave/ChangeLog: 2005-03-26 John W. Eaton * cmd-edit.cc (do_readline): Wrap call to ::octave_rl_readline with {BEGIN,END}_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE. src/ChangeLog: 2005-03-26 John W. Eaton * input.cc (gnu_readline): Don't wrap call to command_editor::readline with {BEGIN,END}_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE. Index: liboctave/cmd-edit.cc =================================================================== RCS file: /cvs/octave/liboctave/cmd-edit.cc,v retrieving revision 1.23 diff -u -r1.23 cmd-edit.cc --- liboctave/cmd-edit.cc 25 Nov 2003 06:05:20 -0000 1.23 +++ liboctave/cmd-edit.cc 26 Mar 2005 17:53:14 -0000 @@ -36,6 +36,8 @@ #include #endif +#include "quit.h" + #include "cmd-edit.h" #include "cmd-hist.h" #include "lo-error.h" @@ -192,7 +194,13 @@ eof = false; - char *line = ::octave_rl_readline (prompt.c_str ()); + char *line = 0; + + BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE; + + line = ::octave_rl_readline (prompt.c_str ()); + + END_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE; if (line) { Index: src/input.cc =================================================================== RCS file: /cvs/octave/src/input.cc,v retrieving revision 1.160 diff -u -r1.160 input.cc --- src/input.cc 4 Mar 2005 02:46:08 -0000 1.160 +++ src/input.cc 26 Mar 2005 17:53:27 -0000 @@ -177,12 +177,8 @@ { bool eof; - BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE; - retval = command_editor::readline (s, eof); - END_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE; - if (! eof && retval.empty ()) retval = "\n"; } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20442