-
Notifications
You must be signed in to change notification settings - Fork 140
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Runtime type_mismatch after upgrade to 1.69 #199
Comments
Hi, Thanks for the report. Since the error is pretty weird, this might be due to the numerous issues that popped out when the visibility default have changed on the boost project. The symbol I have fixed many of those, the fixes are in the
If this does not work for you, I'll open a branch for fixing this. Thanks! |
I would love to test and I think my distribution (Arch) also ships the static files ( I removed the
|
@floli
For static linking I used
This is really odd. |
Thanks for the feedback! May I ask you to try again by replacing
with
in the file The assertion is fired by a mismatch of the |
I tried it but unfortunately the error persists. |
Thanks for the feedback. Would you please check the branch Thanks! |
Works like a charm :). |
Is there a workaround for code that uses Boost.Test <= 1.69 (It was broken since 1.64)? |
@Summerdave was it broken since 1.64? I believe the default to hidden symbols was for 1.67/1.68? Anyway, several options, but none of them will be pleasant to hear :)
None of those solution can use the symbol that you were consuming, it is just "hidden" inside the boundaries of the shared library. I am sorry about that. |
…next-internal * topic/GH-199-runtime-type_mismatch-after-upgrade: Change log Default visibility for enums and rtti objects facility
No, it worked fine before Boost 1.69 and will likely work on 1.70. We will find a workaround, thanks for your help @raffienficiaud |
There is a bug regarding the visibility in library symbols of Boost Test 1.69, see boostorg/test#199 For that version we omit getting the version set at the test executable command line and simpy assume debug. See also #251 Closes #251
You are right. I compiled Boost.Test with a (very) recent b2 when i checked out the old tag. Anyway, thank you very much. |
I think @Summerdave referred to a conditional compile we had in our project because names changed from 1.64 to 1.65. See precice/precice@41c8a58#diff-056d65e350602d6404f094b31127c8d9 where the workaround was removed, because we lifted our minimal version requirement to 1.65. |
Boost.Test 1.67 has issues with hidden symbols. Ref.: boostorg/test#199
Boost.Test 1.67 has issues with hidden symbols. Ref.: boostorg/test#199
Boost.Test 1.67 has issues with hidden symbols. Ref.: boostorg/test#199
Boost.Test 1.67 has issues with hidden symbols. Ref.: boostorg/test#199
Boost.Test 1.67 has issues with hidden symbols. Ref.: boostorg/test#199
Boost.Test 1.67 has issues with hidden symbols. Ref.: boostorg/test#199
Hello,
after my distribution (Arch) rolled out the upgrade to Boost 1.69 I am unable to compile my application anymore.
I try to get the log_level set. Minimal compiling example:
which compiles fine with
g++ -std=c++11 -lboost_unit_test_framework boosttesting.cpp
or withclang++
but gives an runtime error (exact same for both compilers):
Thanks!
The text was updated successfully, but these errors were encountered: