]> Nishi Git Mirror - gwion.git/commitdiff
:art: Improve Grammar
authorfennecdjay <astor.jeremie@wanadoo.fr>
Wed, 3 Jul 2019 11:55:47 +0000 (13:55 +0200)
committerfennecdjay <astor.jeremie@wanadoo.fr>
Wed, 3 Jul 2019 11:55:47 +0000 (13:55 +0200)
ast
src/emit/emit.c
src/lib/import.c
src/parse/check.c
tests/error/typeof_error.gw
tests/import/extend_array.c
tests/import/extend_event.c
tests/import/extend_pair.c
tests/tree/decl_exp_array.gw
util

diff --git a/ast b/ast
index d85f0930b632be859189dae9ca42829458052016..f2f84ac0731632c4b03de9535b169ca483d03113 160000 (submodule)
--- a/ast
+++ b/ast
@@ -1 +1 @@
-Subproject commit d85f0930b632be859189dae9ca42829458052016
+Subproject commit f2f84ac0731632c4b03de9535b169ca483d03113
index 473590b757611b7f9a6fc206cc98596618682b4a..965a8375e6de5d9d5c1ea53759b16da3b2698108 100644 (file)
@@ -1420,8 +1420,8 @@ ANN static m_bool emit_stmt_union(const Emitter emit, const Stmt_Union stmt) {
   if(stmt->xid) {
     union_allocdata(emit->gwion->mp, stmt);
     Type_Decl *type_decl = new_type_decl(emit->gwion->mp,
-        new_id_list(emit->gwion->mp, stmt->xid, loc_cpy(emit->gwion->mp, stmt_self(stmt)->pos)),
-        stmt->flag);
+        new_id_list(emit->gwion->mp, stmt->xid, loc_cpy(emit->gwion->mp, stmt_self(stmt)->pos)));
+    type_decl->flag = stmt->flag;
     const Var_Decl var_decl = new_var_decl(emit->gwion->mp, stmt->xid, NULL, loc_cpy(emit->gwion->mp, stmt_self(stmt)->pos));
     const Var_Decl_List var_decl_list = new_var_decl_list(emit->gwion->mp, var_decl, NULL);
     const Exp exp = new_exp_decl(emit->gwion->mp, type_decl, var_decl_list);
index acbc8f2a437b4b70bc3ca8c24b96f183f441c4d0..03da57205fcaf1ee22bfd0a2b2dd3c8105298235 100644 (file)
@@ -320,7 +320,8 @@ ANN2(1) m_int gwi_item_end(const Gwi gwi, const ae_flag flag, const m_uint* addr
   dl_var_set(gwi->gwion->mp, v, flag | ae_flag_builtin);
   v->var.addr = (void*)addr;
   if(gwi->gwion->env->class_def && GET_FLAG(gwi->gwion->env->class_def, template)) {
-    Type_Decl *type_decl = new_type_decl(gwi->gwion->mp, v->t.xid, flag);
+    Type_Decl *type_decl = new_type_decl(gwi->gwion->mp, v->t.xid);
+    type_decl->flag = flag;
     const Var_Decl var_decl = new_var_decl(gwi->gwion->mp, v->var.xid, v->var.array, loc_cpy(gwi->gwion->mp, gwi->loc));
     const Var_Decl_List var_decl_list = new_var_decl_list(gwi->gwion->mp, var_decl, NULL);
     const Exp exp = new_exp_decl(gwi->gwion->mp, type_decl, var_decl_list);
@@ -363,7 +364,7 @@ ANN Type_Decl* str2decl(const Env env, const m_str s, m_uint *depth) {
   m_uint i = 0;
   DECL_OO(m_str, type_name, = get_type_name(env, s, i++))
   DECL_OO(ID_List, id, = str2list(env, type_name, depth))
-  Type_Decl* td = new_type_decl(env->gwion->mp, id, 0);
+  Type_Decl* td = new_type_decl(env->gwion->mp, id);
   Type_List tmp = NULL;
   if(!td) {
     free_id_list(env->gwion->mp, id);
@@ -415,7 +416,7 @@ ANN Type_Decl* import_td(const Gwi gwi, const m_str name) {
   const Env env = gwi->gwion->env;
   m_uint array_depth;
   DECL_OO(const ID_List, type_path, = str2list(env, name, &array_depth))
-  Type_Decl* type_decl = new_type_decl(env->gwion->mp, type_path, 0);
+  Type_Decl* type_decl = new_type_decl(env->gwion->mp, type_path);
   if(!type_decl) {
     free_id_list(env->gwion->mp, type_path);
     return NULL;
@@ -530,7 +531,7 @@ ANN static Stmt import_fptr(const Gwi gwi, DL_Func* dl_fun, ae_flag flag) {
   const Arg_List args = make_dll_arg_list(gwi, dl_fun);
   flag |= ae_flag_builtin;
   if(!(type_path = str2list(env, dl_fun->type, &array_depth)) ||
-      !(type_decl = new_type_decl(env->gwion->mp, type_path, 0)))
+      !(type_decl = new_type_decl(env->gwion->mp, type_path)))
     GWI_ERR_O(_("  ...  during fptr import '%s' (type)."), dl_fun->name);
   struct Func_Base_ *base = new_func_base(env->gwion->mp, type_decl, insert_symbol(env->gwion->st, dl_fun->name), args);
   return new_stmt_fptr(env->gwion->mp, base, flag);
@@ -578,7 +579,7 @@ ANN static Exp make_exp(const Gwi gwi, const m_str type, const m_str name) {
     array = new_array_sub(env->gwion->mp, NULL);
     array->depth = array_depth;
   }
-  type_decl = new_type_decl(env->gwion->mp, id_list, 0);
+  type_decl = new_type_decl(env->gwion->mp, id_list);
   const Var_Decl var_decl = new_var_decl(env->gwion->mp,
       insert_symbol(env->gwion->st, name), array, loc_cpy(env->gwion->mp, gwi->loc));
   const Var_Decl_List var_decl_list = new_var_decl_list(env->gwion->mp, var_decl, NULL);
index 06444a7e64ea4e0c5ed7baeac5b77eb82e44fab9..ac0749154b5fc655e43c625f1b152c019350e3ee 100644 (file)
@@ -330,7 +330,7 @@ ANN static Type_List mk_type_list(const Env env, const Type type) {
     id = prepend_id_list(env->gwion->mp, (Symbol)vector_at(&v, i - 1), id, new_loc(env->gwion->mp, __LINE__));
   vector_release(&v);
   assert(id);
-  Type_Decl* td = new_type_decl(env->gwion->mp, id, 0);
+  Type_Decl* td = new_type_decl(env->gwion->mp, id);
   return new_type_list(env->gwion->mp, td, NULL);
 }
 
index fcfd2054826a601b29d5f7c8cbed664c3ac803bf..7c727c8dce0525c24f0b0f4e17114ffd17c3771e 100644 (file)
@@ -1 +1 @@
-~~ 1 + 2 ~~ i;
\ No newline at end of file
+` 1 + 2 ` i;
\ No newline at end of file
index e72c24f21c01434f816c12bef8acc35db019a34e..210001990c50e6785ac1c246728097d8499568dc 100644 (file)
@@ -16,7 +16,7 @@ GWION_IMPORT(extend_array_test) {
   Type t_array_ext;
   CHECK_OB((t_array_ext = gwi_mk_type(gwi, "ArrayExt", SZ_INT, NULL)))
   CHECK_BB(gwi_class_ini(gwi, t_array_ext, NULL, NULL))
-  Type_Decl* td = new_type_decl(gwi->gwion->st->p, new_id_list(gwi->gwion->st->p, insert_symbol(gwi->gwion->st, "float"), GWI_LOC), 0);
+  Type_Decl* td = new_type_decl(gwi->gwion->st->p, new_id_list(gwi->gwion->st->p, insert_symbol(gwi->gwion->st, "float"), GWI_LOC));
   Exp e = new_exp_prim_int(gwi->gwion->st->p, 1, GWI_LOC);
   Array_Sub array = new_array_sub(gwi->gwion->st->p, e);
   add_type_decl_array(td, array);
index 2f2cb06fff8ea7a5a0dfcc0f3d667e023297f388..ba27347540bead4afe16e95baa754aae6ae903fc 100644 (file)
@@ -18,7 +18,7 @@ GWION_IMPORT(extend_event_test) {
   Type t_ev ;
   CHECK_OB((t_ev = gwi_mk_type(gwi, "Ev", SZ_INT , NULL)))
   CHECK_BB(gwi_class_ini(gwi, t_ev, ev_ctor, NULL))
-  Type_Decl* td = new_type_decl(gwi->gwion->st->p, new_id_list(gwi->gwion->st->p, insert_symbol(gwi->gwion->st, "Event"), GWI_LOC), 0);
+  Type_Decl* td = new_type_decl(gwi->gwion->st->p, new_id_list(gwi->gwion->st->p, insert_symbol(gwi->gwion->st, "Event"), GWI_LOC));
   CHECK_BB(gwi_class_ext(gwi, td))
   CHECK_BB(gwi_class_end(gwi))
   return GW_OK;
index 33dfae1e72dbc91ae20bd886da96a4c4baa6783e..02e27f914a188c418b9e2208242cd85ceb01c876 100644 (file)
@@ -19,9 +19,9 @@ GWION_IMPORT(extend_pair_test) {
   CHECK_BB(gwi_tmpl_ini(gwi, 2, types))
   CHECK_BB(gwi_class_ini(gwi, t_pair_ext, NULL, NULL))
   CHECK_BB(gwi_tmpl_end(gwi))
-  Type_Decl* td  = new_type_decl(gwi->gwion->st->p, new_id_list(gwi->gwion->st->p, insert_symbol(gwi->gwion->st, "Pair"), GWI_LOC), 0);
-  Type_Decl* td0 = new_type_decl(gwi->gwion->st->p ,new_id_list(gwi->gwion->st->p, insert_symbol(gwi->gwion->st, "A"), GWI_LOC), 0);
-  Type_Decl* td1 = new_type_decl(gwi->gwion->st->p ,new_id_list(gwi->gwion->st->p, insert_symbol(gwi->gwion->st, "B"),  GWI_LOC), 0);
+  Type_Decl* td  = new_type_decl(gwi->gwion->st->p, new_id_list(gwi->gwion->st->p, insert_symbol(gwi->gwion->st, "Pair"), GWI_LOC));
+  Type_Decl* td0 = new_type_decl(gwi->gwion->st->p ,new_id_list(gwi->gwion->st->p, insert_symbol(gwi->gwion->st, "A"), GWI_LOC));
+  Type_Decl* td1 = new_type_decl(gwi->gwion->st->p ,new_id_list(gwi->gwion->st->p, insert_symbol(gwi->gwion->st, "B"),  GWI_LOC));
   Type_List tl1  = new_type_list(gwi->gwion->st->p, td1, NULL);
   Type_List tl0  = new_type_list(gwi->gwion->st->p,td0, tl1);
   td->types = tl0;
index 2a9d80ae1913892f3bab111b85eb0356014aba06..b5049f7cf0d0619988a6a50bb647ec3ec84e7b34 100644 (file)
@@ -1,2 +1,2 @@
-<<<~~ new int[2] ~~ i>>>;
+<<<` new int[2] ` i>>>;
 <<<i>>>;
\ No newline at end of file
diff --git a/util b/util
index 5972a5f02aeece3745389531c3eed06aa1cee33b..106fc5bb87ddb51c9ce44714f23383b78c339ce7 160000 (submodule)
--- a/util
+++ b/util
@@ -1 +1 @@
-Subproject commit 5972a5f02aeece3745389531c3eed06aa1cee33b
+Subproject commit 106fc5bb87ddb51c9ce44714f23383b78c339ce7