Download

Added new functions but not showing up... Compiles okay in VS, Errors through UE

Okay… I’ve been having a problem that I cannot resolve. I’m attempting to add a couple of new functions to my CPP class, but these are not showing up in my BP so I cannot access them.

I’ve been normally doing all my compiling with F7 from within VS and this has been working just fine all through development. Even now, if I compile through VS it tells me everything went through okay and that there were no errors. But my changes (additions) are not showing up anywhere in the editor.

I decided to use the “compile” button in the editor and it fails to compile from there. This is a selection of what I get from the compiler log:


Info Compiling game modules for hot reload
Info Performing 4 actions (4 in parallel)
Info LabyrinthLarry.generated.cpp
Info MoonLight.cpp
Info Labyrinth.cpp
Error d:\ueprojects\hmm\source\labyrinthlarry\MoonLight.h(11) : error C3668: 'AMoonLight::_getUObject': method with override specifier 'override' did not override any base class methods
Error d:\ueprojects\hmm\source\labyrinthlarry\MoonLight.h(11) : error C2065: 'LabyrinthLarry': undeclared identifier
Error d:\ueprojects\hmm\source\labyrinthlarry\Labyrinth.h(74) : error C3668: 'ALabyrinth::_getUObject': method with override specifier 'override' did not override any base class methods
Error d:\ueprojects\hmm\source\labyrinthlarry\Labyrinth.h(74) : error C2065: 'LabyrinthLarry': undeclared identifier
Error D:\UEProjects\HMM\Source\LabyrinthLarry\Labyrinth.h(74) : error C3668: 'ALabyrinth::_getUObject': method with override specifier 'override' did not override any base class methods
Error D:\UEProjects\HMM\Source\LabyrinthLarry\Labyrinth.h(74) : error C2065: 'LabyrinthLarry': undeclared identifier
Error D:\UEProjects\HMM\Source\LabyrinthLarry\MoonLight.h(11) : error C3668: 'AMoonLight::_getUObject': method with override specifier 'override' did not override any base class methods
Error D:\UEProjects\HMM\Source\LabyrinthLarry\MoonLight.h(11) : error C2065: 'LabyrinthLarry': undeclared identifier
Error D:\UEProjects\HMM\Intermediate\Build\Win64\UE4Editor\Inc\LabyrinthLarry\LabyrinthLarry.generated.cpp(24) : error C2661: 'FCompiledInDeferStruct::FCompiledInDeferStruct': no overloaded function takes 2 arguments
Error D:\UEProjects\HMM\Intermediate\Build\Win64\UE4Editor\Inc\LabyrinthLarry\LabyrinthLarry.generated.cpp(44) : error C2661: 'FCompiledInDeferStruct::FCompiledInDeferStruct': no overloaded function takes 2 arguments
Error D:\UEProjects\HMM\Intermediate\Build\Win64\UE4Editor\Inc\LabyrinthLarry\LabyrinthLarry.generated.cpp(64) : error C2661: 'FCompiledInDeferStruct::FCompiledInDeferStruct': no overloaded function takes 2 arguments
Error D:\UEProjects\HMM\Intermediate\Build\Win64\UE4Editor\Inc\LabyrinthLarry\LabyrinthLarry.generated.cpp(84) : error C2661: 'FCompiledInDeferStruct::FCompiledInDeferStruct': no overloaded function takes 2 arguments
Error D:\UEProjects\HMM\Intermediate\Build\Win64\UE4Editor\Inc\LabyrinthLarry\LabyrinthLarry.generated.cpp(141) : error C3861: 'FindExistingStructIfHotReload': identifier not found
Error D:\UEProjects\HMM\Intermediate\Build\Win64\UE4Editor\Inc\LabyrinthLarry\LabyrinthLarry.generated.cpp(144) : error C2065: 'RF_Native': undeclared identifier
Error D:\UEProjects\HMM\Intermediate\Build\Win64\UE4Editor\Inc\LabyrinthLarry\LabyrinthLarry.generated.cpp(145) : error C2065: 'RF_Native': undeclared identifier
Error D:\UEProjects\HMM\Intermediate\Build\Win64\UE4Editor\Inc\LabyrinthLarry\LabyrinthLarry.generated.cpp(146) : error C2065: 'RF_Native': undeclared identifier
Error D:\UEProjects\HMM\Intermediate\Build\Win64\UE4Editor\Inc\LabyrinthLarry\LabyrinthLarry.generated.cpp(147) : error C2065: 'RF_Native': undeclared identifier
Error D:\UEProjects\HMM\Intermediate\Build\Win64\UE4Editor\Inc\LabyrinthLarry\LabyrinthLarry.generated.cpp(148) : error C2065: 'RF_Native': undeclared identifier
Error D:\UEProjects\HMM\Intermediate\Build\Win64\UE4Editor\Inc\LabyrinthLarry\LabyrinthLarry.generated.cpp(171) : error C3861: 'FindExistingStructIfHotReload': identifier not found
Error D:\UEProjects\HMM\Intermediate\Build\Win64\UE4Editor\Inc\LabyrinthLarry\LabyrinthLarry.generated.cpp(174) : error C2065: 'RF_Native': undeclared identifier
Error D:\UEProjects\HMM\Intermediate\Build\Win64\UE4Editor\Inc\LabyrinthLarry\LabyrinthLarry.generated.cpp(176) : error C2065: 'RF_Native': undeclared identifier
Error D:\UEProjects\HMM\Intermediate\Build\Win64\UE4Editor\Inc\LabyrinthLarry\LabyrinthLarry.generated.cpp(177) : error C2065: 'RF_Native': undeclared identifier
Error D:\UEProjects\HMM\Intermediate\Build\Win64\UE4Editor\Inc\LabyrinthLarry\LabyrinthLarry.generated.cpp(195) : error C3861: 'FindExistingStructIfHotReload': identifier not found


I have no idea what happened or what might have changed since I last successfully compiled changes since I haven’t had to go back to the code for a long time now.

If I click on any of the errors, VS takes me either to the line with the GENERATED_BODY(), or lines of code within the *.generated.cpp file itself. I didn’t code any of these (obviously) so I have no idea what is wrong and where the problem is coming from!

HELP!

I can write my own code and fix it, but all this UE generated stuff… well, I can’t afford the time to dig through there and try to learn whatever it is their code is trying to do and why it is broken.

I need suggestions on how to fix this! I’m at a standstill until I can move on. I’m going to try to continue, but I’m really at a loss and don’t even know where to begin. Half tempted to uninstall and reinstall everything, but don’t really want to go through all of that.

EDIT: I just wanted to add that I’ve also tried going to File->Refresh Visual Studio Project, but that didn’t do anything either. (Don’t know if I should have expected it to, or not.) I’m a programmer, not a configurator. I don’t know if something got messed up with configuration files or anything. About a month ago my computer decided it was going to just go ahead and upgrade itself to Windows 10 without asking me, and I reverted back to 8 because there were things about my Windows 8 configuration that I have gotten used to doing, and rather like, and the Windows 10 upgrade threw a lot of that away. (Not that I’m a fan of Windows 8, but when you get used to something and things are working the way you want them to, there’s not much reason to change that drastically.)

EDIT2: About a month and a half ago I had problems and errors trying to package my project for play testing on other machines and had to migrate a lot of stuff to a blank project and back again, but I’ve not had any other problems until just now. (And my packages work just fine.)

Just want to add that YES, I’m adding the function the right way:

But it never shows up: