]> Nishi Git Mirror - gwion.git/commitdiff
:shirt: Some clean
authorfennecdjay <astor.jeremie@wanadoo.fr>
Wed, 9 Oct 2019 22:51:27 +0000 (00:51 +0200)
committerfennecdjay <astor.jeremie@wanadoo.fr>
Wed, 9 Oct 2019 22:51:27 +0000 (00:51 +0200)
include/match.h
src/emit/emit.c
tests/error/variadic_end_no_start.gw
tests/error/variadic_start_twice.gw
tests/error/variadic_test.gw

index dbdb6a2f99610e7c6f38528c6f577f64c75d8943..9ab0bee2415f00b7e046d8a7153304b5c8b4201d 100644 (file)
@@ -8,10 +8,12 @@ struct Match_ {
 ANN static inline void match_map(struct Match_ * const match, Exp e) {
   const Map map = &match->map;
   map_init(map);
+  Exp next;
   do {
+    next = e->next;
     e->next = NULL;
     map_set(map, (vtype)e, 0);
-  } while((e = e->next));
+  } while((e = next));
 }
 
 ANN static inline void match_unmap(struct Match_ * const match) {
index cfaf1524faaed2c74228f3ae3c9630746cdbeca4..334d670dd2b501a6cc7fd95ef08b61f299314435 100644 (file)
@@ -1341,7 +1341,7 @@ ANN static m_bool emit_stmt_jump(const Emitter emit, const Stmt_Jump stmt) {
   if(!stmt->is_label)
     stmt->data.instr = emit_add_instr(emit, Goto);
   else {
-    assert(!stmt->data.v.ptr);
+    assert(stmt->data.v.ptr);
     const m_uint size = vector_size(&stmt->data.v);
     if(!size)
       ERR_B(stmt_self(stmt)->pos, _("label '%s' defined but not used."), s_name(stmt->name))
index 89aed11f3c74e89c066174b9080b8c6a43d26ae0..7dc0c9d289ebaab7278956148c180a633a847323 100644 (file)
@@ -1,4 +1,4 @@
-#! [contains] vararg.start not used before vararg.end. this is an error
+#! [contains] vararg.start not used before vararg.end
 fun void test(int i, ...) {
        vararg.end;
 #!     vararg.start;
index 59e93491651abae66517f95f5478fb7810470dde..dd192f7ae3c2b00685fcc98d63630af16946b9c5 100644 (file)
@@ -1,2 +1,2 @@
-#! [contains] vararg.start already used. this is an error
+#! [contains] vararg.start already used
 fun void test(...) { vararg.start; vararg.start;}
index 89aed11f3c74e89c066174b9080b8c6a43d26ae0..7dc0c9d289ebaab7278956148c180a633a847323 100644 (file)
@@ -1,4 +1,4 @@
-#! [contains] vararg.start not used before vararg.end. this is an error
+#! [contains] vararg.start not used before vararg.end
 fun void test(int i, ...) {
        vararg.end;
 #!     vararg.start;