Skip to content
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

Support -x for clang-cl #88006

Closed
huangqinjin opened this issue Apr 8, 2024 · 0 comments · Fixed by #89772
Closed

Support -x for clang-cl #88006

huangqinjin opened this issue Apr 8, 2024 · 0 comments · Fixed by #89772
Labels
clang-cl `clang-cl` driver. Don't use for other compiler parts

Comments

@huangqinjin
Copy link
Contributor

clang-cl -help shows that -x is supported directly. It was added by #68921 to support CUDA/HIP.

But clang-cl -x c++-module report an error

unsupported option '-x c++-module'; did you mean '/TC' or '/TP'?

Support -x for clang-cl, so that we can use /clang: to compile C++20 modules (#64118).

@EugeneZelenko EugeneZelenko added clang-cl `clang-cl` driver. Don't use for other compiler parts and removed new issue labels Apr 8, 2024
huangqinjin added a commit to huangqinjin/llvm-project that referenced this issue Apr 23, 2024
After llvm#68921,
clang-cl gained option `-x` but only for CUDA/HIP.
This commit simply removes the restriction on parameters to `-x`.
Especially, it is able to use `-x c++-module` and `-x c++-user-header`
to build C++20 modules and header units with clang-cl.

This effectively reverts commit fe08212.

Closes llvm#88006.
huangqinjin added a commit to huangqinjin/cxxmodules that referenced this issue May 5, 2024
clang-cl does not support `-x` currently.
llvm/llvm-project#88006

On Unix, install https://github.com/mstorsjo/msvc-wine to /opt/msvc,
and pass CXXFLAGS="-winsysroot /opt/msvc -fuse-ld=lld" to Makefile.
huangqinjin added a commit to huangqinjin/llvm-project that referenced this issue May 7, 2024
After llvm#68921,
clang-cl gained option `-x` but only for CUDA/HIP.
This commit simply removes the restriction on parameters to `-x`.
Especially, it is able to use `-x c++-module` and `-x c++-user-header`
to build C++20 modules and header units with clang-cl.

This effectively reverts commit fe08212.

Closes llvm#88006.
huangqinjin added a commit to huangqinjin/llvm-project that referenced this issue May 22, 2024
After llvm#68921,
clang-cl gained option `-x` but only for CUDA/HIP.
This commit simply removes the restriction on parameters to `-x`.
Especially, it is able to use `-x c++-module` and `-x c++-system-header`
to build C++20 modules and header units with clang-cl.

This effectively reverts commit fe08212.

Closes llvm#88006.
MaskRay pushed a commit that referenced this issue May 24, 2024
After #68921, clang-cl gained
option `-x` but only for CUDA/HIP. This commit simply removes the
restriction on parameters to `-x`. Especially, it is able to use `-x
c++-module` and `-x c++-system-header` to build C++20 modules and header
units with clang-cl.

This effectively reverts commit
fe08212.

Closes #88006.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
clang-cl `clang-cl` driver. Don't use for other compiler parts
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants