mirror of
https://github.com/godotengine/godot.git
synced 2025-10-25 18:54:43 +00:00
Move Variant::evaluate() switch to computed goto
In an effort to make GDScript a little faster replace the double switch() with a computed goto on compilers that set __GNUC__. For compilers that don't support computed goto it will fall back to regular switch/case statements. In addition disable using boolean values in a mathematical context. Now boolean values can only be compared with other booleans. Booleans will also no longer be coerced to integers. This PR replaces #11308 and fixes #11291
This commit is contained in:
parent
7655587efb
commit
137f8a58a8
8 changed files with 1001 additions and 722 deletions
|
|
@ -1546,7 +1546,7 @@ public:
|
|||
value = Variant::evaluate(Variant::OP_ADD, value, p_argument);
|
||||
} break;
|
||||
case VisualScriptPropertySet::ASSIGN_OP_SUB: {
|
||||
value = Variant::evaluate(Variant::OP_SUBSTRACT, value, p_argument);
|
||||
value = Variant::evaluate(Variant::OP_SUBTRACT, value, p_argument);
|
||||
} break;
|
||||
case VisualScriptPropertySet::ASSIGN_OP_MUL: {
|
||||
value = Variant::evaluate(Variant::OP_MULTIPLY, value, p_argument);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue