Fix some compilation errors

This commit is contained in:
Jérôme Leclercq
2020-08-27 20:02:20 +02:00
parent 91291fd91c
commit df51526841
6 changed files with 26 additions and 24 deletions

View File

@@ -17,6 +17,8 @@
namespace Nz
{
static_assert(std::is_same_v<std::size_t, UInt32> || std::is_same_v<std::size_t, UInt64>);
class NAZARA_SHADER_API ShaderAstSerializerBase
{
public:
@@ -67,7 +69,7 @@ namespace Nz
virtual void Value(UInt8& val) = 0;
virtual void Value(UInt16& val) = 0;
virtual void Value(UInt32& val) = 0;
inline void Value(std::size_t& val);
virtual void Value(UInt64& val) = 0;
virtual void Variable(ShaderNodes::VariablePtr& var) = 0;
template<typename T> void Variable(std::shared_ptr<T>& var);
@@ -99,6 +101,7 @@ namespace Nz
void Value(UInt8& val) override;
void Value(UInt16& val) override;
void Value(UInt32& val) override;
void Value(UInt64& val) override;
void Variable(ShaderNodes::VariablePtr& var) override;
ByteStream& m_stream;
@@ -129,6 +132,7 @@ namespace Nz
void Value(UInt8& val) override;
void Value(UInt16& val) override;
void Value(UInt32& val) override;
void Value(UInt64& val) override;
void Variable(ShaderNodes::VariablePtr& var) override;
ByteStream& m_stream;

View File

@@ -100,19 +100,6 @@ namespace Nz
var = std::static_pointer_cast<T>(value);
}
inline void ShaderAstSerializerBase::Value(std::size_t& val)
{
bool isWriting = IsWriting();
UInt32 value;
if (isWriting)
value = static_cast<UInt32>(val);
Value(value);
if (!isWriting)
val = static_cast<std::size_t>(value);
}
inline ShaderAstSerializer::ShaderAstSerializer(ByteStream& stream) :
m_stream(stream)
{