eolian: disallow @pure_virtual keyword in interfaces
This is implicit, so it's pointless to allow specifying it.
This commit is contained in:
parent
eb830d8e46
commit
90f6043275
|
@ -1,7 +1,7 @@
|
|||
interface Efl.Observer {
|
||||
[[Efl observer interface]]
|
||||
methods {
|
||||
update @pure_virtual {
|
||||
update {
|
||||
[[Update observer according to the changes of observable object.
|
||||
|
||||
@since 1.19]]
|
||||
|
|
|
@ -1047,6 +1047,8 @@ parse_accessor(Eo_Lexer *ls, Eolian_Function *prop)
|
|||
for (;;) switch (ls->t.kw)
|
||||
{
|
||||
case KW_at_pure_virtual:
|
||||
if (ls->klass->type == EOLIAN_CLASS_INTERFACE)
|
||||
eo_lexer_syntax_error(ls, "@pure_virtual is implicit in interfaces");
|
||||
CASE_LOCK(ls, virtp, "pure_virtual qualifier");
|
||||
if (is_get) prop->impl->get_pure_virtual = EINA_TRUE;
|
||||
else prop->impl->set_pure_virtual = EINA_TRUE;
|
||||
|
@ -1220,6 +1222,8 @@ parse_property(Eo_Lexer *ls)
|
|||
eo_lexer_get(ls);
|
||||
break;
|
||||
case KW_at_pure_virtual:
|
||||
if (ls->klass->type == EOLIAN_CLASS_INTERFACE)
|
||||
eo_lexer_syntax_error(ls, "@pure_virtual is implicit in interfaces");
|
||||
CASE_LOCK(ls, virtp, "pure_virtual qualifier");
|
||||
eo_lexer_get(ls);
|
||||
break;
|
||||
|
@ -1389,6 +1393,8 @@ parse_method(Eo_Lexer *ls)
|
|||
eo_lexer_get(ls);
|
||||
break;
|
||||
case KW_at_pure_virtual:
|
||||
if (ls->klass->type == EOLIAN_CLASS_INTERFACE)
|
||||
eo_lexer_syntax_error(ls, "@pure_virtual is implicit in interfaces");
|
||||
CASE_LOCK(ls, virtp, "pure_virtual qualifier");
|
||||
eo_lexer_get(ls);
|
||||
break;
|
||||
|
|
Loading…
Reference in New Issue