UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UploadedAtFNVersion.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2#pragma once
3
4#include <cstdint>
5
6namespace VerseFN
7{
8 // A place to put Fortnite upload versions that we use to gate some compiler features
9 namespace UploadedAtFNVersion
10 {
11 // This is expected to follow the Fortnite release convention. For example, `28.20` would be `2820`.
12
13 // Leave a few "versions" that occur *after* Latest. The default version in test situations is always Latest. This will give us some room for testing.
14 static constexpr uint32_t Latest = UINT32_MAX - 0xFF;
15 static constexpr uint32_t Primordial = 0;
16 inline bool CheckSuperQualifiers(const uint32_t CurrentVersion) { return CurrentVersion >= 2810; }
17 inline bool EnforceDontMixCommaAndSemicolonInBlocks(const uint32_t CurrentVersion) { return CurrentVersion == 2820; }
18 inline bool EnableGenerators(const uint32_t CurrentVersion) { return CurrentVersion >= 2930; }
19 inline bool EnableFinalSpecifierFixes(const uint32_t CurrentVersion) { return CurrentVersion >= 2930; }
20 inline bool EnableNamedParametersForLocalize(const uint32_t CurrentVersion) { return CurrentVersion >= 2930; }
21 inline bool EnableProfileMacro(const uint32_t CurrentVersion) { return CurrentVersion >= 2930; }
22 inline bool EnforceUnambiguousEnumerators(const uint32_t CurrentVersion) { return CurrentVersion >= 3000; }
23 inline bool StricterCheckForDefaultInConcreteClasses(const uint32_t CurrentVersion){ return CurrentVersion >= 3000; }
24 inline bool SortSourceFilesLexicographically(const uint32_t CurrentVersion) { return CurrentVersion >= 3010; }
25 inline bool DeprecateVariesEffect(const uint32_t CurrentVersion) { return CurrentVersion >= 3100; }
26 inline bool ConcurrencyAddScope(const uint32_t CurrentVersion) { return CurrentVersion >= 3100; }
27 inline bool DecidesEffectNoLongerImpliesComputes(const uint32_t CurrentVersion) { return CurrentVersion >= 3100; }
28 inline bool StricterEditableOverrideCheck(const uint32_t CurrentVersion) { return CurrentVersion >= 3200; }
29 inline bool OptionTypeDoesntIgnoreValueHashability(const uint32_t CurrentVersion) { return CurrentVersion >= 3100; }
30 inline bool SortSourceSubmodulesLexicographically(const uint32_t CurrentVersion) { return CurrentVersion >= 3200; }
31 inline bool EnforceSnippetNameValidity(const uint32_t CurrentVersion) { return CurrentVersion >= 3200; }
32 inline bool EnableCastableSubtype(const uint32_t CurrentVersion) { return CurrentVersion >= 3200; }
33 inline bool EnforceCorrectQualifiedNames(const uint32_t CurrentVersion) { return CurrentVersion >= 3300; }
34 inline bool StrictConstructorFunctionInvocation(const uint32_t CurrentVersion) { return CurrentVersion >= 3300; }
35 inline bool EnforceUECaseInsensitiveNames(const uint32_t CurrentVersion) { return CurrentVersion >= 3300; }
36 inline bool AttributesRequireComputes(const uint32_t CurrentVersion) { return CurrentVersion >= 3300; }
37 inline bool DisallowNonClassEditableSubtypes(const uint32_t CurrentVersion) { return CurrentVersion >= 3400; }
38 inline bool DetectInaccessibleTypeDependenciesLate(const uint32_t CurrentVersion) { return CurrentVersion >= 3400; }
39 inline bool DisallowInstanceInAttributeExpression(const uint32_t CurrentVersion) { return CurrentVersion >= 3410; }
40 inline bool EnforceConcreteInterfaceData(const uint32_t CurrentVersion) { return CurrentVersion >= 3420; }
41 inline bool PersistableClassesMustNotImplementInterfaces(const uint32_t CurrentVersion) { return CurrentVersion >= 3430; }
42 inline bool RelaxInstancedReferenceSemantics(const uint32_t CurrentVersion) { return CurrentVersion >= 3600; }
43 inline bool DisallowSetExprOutsideAssignment(const uint32_t CurrentVersion) { return CurrentVersion >= 3500; }
44 inline bool EnforceNoReservedWordsAsEnumerators(const uint32_t CurrentVersion) { return CurrentVersion >= 3430; }
45 inline bool AllowEnumeratorsToAliasBuiltinDefinitions(const uint32_t CurrentVersion) { return CurrentVersion < 3430; }
46 inline bool DetectInaccessibleTypeArguments(const uint32_t CurrentVersion) { return CurrentVersion >= 3600; }
47 inline bool EnforceTupleElementExprFallibility(const uint32_t CurrentVersion) { return CurrentVersion >= 3600; }
48 inline bool LocalQualifiers(const uint32_t CurrentVersion) { return CurrentVersion >= 3600; }
49 inline bool AllowRedirectorReflection(const uint32_t CurrentVersion) { return CurrentVersion >= 3800; }
50 inline bool EnforceCastableSubtype(const uint32_t CurrentVersion) { return CurrentVersion >= 3700; }
51 inline bool ImprovedCheckForIncorrectUseOfLocal(const uint32_t CurrentVersion) { return CurrentVersion >= 3700; }
52 inline bool ImprovedCheckForIncorrectUseOfLocalized(const uint32_t CurrentVersion) { return CurrentVersion >= 3700; }
53 inline bool EnableConcreteSubtype(const uint32_t CurrentVersion) { return CurrentVersion >= 3700; }
54 inline bool EnableAwaitMacro(const uint32_t CurrentVersion) { return CurrentVersion >= 3700; }
55 inline bool EnforceCastableTag(const uint32_t CurrentVersion) { return CurrentVersion >= 3700; }
56 inline bool ForcePublicInternalTransformsOnTransformComponent(const uint32_t CurrentVersion) { return CurrentVersion < 3630; }
57 inline bool EnforceConvergesInDefaultInitializers(const uint32_t CurrentVersion) { return CurrentVersion >= 3730; }
58 inline bool ScopeDefinitionsToDefaultInitializers(const uint32_t CurrentVersion) { return CurrentVersion >= 3730; }
59 inline bool AgentInheritsFromEntity(const uint32_t CurrentVersion) { return CurrentVersion >= 3800; }
60 inline bool EnforceAllInitializersBeforeDelegatingConstructor(const uint32_t CurrentVersion) { return CurrentVersion >= 3750; }
61 }
62}
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
bool DetectInaccessibleTypeDependenciesLate(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:38
bool ImprovedCheckForIncorrectUseOfLocal(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:51
bool ForcePublicInternalTransformsOnTransformComponent(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:56
bool EnableConcreteSubtype(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:53
bool EnforceAllInitializersBeforeDelegatingConstructor(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:60
bool StricterEditableOverrideCheck(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:28
bool DeprecateVariesEffect(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:25
bool ScopeDefinitionsToDefaultInitializers(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:58
bool EnforceCorrectQualifiedNames(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:33
bool EnableAwaitMacro(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:54
bool RelaxInstancedReferenceSemantics(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:42
bool OptionTypeDoesntIgnoreValueHashability(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:29
bool EnforceTupleElementExprFallibility(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:47
bool SortSourceSubmodulesLexicographically(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:30
bool EnforceNoReservedWordsAsEnumerators(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:44
bool EnforceCastableTag(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:55
bool EnableFinalSpecifierFixes(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:19
bool StricterCheckForDefaultInConcreteClasses(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:23
bool CheckSuperQualifiers(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:16
bool SortSourceFilesLexicographically(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:24
bool AllowRedirectorReflection(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:49
bool EnforceConcreteInterfaceData(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:40
bool DisallowNonClassEditableSubtypes(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:37
bool DecidesEffectNoLongerImpliesComputes(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:27
bool AgentInheritsFromEntity(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:59
bool AttributesRequireComputes(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:36
bool EnforceUnambiguousEnumerators(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:22
bool EnforceCastableSubtype(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:50
bool EnforceSnippetNameValidity(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:31
bool EnableCastableSubtype(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:32
bool StrictConstructorFunctionInvocation(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:34
bool EnableProfileMacro(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:21
bool DisallowSetExprOutsideAssignment(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:43
bool AllowEnumeratorsToAliasBuiltinDefinitions(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:45
bool LocalQualifiers(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:48
bool EnableGenerators(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:18
bool PersistableClassesMustNotImplementInterfaces(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:41
bool ConcurrencyAddScope(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:26
bool DetectInaccessibleTypeArguments(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:46
bool EnforceDontMixCommaAndSemicolonInBlocks(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:17
bool EnableNamedParametersForLocalize(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:20
bool EnforceConvergesInDefaultInitializers(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:57
bool DisallowInstanceInAttributeExpression(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:39
bool EnforceUECaseInsensitiveNames(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:35
bool ImprovedCheckForIncorrectUseOfLocalized(const uint32_t CurrentVersion)
Definition UploadedAtFNVersion.h:52
Definition UploadedAtFNVersion.h:7