Merge pull request #75014 from vonagam/assert-literal-false

GDScript: Allow usage of literal false in assert without a warning
This commit is contained in:
Rémi Verschelde 2023-04-28 18:45:00 +02:00
commit f374390fc1
No known key found for this signature in database
GPG Key ID: C3336907360768E1
3 changed files with 9 additions and 1 deletions

View File

@ -2071,7 +2071,7 @@ void GDScriptAnalyzer::resolve_assert(GDScriptParser::AssertNode *p_assert) {
if (p_assert->condition->is_constant) {
if (p_assert->condition->reduced_value.booleanize()) {
parser->push_warning(p_assert->condition, GDScriptWarning::ASSERT_ALWAYS_TRUE);
} else {
} else if (!(p_assert->condition->type == GDScriptParser::Node::LITERAL && static_cast<GDScriptParser::LiteralNode *>(p_assert->condition)->value.get_type() == Variant::BOOL)) {
parser->push_warning(p_assert->condition, GDScriptWarning::ASSERT_ALWAYS_FALSE);
}
}

View File

@ -0,0 +1,6 @@
func test():
var never: Variant = false
if never:
assert(false)
assert(false, 'message')
print('ok')

View File

@ -0,0 +1,2 @@
GDTEST_OK
ok