MIRROR: javascript for ๐Ÿœ's, a tiny runtime with big ambitions
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

migrate to O3

+8 -7
+1 -1
libant/meson.build
··· 1 1 project('libant', 'c', default_options: [ 2 2 'buildtype=release', 3 - 'optimization=2', 3 + 'optimization=3', 4 4 'c_std=gnu23', 5 5 'default_library=static', 6 6 'b_lto=false',
+1 -1
meson.build
··· 1 1 project('ant', 'c', default_options: [ 2 2 'buildtype=release', 3 - 'optimization=2', 3 + 'optimization=3', 4 4 'c_std=gnu23', 5 5 'default_library=static', 6 6 'b_lto=true',
+6 -5
src/ant.c
··· 10105 10105 } 10106 10106 10107 10107 static inline jsval_t loop_block_exec(struct js *js, loop_block_ctx_t *ctx) { 10108 - if (ctx->needs_scope) scope_clear_props(js, ctx->loop_scope); 10109 - 10110 10108 if (ctx->is_block) { 10111 10109 next(js); 10112 10110 return js_block(js, false); ··· 10115 10113 return js_block_or_stmt(js); 10116 10114 } 10117 10115 10118 - static inline void loop_block_cleanup(struct js *js, loop_block_ctx_t *ctx) { 10119 - if (ctx->needs_scope) delscope(js); 10120 - } 10116 + #define loop_block_clear(js, ctx) if ((ctx)->needs_scope) scope_clear_props(js, (ctx)->loop_scope) 10117 + #define loop_block_cleanup(js, ctx) if ((ctx)->needs_scope) delscope(js) 10121 10118 10122 10119 static jsval_t js_if(struct js *js) { 10123 10120 js->consumed = 1; ··· 10171 10168 } for_iter_ctx_t; 10172 10169 10173 10170 static jsval_t for_iter_bind_var(struct js *js, for_iter_ctx_t *ctx, jsval_t value) { 10171 + loop_block_clear(js, &ctx->loop_ctx); 10174 10172 if (ctx->has_destructure) { 10175 10173 return bind_destruct_pattern(js, &js->code[ctx->destructure_off], ctx->destructure_len, value, js->scope); 10176 10174 } ··· 10653 10651 js->flags |= F_LOOP; 10654 10652 js->pos = pos3; 10655 10653 js->consumed = 1; 10654 + loop_block_clear(js, &loop_ctx); 10656 10655 v = loop_block_exec(js, &loop_ctx); 10657 10656 if (is_err2(&v, &res)) { 10658 10657 if (iter_scope) delscope(js); ··· 10770 10769 js->consumed = 1; 10771 10770 js->flags = (flags & ~F_NOEXEC) | F_LOOP; 10772 10771 10772 + loop_block_clear(js, &loop_ctx); 10773 10773 v = loop_block_exec(js, &loop_ctx); 10774 10774 if (is_err(v)) { 10775 10775 res = v; break; ··· 10863 10863 js->consumed = 1; 10864 10864 js->flags = (flags & ~F_NOEXEC) | F_LOOP; 10865 10865 10866 + loop_block_clear(js, &loop_ctx); 10866 10867 v = loop_block_exec(js, &loop_ctx); 10867 10868 if (is_err(v)) { 10868 10869 res = v; break;