Syntax error: 'ClassName' should be preceded by ';'

It’s been a while since the last time I modified this project, and suddenly I got this error when trying to compile:

1>…\Public\Gameplay\Game\States\SFBaseGameplayState.h(8): error C2144: syntax error: ‘USFMatchState’ should be preceded by ‘;’
1>…\Public\Gameplay\Game\States\SFBaseGameplayState.h(8): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int

SFBaseGameplayState.h

#pragma once

#include "CoreMinimal.h"
#include "SFBaseGameplayState.generated.h"

class USFMatchState;

/**
 * 
 */
UCLASS(BlueprintType, Blueprintable)
class FULL_STARFIRE_INTEG_API USFBaseGameplayState : public USFMatchState
{
	GENERATED_BODY()
public:
	USFBaseGameplayState();
};

The class is actually empty, and I got rid of all circular dependencies already…

Any ideas?

If remove the forward declaration and add it to include, I get another error:

...Public\Gameplay\Game\States\SFBaseGameplayState.h(16): error C2143: syntax error: missing ';' before '<class-head>'

Well, seems like its working now…

I had to literally remove the class, recreate it with another name and relink inheritance for its child classes.

Pretty weird, never had this before. So for anyone experiencing this issue, try doing what I suggested above.