Can't use BlueprintNativeEvent int 4.7.2?

When I attempt to create a BlueprintNativeEvent:

UFUNCTION(BlueprintNativeEvent, Category = "Explosion")
	void OnHit();

The console throws this:

Error c:\users\jaden\desktop\unreal projects\cowgun\source\cowgun\Projectile.h(11) (: warning C4996: Function Projectile::OnHit needs native implementation by virtual void OnHit_Implementation() due to its properties. Currently OnHit_Implementation declaration is autogenerated by UHT. Since next release you'll have to provide declaration on your own. Please update your code before upgrading to the next release, otherwise your project will no longer compile.

But when I follow what the log says and do:

UFUNCTION(BlueprintNativeEvent, Category = "Explosion")
	virtual void OnHit_Implementation();

The log outputs as follows:

Error C:/Users/Jaden/Desktop/Unreal Projects/CowGun/Source/CowGun/Projectile.h(31)  : Error: In Projectile: BlueprintNativeEvent functions must be non-virtual.

Again I am currently using UE 4.7.2.
I am completely oblivious of what is wrong.

Hi,

it seems like you have the same problem as this Persion: Thread

:

Sorry for the confusion about this. The automatic generation of _Implementation and _Validate function declarations has been deprecated in 4.7, and will likely be removed in 4.8, so you should update your RPCs and add these declarations.

Some of you may not be seeing the warning because it will only be emitted if the class containing the RPC function uses the GENERATED_BODY macro, and not if the class uses GENERATED_UCLASS_BODY

I think that this should work:

UFUNCTION(BlueprintNativeEvent, Category = "Explosion")
void OnHit();
virtual void OnHit_Implementation();

Regards

Thank you, this seemed to work (by that I mean clear the warnings).