Source Code Build C4668 preprocessor macro error

D:\UnrealEngine-5.4.4-release\Engine\Source\Runtime\Core\Public\Experimental\ConcurrentLinearAllocator.h(33): error C4668: ‘__has_feature’ not defined as preprocessor macro, replaced with ‘0’ for '#if/#elif
D:\UnrealEngine-5.4.4-release\Engine\Source\Runtime\Core\Public\Experimental\ConcurrentLinearAllocator.h(33): error C4067: unexpected tokens after preprocessor directive - end of line expected

ConcurrentLinearAllocator.h


#pragma once
#include <atomic>
#if UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_5_2
#include "CoreMinimal.h"
#endif
#include "HAL/MallocAnsi.h"
#include "HAL/UnrealMemory.h"
#include "HAL/LowLevelMemTracker.h"
#include "ProfilingDebugging/MemoryTrace.h"
#include "Templates/UniquePtr.h"
#include "Templates/UnrealTypeTraits.h"
#include "Containers/LockFreeFixedSizeAllocator.h"
#include "Misc/MemStack.h"

#ifdef USE_MALLOC_BINNED3
#if USE_MALLOC_BINNED3
#define SUPPORTS_VERY_LARGE_ALIGNMENTS 0
#else
#define SUPPORTS_VERY_LARGE_ALIGNMENTS 1
#endif
#else
#define SUPPORTS_VERY_LARGE_ALIGNMENTS 1
#endif



#if PLATFORM_HAS_ASAN_INCLUDE
#include <sanitizer/asan_interface.h>
#if defined(__SANITIZE_ADDRESS__)
#define IS_ASAN_ENABLED 1
#elif __has_feature(address_sanitizer)
#define IS_ASAN_ENABLED 1
#else
#define IS_ASAN_ENABLED 0
#endif
#else
#define ASAN_POISON_MEMORY_REGION(addr, size) ((void)(addr), (void)(size))
#define ASAN_UNPOISON_MEMORY_REGION(addr, size) ((void)(addr), (void)(size))
#define IS_ASAN_ENABLED 0
#endif

It’s usually because you haven’t selected or selected wrong version of some component when you installing MSVC2022…

(post deleted by author)

Setting Up Visual Studio
I did it like here