From 26b84339fd8766898bcf6a259cbc2e0c38689726 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Sun, 4 Sep 2016 21:42:36 +0200 Subject: [PATCH] patch 7.4.2329 Problem: Error for min() and max() contains %s. (Nikolay Pavlov) Solution: Pass the function name. (closes #1040) --- src/evalfunc.c | 2 +- src/testdir/test_expr.vim | 7 +++++++ src/version.c | 2 ++ 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/evalfunc.c b/src/evalfunc.c index 9d94694d8..1c1dcf712 100644 --- a/src/evalfunc.c +++ b/src/evalfunc.c @@ -7629,7 +7629,7 @@ max_min(typval_T *argvars, typval_T *rettv, int domax) } } else - EMSG(_(e_listdictarg)); + EMSG2(_(e_listdictarg), domax ? "max()" : "min()"); rettv->vval.v_number = error ? 0 : n; } diff --git a/src/testdir/test_expr.vim b/src/testdir/test_expr.vim index 3097daf44..108ee508e 100644 --- a/src/testdir/test_expr.vim +++ b/src/testdir/test_expr.vim @@ -335,6 +335,13 @@ function Test_printf_errors() call assert_fails('echo printf("%d", 1.2)', 'E805:') endfunc +function Test_max_min_errors() + call assert_fails('call max(v:true)', 'E712:') + call assert_fails('call max(v:true)', 'max()') + call assert_fails('call min(v:true)', 'E712:') + call assert_fails('call min(v:true)', 'min()') +endfunc + function Test_printf_64bit() if has('num64') call assert_equal("123456789012345", printf('%d', 123456789012345)) diff --git a/src/version.c b/src/version.c index 89e5f9509..42eeaa84e 100644 --- a/src/version.c +++ b/src/version.c @@ -763,6 +763,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 2329, /**/ 2328, /**/