On Windows we already hide symbol visibility, but for Linux and macOS this is only done selectively.
There are a number of open reports that may be solved by doing this:
- T74262: Cycles render hangs on Linux and AMD Radeon RX 5700 XT
- T76414: Blender crashing when trying to use Cupy
- T68052: Segfault when accessing Cycles Render Devices preferences with two OpenCL platforms, AMD Mesa Clover and Intel Gen9 NEO
And there have been various other in the past.
It seems better to try compiling Blender and all external liibraries with hidden symbols instead of trying to play whack-a-mole with these symbols. This does require rebuilding all precompiled libraries.