Opened 7 years ago
Closed 7 years ago
#11361 closed Support Requests (wontfix)
Solaris - `std::exception`
Reported by: | Zok | Owned by: | Robert Ramey |
---|---|---|---|
Milestone: | To Be Determined | Component: | serialization |
Version: | Boost 1.58.0 | Severity: | Problem |
Keywords: | Solaris | Cc: |
Description
For some complicated class hierarchies that have virtual base classes with no data members, the Oracle Solaris Studio C++ compiler generates incorrect vtables. The issue is fixed in C++ 5.4 and higher, but if the fix for this compiler bug were enabled, code generated by the fixed compiler would not be compatible with code generated by unfixed compilers. The fix thus will not be enabled until the C++ ABI is changed.
To avoid the problem we have to pass: -xwarn_empty_vbase -errwarn=warn_empty_virt_base
The problem is '''archive_exception'''
, '''hex_decode_error'''
inherit from std::exception with virtual
.
Now, obviously, we are getting Error: Class "std::exception" appears as an empty virtual base class.
Sun compiler team said they are not planning to fix this, because it will change the ABI.
Is there a way we can fix this on Boost side? (possibly with condition for Sun pre C++ 5.4)
Thank you!
Change History (3)
comment:1 by , 7 years ago
Component: | None → serialization |
---|---|
Owner: | set to |
comment:2 by , 7 years ago
comment:3 by , 7 years ago
Resolution: | → wontfix |
---|---|
Status: | new → closed |
If you want to submit a specific suggestion to modify the code, I'll be happy to take a look at it and consider adding it.
Robert Ramey