12#if defined( __clang_analyzer__ ) || defined( PVS_STUDIO )
13 #define USING_CODE_ANALYSIS 1
15 #define USING_CODE_ANALYSIS 0
41#if USING_CODE_ANALYSIS
70 #define CA_VALID_POINTER
74 #define CA_CHECK_RETVAL
77 #define CA_NO_RETURN __attribute__((analyzer_noreturn))
80 #define CA_SUPPRESS( WarningNumber )
83 #define CA_ASSUME( Expr ) (__builtin_expect(!bool(Expr), 0) ? CA_AssumeNoReturn() : (void)0)
86 #define CA_CONSTANT_IF(Condition) if (Condition)
98#if defined(__has_feature) && __has_feature(address_sanitizer)
99 #define USING_ADDRESS_SANITISER 1
101 #define USING_ADDRESS_SANITISER 0
104#if defined(__has_feature) && __has_feature(hwaddress_sanitizer)
105 #define USING_HW_ADDRESS_SANITISER 1
107 #define USING_HW_ADDRESS_SANITISER 0
110#if defined(__has_feature) && __has_feature(thread_sanitizer)
111 #define USING_THREAD_SANITISER 1
113 #define USING_THREAD_SANITISER 0
117#ifndef USING_UNDEFINED_BEHAVIOR_SANITISER
118 #define USING_UNDEFINED_BEHAVIOR_SANITISER 0
121#ifndef USING_INSTRUMENTATION
122 #define USING_INSTRUMENTATION 0
125#if USING_INSTRUMENTATION
132#if USING_THREAD_SANITISER || USING_INSTRUMENTATION
138 #define TSAN_SAFE __attribute__((no_sanitize("thread")))
152 #define TSAN_BEFORE(addr) AnnotateHappensBefore(__FILE__, __LINE__, (void*)(addr))
155 #define TSAN_AFTER(addr) AnnotateHappensAfter(__FILE__, __LINE__, (void*)(addr))
163 template <
typename T>
166 std::atomic<T>
Value;
182 Value.store((T)
Other, std::memory_order_relaxed);
187 Value.store((T)
Other, std::memory_order_relaxed);
191 template <
typename OtherType>
194 template <
typename OtherType>
198 #define TSAN_ATOMIC(Type) TTSANSafeValue<Type>
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
float swift_float2 __attribute__((__ext_vector_type__(2)))
Definition MarketplaceKitWrapper.h:67
FStringBuilderBase & operator+=(FStringBuilderBase &Builder, ANSICHAR Char)
Definition StringBuilder.h:582