Skip to content

fix clang warnings #867

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 36 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
849c92f
fix -Wunreachable-code-break warnings
YasInvolved Apr 11, 2025
6ba57a5
stop using deprecated header (codecvt)
YasInvolved Apr 11, 2025
a28b584
Merge branch 'ali_clang' of github.com:Devsh-Graphics-Programming/Nab…
YasInvolved Apr 25, 2025
3208768
-Wzero-as-null-pointer-constant fixed
YasInvolved Apr 26, 2025
805b139
use nbl:hlsl::isPoT instead of deprecated nbl::core::isPoT
YasInvolved Apr 30, 2025
d115839
initialize variables, replaced logical OR operator placed by mistake …
YasInvolved Apr 30, 2025
3630e39
use bindImageMemory with std::span instead of deprecated pointer + co…
YasInvolved Apr 30, 2025
833cb6e
use hlsl::PoT instead of core::PoT
YasInvolved Apr 30, 2025
cb2907c
use chrono structures instead of unsafe std::localtime
YasInvolved Apr 30, 2025
a47a1a4
fix more deprecation warnings
YasInvolved May 15, 2025
5863dbf
comment out unused variables, fix "use template keyword to treat x as…
YasInvolved May 16, 2025
3f7dd84
use validationsDisable variable
YasInvolved May 16, 2025
261c6d3
remove or comment out unused variables
YasInvolved May 19, 2025
d5419ae
fix uninitialized fields and unused type alias
YasInvolved May 22, 2025
59bef13
correct initialization order in ctor, fix -Wpessimizing-move
YasInvolved May 22, 2025
fef0034
fixed all warnings in ILogicalDevice.cpp + fixed missing brackets and…
YasInvolved May 29, 2025
0e0c86c
fixed ILogger.h
YasInvolved May 31, 2025
6c1fd49
fix blake.h and bitflag.h
YasInvolved May 31, 2025
337d20c
fix -Wpragma-pack, fix -Wmissing-braces
YasInvolved Jun 12, 2025
b0592fa
fix the majority of the warnings in CAssetConverter.cpp
YasInvolved Jun 20, 2025
4a82074
missing braces, silenced -Wformat-security, handle ECT_UNKNOWN
YasInvolved Jun 20, 2025
d6966bc
apply sign-safe comparisons to CForsythVertexCacheOptimizer
YasInvolved Jun 21, 2025
c5d63e4
fix CGeometryCreator
YasInvolved Jun 21, 2025
a4be8c4
fill missing fields, introduce missing braces and comment out unused …
YasInvolved Jun 21, 2025
3337aeb
update branch
YasInvolved Jun 22, 2025
8a52351
Merge with mesh_loaders
YasInvolved Jun 23, 2025
d8d7249
fix majority of build errors after branch update (clang-cl)
YasInvolved Jun 23, 2025
5d683db
smart error fix
YasInvolved Jun 26, 2025
6c48847
fix majority of warnings in CAssetConverter, fix missing case stateme…
YasInvolved Jun 28, 2025
26fa3f1
fix matrix3x4SIMD and matrix4SIMD inline operators and functions
YasInvolved Jun 29, 2025
37d14d4
mix initializers list orders, different signs comparisons and unused …
YasInvolved Jun 29, 2025
02bde10
fix warnings in IFileArchive
YasInvolved Jun 30, 2025
a0dc62b
remove unused type alias in iee754.hlsl, fix signed and unsigned comp…
YasInvolved Jun 30, 2025
79f0f01
fix cast from FARPROC, put missing braces, silence infinity and NaN w…
YasInvolved Jun 30, 2025
4df3048
silence another -Wnan-infinity-disabled
YasInvolved Jun 30, 2025
1db03f2
explicit cast 0u to unsigned char, cast FARPROC to void*
YasInvolved Jun 30, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 11 additions & 11 deletions include/matrix3x4SIMD.h
Original file line number Diff line number Diff line change
Expand Up @@ -59,9 +59,9 @@ class matrix3x4SIMD// : private AllocationOverrideBase<_NBL_MATRIX_ALIGNMENT> EB
inline matrix3x4SIMD& set(const matrix4x3& _retarded);
inline matrix4x3 getAsRetardedIrrlichtMatrix() const;

static inline matrix3x4SIMD concatenateBFollowedByA(const matrix3x4SIMD& _a, const matrix3x4SIMD& _b);
static matrix3x4SIMD concatenateBFollowedByA(const matrix3x4SIMD& _a, const matrix3x4SIMD& _b);

static inline matrix3x4SIMD concatenateBFollowedByAPrecisely(const matrix3x4SIMD& _a, const matrix3x4SIMD& _b);
static matrix3x4SIMD concatenateBFollowedByAPrecisely(const matrix3x4SIMD& _a, const matrix3x4SIMD& _b);

inline matrix3x4SIMD& concatenateAfter(const matrix3x4SIMD& _other)
{
Expand All @@ -88,7 +88,7 @@ class matrix3x4SIMD// : private AllocationOverrideBase<_NBL_MATRIX_ALIGNMENT> EB
return !(*this != _other);
}

inline bool operator!=(const matrix3x4SIMD& _other);
bool operator!=(const matrix3x4SIMD& _other);


inline matrix3x4SIMD operator-() const
Expand All @@ -101,21 +101,21 @@ class matrix3x4SIMD// : private AllocationOverrideBase<_NBL_MATRIX_ALIGNMENT> EB
}


inline matrix3x4SIMD& operator+=(const matrix3x4SIMD& _other);
matrix3x4SIMD& operator+=(const matrix3x4SIMD& _other);
inline matrix3x4SIMD operator+(const matrix3x4SIMD& _other) const
{
matrix3x4SIMD retval(*this);
return retval += _other;
}

inline matrix3x4SIMD& operator-=(const matrix3x4SIMD& _other);
matrix3x4SIMD& operator-=(const matrix3x4SIMD& _other);
inline matrix3x4SIMD operator-(const matrix3x4SIMD& _other) const
{
matrix3x4SIMD retval(*this);
return retval -= _other;
}

inline matrix3x4SIMD& operator*=(float _scalar);
matrix3x4SIMD& operator*=(float _scalar);
inline matrix3x4SIMD operator*(float _scalar) const
{
matrix3x4SIMD retval(*this);
Expand All @@ -137,19 +137,19 @@ class matrix3x4SIMD// : private AllocationOverrideBase<_NBL_MATRIX_ALIGNMENT> EB

inline vectorSIMDf getScale() const;

inline void transformVect(vectorSIMDf& _out, const vectorSIMDf& _in) const;
void transformVect(vectorSIMDf& _out, const vectorSIMDf& _in) const;
inline void transformVect(vectorSIMDf& _in_out) const
{
transformVect(_in_out, _in_out);
}

inline void pseudoMulWith4x1(vectorSIMDf& _out, const vectorSIMDf& _in) const;
void pseudoMulWith4x1(vectorSIMDf& _out, const vectorSIMDf& _in) const;
inline void pseudoMulWith4x1(vectorSIMDf& _in_out) const
{
pseudoMulWith4x1(_in_out,_in_out);
}

inline void mulSub3x3WithNx1(vectorSIMDf& _out, const vectorSIMDf& _in) const;
void mulSub3x3WithNx1(vectorSIMDf& _out, const vectorSIMDf& _in) const;
inline void mulSub3x3WithNx1(vectorSIMDf& _in_out) const
{
mulSub3x3WithNx1(_in_out, _in_out);
Expand All @@ -176,7 +176,7 @@ class matrix3x4SIMD// : private AllocationOverrideBase<_NBL_MATRIX_ALIGNMENT> EB
return determinant_helper(tmp);
}

inline bool getInverse(matrix3x4SIMD& _out) const;
bool getInverse(matrix3x4SIMD& _out) const;
bool makeInverse()
{
matrix3x4SIMD tmp;
Expand All @@ -190,7 +190,7 @@ class matrix3x4SIMD// : private AllocationOverrideBase<_NBL_MATRIX_ALIGNMENT> EB
}

//
inline bool getSub3x3InverseTranspose(matrix3x4SIMD& _out) const;
bool getSub3x3InverseTranspose(matrix3x4SIMD& _out) const;

//
inline bool getSub3x3InverseTransposePacked(float outRows[9]) const
Expand Down
19 changes: 9 additions & 10 deletions include/matrix4SIMD.h
Original file line number Diff line number Diff line change
Expand Up @@ -80,41 +80,41 @@ class matrix4SIMD// : public AlignedBase<_NBL_SIMD_ALIGNMENT> don't inherit from
inline float* pointer() {return rows[0].pointer;}


bool operator!=(const matrix4SIMD& _other) const;
inline bool operator==(const matrix4SIMD& _other) const
{
return !(*this != _other);
}
inline bool operator!=(const matrix4SIMD& _other) const;

inline matrix4SIMD& operator+=(const matrix4SIMD& _other);
matrix4SIMD& operator+=(const matrix4SIMD& _other);
inline matrix4SIMD operator+(const matrix4SIMD& _other) const
{
matrix4SIMD r{*this};
return r += _other;
}

inline matrix4SIMD& operator-=(const matrix4SIMD& _other);
matrix4SIMD& operator-=(const matrix4SIMD& _other);
inline matrix4SIMD operator-(const matrix4SIMD& _other) const
{
matrix4SIMD r{*this};
return r -= _other;
}

inline matrix4SIMD& operator*=(float _scalar);
matrix4SIMD& operator*=(float _scalar);
inline matrix4SIMD operator*(float _scalar) const
{
matrix4SIMD r{*this};
return r *= _scalar;
}

static inline matrix4SIMD concatenateBFollowedByA(const matrix4SIMD& _a, const matrix4SIMD& _b);
static matrix4SIMD concatenateBFollowedByA(const matrix4SIMD& _a, const matrix4SIMD& _b);
static inline matrix4SIMD concatenateBFollowedByAPrecisely(const matrix4SIMD& _a, const matrix4SIMD& _b);

inline bool isIdentity() const
{
return *this == matrix4SIMD();
}
inline bool isIdentity(float _tolerance) const;
bool isIdentity(float _tolerance) const;

inline bool isOrthogonal() const
{
Expand All @@ -125,7 +125,7 @@ class matrix4SIMD// : public AlignedBase<_NBL_SIMD_ALIGNMENT> don't inherit from
return concatenateBFollowedByA(transpose(*this), *this).isIdentity(_tolerance);
}

inline matrix4SIMD& setScale(const core::vectorSIMDf& _scale);
matrix4SIMD& setScale(const core::vectorSIMDf& _scale);
inline matrix4SIMD& setScale(float _scale)
{
return setScale(vectorSIMDf(_scale));
Expand All @@ -147,7 +147,7 @@ class matrix4SIMD// : public AlignedBase<_NBL_SIMD_ALIGNMENT> don't inherit from
}

//! Returns last column of the matrix.
inline vectorSIMDf getTranslation() const;
vectorSIMDf getTranslation() const;

//! Returns translation part of the matrix (w component is always 0).
inline vectorSIMDf getTranslation3D() const;
Expand Down Expand Up @@ -310,7 +310,7 @@ class matrix4SIMD// : public AlignedBase<_NBL_SIMD_ALIGNMENT> don't inherit from

inline vectorSIMDf sub3x3TransformVect(const vectorSIMDf& _in) const;

inline void transformVect(vectorSIMDf& _out, const vectorSIMDf& _in) const;
void transformVect(vectorSIMDf& _out, const vectorSIMDf& _in) const;
inline void transformVect(vectorSIMDf& _vector) const
{
transformVect(_vector, _vector);
Expand Down Expand Up @@ -379,7 +379,6 @@ inline matrix4SIMD concatenateBFollowedByAPrecisely(const matrix4SIMD& _a, const
}
*/


}} // nbl::core

#endif
8 changes: 4 additions & 4 deletions include/nbl/asset/ECommonEnums.h
Original file line number Diff line number Diff line change
Expand Up @@ -220,7 +220,7 @@ inline core::bitflag<PIPELINE_STAGE_FLAGS> allPreviousStages(core::bitflag<PIPEL
for (size_t ix=0ull; ix<sizeof(size_t)*8; ix++)
if ((0x1ull<<ix)&val)
return ix;
return ~0u;
return static_cast<uint8_t>(~0u);
}
constexpr void add(PIPELINE_STAGE_FLAGS stageFlag, PIPELINE_STAGE_FLAGS previousStageFlags)
{
Expand Down Expand Up @@ -278,7 +278,7 @@ inline core::bitflag<PIPELINE_STAGE_FLAGS> allLaterStages(core::bitflag<PIPELINE
for (size_t ix=0ull; ix<sizeof(size_t)*8; ix++)
if ((0x1ull<<ix)&val)
return ix;
return ~0u;
return static_cast<uint8_t>(~0u);
}
constexpr void add(PIPELINE_STAGE_FLAGS stageFlag, PIPELINE_STAGE_FLAGS laterStageFlags)
{
Expand Down Expand Up @@ -362,7 +362,7 @@ inline core::bitflag<ACCESS_FLAGS> allAccessesFromStages(core::bitflag<PIPELINE_
for (size_t ix=0ull; ix<sizeof(size_t)*8; ix++)
if ((0x1ull<<ix)&val)
return ix;
return ~0u;
return static_cast<uint8_t>(~0u);
}
constexpr void init(PIPELINE_STAGE_FLAGS stageFlag, ACCESS_FLAGS accessFlags)
{
Expand Down Expand Up @@ -449,7 +449,7 @@ inline core::bitflag<PIPELINE_STAGE_FLAGS> allStagesFromAccesses(core::bitflag<A
for (size_t ix=0ull; ix<sizeof(size_t)*8; ix++)
if ((0x1ull<<ix)&val)
return ix;
return ~0u;
return static_cast<uint8_t>(~0u);
}
constexpr void init(ACCESS_FLAGS accessFlags, PIPELINE_STAGE_FLAGS stageFlags)
{
Expand Down
2 changes: 1 addition & 1 deletion include/nbl/asset/ICPUGeometryCollection.h
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ class NBL_API2 ICPUGeometryCollection : public IAsset, public IGeometryCollectio
template<typename Iterator>// requires std::is_same_v<decltype(*declval<Iterator>()),decltype(ICPUBottomLevelAccelerationStructure::Triangles&)>
inline Iterator exportForBLAS(Iterator out, uint32_t* pWrittenOrdinals=nullptr) const
{
return exportForBLAS(std::forward<Iterator>(out),[](const hlsl::float32_t3x4& lhs, const hlsl::float32_t3x4& rhs)->void
return exportForBLAS(std::forward<Iterator>(out),[this, &pWrittenOrdinals](hlsl::float32_t3x4& lhs, const hlsl::float32_t3x4& rhs)->void
{
lhs = rhs;
if (pWrittenOrdinals)
Expand Down
9 changes: 9 additions & 0 deletions include/nbl/asset/filters/kernels/WeightFunctions.h
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,11 @@
#include <limits>
#include <cstdint>

#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wnan-infinity-disabled"
#endif

// move later if its useful for anything else
namespace nbl::core::impl
{
Expand Down Expand Up @@ -389,3 +394,7 @@ concept SimpleWeightFunction1D = requires(T t)

} // end namespace nbl::asset
#endif

#ifdef __clang__
#pragma clang diagnostic pop
#endif
2 changes: 1 addition & 1 deletion include/nbl/asset/utils/CGeometryCreator.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ class NBL_API2 CGeometryCreator final : public core::IReferenceCounted
core::smart_refctd_ptr<CQuantNormalCache> normalCache = nullptr;
core::smart_refctd_ptr<CQuantQuaternionCache> quaternionCache = nullptr;
};
inline CGeometryCreator(SCreationParams&& params={}) : m_params(std::move(params))
inline CGeometryCreator(SCreationParams&& params={ nullptr, nullptr }) : m_params(std::move(params))
{
if (!m_params.normalCache)
m_params.normalCache = core::make_smart_refctd_ptr<CQuantNormalCache>();
Expand Down
1 change: 0 additions & 1 deletion include/nbl/builtin/hlsl/ieee754.hlsl
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,6 @@ NBL_CONSTEXPR_INLINE_FUNC T fastMulExp2(T x, int n)
template <typename T>
NBL_CONSTEXPR_INLINE_FUNC typename unsigned_integer_of_size<sizeof(T)>::type extractMantissa(T x)
{
using AsUint = typename unsigned_integer_of_size<sizeof(T)>::type;
return ieee754::impl::bitCastToUintType(x) & traits<typename float_of_size<sizeof(T)>::type>::mantissaMask;
}

Expand Down
2 changes: 1 addition & 1 deletion include/nbl/core/alloc/AddressAllocatorBase.h
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ namespace core
// pointer to reserved memory has to be aligned to SIMD types!
assert((reinterpret_cast<size_t>(reservedSpace)&(_NBL_SIMD_ALIGNMENT-1u))==0ull);
assert(maxAllocatableAlignment);
assert(core::isPoT(maxRequestableAlignment)); // this is not a proper alignment value
assert(hlsl::isPoT(maxRequestableAlignment)); // this is not a proper alignment value
#endif // _NBL_DEBUG
}
AddressAllocatorBase(CRTP&& other, void* newReservedSpc)
Expand Down
8 changes: 6 additions & 2 deletions include/nbl/core/hash/blake.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@

#include <span>

#define __NBL_CORE_BLAKE3_FUNCTION_STR(x) #x
#define __NBL_CORE_BLAKE3_FUNCTION_STRINGIFY(x) __NBL_CORE_BLAKE3_FUNCTION_STR(x)

namespace nbl::core
{
struct blake3_hash_t final
Expand All @@ -29,7 +32,8 @@ class NBL_API2 blake3_hasher final
// unfortunately there's no concept like StandardLayout or Aggregate for "just structs/classes of non-pointer types" so need to play it safe
constexpr bool ForbiddenType = std::is_compound_v<T> || std::is_enum_v<T> || std::is_class_v<T>;
// use __FUNCTION__ to print something with `T` to the error log
static_assert(!ForbiddenType, __FUNCTION__ "Hashing Specialization for this Type is not implemented!");

static_assert(!ForbiddenType, __NBL_CORE_BLAKE3_FUNCTION_STRINGIFY(__FUNCTION__) "Hashing Specialization for this Type is not implemented!");
hasher.update(&input,sizeof(input));
}
};
Expand Down Expand Up @@ -110,7 +114,7 @@ struct hash<nbl::core::blake3_hash_t>
{
auto* as_p_uint64_t = reinterpret_cast<const size_t*>(blake3.data);
size_t retval = as_p_uint64_t[0];
for (auto i=1; i<BLAKE3_OUT_LEN/sizeof(size_t); i++)
for (size_t i=1; i<BLAKE3_OUT_LEN/sizeof(size_t); i++)
retval ^= as_p_uint64_t[i] + 0x9e3779b97f4a7c15ull + (retval << 6) + (retval >> 2);
return retval;
}
Expand Down
9 changes: 9 additions & 0 deletions include/nbl/core/math/floatutil.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
// Copyright (C) 2018-2020 - DevSH Graphics Programming Sp. z O.O.
// This file is part of the "Nabla Engine".
// For conditions of distribution and use, see copyright notice in nabla.h
#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wnan-infinity-disabled"
#endif

#ifndef _NBL_CORE_FLOAT_UTIL_H_INCLUDED_
#define _NBL_CORE_FLOAT_UTIL_H_INCLUDED_

Expand Down Expand Up @@ -361,3 +366,7 @@ uint32_t floatBitsToUint(float&& _f);
}

#endif

#ifdef __clang__
#pragma clang diagnostic pop
#endif
6 changes: 3 additions & 3 deletions include/nbl/core/memory/memory.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#ifndef __NBL_CORE_MEMORY_H_INCLUDED__
#define __NBL_CORE_MEMORY_H_INCLUDED__

#include "nbl/core/math/intutil.h"
#include "nbl/builtin/hlsl/math/intutil.hlsl"

#include <typeinfo>
#include <cstddef>
Expand Down Expand Up @@ -79,13 +79,13 @@ constexpr inline size_t alignDown(size_t value, size_t alignment)
//! Valid alignments are power of two
constexpr inline bool is_alignment(size_t value)
{
return core::isPoT(value);
return hlsl::isPoT(value);
}

//!
constexpr inline bool is_aligned_to(size_t value, size_t alignment)
{
return core::isPoT(alignment)&&((value&(alignment-1ull))==0ull);
return hlsl::isPoT(alignment)&&((value&(alignment-1ull))==0ull);
}
// clang complains about constexpr so make normal for now (also complains abour reinterpret_cast)
inline bool is_aligned_to(const void* value, size_t alignment)
Expand Down
1 change: 1 addition & 0 deletions include/nbl/core/util/bitflag.h
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ struct bitflag final
explicit constexpr operator bool() const {return bool(value);}
constexpr bool operator!=(const bitflag<ENUM_TYPE> rhs) const {return value!=rhs.value;}
constexpr bool operator==(const bitflag<ENUM_TYPE> rhs) const {return value==rhs.value;}
auto operator<=>(const bitflag<ENUM_TYPE>& rhs) const = default;
constexpr bool hasFlags(const bitflag<ENUM_TYPE> val) const {return (static_cast<UNDERLYING_TYPE>(value) & static_cast<UNDERLYING_TYPE>(val.value)) == static_cast<UNDERLYING_TYPE>(val.value);}
constexpr bool hasAnyFlag(const bitflag<ENUM_TYPE> val) const {return (static_cast<UNDERLYING_TYPE>(value) & static_cast<UNDERLYING_TYPE>(val.value)) != static_cast<UNDERLYING_TYPE>(0);}
};
Expand Down
5 changes: 3 additions & 2 deletions include/nbl/nblpack.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,10 @@
#if defined(_MSC_VER) || defined(__GNUC__) || defined(__clang__)
# ifdef _MSC_VER
# pragma warning(disable: 4103)
# elif defined(__clang__)
# pragma clang diagnostic ignored "-Wpragma-pack"
# endif
# ifdef __clang__
# pragma clang diagnostic ignored "-Wpragma-pack"
# endif
# pragma pack( push, packing )
# pragma pack( 1 )
// TODO: Remove PACK_STRUCT from the engine
Expand Down
4 changes: 3 additions & 1 deletion include/nbl/system/IAsyncQueueDispatcher.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@

#include "nbl/core/declarations.h"

#include "nbl/builtin/hlsl/math/intutil.hlsl"

#include "nbl/system/IThreadHandler.h"
#include "nbl/system/atomic_state.h"

Expand Down Expand Up @@ -416,7 +418,7 @@ template<typename CRTP, typename request_metadata_t, uint32_t BufferSize=256u, t
class IAsyncQueueDispatcher : public IThreadHandler<CRTP,InternalStateType>, protected impl::IAsyncQueueDispatcherBase
{
static_assert(BufferSize>0u, "BufferSize must not be 0!");
static_assert(core::isPoT(BufferSize), "BufferSize must be power of two!");
static_assert(hlsl::isPoT(BufferSize), "BufferSize must be power of two!");

protected:
using base_t = IThreadHandler<CRTP,InternalStateType>;
Expand Down
2 changes: 1 addition & 1 deletion include/nbl/system/IFileArchive.h
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ class IFileArchive : public core::IReferenceCounted

inline const SFileList::found_t getItemFromPath(const system::path& pathRelativeToArchive) const
{
const SFileList::SEntry itemToFind = { pathRelativeToArchive };
const SFileList::SEntry itemToFind = { pathRelativeToArchive, 0ull, 0ull , 0u, EAT_NULL };
// calling `listAssets` makes sure any "update list" overload can kick in
auto items = listAssets();
const auto span = SFileList::span_t(items);
Expand Down
2 changes: 1 addition & 1 deletion include/nbl/system/IFileBase.h
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ class IFileBase : public core::IReferenceCounted

// this is an abstract interface class so this stays protected
explicit IFileBase(path&& _filename, const core::bitflag<E_CREATE_FLAGS> _flags, const time_point_t _initialModified) :
m_filename(std::move(_filename)), m_flags(_flags), m_modified(_initialModified) {}
m_filename(std::move(_filename)), m_modified(_initialModified), m_flags(_flags) {}

private:
const path m_filename;
Expand Down
Loading
Loading