diff options
author | Chuanqi Xu <yedeng.yd@linux.alibaba.com> | 2023-10-23 10:06:16 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-10-23 10:06:16 +0800 |
commit | 366ffbaf627d0b6867299458cf57f8464259e550 (patch) | |
tree | 9dae18c8bab38f7d50783e90ed92453ea37c2fd3 /lldb/source/Plugins/ScriptInterpreter/Python/PythonReadline.h | |
parent | 86bb713142c3cb2a895113061de6ced1f15ebb84 (diff) | |
download | llvm-366ffbaf627d0b6867299458cf57f8464259e550.zip llvm-366ffbaf627d0b6867299458cf57f8464259e550.tar.gz llvm-366ffbaf627d0b6867299458cf57f8464259e550.tar.bz2 |
[C++20] [Modules] [Driver] Don't enable -fdelayed-template-parsing by default on windows with C++20 (#69431)
There are already 3 issues about the broken state of
-fdelayed-template-parsing and C++20 modules:
- https://github.com/llvm/llvm-project/issues/61068
- https://github.com/llvm/llvm-project/issues/64810
- https://github.com/llvm/llvm-project/issues/65027
The problem is more complex than I thought. I am not sure how to fix it
properly now. Given the complexities and -fdelayed-template-parsing is
actually an extension to support old MS codes, I think it may make sense
to not enable the -fdelayed-template-parsing option by default with
C++20 modules to give more user friendly experience. Users who still
want -fdelayed-template-parsing can specify it explicitly.
Also according to https://learn.microsoft.com/en-us/cpp/build/reference/permissive-standards-conformance?view=msvc-170, MSVC actually defaults to -fno-delayed-template-parsing (/Zc:twoPhase-
with MSVC CLI) if using C++20. So we match the behavior with MSVC here to
not enable -fdelayed-template-parsing by default after C++20.
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/PythonReadline.h')
0 files changed, 0 insertions, 0 deletions