summaryrefslogtreecommitdiffstats
path: root/modules/gdscript/gdscript_warning.cpp
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2023-09-12 08:49:57 +0200
committerRémi Verschelde <rverschelde@gmail.com>2023-09-12 08:49:57 +0200
commit0545ed5c7112387b2ee5b4b1998c262df8d061d3 (patch)
treed2ad72d3ff26406398941cc9a10b1736a1170119 /modules/gdscript/gdscript_warning.cpp
parentb539bfb2638eef872a8760c953841ef8e6630991 (diff)
parent14edf044afe54cfe3dced73b83e96e9112581511 (diff)
downloadredot-engine-0545ed5c7112387b2ee5b4b1998c262df8d061d3.tar.gz
Merge pull request #81355 from ryanabx/features/enforce-static-typing
Add an optional `untyped_declaration` warning
Diffstat (limited to 'modules/gdscript/gdscript_warning.cpp')
-rw-r--r--modules/gdscript/gdscript_warning.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/modules/gdscript/gdscript_warning.cpp b/modules/gdscript/gdscript_warning.cpp
index 4fec445995..fcc6ea34de 100644
--- a/modules/gdscript/gdscript_warning.cpp
+++ b/modules/gdscript/gdscript_warning.cpp
@@ -88,6 +88,12 @@ String GDScriptWarning::get_message() const {
case FUNCTION_USED_AS_PROPERTY:
CHECK_SYMBOLS(2);
return vformat(R"(The property "%s" was not found in base "%s" but there's a method with the same name. Did you mean to call it?)", symbols[0], symbols[1]);
+ case UNTYPED_DECLARATION:
+ CHECK_SYMBOLS(2);
+ if (symbols[0] == "Function") {
+ return vformat(R"*(%s "%s()" has no static return type.)*", symbols[0], symbols[1]);
+ }
+ return vformat(R"(%s "%s" has no static type.)", symbols[0], symbols[1]);
case UNSAFE_PROPERTY_ACCESS:
CHECK_SYMBOLS(2);
return vformat(R"(The property "%s" is not present on the inferred type "%s" (but may be present on a subtype).)", symbols[0], symbols[1]);
@@ -208,6 +214,7 @@ String GDScriptWarning::get_name_from_code(Code p_code) {
"PROPERTY_USED_AS_FUNCTION",
"CONSTANT_USED_AS_FUNCTION",
"FUNCTION_USED_AS_PROPERTY",
+ "UNTYPED_DECLARATION",
"UNSAFE_PROPERTY_ACCESS",
"UNSAFE_METHOD_ACCESS",
"UNSAFE_CAST",