public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/13396] New: exceptions disrupted by C in the call stack
@ 2003-12-13 23:20 bim2003 at basistech dot com
2003-12-13 23:22 ` [Bug c++/13396] " bim2003 at basistech dot com
` (6 more replies)
0 siblings, 7 replies; 8+ messages in thread
From: bim2003 at basistech dot com @ 2003-12-13 23:20 UTC (permalink / raw)
To: gcc-bugs
A C++ program defines an extern "C" function. It then calls a C function, which
in turn calls the extern "C" function. The extern "C" function throws.
A 'catch' block in the original fails to catch the exception.
--
Summary: exceptions disrupted by C in the call stack
Product: gcc
Version: 3.2.3
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: bim2003 at basistech dot com
CC: gcc-bugs at gcc dot gnu dot org
GCC build triplet: i686-pc-linux-gnu
GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13396
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/13396] exceptions disrupted by C in the call stack
2003-12-13 23:20 [Bug c++/13396] New: exceptions disrupted by C in the call stack bim2003 at basistech dot com
@ 2003-12-13 23:22 ` bim2003 at basistech dot com
2003-12-16 23:00 ` pinskia at gcc dot gnu dot org
` (5 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: bim2003 at basistech dot com @ 2003-12-13 23:22 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From bim2003 at basistech dot com 2003-12-13 23:22 -------
Created an attachment (id=5328)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=5328&action=view)
Sample that demonstrates the problem.
The example builds both a dlopen test bed and a plain, statically-linked,
version. The problem can be demonstrated by running 'make' and then running
'sdriver', the statically linked example.
All this was experienced with glibc 2.2.5-44, however the relevant code seems
to live in libgcc, so that glibc should not be an issue.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13396
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/13396] exceptions disrupted by C in the call stack
2003-12-13 23:20 [Bug c++/13396] New: exceptions disrupted by C in the call stack bim2003 at basistech dot com
2003-12-13 23:22 ` [Bug c++/13396] " bim2003 at basistech dot com
@ 2003-12-16 23:00 ` pinskia at gcc dot gnu dot org
2003-12-17 15:29 ` bangerth at dealii dot org
` (4 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2003-12-16 23:00 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2003-12-16 22:53 -------
Not a bug, compile the c file with -fexceptions.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution| |INVALID
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13396
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/13396] exceptions disrupted by C in the call stack
2003-12-13 23:20 [Bug c++/13396] New: exceptions disrupted by C in the call stack bim2003 at basistech dot com
2003-12-13 23:22 ` [Bug c++/13396] " bim2003 at basistech dot com
2003-12-16 23:00 ` pinskia at gcc dot gnu dot org
@ 2003-12-17 15:29 ` bangerth at dealii dot org
2003-12-17 16:43 ` pinskia at gcc dot gnu dot org
` (3 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: bangerth at dealii dot org @ 2003-12-17 15:29 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From bangerth at dealii dot org 2003-12-17 11:19 -------
I believe I checked this before, and it didn't help. Andrew,
did you actually test this?
W.
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |pinskia at gcc dot gnu dot
| |org
Status|RESOLVED |UNCONFIRMED
Resolution|INVALID |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13396
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/13396] exceptions disrupted by C in the call stack
2003-12-13 23:20 [Bug c++/13396] New: exceptions disrupted by C in the call stack bim2003 at basistech dot com
` (2 preceding siblings ...)
2003-12-17 15:29 ` bangerth at dealii dot org
@ 2003-12-17 16:43 ` pinskia at gcc dot gnu dot org
2003-12-17 16:58 ` bim2003 at basistech dot com
` (2 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2003-12-17 16:43 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2003-12-17 16:30 -------
Still invalid, the code contains: extern void do_something() throw(); which tells gcc that it cannot
throw anything usefull and if it does throw, then gcc has to abort.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution| |INVALID
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13396
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/13396] exceptions disrupted by C in the call stack
2003-12-13 23:20 [Bug c++/13396] New: exceptions disrupted by C in the call stack bim2003 at basistech dot com
` (3 preceding siblings ...)
2003-12-17 16:43 ` pinskia at gcc dot gnu dot org
@ 2003-12-17 16:58 ` bim2003 at basistech dot com
2003-12-18 18:51 ` bim2003 at basistech dot com
2003-12-19 9:43 ` bangerth at dealii dot org
6 siblings, 0 replies; 8+ messages in thread
From: bim2003 at basistech dot com @ 2003-12-17 16:58 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From bim2003 at basistech dot com 2003-12-17 16:48 -------
Subject: RE: exceptions disrupted by C in the call stack
Arggh. I thought throw() meant 'can throw anything', not 'can't throw
anything useful'.
-----Original Message-----
From: pinskia at gcc dot gnu dot org [mailto:gcc-bugzilla@gcc.gnu.org]
Sent: Wednesday, December 17, 2003 11:30 AM
To: Benson Margulies
Subject: [Bug c++/13396] exceptions disrupted by C in the call stack
------- Additional Comments From pinskia at gcc dot gnu dot org
2003-12-17 16:30 ------- Still invalid, the code contains: extern void
do_something() throw(); which tells gcc that it cannot
throw anything usefull and if it does throw, then gcc has to abort.
--
What |Removed |Added
------------------------------------------------------------------------
----
Status|UNCONFIRMED |RESOLVED
Resolution| |INVALID
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13396
------- You are receiving this mail because: -------
You reported the bug, or are watching the reporter.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13396
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/13396] exceptions disrupted by C in the call stack
2003-12-13 23:20 [Bug c++/13396] New: exceptions disrupted by C in the call stack bim2003 at basistech dot com
` (4 preceding siblings ...)
2003-12-17 16:58 ` bim2003 at basistech dot com
@ 2003-12-18 18:51 ` bim2003 at basistech dot com
2003-12-19 9:43 ` bangerth at dealii dot org
6 siblings, 0 replies; 8+ messages in thread
From: bim2003 at basistech dot com @ 2003-12-18 18:51 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From bim2003 at basistech dot com 2003-12-18 18:39 -------
Subject: RE: exceptions disrupted by C in the call stack
GCC 3.2.3 does not have throw(...). So, is that the default, and throw()
asserts 'no throws here'?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13396
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/13396] exceptions disrupted by C in the call stack
2003-12-13 23:20 [Bug c++/13396] New: exceptions disrupted by C in the call stack bim2003 at basistech dot com
` (5 preceding siblings ...)
2003-12-18 18:51 ` bim2003 at basistech dot com
@ 2003-12-19 9:43 ` bangerth at dealii dot org
6 siblings, 0 replies; 8+ messages in thread
From: bangerth at dealii dot org @ 2003-12-19 9:43 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From bangerth at dealii dot org 2003-12-19 08:49 -------
throw() means: this function doesn't throw anything. If it does,
then this is converted to a call to terminate. throw(...) is the same
as if you don't specify anything, i.e.: this function can throw anything.
W.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13396
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2003-12-19 8:49 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-12-13 23:20 [Bug c++/13396] New: exceptions disrupted by C in the call stack bim2003 at basistech dot com
2003-12-13 23:22 ` [Bug c++/13396] " bim2003 at basistech dot com
2003-12-16 23:00 ` pinskia at gcc dot gnu dot org
2003-12-17 15:29 ` bangerth at dealii dot org
2003-12-17 16:43 ` pinskia at gcc dot gnu dot org
2003-12-17 16:58 ` bim2003 at basistech dot com
2003-12-18 18:51 ` bim2003 at basistech dot com
2003-12-19 9:43 ` bangerth at dealii dot org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).