Repository navigation
Conversation
The existence of <float.h> in libc++ leads to difficulties with modules, especially when it comes to supporting the various __need macros supported by the Clang builtin headers. Fortunately, libc++'s <float.h> only defines FLT_EVAL_METHOD and DECIMAL_DIG, which are already defined by the Clang builtin headers in C++11 mode. Hence, removing the header entirely should have no impact, apart from not defining FLT_EVAL_METHOD and DECIMAL_DIG in C++03 mode. However, that is arguably something that libc++ shouldn't be doing: if the underlying C library doesn't want to provide these definitions, then libc++ shouldn't force it to. (cherry picked from commit 501645c)
|
|
…ove-libcxx-float-h`
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Backport of llvm#175849, cherry-picked with
-xwithout conflicts. The branch starts atdaf4510ca312, the commit ClickHouse master pins, so the ClickHouse submodule bump contains only this change. It merges intoClickHouse/release-22.xwithout conflicts.According to the upstream PR, the only loss is
FLT_EVAL_METHODandDECIMAL_DIGin C++03 mode, which ClickHouse does not use.With this commit as the submodule pin, the full ClickHouse
clickhousetarget builds natively on macOS 27 (arm64, Homebrew Clang 22.1.8) againstMacOSX27.0.sdk.The paired ClickHouse submodule bump is ClickHouse/ClickHouse#128398.
Related: ClickHouse/ClickHouse#127601