From 6d19e33ba6eb634e22800effe91c110e58cd3852 Mon Sep 17 00:00:00 2001 From: Claudiu Popa Date: Sun, 24 Aug 2014 22:03:35 +0300 Subject: Other backports from default. --HG-- branch : pylint-1.3 --- checkers/classes.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'checkers/classes.py') diff --git a/checkers/classes.py b/checkers/classes.py index 61769f24d..232e130b8 100644 --- a/checkers/classes.py +++ b/checkers/classes.py @@ -344,9 +344,11 @@ a metaclass class method.'} try: overridden = klass.instance_attr(node.name)[0] # XXX overridden_frame = overridden.frame() - if overridden_frame.type == 'method': + if (isinstance(overridden_frame, astroid.Function) + and overridden_frame.type == 'method'): overridden_frame = overridden_frame.parent.frame() - if isinstance(overridden_frame, Class) and klass._is_subtype_of(overridden_frame.qname()): + if (isinstance(overridden_frame, Class) + and klass._is_subtype_of(overridden_frame.qname())): args = (overridden.root().name, overridden.fromlineno) self.add_message('method-hidden', args=args, node=node) except astroid.NotFoundError: -- cgit v1.2.1