Changes in C++ Enums Break Blueprint

In C++ I have a UENUM Class. Any changes I make to the UENUM class including display name seems to invalidate any references in my blueprint code,

foreach enum
enum to string
Even uses of that enum as Blueprint function parameters

Instead I get my original type is replaced with this HOTRELOAD half types. And the code actually runs and compiles

I dont get any errors until I try to start manually switching all of the HOTRELOAD types to the actual UENUM type I created.

How can I more seamlessly update by UENUM without have to re-write my blueprint code each time I compile?

How can I more easily detect the “place holder” HOTRELOAD types?

I just had the same issue

I know this is old lol, but I just started freaking out that I was going to have to rewire a whole lot lol. I solved it by restarting the editor. So just know, if you change your Enum in C++, just close the editor before you compile.


The issue happened so frequently I ended up changing my c ++ code to use bytes and defined the enumerations in blueprint. This significantly reduced compile times for me as well. Perhaps it works better in more up to date versions of unreal