--- llvm-15.0.6.src/tools/clang/lib/Driver/ToolChains/Solaris.cpp 2022-11-29 11:05:58.000000000 +0000 +++ llvm-15.0.6.src/tools/clang/lib/Driver/ToolChains/Solaris.cpp.new 2023-01-06 12:48:15.226333062 +0000 @@ -53,6 +53,7 @@ const ArgList &Args, const char *LinkingOutput) const { ArgStringList CmdArgs; + const Driver &D = getToolChain().getDriver(); // Demangle C++ names in errors CmdArgs.push_back("-C"); @@ -143,7 +144,8 @@ CmdArgs.push_back("-latomic"); CmdArgs.push_back(getAsNeededOption(getToolChain(), false)); } - CmdArgs.push_back("-lgcc_s"); + if (D.CCCIsCXX()) + CmdArgs.push_back("-lgcc_s"); CmdArgs.push_back("-lc"); if (!Args.hasArg(options::OPT_shared)) { CmdArgs.push_back("-lgcc");