Skip Navigation Links | |
Exit Print View | |
Oracle Solaris Studio 12.3: C++ User's Guide Oracle Solaris Studio 12.3 Information Library |
3. Using the C++ Compiler Options
6. Creating and Using Templates
8.1 Synchronous and Asynchronous Exceptions
8.4 Using Runtime Functions and Predefined Exceptions
8.5 Mixing Exceptions With Signals and Setjmp/Longjmp
9. Improving Program Performance
10. Building Multithreaded Programs
12. Using the C++ Standard Library
Never use -Bsymbolic with programs containing C++ code. Use linker map files instead or linker scoping options. See 4.1 Linker Scoping... With -Bsymbolic, references in different modules can bind to different copies of what is supposed to be one global object.
The exception mechanism relies on comparing addresses. If you have two copies of something, their addresses won’t compare equal, and the exception mechanism can fail because the exception mechanism relies on comparing what are supposed to be unique addresses.