[PATCH] D64793: [Driver] Properly use values-X[ca].o, values-xpg[46].o on Solaris

James Y Knight via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Jul 29 11:16:04 PDT 2019

jyknight added a comment.

> I fear it is necessary: at least it matches documented behaviour of both the Sun/Oracle Studio compilers and gcc.

I will defer to your opinion here. But -- one last attempt at dissuading you. :)

Is this really doing something _important_, or is it just legacy cruft which can be safely ignored by now? With your "logb" example, it seems to me that it is probably preferable to always use the new correct "xpg6" implementation, and just ignore the legacy/incorrect version. Similarly, the example given in https://gcc.gnu.org/PR40411 of freopen -- again, seems like it'd be better to just use the new xpg6 behavior, always.

> The -std= options usually get passed to the linking step because CFLAGS is added to the options as well

With gnu make they are not (unless it's doing a single-step compiling+linking step). Other tools like CMake also don't pass standards versions to linking. This makes sense, because a program can contain code compiled with multiple standards versions, and multiple languages. Thus, I'd expect most users to just get the default xpg6 and Xa objects, even if they do specify -std=c90 for compilation.

  rC Clang



More information about the cfe-commits mailing list