]> Nishi Git Mirror - gwion.git/commitdiff
:art: Rename Tmpl_Class->base => call
authorfennecdjay <astor.jeremie@wanadoo.fr>
Sat, 18 May 2019 19:05:36 +0000 (21:05 +0200)
committerfennecdjay <astor.jeremie@wanadoo.fr>
Sat, 18 May 2019 19:05:36 +0000 (21:05 +0200)
ast
src/parse/scan0.c
src/parse/scanx.c
src/parse/template.c

diff --git a/ast b/ast
index a35887985a376b7a69196b581ec6663d633edad6..1f9df9b1908e4ee132876d20fa7f0ce4b0cbf2f8 160000 (submodule)
--- a/ast
+++ b/ast
@@ -1 +1 @@
-Subproject commit a35887985a376b7a69196b581ec6663d633edad6
+Subproject commit 1f9df9b1908e4ee132876d20fa7f0ce4b0cbf2f8
index 57d75ac7807f48265975c8eb43f0913facffecff..dfdf78032f9bcbe454202b065b21199bfc9f18c2 100644 (file)
@@ -227,11 +227,10 @@ ANN m_bool scan0_class_def(const Env env, const Class_Def cdef) {
   CHECK_BB(scan0_class_def_pre(env, cdef))
   CHECK_OB((cdef->base.type = scan0_class_def_init(env, cdef)))
   if(cdef->body) {
-int call = cdef->tmpl && !cdef->tmpl->base;
-if(call)cdef->tmpl->base = 1;
-//  assert(cdef->tmpl->base);
+int call = cdef->tmpl && !cdef->tmpl->call;
+if(call)cdef->tmpl->call = (Type_List)1;
     CHECK_BB(env_body(env, cdef, scan0_section))
-if(call)cdef->tmpl->base = NULL;
+if(call)cdef->tmpl->call = NULL;
 }
   (void)mk_class(env, cdef->base.type);
   if(GET_FLAG(cdef, global))
index ab0e1eef6a7f5e558cb747d31da4f8e7d5266231..5195702cb1dd15a0657100ece5abcb750bee4fd3 100644 (file)
@@ -18,21 +18,21 @@ ANN static inline m_bool _body(const Env e, Class_Body b, const _exp_func f) {
 ANN static inline m_int _push(const Env env, const Class_Def c) {
   const m_uint scope = env_push_type(env, c->base.type);
   if(c->tmpl) {
-    if(!c->tmpl->base)
+    if(!c->tmpl->call)
       ERR_B(c->pos,
         "you must provide template types for type '%s'", s_name(c->base.xid))
-    if(c->tmpl->base != 1)
-      CHECK_BB(template_push_types(env, c->tmpl->list.list, c->tmpl->base))
+    if(c->tmpl->call != (Type_List)1)
+      CHECK_BB(template_push_types(env, c->tmpl->list.list, c->tmpl->call))
   }
   return scope;
 }
 
 ANN static inline void _pop(const Env e, const Class_Def c, const m_uint s) {
   if(c->tmpl) {
-    if(c->tmpl->base != 1)
+    if(c->tmpl->call != (Type_List)1)
       nspc_pop_type(e->gwion->mp, e->curr);
     else
-      c->tmpl->base = NULL;
+      c->tmpl->call = NULL;
   }
   env_pop(e, s);
 }
index 1193968ce33a5971b93aa969a14d4019f376beb6..40dfa5689bf29f6a2ad82669581c10adde175361 100644 (file)
@@ -156,7 +156,7 @@ ANN Type scan_type(const Env env, const Type t, const Type_Decl* type) {
     if(a->base.type)
       return a->base.type;
     a->tmpl = new_tmpl_class(env->gwion->mp, get_total_type_list(env, t), 0);
-    a->tmpl->base = type->types;
+    a->tmpl->call = type->types;
 
     CHECK_BO(scan0_class_def(env, a))
     SET_FLAG(a->base.type, template | ae_flag_ref);