From 054926e232787853825e0f10a7130be88112ab39 Mon Sep 17 00:00:00 2001 From: Juerg Billeter Date: Sat, 19 Apr 2008 22:43:07 +0000 Subject: [PATCH] support partial interface reimplementation, fixes bug 504079 2008-04-20 Juerg Billeter * vala/valasemanticanalyzer.vala: support partial interface reimplementation, fixes bug 504079 svn path=/trunk/; revision=1279 --- ChangeLog | 5 +++++ vala/valasemanticanalyzer.vala | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/ChangeLog b/ChangeLog index 39f6a25..fe05c26 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2008-04-20 Jürg Billeter + + * vala/valasemanticanalyzer.vala: support partial interface + reimplementation, fixes bug 504079 + 2008-04-19 Jürg Billeter * vala/valasemanticanalyzer.vala: report error when trying to set diff --git a/vala/valasemanticanalyzer.vala b/vala/valasemanticanalyzer.vala index e0b00ba..85d893b 100644 --- a/vala/valasemanticanalyzer.vala +++ b/vala/valasemanticanalyzer.vala @@ -180,6 +180,11 @@ public class Vala.SemanticAnalyzer : CodeVisitor { if (base_type.data_type is Interface) { Interface iface = (Interface) base_type.data_type; + if (cl.base_class != null && cl.base_class.is_subtype_of (iface)) { + // reimplementation of interface, class is not required to reimplement all methods + break; + } + /* We do not need to do expensive equality checking here since this is done * already. We only need to guarantee the symbols are present. */ -- 2.7.4