Merge pull request #90794 from vnen/gdscript-no-unused-constant-warning-with-underscore

GDScript: Suppress unused constant warning with underscore
This commit is contained in:
Rémi Verschelde 2024-04-18 15:17:13 +02:00
commit 978d206f34
No known key found for this signature in database
GPG key ID: C3336907360768E1
5 changed files with 10 additions and 53 deletions

View file

@ -1997,7 +1997,7 @@ void GDScriptAnalyzer::resolve_constant(GDScriptParser::ConstantNode *p_constant
#ifdef DEBUG_ENABLED
if (p_is_local) {
if (p_constant->usages == 0) {
if (p_constant->usages == 0 && !String(p_constant->identifier->name).begins_with("_")) {
parser->push_warning(p_constant, GDScriptWarning::UNUSED_LOCAL_CONSTANT, p_constant->identifier->name);
}
}

View file

@ -1,33 +1 @@
GDTEST_OK
>> WARNING
>> Line: 2
>> UNUSED_LOCAL_CONSTANT
>> The local constant "_TEST" is declared but never used in the block. If this is intended, prefix it with an underscore: "__TEST".
>> WARNING
>> Line: 3
>> UNUSED_LOCAL_CONSTANT
>> The local constant "_STRING" is declared but never used in the block. If this is intended, prefix it with an underscore: "__STRING".
>> WARNING
>> Line: 4
>> UNUSED_LOCAL_CONSTANT
>> The local constant "_VECTOR" is declared but never used in the block. If this is intended, prefix it with an underscore: "__VECTOR".
>> WARNING
>> Line: 5
>> UNUSED_LOCAL_CONSTANT
>> The local constant "_ARRAY" is declared but never used in the block. If this is intended, prefix it with an underscore: "__ARRAY".
>> WARNING
>> Line: 6
>> UNUSED_LOCAL_CONSTANT
>> The local constant "_DICTIONARY" is declared but never used in the block. If this is intended, prefix it with an underscore: "__DICTIONARY".
>> WARNING
>> Line: 9
>> UNUSED_LOCAL_CONSTANT
>> The local constant "_HELLO" is declared but never used in the block. If this is intended, prefix it with an underscore: "__HELLO".
>> WARNING
>> Line: 10
>> UNUSED_LOCAL_CONSTANT
>> The local constant "_INFINITY" is declared but never used in the block. If this is intended, prefix it with an underscore: "__INFINITY".
>> WARNING
>> Line: 11
>> UNUSED_LOCAL_CONSTANT
>> The local constant "_NOT_A_NUMBER" is declared but never used in the block. If this is intended, prefix it with an underscore: "__NOT_A_NUMBER".

View file

@ -1,21 +1 @@
GDTEST_OK
>> WARNING
>> Line: 11
>> UNUSED_LOCAL_CONSTANT
>> The local constant "_INTEGER" is declared but never used in the block. If this is intended, prefix it with an underscore: "__INTEGER".
>> WARNING
>> Line: 12
>> UNUSED_LOCAL_CONSTANT
>> The local constant "_INTEGER_REDUNDANT_TYPED" is declared but never used in the block. If this is intended, prefix it with an underscore: "__INTEGER_REDUNDANT_TYPED".
>> WARNING
>> Line: 13
>> UNUSED_LOCAL_CONSTANT
>> The local constant "_INTEGER_REDUNDANT_TYPED2" is declared but never used in the block. If this is intended, prefix it with an underscore: "__INTEGER_REDUNDANT_TYPED2".
>> WARNING
>> Line: 14
>> UNUSED_LOCAL_CONSTANT
>> The local constant "_INTEGER_REDUNDANT_INFERRED" is declared but never used in the block. If this is intended, prefix it with an underscore: "__INTEGER_REDUNDANT_INFERRED".
>> WARNING
>> Line: 15
>> UNUSED_LOCAL_CONSTANT
>> The local constant "_INTEGER_REDUNDANT_INFERRED2" is declared but never used in the block. If this is intended, prefix it with an underscore: "__INTEGER_REDUNDANT_INFERRED2".

View file

@ -0,0 +1,4 @@
func test():
const UNUSED = "not used"
const _UNUSED = "not used, but no warning since the constant name starts with an underscore"

View file

@ -0,0 +1,5 @@
GDTEST_OK
>> WARNING
>> Line: 2
>> UNUSED_LOCAL_CONSTANT
>> The local constant "UNUSED" is declared but never used in the block. If this is intended, prefix it with an underscore: "_UNUSED".