Explorar el Código

Add GDScript slave keyword deprecation warning.

Fabio Alessandrelli hace 6 años
padre
commit
c0e4d7efca

+ 5 - 0
modules/gdscript/gdscript.cpp

@@ -1980,6 +1980,10 @@ String GDScriptWarning::get_message() const {
 			CHECK_SYMBOLS(4);
 			return "The argument '" + symbols[0] + "' of the function '" + symbols[1] + "' requires a the subtype '" + symbols[2] + "' but the supertype '" + symbols[3] + "' was provided";
 		} break;
+		case DEPRECATED_KEYWORD: {
+			CHECK_SYMBOLS(2);
+			return "The '" + symbols[0] + "' keyword is deprecated and will be removed in a future release, please replace its uses by '" + symbols[1] + "'.";
+		} break;
 	}
 	ERR_EXPLAIN("Invalid GDScript warning code: " + get_name_from_code(code));
 	ERR_FAIL_V(String());
@@ -2019,6 +2023,7 @@ String GDScriptWarning::get_name_from_code(Code p_code) {
 		"UNSAFE_METHOD_ACCESS",
 		"UNSAFE_CAST",
 		"UNSAFE_CALL_ARGUMENT",
+		"DEPRECATED_KEYWORD",
 		NULL
 	};
 

+ 1 - 0
modules/gdscript/gdscript.h

@@ -289,6 +289,7 @@ struct GDScriptWarning {
 		UNSAFE_METHOD_ACCESS, // Function not found in the detected type (but can be in subtypes)
 		UNSAFE_CAST, // Cast used in an unknown type
 		UNSAFE_CALL_ARGUMENT, // Function call argument is of a supertype of the require argument
+		DEPRECATED_KEYWORD, // The keyword is deprecated and should be replaced
 		WARNING_MAX,
 	} code;
 	Vector<String> symbols;

+ 1 - 0
modules/gdscript/gdscript_parser.cpp

@@ -4443,6 +4443,7 @@ void GDScriptParser::_parse_class(ClassNode *p_class) {
 				continue;
 			} break;
 			case GDScriptTokenizer::TK_PR_SLAVE:
+				_add_warning(GDScriptWarning::DEPRECATED_KEYWORD, tokenizer->get_token_line(), "slave", "puppet");
 			case GDScriptTokenizer::TK_PR_PUPPET: {
 
 				//may be fallthrough from export, ignore if so