q66 pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=8c774a1b902887e279fc618aba3a622520ff93f3

commit 8c774a1b902887e279fc618aba3a622520ff93f3
Author: Daniel Kolesa <d.kol...@osg.samsung.com>
Date:   Thu May 14 11:27:00 2015 +0100

    eolian: force specification of inner type for all complex types
---
 src/lib/efl/interfaces/efl_model_base.eo |  2 +-
 src/lib/eolian/eo_parser.c               | 19 ++++++++-----------
 2 files changed, 9 insertions(+), 12 deletions(-)

diff --git a/src/lib/efl/interfaces/efl_model_base.eo 
b/src/lib/efl/interfaces/efl_model_base.eo
index 9604fb3..d95e7d3 100644
--- a/src/lib/efl/interfaces/efl_model_base.eo
+++ b/src/lib/efl/interfaces/efl_model_base.eo
@@ -175,7 +175,7 @@ interface Efl.Model.Base ()
                 unsigned count; /*@ Range size. If count and start are 0 slice 
is ignored.*/
             }
             values {
-                accessor<list*>* children_accessor;
+                accessor<list<Eo.Base*>*>* children_accessor;
             }
          }
          @property children_count {
diff --git a/src/lib/eolian/eo_parser.c b/src/lib/eolian/eo_parser.c
index 1826e24..9b3b76f 100644
--- a/src/lib/eolian/eo_parser.c
+++ b/src/lib/eolian/eo_parser.c
@@ -774,23 +774,20 @@ parse_type_void(Eo_Lexer *ls)
              eo_lexer_get(ls);
              if (tpid >= KW_accessor)
                {
+                  int bline = ls->line_number, bcol = ls->column;
                   def->type = EOLIAN_TYPE_COMPLEX;
-                  if (ls->t.token == '<')
+                  check_next(ls, '<');
+                  def->subtypes = eina_list_append(def->subtypes,
+                                                   parse_type(ls));
+                  pop_type(ls);
+                  if (tpid == KW_hash)
                     {
-                       int bline = ls->line_number, bcol = ls->column;
-                       eo_lexer_get(ls);
+                       check_next(ls, ',');
                        def->subtypes = eina_list_append(def->subtypes,
                                                         parse_type(ls));
                        pop_type(ls);
-                       if (tpid == KW_hash)
-                         {
-                            check_next(ls, ',');
-                            def->subtypes = eina_list_append(def->subtypes,
-                                                             parse_type(ls));
-                            pop_type(ls);
-                         }
-                       check_match(ls, '>', '<', bline, bcol);
                     }
+                  check_match(ls, '>', '<', bline, bcol);
                }
           }
         else

-- 


Reply via email to