summaryrefslogtreecommitdiff
path: root/src/stdafx.h
diff options
context:
space:
mode:
authorNiels Martin Hansen <nielsm@indvikleren.dk>2020-06-06 19:25:42 +0200
committerCharles Pigott <charlespigott@googlemail.com>2020-06-18 08:56:27 +0100
commit9895ced6af96b2e6d2e2569383c72a4c6b930286 (patch)
tree5819b525a120a03cf2d5d288d4ec2aa2de8ba4c9 /src/stdafx.h
parentc9aff698d037c8e29620a9666ed37425f75abf62 (diff)
downloadopenttd-9895ced6af96b2e6d2e2569383c72a4c6b930286.tar.xz
Fix: Silence some warnings when building with clang-cl on VS 2019
Clang-cl presents as both _MSC_VER and __clang__ in the preprocessor which makes some things confusing.
Diffstat (limited to 'src/stdafx.h')
-rw-r--r--src/stdafx.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/stdafx.h b/src/stdafx.h
index c52092553..dcea75383 100644
--- a/src/stdafx.h
+++ b/src/stdafx.h
@@ -10,6 +10,13 @@
#ifndef STDAFX_H
#define STDAFX_H
+#ifdef _MSC_VER
+ /* Stop Microsoft (and clang-cl) compilers from complaining about potentially-unsafe/potentially-non-standard functions */
+# define _CRT_SECURE_NO_DEPRECATE
+# define _CRT_SECURE_NO_WARNINGS
+# define _CRT_NONSTDC_NO_WARNINGS
+#endif
+
#if defined(__APPLE__)
#include "os/macosx/osx_stdafx.h"
#endif /* __APPLE__ */
@@ -177,7 +184,6 @@
#endif /* (_MSC_VER < 1400) */
#pragma warning(disable: 4291) // no matching operator delete found; memory will not be freed if initialization throws an exception (reason: our overloaded functions never throw an exception)
#pragma warning(disable: 4996) // 'function': was declared deprecated
- #define _CRT_SECURE_NO_DEPRECATE // all deprecated 'unsafe string functions
#pragma warning(disable: 6308) // code analyzer: 'realloc' might return null pointer: assigning null pointer to 't_ptr', which is passed as an argument to 'realloc', will cause the original memory block to be leaked
#pragma warning(disable: 6011) // code analyzer: Dereferencing NULL pointer 'pfGetAddrInfo': Lines: 995, 996, 998, 999, 1001
#pragma warning(disable: 6326) // code analyzer: potential comparison of a constant with another constant
@@ -198,7 +204,11 @@
#define CDECL _cdecl
#define WARN_FORMAT(string, args)
- #define FINAL sealed
+# ifndef __clang__
+# define FINAL sealed
+# else
+# define FINAL
+# endif
/* fallthrough attribute, VS 2017 */
#if (_MSC_VER >= 1910)