Use implementation-specific properties of anonymous
namespaces.
- See this post
-
+ See this post.
This method fails the correctness criteria.
Extension: allow reopening on namespaces: This would
allow the debug mode to effectively alias the
namespace std to an internal namespace, such
@@ -365,8 +364,8 @@ test02()
instance, the program would have two std::cout
objects! This solution would fails the minimize
recompilation requirement, because we would only be able to
- support option (1) or (2).
Extension: use link name: This option involves
- complicated re-naming between debug-mode and release-mode
+ support option (1) or (2).
Extension: use link name: This option
+ involves complicated re-naming between debug-mode and release-mode
components at compile time, and then a g++ extension called
link name to recover the original names at link time. There
are two drawbacks to this approach. One, it's very verbose,
@@ -375,8 +374,8 @@ test02()
functions taking no arguments in mixed-mode settings resulting in
equivalent link names, vector::push_back() being
one example.
- See link
- name
Other options may exist for implementing the debug mode, many of
which have probably been considered and others that may still be
lurking. This list may be expanded over time to include other
options that we could have implemented, but in all cases the full
diff --git a/libstdc++-v3/doc/xml/manual/debug_mode.xml b/libstdc++-v3/doc/xml/manual/debug_mode.xml
index 8b5380dfeec..ff2f1cced89 100644
--- a/libstdc++-v3/doc/xml/manual/debug_mode.xml
+++ b/libstdc++-v3/doc/xml/manual/debug_mode.xml
@@ -800,8 +800,7 @@ test02()
Use implementation-specific properties of anonymous
namespaces.
- See this post
-
+ See this post.
This method fails the correctness criteria.Extension: allow reopening on namespaces: This would
@@ -817,8 +816,8 @@ test02()
recompilation requirement, because we would only be able to
support option (1) or (2).
- Extension: use link name: This option involves
- complicated re-naming between debug-mode and release-mode
+ Extension: use link name: This option
+ involves complicated re-naming between debug-mode and release-mode
components at compile time, and then a g++ extension called
link name to recover the original names at link time. There
are two drawbacks to this approach. One, it's very verbose,
@@ -827,8 +826,8 @@ test02()
functions taking no arguments in mixed-mode settings resulting in
equivalent link names, vector::push_back() being
one example.
- See link
- name
+ See proof-of-concept using link
+ name. Other options may exist for implementing the debug mode, many of