diff options
Diffstat (limited to 'core')
| -rw-r--r-- | core/variant/variant.cpp | 4 | ||||
| -rw-r--r-- | core/variant/variant_utility.cpp | 1 |
2 files changed, 3 insertions, 2 deletions
diff --git a/core/variant/variant.cpp b/core/variant/variant.cpp index fa3bb78913..10a267e5a9 100644 --- a/core/variant/variant.cpp +++ b/core/variant/variant.cpp @@ -3659,9 +3659,9 @@ String Variant::get_call_error_text(Object *p_base, const StringName &p_method, err_text = "Cannot convert argument " + itos(errorarg + 1) + " from [missing argptr, type unknown] to " + Variant::get_type_name(Variant::Type(ce.expected)); } } else if (ce.error == Callable::CallError::CALL_ERROR_TOO_MANY_ARGUMENTS) { - err_text = "Method expected " + itos(ce.argument) + " arguments, but called with " + itos(p_argcount); + err_text = "Method expected " + itos(ce.expected) + " arguments, but called with " + itos(p_argcount); } else if (ce.error == Callable::CallError::CALL_ERROR_TOO_FEW_ARGUMENTS) { - err_text = "Method expected " + itos(ce.argument) + " arguments, but called with " + itos(p_argcount); + err_text = "Method expected " + itos(ce.expected) + " arguments, but called with " + itos(p_argcount); } else if (ce.error == Callable::CallError::CALL_ERROR_INVALID_METHOD) { err_text = "Method not found"; } else if (ce.error == Callable::CallError::CALL_ERROR_INSTANCE_IS_NULL) { diff --git a/core/variant/variant_utility.cpp b/core/variant/variant_utility.cpp index a6363039ba..fd079dbeea 100644 --- a/core/variant/variant_utility.cpp +++ b/core/variant/variant_utility.cpp @@ -374,6 +374,7 @@ struct VariantUtilityFunctions { r_error.error = Callable::CallError::CALL_OK; if (from.get_type() != to.get_type()) { r_error.error = Callable::CallError::CALL_ERROR_INVALID_ARGUMENT; + r_error.expected = from.get_type(); r_error.argument = 1; return Variant(); } |