Skip to content

Commit 4d58763

Browse files
authored
Merge pull request open-source-parsers#679 from hughbe/clang-warnings
Fix unknown pragma warnings with clang
2 parents 75e0c39 + 7287065 commit 4d58763

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

include/json/writer.h

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515

1616
// Disable warning C4251: <data member>: <type> needs to have dll-interface to
1717
// be used by...
18-
#if defined(JSONCPP_DISABLE_DLL_INTERFACE_WARNING)
18+
#if defined(JSONCPP_DISABLE_DLL_INTERFACE_WARNING) && defined(_MSC_VER)
1919
#pragma warning(push)
2020
#pragma warning(disable : 4251)
2121
#endif // if defined(JSONCPP_DISABLE_DLL_INTERFACE_WARNING)
@@ -156,8 +156,10 @@ class JSONCPP_DEPRECATED("Use StreamWriter instead") JSON_API Writer {
156156
* \sa Reader, Value
157157
* \deprecated Use StreamWriterBuilder.
158158
*/
159+
#if defined(_MSC_VER)
159160
#pragma warning(push)
160161
#pragma warning(disable:4996) // Deriving from deprecated class
162+
#endif
161163
class JSONCPP_DEPRECATED("Use StreamWriterBuilder instead") JSON_API FastWriter : public Writer {
162164
public:
163165
FastWriter();
@@ -185,7 +187,9 @@ class JSONCPP_DEPRECATED("Use StreamWriterBuilder instead") JSON_API FastWriter
185187
bool dropNullPlaceholders_;
186188
bool omitEndingLineFeed_;
187189
};
190+
#if defined(_MSC_VER)
188191
#pragma warning(pop)
192+
#endif
189193

190194
/** \brief Writes a Value in <a HREF="http://www.json.org">JSON</a> format in a
191195
*human friendly way.
@@ -211,8 +215,10 @@ class JSONCPP_DEPRECATED("Use StreamWriterBuilder instead") JSON_API FastWriter
211215
* \sa Reader, Value, Value::setComment()
212216
* \deprecated Use StreamWriterBuilder.
213217
*/
218+
#if defined(_MSC_VER)
214219
#pragma warning(push)
215220
#pragma warning(disable:4996) // Deriving from deprecated class
221+
#endif
216222
class JSONCPP_DEPRECATED("Use StreamWriterBuilder instead") JSON_API StyledWriter : public Writer {
217223
public:
218224
StyledWriter();
@@ -248,7 +254,9 @@ class JSONCPP_DEPRECATED("Use StreamWriterBuilder instead") JSON_API StyledWrite
248254
unsigned int indentSize_;
249255
bool addChildValues_;
250256
};
257+
#if defined(_MSC_VER)
251258
#pragma warning(pop)
259+
#endif
252260

253261
/** \brief Writes a Value in <a HREF="http://www.json.org">JSON</a> format in a
254262
human friendly way,
@@ -275,8 +283,10 @@ class JSONCPP_DEPRECATED("Use StreamWriterBuilder instead") JSON_API StyledWrite
275283
* \sa Reader, Value, Value::setComment()
276284
* \deprecated Use StreamWriterBuilder.
277285
*/
286+
#if defined(_MSC_VER)
278287
#pragma warning(push)
279288
#pragma warning(disable:4996) // Deriving from deprecated class
289+
#endif
280290
class JSONCPP_DEPRECATED("Use StreamWriterBuilder instead") JSON_API StyledStreamWriter {
281291
public:
282292
/**
@@ -318,7 +328,9 @@ class JSONCPP_DEPRECATED("Use StreamWriterBuilder instead") JSON_API StyledStrea
318328
bool addChildValues_ : 1;
319329
bool indented_ : 1;
320330
};
331+
#if defined(_MSC_VER)
321332
#pragma warning(pop)
333+
#endif
322334

323335
#if defined(JSON_HAS_INT64)
324336
JSONCPP_STRING JSON_API valueToString(Int value);

0 commit comments

Comments
 (0)