comparison src/regexp.c @ 9723:80ac9cf77c9b v7.4.2137

commit https://github.com/vim/vim/commit/437bafe4c8a83ed71ee006eda7f54b65a90f0d4c Author: Bram Moolenaar <Bram@vim.org> Date: Mon Aug 1 15:40:54 2016 +0200 patch 7.4.2137 Problem: Using function() with a name will find another function when it is redefined. Solution: Add funcref(). Refer to lambda using a partial. Fix several reference counting issues.
author Christian Brabandt <cb@256bit.org>
date Mon, 01 Aug 2016 15:45:07 +0200
parents 172131507c85
children 4aead6a9b7a9
comparison
equal deleted inserted replaced
9722:1557241fd3a7 9723:80ac9cf77c9b
7497 } 7497 }
7498 else if (expr->v_type == VAR_PARTIAL) 7498 else if (expr->v_type == VAR_PARTIAL)
7499 { 7499 {
7500 partial_T *partial = expr->vval.v_partial; 7500 partial_T *partial = expr->vval.v_partial;
7501 7501
7502 s = partial->pt_name; 7502 s = partial_name(partial);
7503 call_func(s, (int)STRLEN(s), &rettv, 7503 call_func(s, (int)STRLEN(s), &rettv,
7504 1, argv, fill_submatch_list, 7504 1, argv, fill_submatch_list,
7505 0L, 0L, &dummy, TRUE, partial, NULL); 7505 0L, 0L, &dummy, TRUE, partial, NULL);
7506 } 7506 }
7507 if (matchList.sl_list.lv_len > 0) 7507 if (matchList.sl_list.lv_len > 0)