Is HideFunctions broken?

I want to hide some function on blueprint but HideFunctions not works properly.

But HideCategories works fine.

is it bug?

UCLASS(HideCategories=(HiddenFunction), HideFunctions="HiddenFunc")
class TESTPROJECT_API ATest : public AActor
{
	GENERATED_BODY()

public:
	UFUNCTION(BlueprintCallable, Category = HiddenFunction)
	void HiddenCategoryFunc();

	UFUNCTION(BlueprintCallable)
	void HiddenFunc();
};

image

It seems to conflict with BlueprintCallable. There’s no reason for it to be hidden if it should be callable, and the engine recognizes this, giving priority to BlueprintCallable.

Since HiddenFunction is a category that just doesn’t appear, it doesn’t seems to conflict.

Honestly the more I think about it, the less I get why HideFunctions even exists. Unlike the category, it even hides it from the override functions list.