C++ Transition Guide for 5.4

error C2248: ‘TMemoryWriterBase<TSizedDefaultAllocator<32>>::IndexSize’: cannot access private member

Original

// Fill out your copyright notice in the Description page of Project Settings.

using UnrealBuildTool;
using System.Collections.Generic;

public class PMeleeWeaponTarget : TargetRules
{
	public PMeleeWeaponTarget(TargetInfo Target) : base(Target)
	{
		Type = TargetType.Game;
		bUsesSteam = true;
        ExtraModuleNames.Add("PMeleeWeapon");
    }
}

Solution ~~~> DefaultBuildSettings = BuildSettingsVersion.Latest;

// Fill out your copyright notice in the Description page of Project Settings.

using UnrealBuildTool;
using System.Collections.Generic;

public class PMeleeWeaponTarget : TargetRules
{
	public PMeleeWeaponTarget(TargetInfo Target) : base(Target)
	{
        DefaultBuildSettings = BuildSettingsVersion.Latest;
		Type = TargetType.Game;
		bUsesSteam = true;
        ExtraModuleNames.Add("PMeleeWeapon");
    }
}

Make sure to include this line

DefaultBuildSettings = BuildSettingsVersion.Latest;

in

[YourProject].target.cs

and

[YourProject]Editor.target.cs

and perform a full Re-Build <~~~

Also, make sure to remove any other values of DefaultBuildSettings, such as

DefaultBuildSettings = BuildSettingsVersion.V2; <~~~ Remove

:heart:

Rama