Description

If a forward declaration of a class is made in the header file for an Interface class, and no semi-colon is included at the end of the forward declaration line, the build will fail with a confusing error message. The error message says to check that UE4 prerequisites are installed, which has nothing to do with the actual error in this case.

REGRESSION:
No. The same behavior occurs in 4.20.3

Steps to Reproduce
  1. Create a new Basic Code project.
  2. Build the project in Visual Studio.
  3. Open the project in the Editor.
  4. Add a new Unreal Interface class to the project.
  5. In the header file for the new class, add a forward declaration of another class before the UINTERFACE() macro. Make sure no semi-colon is included at the end of the forward declaration.
    • eg: class AActor
  6. Build the project in Visual Studio.

RESULT:
The build fails with the following error: UnrealBuildTool : error : UnrealHeaderTool failed with exit code 0xC0000005 - check that UE4 prerequisites are installed.

EXPECTED:
The build fails with an error indicating that an expected semi-colon is missing.

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-70176 in the post.

2
Login to Vote

Fixed
Fix Commit5144442
Main Commit6815521
CreatedFeb 15, 2019
ResolvedFeb 22, 2019
UpdatedJun 3, 2019