comparison src/vim9script.c @ 22250:dd42235ed626 v8.2.1674

patch 8.2.1674: Vim9: internal error when using variable that was not set Commit: https://github.com/vim/vim/commit/f0afd9e18227d3459c888584d0658a1837d2aaf8 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Sep 13 18:57:47 2020 +0200 patch 8.2.1674: Vim9: internal error when using variable that was not set Problem: Vim9: internal error when using variable that was not set. Solution: Give a meaningful error. (closes https://github.com/vim/vim/issues/6937)
author Bram Moolenaar <Bram@vim.org>
date Sun, 13 Sep 2020 19:00:08 +0200
parents 7899b4e2880c
children a9fb7efa31d6
comparison
equal deleted inserted replaced
22249:ef6c936e63fb 22250:dd42235ed626
546 return p; 546 return p;
547 } 547 }
548 548
549 // Create the variable with 0/NULL value. 549 // Create the variable with 0/NULL value.
550 CLEAR_FIELD(init_tv); 550 CLEAR_FIELD(init_tv);
551 init_tv.v_type = type->tt_type; 551 if (type->tt_type == VAR_ANY)
552 // A variable of type "any" is not possible, just use zero instead
553 init_tv.v_type = VAR_NUMBER;
554 else
555 init_tv.v_type = type->tt_type;
552 set_var_const(name, type, &init_tv, FALSE, 0); 556 set_var_const(name, type, &init_tv, FALSE, 0);
553 557
554 vim_free(name); 558 vim_free(name);
555 return p; 559 return p;
556 } 560 }