🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.g++.lib.bug
Article #218

compiling libg++-1.36.3 with g++-1.36.3 on sun4

#218
From: Doug Lea
Date: Thu, 18 Jan 1990 11:00
27 lines
1732 bytes

> 2) several files get flagged as a warning that a volatile funtion does
> return, which appears to be false.

Not quite false, but deserving of explanation:

libg++ does not (yet) use the experimental g++ exception handling
facilities (they are still too new: Too many things would have to be
redone if the EH features change). So the only exception strategy is
for error traps like Integer::error() to call the function pointed to
by lib_error_handler (see builtin.h). By default, this points to
default_two_arg_error_handler, which prints a message on stderr and
aborts. But it *can* be reset to do anything at all, and need not
abort execution. On the other hand, *some* (not all) error() member
functions are used in a way that preclude any kind of sensible
continuation even if error() returns. I mark these as `volatile',
since the compiler might as well act as if they cannot return: This is
defensible in that even if (*lib_error_handler) returns, things are
going so wrong that you are no worse off if the compiler generates
(usually faster) code assuming execution aborts.  The compiler
correctly warns about these.

Again, saner strategies will be employed when the C++ exception
handling situation stabilizes.

-Doug
Technical Details
Message-ID: <9001181100.AA00738@g.oswego.edu>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!tut.cis.ohio-state.edu!G.OSWEGO.EDU!dl
References: <9001172056.AA01056@mdtf05.gov>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!tut.cis.ohio-state.edu!G.OSWEGO.EDU!dl
From: dl@G.OSWEGO.EDU (Doug Lea)
Newsgroups: gnu.g++.lib.bug
Subject: compiling libg++-1.36.3 with g++-1.36.3 on sun4
Message-ID: <9001181100.AA00738@g.oswego.edu>
Date: 18 Jan 90 11:00:57 GMT
References: <9001172056.AA01056@mdtf05.gov>
Sender: daemon@tut.cis.ohio-state.edu
Reply-To: dl@oswego.oswego.edu
Distribution: gnu
Organization: GNUs Not Usenet
Lines: 27