From 5be3b666b29c4b5d2e4d5a533cdbea5a1ae890ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Zurcher?= Date: Tue, 18 Feb 2014 16:02:56 +0100 Subject: [PATCH] eo: block regular non-instantiable classes in class extension list --- src/lib/eo/eo.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/lib/eo/eo.c b/src/lib/eo/eo.c index bfee7ebb91..2de799d083 100644 --- a/src/lib/eo/eo.c +++ b/src/lib/eo/eo.c @@ -827,8 +827,12 @@ eo_class_new(const Eo_Class_Description *desc, const Eo_Class *parent_id, ...) extn = _eo_class_pointer_get((Eo_Class *)extn_id); switch (extn->desc->type) { - case EO_CLASS_TYPE_REGULAR: case EO_CLASS_TYPE_REGULAR_NO_INSTANT: + ERR("Regular non-instantiable classes ('%s') aren't allowed in class ('%s') extension list", + extn->desc->name, desc->name); + return NULL; + break; + case EO_CLASS_TYPE_REGULAR: case EO_CLASS_TYPE_INTERFACE: case EO_CLASS_TYPE_MIXIN: extn_list = eina_list_append(extn_list, extn);