diff --git a/python/src/com/jetbrains/python/inspections/PyArgumentEqualDefaultInspection.java b/python/src/com/jetbrains/python/inspections/PyArgumentEqualDefaultInspection.java index cd06a6d19e81..97992f65e46e 100644 --- a/python/src/com/jetbrains/python/inspections/PyArgumentEqualDefaultInspection.java +++ b/python/src/com/jetbrains/python/inspections/PyArgumentEqualDefaultInspection.java @@ -80,6 +80,18 @@ public class PyArgumentEqualDefaultInspection extends PyInspection { checkArguments(node, node.getArguments()); } + @Override + public void visitPyDecoratorList(final PyDecoratorList node) { + PyDecorator[] decorators = node.getDecorators(); + + for (PyDecorator decorator: decorators) { + if (decorator.hasArgumentList()) { + PyExpression[] arguments = decorator.getArguments(); + checkArguments(decorator, arguments); + } + } + } + private static boolean hasSpecialCasedDefaults(PyCallable callable, PsiElement anchor) { final String name = callable.getName(); final PyBuiltinCache cache = PyBuiltinCache.getInstance(anchor); diff --git a/python/testData/inspections/PyArgumentEqualDefaultInspection/test.py b/python/testData/inspections/PyArgumentEqualDefaultInspection/test.py index c53ac2b7a07c..27fc83beadbb 100644 --- a/python/testData/inspections/PyArgumentEqualDefaultInspection/test.py +++ b/python/testData/inspections/PyArgumentEqualDefaultInspection/test.py @@ -78,4 +78,11 @@ def f1(value=-1): print(value) def f2(): - f1(value =-2) \ No newline at end of file + f1(value =-2) + +def decorator(arg='baz'): + return lambda x: x + +@decorator(arg='baz') +def f: + pass \ No newline at end of file