diff --git a/loopy/compiled.py b/loopy/compiled.py index 125d07d727cef80d24c89f463a89f7b17c8e05d2..c23e0b4f37d628310e0c3a5759a0848e2936e850 100644 --- a/loopy/compiled.py +++ b/loopy/compiled.py @@ -146,10 +146,12 @@ class CompiledKernel: outputs = [] encountered_non_numpy = False + kwargs_copy = kwargs.copy() + for arg in self.kernel.args: is_written = arg.name in self.kernel.get_written_variables() - val = kwargs.get(arg.name) + val = kwargs_copy.pop(arg.name, None) if val is None: if not is_written: raise TypeError("must supply input argument '%s'" % arg.name) @@ -181,6 +183,9 @@ class CompiledKernel: else: args.append(val) + assert not kwargs_copy, ( + "extra arguments: "+", ".join(kwargs_copy.iterkeys())) + evt = self.cl_kernel(queue, self.global_size_func(**domain_parameters), self.local_size_func(**domain_parameters),