From 933e231d740960322e50462bb043871c36840f50 Mon Sep 17 00:00:00 2001 From: Dave Halter Date: Sun, 1 Jun 2014 11:34:20 +0200 Subject: [PATCH] small update on multiple value named argument type error --- jedi/evaluate/param.py | 6 ++++-- test/static_analysis/star_arguments.py | 4 ++++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/jedi/evaluate/param.py b/jedi/evaluate/param.py index a9a67422..e73f82e1 100644 --- a/jedi/evaluate/param.py +++ b/jedi/evaluate/param.py @@ -101,8 +101,10 @@ def get_params(evaluator, func, var_args): had_multiple_value_error = True m = ("TypeError: %s() got multiple values for keyword argument '%s'." % (func.name, k)) - analysis.add(evaluator, 'type-error-multiple-values', - var_args, message=m) + calling_va = _get_calling_var_args(evaluator, var_args) + if calling_va is not None: + analysis.add(evaluator, 'type-error-multiple-values', + calling_va, message=m) else: keys_used.add(k) result.append(_gen_param_name_copy(func, var_args, key_param, diff --git a/test/static_analysis/star_arguments.py b/test/static_analysis/star_arguments.py index af851e30..d797bc85 100644 --- a/test/static_analysis/star_arguments.py +++ b/test/static_analysis/star_arguments.py @@ -45,3 +45,7 @@ kwargs_test(c=3, b=2) kwargs_test(c=3) #! 11 type-error-too-few-arguments kwargs_test(b=2) +#! 22 type-error-keyword-argument +kwargs_test(b=2, c=3, d=4) +#! 22 type-error-multiple-values +kwargs_test(b=2, c=3, a=4)