### Godot version

4.1.1stable

### System information

Godot v4.1.1.stable - Windows 10.0.22621 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 3050 Laptop GPU (NVIDIA; 31.0.15.3179) - 11th Gen Intel(R) Core(TM) i5-11300H @ 3.10GHz (8 Threads)

### Issue description

So, to make my code better I was using `@export_category("HEALTH")` to create categories in the editor.
Also, right under that, I had ```@export var HEALTH = 30; var current_health: float```. 

Turns out, the `@export_category` creates a boolean variable with the same name as my health variable with caused issues when I wanted to set `current_health` to `HEALTH`. 

Never in the editor this was said or implied by a console error.
I simply fixed it by removing `@export_category` even though I could have changed the name of the category instead.

Just wanted to point that out in case this wasn't intended.


### Steps to reproduce

Try the following code:

```gdscript
@export_category("NAME")
@export var NAME = 1
var my_name: int

func _ready():
    my_name = NAME

func _physics_process(delta):
    print(NAME)
    print(my_name)
```

### Minimal reproduction project

N/A

_Bugsquad edit:_ Fix formatting.
push_warning(p_source, p_code, Vector<String>{ p_symbols... });
	}
#endif
	void make_completion_context(CompletionType p_type, Node *p_node, int p_argument = -1, bool p_force = false);
	void make_completion_context(CompletionType p_type, Variant::Type p_builtin_type, bool p_force = false);
	void push_completion_call(Node *p_call);
	void pop_completion_call();
	void set_last_completion_call_arg(int p_argument);
	GDScriptTokenizer::Token advance();
	bool match(GDScriptTokenizer::Token::Type p_token_type);
	bool check(GDScriptTokenizer::Token::Type p_token_type) const;
	bool consume(GDScriptTokenizer::Token::Type p_token_type, const String &p_error_message);
	bool is_at_end() const;
	bool is_statement_end_token() const;
	bool is_statement_end() const;
	void end_statement(const String &p_context);
	void synchronize();
	void push_multiline(bool p_state);
	void pop_multiline();
	
	void parse_program();
	ClassNode *parse_class(bool p_is_static);
	void parse_class_name();
	void parse_extends();
	void parse_class_body(bool p_is_multiline);
	template <class T>
	void parse_class_member(T *(GDScriptParser::*p_parse_function)(bool), AnnotationInfo::TargetKind p_target, const String &p_member_kind, bool p_is_static = false);
	SignalNode *parse_signal(bool p_is_static);
	EnumNode *parse_enum(bool p_is_static);