summaryrefslogtreecommitdiffstats
path: root/src/eval.c
diff options
context:
space:
mode:
authorYegappan Lakshmanan <yegappan@yahoo.com>2023-10-28 15:53:55 +0200
committerChristian Brabandt <cb@256bit.org>2023-10-28 15:53:55 +0200
commitfeaccd239573a6265d39d3a917862ee40742eab4 (patch)
tree3ccb80ce860395236ba3d4a44b4257af99e4b21a /src/eval.c
parent87ca5e86fa0ef305f3d39cc4261b622f21417f7f (diff)
patch 9.0.2078: several problems with type aliasesv9.0.2078
Problem: several problems with type aliases Solution: Check for more error conditions, add tests, fix issues Check for more error conditions and add additional tests fixes #13434 fixes #13437 fixes #13438 closes #13441 Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
Diffstat (limited to 'src/eval.c')
-rw-r--r--src/eval.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/eval.c b/src/eval.c
index ce981223fd..ea57cde663 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -1885,7 +1885,7 @@ set_var_lval(
{
if (di != NULL && di->di_tv.v_type == VAR_TYPEALIAS)
{
- semsg(_(e_using_typealias_as_variable),
+ semsg(_(e_cannot_modify_typealias),
di->di_tv.vval.v_typealias->ta_name);
clear_tv(&tv);
return;
@@ -4045,7 +4045,8 @@ eval8(
if (!equal_type(want_type, actual, 0))
{
- if (want_type == &t_bool && actual != &t_bool
+ if (want_type->tt_type == VAR_BOOL
+ && actual->tt_type != VAR_BOOL
&& (actual->tt_flags & TTFLAG_BOOL_OK))
{
int n = tv2bool(rettv);