diff options
author | Nikolas Klauser <nikolasklauser@berlin.de> | 2024-11-13 11:57:16 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-13 11:57:16 +0100 |
commit | b69ddbc62838f23ace237c206676b1ed1c882638 (patch) | |
tree | c61faf36c7d5022310899fe6bfe40b1f0460a046 /libcxx/src/filesystem/path.cpp | |
parent | 889b3c9487d114b9d082e9552599c8a8a8ccc660 (diff) | |
download | llvm-b69ddbc62838f23ace237c206676b1ed1c882638.zip llvm-b69ddbc62838f23ace237c206676b1ed1c882638.tar.gz llvm-b69ddbc62838f23ace237c206676b1ed1c882638.tar.bz2 |
[libc++] Make variables in templates inline (#115785)
The variables are all `constexpr`, which implies `inline`. Since they
aren't `constexpr` in C++03 they're also not `inline` there. Because of
that we define them out-of-line currently. Instead we can use the C++17
extension of `inline` variables, which results in the same weak
definitions of the variables but without having all the boilerplate.
Diffstat (limited to 'libcxx/src/filesystem/path.cpp')
-rw-r--r-- | libcxx/src/filesystem/path.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/libcxx/src/filesystem/path.cpp b/libcxx/src/filesystem/path.cpp index 5874244..9f7dc54 100644 --- a/libcxx/src/filesystem/path.cpp +++ b/libcxx/src/filesystem/path.cpp @@ -24,7 +24,10 @@ using parser::string_view_t; // path definitions /////////////////////////////////////////////////////////////////////////////// +_LIBCPP_DIAGNOSTIC_PUSH +_LIBCPP_CLANG_DIAGNOSTIC_IGNORED("-Wdeprecated") constexpr path::value_type path::preferred_separator; +_LIBCPP_DIAGNOSTIC_POP path& path::replace_extension(path const& replacement) { path p = extension(); |