summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2022-11-22 14:36:51 +0100
committerRémi Verschelde <rverschelde@gmail.com>2022-11-22 15:01:24 +0100
commit4abbb2d684aa1d7edfcf98a37fe60e9824837d7e (patch)
tree63d9601c7d0361ba7a9a60a7f5ac896bd92924ba
parente3a51e53ef055a1fe94351b68173c6dfcd2cb371 (diff)
GDScript: Don't warn about RETURN_VALUE_DISCARDED by default
This happens too often with normal usage of the API. The warning can still be useful to find actual bugs where discarding the return value wasn't intentional, but this should stay enabled manually, at least until we either improve the API to remove false positives, or improve the warning (e.g. to only warn about unused return value on const functions).
-rw-r--r--doc/classes/ProjectSettings.xml2
-rw-r--r--modules/gdscript/gdscript_warning.cpp4
2 files changed, 5 insertions, 1 deletions
diff --git a/doc/classes/ProjectSettings.xml b/doc/classes/ProjectSettings.xml
index 3478215f4f..714e9210a5 100644
--- a/doc/classes/ProjectSettings.xml
+++ b/doc/classes/ProjectSettings.xml
@@ -401,7 +401,7 @@
<member name="debug/gdscript/warnings/redundant_await" type="int" setter="" getter="" default="1">
When set to [code]warn[/code] or [code]error[/code], produces a warning or an error respectively when a function that is not a coroutine is called with await.
</member>
- <member name="debug/gdscript/warnings/return_value_discarded" type="int" setter="" getter="" default="1">
+ <member name="debug/gdscript/warnings/return_value_discarded" type="int" setter="" getter="" default="0">
When set to [code]warn[/code] or [code]error[/code], produces a warning or an error respectively when calling a function without using its return value (by assigning it to a variable or using it as a function argument). Such return values are sometimes used to denote possible errors using the [enum Error] enum.
</member>
<member name="debug/gdscript/warnings/shadowed_global_identifier" type="int" setter="" getter="" default="1">
diff --git a/modules/gdscript/gdscript_warning.cpp b/modules/gdscript/gdscript_warning.cpp
index 2548d26e14..36bc051643 100644
--- a/modules/gdscript/gdscript_warning.cpp
+++ b/modules/gdscript/gdscript_warning.cpp
@@ -171,6 +171,10 @@ int GDScriptWarning::get_default_value(Code p_code) {
if (get_name_from_code(p_code).to_lower().begins_with("unsafe_")) {
return WarnLevel::IGNORE;
}
+ // Too spammy by default on common cases (connect, Tween, etc.).
+ if (p_code == RETURN_VALUE_DISCARDED) {
+ return WarnLevel::IGNORE;
+ }
return WarnLevel::WARN;
}