UpdateResourceW compile error after adding EOS SDK

I was working fine until yesterday on a proyect that already has lots of classes. Today i decided to try to implement EOS, linked the .lib and suddenly started getting the following errors:

Error C3668 ‘UTextureCube::UpdateResourceW’: method with override specifier ‘override’ did not override any base class methods UnrealDemo E:\UE_4.25\Engine\Source\Runtime\Engine\Classes\Engine\TextureCube.h 78
Error C3668 ‘UCanvasRenderTarget2D::UpdateResourceW’: method with override specifier ‘override’ did not override any base class methods UnrealDemo E:\UE_4.25\Engine\Source\Runtime\Engine\Classes\Engine\CanvasRenderTarget2D.h 43

This is anytime i create a new class. If i don’t create a .cpp the proyect compiles without any problem. But as soon as i create a .cpp of the new class i start getting that those errors.

I got my proyect under subversion control, so i reverted everything (and deleted all generated/Intermediate files) to yesterday’s version (where i created new classes) and even then if i create a new class i get that error.

My guess is that somehow the project got corrupted with the .lib linking from EOS sdk. Any thoughts about what i could do? I tried to change versions too to 4.25 and the errors stays.

After spending quite a few hours i found out that it doesn’t seems to have anything with the SDK. I have been trying out reverting and it works fine on a commit before last night where i did a few changes and created a c++ AActor and a UPhysicalMaterial.

The weird thing is that any class i create after adding those 2 classes starts giving me that error. I delete the newly created class and it compiles again. I even tried reverting back to the working version (without the AActor and a UPhysicalMaterial), created 1 empty aactor and it compiled, created a pawn and it compiled…created another pawn and again…the same error… i HIGHLY doubt UE has any type of limitation for c++ classes, that would be really absurd.

After doing massive cleanup on the code, checked class by class to find anything that could be causing this. In the end i just decided to try to use the #undef UpdateResource method (as suggested somewhere on the forums/hub). Finally i found out that doing so on the PROJECT.cpp allows me to keep compiling.

This looks awfully like an ugly patch and i would still like some official word from anyone on UE, as the error only happened if i reached a certain number of classes. Without any kind of clue on what’s wrong this is some horrible engine bug.

2 Likes

I am currently having this issue as well and your solution didn’t seem to work. My compile complains about #pragma optimize()


Do you happen to know what could be wrong.