Fix compiling issues in clang-cl

pull/3688/head
Minmin Gong 2021-03-03 22:30:36 -08:00
parent e09e4ab670
commit c6c0f141f1
3 changed files with 10 additions and 2 deletions

View File

@ -116,7 +116,7 @@ public:
Mask = 0xf,
};
inline const uint8_t GetType() const { return (flags & Mask); }
inline uint8_t GetType() const { return (flags & Mask); }
};
// Represents an AC3D object

View File

@ -75,6 +75,10 @@ public:
template<typename... T>
explicit DeadlyImportError(T&&... args) :
DeadlyErrorBase(Assimp::Formatter::format(), std::forward<T>(args)...) {}
#if defined(_MSC_VER) && defined(__clang__)
DeadlyImportError(DeadlyImportError& other) = delete;
#endif
};
class ASSIMP_API DeadlyExportError : public DeadlyErrorBase {
@ -83,6 +87,10 @@ public:
template<typename... T>
explicit DeadlyExportError(T&&... args) :
DeadlyErrorBase(Assimp::Formatter::format(), std::forward<T>(args)...) {}
#if defined(_MSC_VER) && defined(__clang__)
DeadlyExportError(DeadlyExportError& other) = delete;
#endif
};
#ifdef _MSC_VER

View File

@ -351,7 +351,7 @@ struct aiMetadata {
*static_cast<T *>(mValues[index].mData) = value;
} else {
if (nullptr != mValues[index].mData) {
delete mValues[index].mData;
delete static_cast<T *>(mValues[index].mData);
mValues[index].mData = nullptr;
}
mValues[index].mData = new T(value);