diff options
| author | Ellie Hermaszewska <ellieh@nvidia.com> | 2025-05-06 19:45:03 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-05-06 19:45:03 +0800 |
| commit | 91425ccb6ff0a416b67ef21eb3ecebb49ba3e748 (patch) | |
| tree | d4823b8bb2c68faaef38e48693432603eaa59068 /source | |
| parent | 480369a302b15749aafc82feb001fa23db8edbd6 (diff) | |
Update C++ standard to C++20 (#6980)
* Correct incorrect enum usage on metal
* Update C++ standard to C++20
Closes https://github.com/shader-slang/slang/issues/6945
* use bit_cast
Diffstat (limited to 'source')
| -rw-r--r-- | source/core/slang-io.cpp | 2 | ||||
| -rw-r--r-- | source/slang/slang-ir.h | 8 |
2 files changed, 2 insertions, 8 deletions
diff --git a/source/core/slang-io.cpp b/source/core/slang-io.cpp index 5490294ca..851c70073 100644 --- a/source/core/slang-io.cpp +++ b/source/core/slang-io.cpp @@ -752,7 +752,7 @@ String Path::getRelativePath(String base, String path) auto result = std::filesystem::relative(p2, p1, ec); if (ec) return path; - return String(UnownedStringSlice(result.generic_u8string().c_str())); + return String(reinterpret_cast<const char*>(result.generic_u8string().c_str())); } SlangResult Path::remove(const String& path) diff --git a/source/slang/slang-ir.h b/source/slang/slang-ir.h index ea784c9a6..5a1ae94f7 100644 --- a/source/slang/slang-ir.h +++ b/source/slang/slang-ir.h @@ -7,9 +7,6 @@ // similar in spirit to LLVM (but much simpler). // -#if defined(__cpp_lib_bit_cast) -#include <bit> -#endif #include "../compiler-core/slang-source-loc.h" #include "../compiler-core/slang-source-map.h" #include "../core/slang-basic.h" @@ -17,6 +14,7 @@ #include "slang-container-pool.h" #include "slang-type-system-shared.h" +#include <bit> #include <functional> namespace Slang @@ -105,11 +103,7 @@ enum IRMemoryOrder inline int32_t operator&(const IROpMask m, const IROp o) { -#if defined(__cpp_lib_bit_cast) return std::bit_cast<int32_t>(m) & std::bit_cast<int32_t>(o); -#else - return (int32_t)m & (int32_t)o; -#endif } inline int32_t operator&(const IROp o, const IROpMask m) |
