]> Nishi Git Mirror - gwion.git/commitdiff
:art: Improve stmt location
authorfennecdjay <fennecdjay@gwion.tk>
Thu, 12 Nov 2020 18:09:11 +0000 (19:09 +0100)
committerfennecdjay <fennecdjay@gwion.tk>
Thu, 12 Nov 2020 18:09:11 +0000 (19:09 +0100)
ast
src/import/import_item.c
src/lib/lib_func.c

diff --git a/ast b/ast
index d494e153638e663c6d8bddbf7751be53c57464e7..43c1eb04340b41b4ddb44deb0322d4e4f62a2969 160000 (submodule)
--- a/ast
+++ b/ast
@@ -1 +1 @@
-Subproject commit d494e153638e663c6d8bddbf7751be53c57464e7
+Subproject commit 43c1eb04340b41b4ddb44deb0322d4e4f62a2969
index 25bcb7cfb55c96036d2acc846f1f8ec1afc5a043..de57a59f668837703fc07d9702d21b648e436981 100644 (file)
@@ -19,7 +19,7 @@ ANN m_int gwi_item_ini(const Gwi gwi, const restrict m_str type, const restrict
 
 ANN static m_int gwi_item_tmpl(const Gwi gwi) {
   const MemPool mp = gwi->gwion->mp;
-  const Stmt stmt = new_stmt_exp(mp, ae_stmt_exp, gwi->ck->exp);
+  const Stmt stmt = new_stmt_exp(mp, ae_stmt_exp, gwi->ck->exp, loc(gwi));
   const Stmt_List slist = new_stmt_list(mp, stmt, NULL);
   Section* section = new_section_stmt_list(mp, slist);
   const Ast body = new_ast(mp, section, NULL);
index 3528e8547947c5ddf94a9db4d12b06d96f94e4b6..4f33ccefae588c2d05830249c89257163805cd57 100644 (file)
@@ -282,9 +282,11 @@ static OP_EMIT(opem_fptr_impl) {
 ANN Type check_exp_unary_spork(const Env env, const Stmt code);
 
 ANN static void fork_exp(const Env env, const Exp_Unary* unary) {
-  const Stmt stmt = new_stmt_exp(env->gwion->mp, ae_stmt_exp, unary->exp);
+  const Stmt stmt = new_stmt_exp(env->gwion->mp, ae_stmt_exp, unary->exp,
+      loc_cpy(env->gwion->mp, unary->exp->pos));
   const Stmt_List list = new_stmt_list(env->gwion->mp, stmt, NULL);
-  const Stmt code = new_stmt_code(env->gwion->mp, list);
+  const Stmt code = new_stmt_code(env->gwion->mp, list,
+      loc_cpy(env->gwion->mp, unary->exp->pos));
   ((Exp_Unary*)unary)->exp = NULL;
   ((Exp_Unary*)unary)->code = code;
 }