[PSDK]
[reactos.git] / reactos / include / psdk / specstrings.h
index 462b785..7d08f26 100644 (file)
@@ -28,6 +28,7 @@
 
 #define __field_bcount(size) __notnull __byte_writableTo(size)
 #define __field_ecount(size) __notnull __elem_writableTo(size)
+#define __post_invalid _Post_ __notvalid
 
 #define __deref_in
 #define __deref_in_ecount(size)
 #define __in_awcount(expr,size)
 #define __nullnullterminated
 #define __in_data_source(src_sym)
-#define __analysis_noreturn
 #define __kernel_entry
 
+#if (_MSC_VER >= 1000) && !defined(__midl) && defined(_PREFAST_)
+
+#define __inner_data_source(src_raw)        _SA_annotes1(SAL_untrusted_data_source,src_raw)
+#define __out_data_source(src_sym)          _Post_ __inner_data_source(#src_sym)
+#define __analysis_noreturn __declspec(noreturn)
+
+#else
+
+#define __out_data_source(src_sym)
+#define __analysis_noreturn
+
+#endif
+
+#if defined(_PREFAST_) && defined(_PFT_SHOULD_CHECK_RETURN)
+#define _Check_return_opt_ _Check_return_
+#else
+#define _Check_return_opt_
+#endif
+
+#if defined(_PREFAST_) && defined(_PFT_SHOULD_CHECK_RETURN_WAT)
+#define _Check_return_wat_ _Check_return_
+#else
+#define _Check_return_wat_
+#endif