diff --git a/src/lib/eolian/database_validate.c b/src/lib/eolian/database_validate.c index ab974d4a1a..0f7d08e981 100644 --- a/src/lib/eolian/database_validate.c +++ b/src/lib/eolian/database_validate.c @@ -479,14 +479,7 @@ _validate_event(Validate_State *vals, Eolian_Event *event, Eina_Hash *nhash) return EINA_TRUE; } - if (!event->type) - { - snprintf(buf, sizeof(buf), "event '%s' has no type", event->base.name); - _obj_error(&event->base, buf); - vals->warned = EINA_TRUE; - } - - if (event->type && !_validate_type(vals, event->type)) + if (!_validate_type(vals, event->type)) return EINA_FALSE; if (!_validate_doc(event->doc)) diff --git a/src/lib/eolian/eo_parser.c b/src/lib/eolian/eo_parser.c index bec55860a9..90b0db60ae 100644 --- a/src/lib/eolian/eo_parser.c +++ b/src/lib/eolian/eo_parser.c @@ -1748,12 +1748,9 @@ parse_event(Eo_Lexer *ls) goto end; } end: - if (ls->t.token == ':') - { - eo_lexer_get(ls); - ev->type = eo_lexer_type_release(ls, parse_type_void(ls)); - ev->type->owned = has_owned; - } + check_next(ls, ':'); + ev->type = eo_lexer_type_release(ls, parse_type_void(ls)); + ev->type->owned = has_owned; check(ls, ';'); eo_lexer_get(ls); FILL_DOC(ls, ev, doc);