-
Notifications
You must be signed in to change notification settings - Fork 58
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
ODR issue for gcc san with CRAN version #152
Comments
This is because both tbb and tbbmalloc define the (identical) object here: RcppParallel/src/tbb/src/tbb/tools_api/ittnotify_static.c Lines 226 to 243 in 20d6042
I tried playing around to see if there was a simple way to avoid that collision, but I couldn't find anything on first glance. |
For some reason, some compiled optimized versions do not see this ODR violation; I think it doesn't (yet) occur with CRAN. |
It does; the CRAN team has notified me already. And it's apparent because that same symbol is defined in both libraries:
I'm not sure what the right fix is on TBB's side, though. Should they be sharing a single definition? Should the name of the version in tbbmalloc be different? |
I am unsure too. We simply redefined for each binary that we produced. If you follow that approach you would pick one and change any name that refers to it. This could probably by some build script. |
Note to self, the solution here is probably to try defining RcppParallel/src/tbb/src/tbb/tools_api/ittnotify.h Lines 239 to 244 in ad65ac4
|
I am getting the following ODR violation; CRAN asked me to fix ODR violations in my package, and this one came up:
The text was updated successfully, but these errors were encountered: