unittest.h: simplify AssertException
Some compilers warn about the missing initialisation of the std::exception base class of the AssertException helper. The simplest solution is to inherit from std::logic_error instead, which provides all of the required functionality already.
This commit is contained in:
parent
ffed1d67c1
commit
a2a0d16167
@ -89,15 +89,9 @@ inline FILE* TempFile(char *filename) {
|
||||
#pragma warning(disable : 4127)
|
||||
#endif
|
||||
|
||||
class AssertException : public std::exception {
|
||||
class AssertException : public std::logic_error {
|
||||
public:
|
||||
AssertException(const char* w) : what_(w) {}
|
||||
AssertException(const AssertException& other) : what_(other.what_) {}
|
||||
AssertException& operator=(const AssertException& rhs) { what_ = rhs.what_; return *this; }
|
||||
virtual const char* what() const throw() { return what_; }
|
||||
|
||||
private:
|
||||
const char* what_;
|
||||
AssertException(const char* w) : std::logic_error(w) {}
|
||||
};
|
||||
|
||||
#define RAPIDJSON_ASSERT(x) if (!(x)) throw AssertException(RAPIDJSON_STRINGIFY(x))
|
||||
|
Loading…
x
Reference in New Issue
Block a user