X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=libstdc%2B%2B-v3%2Fdoc%2Fhtml%2Fmanual%2Fusing_exceptions.html;h=80f428734f21483f7756e7aa082b265a07451e03;hb=29ea0346ff7c8bcd4b2b68d52c3a1a4a254833d0;hp=c2dd6326d76c423af06f24a5fb3fdbba180252ce;hpb=046dd958c1672f5154d7207b0cb49cccd4378d12;p=pf3gnuchains%2Fgcc-fork.git diff --git a/libstdc++-v3/doc/html/manual/using_exceptions.html b/libstdc++-v3/doc/html/manual/using_exceptions.html index c2dd6326d76..80f428734f2 100644 --- a/libstdc++-v3/doc/html/manual/using_exceptions.html +++ b/libstdc++-v3/doc/html/manual/using_exceptions.html @@ -1,6 +1,5 @@ - -
+
The C++ language provides language support for stack unwinding
with try
and catch
blocks and
the throw
keyword.
@@ -12,7 +11,7 @@ exceptional circumstances.
Two general topics of discussion follow: exception neutrality and exception safety. -
+
What is exception-safe code?
Will define this as reasonable and well-defined behavior by classes @@ -27,7 +26,7 @@ exception neutrality and exception safety. Using the layered approach from Abrahams, can classify library components as providing set levels of safety. These will be called exception guarantees, and can be divided into three categories. -
+
One. Don't throw.
As specified in 23.2.1 general container requirements. Applicable
@@ -51,7 +50,7 @@ exception neutrality and exception safety.
Member functions insert
of a single
element, push_back
, push_front
,
and rehash
.
-
Simply put, once thrown an exception object should continue in flight unless handled explicitly. In practice, this means propagating exceptions should not be swallowed in @@ -75,7 +74,7 @@ exception neutrality and exception safety. Unfortunately, this tends to be more of a guideline than a strict rule as applied to the standard library. As such, the following is a list of known problem areas where exceptions are not propagated. -
+
Input/Output
The destructor ios_base::Init::~Init()
@@ -101,7 +100,7 @@ exception neutrality and exception safety.
The constructors of thread
that take a
callable function argument swallow all exceptions resulting from
executing the function argument.
-
C++ is a language that strives to be as efficient as is possible
in delivering features. As such, considerable care is used by both
language implementer and designers to make sure unused features
@@ -220,7 +219,7 @@ exception neutrality and exception safety.
substitution of the C language keyword
const
with the uglified
doppelganger __const
.
-
C language code that is expecting to interoperate with C++ should be
compiled with -fexceptions
. This will make
debugging a C language function called as part of C++-induced stack
@@ -235,7 +234,7 @@ is called.
getting these details right. For GNU systems, all appropriate parts
of the GNU C library are already compiled
with -fexceptions
.
-
System Interface Definitions, Issue 7 (IEEE Std. 1003.1-2008) @@ -275,40 +274,40 @@ is called. . Copyright © 2008 The Open Group/The Institute of Electrical and Electronics Engineers, Inc. - .
Error and Exception Handling . Boost - .
Exception-Safety in Generic Components . Boost - .
Standard Library Exception Policy . WG21 N1077 - .
ia64 c++ abi exception handling . GNU - .