Summary:
When using `-fvisibility-inlines-hidden` or using C/C++ shared libs
transitively from a Python binary, static locals in inline functions
can potentially have more than one definition at runtime. This diff
explicitly marks this static local as safe for this scenario.
Reviewed By: djwatson
Differential Revision:
D4082831
fbshipit-source-id:
75616ac26a39f44691ef59b889ea555e9daa391b
#include <folly/experimental/hazptr/debug.h>
inline memory_resource** default_mr_ptr() {
- static memory_resource* default_mr = new_delete_resource();
+ /* library-local */ static memory_resource* default_mr =
+ new_delete_resource();
DEBUG_PRINT(&default_mr << " " << default_mr);
return &default_mr;
}