libstdc++ recently made an appearance in a glibc bug, which made me realize that they aren't marked as NODELETE (on GNU ELF platforms). (The bug in question was purely glibc, though.)
Are these shared objects really expected to be unloaded? Given that libstdc++ contains many destructors, I expect that unloading will be problematic in most cases. Unloading libgcc_s also seems a bit over the top to me. This only matters if any of the shared objects is loaded late via dlopen. If the main program is linked against them, they are implicitly NODELETE anyway. Thoughts? Should these shared objects be linked with -z nodelete? Thanks, Florian