Previously we added both -GR- and -fno-rtti if RTTI was disabled.
When building with clang 16.x, that caused this error in part of the build:
clang-16: error: argument unused during compilation: '-G R-' [-Werror,-Wunused-command-line-argument]
I think the strange message is because clang is seeing R- as the argument
to -G, which is a valid clang option.
-GR- is an alternate syntax for the /GR- option for MSVC
(the dash means disable RTTI):
https://learn.microsoft.com/en-us/cpp/build/reference/gr-enable-run-time-type-information?view=msvc-170
This error is sort of fixed by cd18efb61d759405956dbd30e4b5f2720d8e1783
but not intentionally. Also, we'd have to wait for 17.x to benefit from that.
The proper fix here is to only add -GR- if we are building with MSVC
or the MSVC-like clang-cl, and add -fno-rtti if not.
I'm late to the party here, but AFAIK we don't need to use these very libcxx specific cmake defines here - if (MSVC) is just enough as well; the cmake MSVC define is set for MSVC proper or any commandline compatible environment (icl, clang-cl).