Parcourir la source

Merge pull request #38041 from ThakeeNathees/class-name-check-enhance

GDScript class name existance check enhanced
Rémi Verschelde il y a 5 ans
Parent
commit
4f03e302a7
1 fichiers modifiés avec 6 ajouts et 0 suppressions
  1. 6 0
      modules/gdscript/gdscript_parser.cpp

+ 6 - 0
modules/gdscript/gdscript_parser.cpp

@@ -3673,6 +3673,12 @@ void GDScriptParser::_parse_class(ClassNode *p_class) {
 						_set_error("A constant named \"" + String(name) + "\" already exists in the outer class scope (at line" + itos(outer_class->constant_expressions[name].expression->line) + ").");
 						return;
 					}
+					for (int i = 0; i < outer_class->variables.size(); i++) {
+						if (outer_class->variables[i].identifier == name) {
+							_set_error("A variable named \"" + String(name) + "\" already exists in the outer class scope (at line " + itos(outer_class->variables[i].line) + ").");
+							return;
+						}
+					}
 
 					outer_class = outer_class->owner;
 				}