5#ifndef SAPPHIRE_SUPPORT_PRAGMA_GUARD
6#define SAPPHIRE_SUPPORT_PRAGMA_GUARD
28#if SA_GNU || (SA_CLANG && !SA_MSVC)
35 #define __SA_PRAGMA_PUSH _Pragma("GCC diagnostic push")
42 #define __SA_PRAGMA_POP _Pragma("GCC diagnostic pop")
52 #define __SA_PRAGMA_DISABLE_WARN(_warnName, _warnCode) _Pragma(SA_STR(GCC diagnostic ignored #_warnName))
61 #define __SA_PRAGMA_PUSH __pragma(warning(push))
68 #define __SA_PRAGMA_POP __pragma(warning(pop))
78 #define __SA_PRAGMA_DISABLE_WARN(_warnName, _warnCode) __pragma(warning(disable : _warnCode))
87 #define __SA_PRAGMA_PUSH
94 #define __SA_PRAGMA_POP
104 #define __SA_PRAGMA_DISABLE_WARN(_warnName, _warnCode)
119#define SA_PRAGMA_SDWARN(_warnName, _warnCode)\
121 __SA_PRAGMA_DISABLE_WARN(_warnName, _warnCode)
130#define SA_PRAGMA_EDWARN() __SA_PRAGMA_POP
133#if SA_GNU || (SA_CLANG && !SA_MSVC)
139 #define SA_PRAGMA_SDWARN_GNU(_warnName) SA_PRAGMA_SDWARN(_warnName, 0)
145 #define SA_PRAGMA_EDWARN_GNU() SA_PRAGMA_EDWARN()
153 #define SA_PRAGMA_SDWARN_GNU(_warnName)
159 #define SA_PRAGMA_EDWARN_GNU()
163#if SA_MSVC && !SA_CLANG
166 #define SA_PRAGMA_SDWARN_MSVC(_warnCode) SA_PRAGMA_SDWARN(None, _warnCode)
172 #define SA_PRAGMA_EDWARN_MSVC() SA_PRAGMA_EDWARN()
177 #define SA_PRAGMA_SDWARN_MSVC(_warnCode)
183 #define SA_PRAGMA_EDWARN_MSVC()
Compiler support definition file.
Stringify support definition file.