]> Nishi Git Mirror - gwion.git/commitdiff
Revert ":shirt: Remove useless debug statements"
authorfennecdjay <astor.jeremie@wanadoo.fr>
Sun, 23 Dec 2018 18:11:45 +0000 (19:11 +0100)
committerfennecdjay <astor.jeremie@wanadoo.fr>
Sun, 23 Dec 2018 18:11:45 +0000 (19:11 +0100)
This reverts commit 271196d17adaf77a84229b2106e31bdd3cf86d4f.

src/emit/emit.c
src/parse/check.c
src/parse/scan2.c

index 264f2ff1df79186287652d17c019f918e424933a..99b04bfa422105ebc3cfcaeefea02dee5489f5d1 100644 (file)
@@ -440,7 +440,7 @@ ANN static m_bool prim_gack(const Emitter emit, const Exp_Primary* primary) {
   } while((e = e->next));
   if(emit_exp(emit, exp, 0) < 0) {
     free_vector(v);
-    return GW_ERROR;
+    ERR_B(exp->pos, "\t... in 'gack' expression.")
   }
   const Instr instr = emit_add_instr(emit, Gack);
   *(Vector*)instr->ptr = v;
@@ -1385,7 +1385,8 @@ ANN static m_bool emit_dot_static_func(const Emitter emit, const Func func) { GW
 
 ANN static m_bool emit_member_func(const Emitter emit, const Exp_Dot* member, const Func func) { GWDEBUG_EXE
   if(GET_FLAG(func, member)) {
-    CHECK_BB(emit_exp(emit, member->base, 0))
+    if(emit_exp(emit, member->base, 0) < 0)
+      ERR_B(member->self->pos, "... in member function") // LCOV_EXCL_LINE
     emit_add_instr(emit, RegDup);
     const Instr func_i = emit_add_instr(emit, DotFunc);
     func_i->m_val = func->vt_index;
@@ -1405,7 +1406,8 @@ ANN static m_bool emit_exp_dot_instance(const Emitter emit, const Exp_Dot* membe
   const uint emit_addr = member->self->emit_var;
   if(isa(member->self->type, t_fptr) > 0) { // function pointer
     if(GET_FLAG(value, member)) { // member
-      CHECK_BB(emit_exp(emit, member->base, 0))
+      if(emit_exp(emit, member->base, 0) < 0)
+        ERR_B(member->self->pos, "... in member function") // LCOV_EXCL_LINE
       if(!GET_FLAG(value->type->d.func, global))
         emit_add_instr(emit, RegDup);
       emit_member(emit, value, emit_addr);
index 4640f94badf380f1c70b2c4b285fbb17a92b5984..078c3a33bd3597b4f0b717cb3c0d9cf5ae77337e 100644 (file)
@@ -551,7 +551,8 @@ ANN static Type check_exp_binary(const Env env, const Exp_Binary* bin) { GWDEBUG
   CHECK_OO(opi.lhs)
   CHECK_OO(opi.rhs)
   const Type op_ret = op_check(env, &opi);
-  CHECK_OO(op_ret)
+  if(!op_ret)
+    ERR_O(bin->self->pos, "in binary expression")
   OPTIMIZE_CONST(bin)
   return op_ret;
 }
@@ -1050,8 +1051,8 @@ ANN m_bool check_func_def(const Env env, const Func_Def f) { GWDEBUG_EXE
   if(f->arg_list)
     ret = check_func_args(env, f->arg_list);
   const Value variadic = GET_FLAG(f, variadic) ? set_variadic(env) : NULL;
-  if(!GET_FLAG(f, builtin))
-    CHECK_BB(check_stmt_code(env, &f->d.code->d.stmt_code))
+  if(!GET_FLAG(f, builtin) && check_stmt_code(env, &f->d.code->d.stmt_code) < 0)
+    ret = err_msg(f->td->xid->pos, "...in function '%s'", s_name(f->name));
   if(variadic)
     REM_REF(variadic)
   if(GET_FLAG(f, builtin))
index 1c44aca1620d2ebed08ac4877d971ef6e18e003f..e721575013dba921d723857e8bfe5e7a54a95212 100644 (file)
@@ -387,9 +387,11 @@ ANN static m_bool scan2_func_def_op(const Env env, const Func_Def f) { GWDEBUG_E
 ANN static m_bool scan2_func_def_code(const Env env, const Func_Def f) { GWDEBUG_EXE
   const Func former = env->func;
   env->func = f->func;
-  CHECK_BB(scan2_stmt_code(env, &f->d.code->d.stmt_code))
+  const m_bool ret = scan2_stmt_code(env, &f->d.code->d.stmt_code);
+  if(ret < 0)
+    err_msg(f->td->xid->pos, "... in function '%s'", s_name(f->name));
   env->func = former;
-  return GW_OK;
+  return ret;
 }
 
 ANN static void scan2_func_def_flag(const Func_Def f) { GWDEBUG_EXE
@@ -472,8 +474,8 @@ ANN m_bool scan2_func_def(const Env env, const Func_Def f) { GWDEBUG_EXE
       env_pop(env, scope);
   } else
     f->func = base;
-  if(f->arg_list)
-    CHECK_BB(scan2_arg_def(env, f))
+  if(f->arg_list && scan2_arg_def(env, f) < 0)
+    ERR_B(f->td->xid->pos, "\t... in function '%s'\n", s_name(f->name))
   if(!GET_FLAG(f, builtin) && f->d.code->d.stmt_code.stmt_list)
     CHECK_BB(scan2_func_def_code(env, f))
   if(!base) {