Skip to content

Commit 2853b1c

Browse files
committed
COMP: Use C++11 override directly
The override support in C++11 is required so avoid aliasing this feature. Compilers that do not support the override keyword are no longer supported.
1 parent 8b31c6f commit 2853b1c

File tree

7 files changed

+15
-18
lines changed

7 files changed

+15
-18
lines changed

include/json/config.h

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -89,24 +89,21 @@
8989
// In c++11 the override keyword allows you to explicitly define that a function
9090
// is intended to override the base-class version. This makes the code more
9191
// manageable and fixes a set of common hard-to-find bugs.
92+
#define JSONCPP_OVERRIDE override // Define maintained for backwards compatibility of external tools. C++11 should be used directly in JSONCPP
9293
#if __cplusplus >= 201103L
93-
#define JSONCPP_OVERRIDE override
9494
#define JSONCPP_NOEXCEPT noexcept
9595
#define JSONCPP_OP_EXPLICIT explicit
9696
#elif defined(_MSC_VER) && _MSC_VER > 1600 && _MSC_VER < 1900
97-
#define JSONCPP_OVERRIDE override
9897
#define JSONCPP_NOEXCEPT throw()
9998
#if _MSC_VER >= 1800 // MSVC 2013
10099
#define JSONCPP_OP_EXPLICIT explicit
101100
#else
102101
#define JSONCPP_OP_EXPLICIT
103102
#endif
104103
#elif defined(_MSC_VER) && _MSC_VER >= 1900
105-
#define JSONCPP_OVERRIDE override
106104
#define JSONCPP_NOEXCEPT noexcept
107105
#define JSONCPP_OP_EXPLICIT explicit
108106
#else
109-
#define JSONCPP_OVERRIDE
110107
#define JSONCPP_NOEXCEPT throw()
111108
#define JSONCPP_OP_EXPLICIT
112109
#endif

include/json/reader.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -347,9 +347,9 @@ class JSON_API CharReaderBuilder : public CharReader::Factory {
347347
Json::Value settings_;
348348

349349
CharReaderBuilder();
350-
~CharReaderBuilder() JSONCPP_OVERRIDE;
350+
~CharReaderBuilder() override;
351351

352-
CharReader* newCharReader() const JSONCPP_OVERRIDE;
352+
CharReader* newCharReader() const override;
353353

354354
/** \return true if 'settings' are legal and consistent;
355355
* otherwise, indicate bad settings via 'invalid'.

include/json/value.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,8 @@ namespace Json {
5555
class JSON_API Exception : public std::exception {
5656
public:
5757
Exception(JSONCPP_STRING const& msg);
58-
~Exception() JSONCPP_NOEXCEPT JSONCPP_OVERRIDE;
59-
char const* what() const JSONCPP_NOEXCEPT JSONCPP_OVERRIDE;
58+
~Exception() JSONCPP_NOEXCEPT override;
59+
char const* what() const JSONCPP_NOEXCEPT override;
6060

6161
protected:
6262
JSONCPP_STRING msg_;

include/json/writer.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -119,12 +119,12 @@ class JSON_API StreamWriterBuilder : public StreamWriter::Factory {
119119
Json::Value settings_;
120120

121121
StreamWriterBuilder();
122-
~StreamWriterBuilder() JSONCPP_OVERRIDE;
122+
~StreamWriterBuilder() override;
123123

124124
/**
125125
* \throw std::exception if something goes wrong (e.g. invalid settings)
126126
*/
127-
StreamWriter* newStreamWriter() const JSONCPP_OVERRIDE;
127+
StreamWriter* newStreamWriter() const override;
128128

129129
/** \return true if 'settings' are legal and consistent;
130130
* otherwise, indicate bad settings via 'invalid'.
@@ -169,7 +169,7 @@ class JSONCPP_DEPRECATED("Use StreamWriterBuilder instead") JSON_API FastWriter
169169
: public Writer {
170170
public:
171171
FastWriter();
172-
~FastWriter() JSONCPP_OVERRIDE {}
172+
~FastWriter() override {}
173173

174174
void enableYAMLCompatibility();
175175

@@ -183,7 +183,7 @@ class JSONCPP_DEPRECATED("Use StreamWriterBuilder instead") JSON_API FastWriter
183183
void omitEndingLineFeed();
184184

185185
public: // overridden from Writer
186-
JSONCPP_STRING write(const Value& root) JSONCPP_OVERRIDE;
186+
JSONCPP_STRING write(const Value& root) override;
187187

188188
private:
189189
void writeValue(const Value& value);
@@ -229,14 +229,14 @@ class JSONCPP_DEPRECATED("Use StreamWriterBuilder instead") JSON_API
229229
StyledWriter : public Writer {
230230
public:
231231
StyledWriter();
232-
~StyledWriter() JSONCPP_OVERRIDE {}
232+
~StyledWriter() override {}
233233

234234
public: // overridden from Writer
235235
/** \brief Serialize a Value in <a HREF="http://www.json.org">JSON</a> format.
236236
* \param root Value to serialize.
237237
* \return String containing the JSON document that represents the root value.
238238
*/
239-
JSONCPP_STRING write(const Value& root) JSONCPP_OVERRIDE;
239+
JSONCPP_STRING write(const Value& root) override;
240240

241241
private:
242242
void writeValue(const Value& value);

src/lib_json/json_reader.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1907,7 +1907,7 @@ class OurCharReader : public CharReader {
19071907
bool parse(char const* beginDoc,
19081908
char const* endDoc,
19091909
Value* root,
1910-
JSONCPP_STRING* errs) JSONCPP_OVERRIDE {
1910+
JSONCPP_STRING* errs) override {
19111911
bool ok = reader_.parse(beginDoc, endDoc, *root, collectComments_);
19121912
if (errs) {
19131913
*errs = reader_.getFormattedErrorMessages();

src/lib_json/json_writer.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -880,7 +880,7 @@ struct BuiltStyledStreamWriter : public StreamWriter {
880880
bool useSpecialFloats,
881881
unsigned int precision,
882882
PrecisionType precisionType);
883-
int write(Value const& root, JSONCPP_OSTREAM* sout) JSONCPP_OVERRIDE;
883+
int write(Value const& root, JSONCPP_OSTREAM* sout) override;
884884

885885
private:
886886
void writeValue(Value const& value);

src/test_lib_json/jsontest.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -262,10 +262,10 @@ TestResult& checkStringEqual(TestResult& result,
262262
} \
263263
\
264264
public: /* overridden from TestCase */ \
265-
const char* testName() const JSONCPP_OVERRIDE { \
265+
const char* testName() const override { \
266266
return #FixtureType "/" #name; \
267267
} \
268-
void runTestCase() JSONCPP_OVERRIDE; \
268+
void runTestCase() override; \
269269
}; \
270270
\
271271
void Test##FixtureType##name::runTestCase()

0 commit comments

Comments
 (0)