-
-
Notifications
You must be signed in to change notification settings - Fork 258
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement --cppstdlib #3711
Implement --cppstdlib #3711
Conversation
cc @Geod42 This will probably will be implemented upstream too |
I think that should be done through |
AFAICS, llvm::triple does not have support for this. |
Then I guess |
I'd prefer that this be done upstream and then adapted for LDC as a) DMD will need this too, and b) target.d and the command line processing for target specific things has changed a lot recently and this will only add to that. |
Is there a consensus over this? |
This flag allows user to select from GCC/Clang C++ runtimes on Linux.
Sorry for the late reply, but this PR popped up while I was on vacation. - I'm not a big fan of a new switch, nor of extending the 'triple' in some LDC-specific, non-LLVM-compatible way. Mainly because it's only useful for the few Extracting the few C++ stdlib bindings into a separate dub package, with e.g. dub configurations enabling to switch between libstdc++ and libc++ would IMO make much more sense. Wrt. triples in general, even a C++ runtime addition wouldn't define a target platform sufficiently. We have to guess the used C compiler (gcc/clang) in some ABI-specific parts, where clang skips empty-struct parameters while gcc doesn't etc. |
I agree about not adding this to the triple. |
I fully agree with you guys, but Andrei didn't: dlang/druntime#2286 (comment) |
@kinke : I just found out that no |
Just no idea about the dominant C++ library for musl, uclibc, some BSDs… - I preferred defining none over a wild guess, in the hopes that people using such platforms would notice and open according PRs when trying to use |
Will do that soon (currently testing bosagora/docker-agora-builder@e7fab46 ) |
This flag allows user to select from GCC/Clang C++ runtimes
on Linux similar to
--stdlib
onclang
.