summaryrefslogtreecommitdiffstats
path: root/source
diff options
context:
space:
mode:
authorEllie Hermaszewska <ellieh@nvidia.com>2025-05-06 19:45:03 +0800
committerGitHub <noreply@github.com>2025-05-06 19:45:03 +0800
commit91425ccb6ff0a416b67ef21eb3ecebb49ba3e748 (patch)
treed4823b8bb2c68faaef38e48693432603eaa59068 /source
parent480369a302b15749aafc82feb001fa23db8edbd6 (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.cpp2
-rw-r--r--source/slang/slang-ir.h8
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)