What to do after editing an engine module?

Hi, I have edited a public header file inside the module Slate, adding a new function to the class FSlateApplication in the file SlateApplication.h, and this is the function exactly (defined in .cpp):

FWindowsApplication* FSlateApplication::GetWindowApplication()
{
return dynamic_cast<FWindowsApplication*>(PlatformApplication.Get());
}

The modules Slate, and ApplicationCore are added to the project.build.cs, and project.target.cs using the function PublicDependencyModuleNames; Furthermore, the module ApplicationCore (that contains FWindowsApplication class) is already a dependency of the slate module, and I #included WindowsApplication.h which is a public header in its module.

I tried to build and rebuild the solution, tried to delete and regenerate project.sln.

When I call the function in the game logic, it causes an unresolved symbol linking error!