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.

streamline error handling in ant.c

+12 -14
+12 -14
src/ant.c
··· 6023 6023 } 6024 6024 6025 6025 if (t != T_OBJ && t != T_ARR) { 6026 - char errbuf[256]; 6027 6026 jsoff_t saved_toff = js->toff; 6028 6027 jsoff_t saved_tlen = js->tlen; 6028 + 6029 6029 js->toff = coderefoff(r); 6030 6030 js->tlen = codereflen(r); 6031 - snprintf(errbuf, sizeof(errbuf), "Cannot read properties of %s (reading '%.*s')", 6032 - t == T_UNDEF ? "undefined" : t == T_NULL ? "null" : typestr(t), 6033 - (int)plen, ptr); 6034 - jsval_t err = js_mkerr(js, errbuf); 6031 + 6032 + jsval_t err = js_mkerr( 6033 + js, "Cannot read properties of %s (reading '%.*s')", 6034 + t == T_UNDEF ? "undefined" : t == T_NULL ? "null" : typestr(t), 6035 + (int)plen, ptr 6036 + ); 6037 + 6035 6038 js->toff = saved_toff; 6036 6039 js->tlen = saved_tlen; 6040 + 6037 6041 return err; 6038 6042 } 6039 6043 ··· 8750 8754 case TOK_THIS: return js->this_val; 8751 8755 8752 8756 default: 8753 - if (is_identifier_like(js->tok)) { 8754 - return mkcoderef((jsoff_t) js->toff, (jsoff_t) js->tlen); 8755 - } 8756 - 8757 - char err_buf[64]; 8757 + if (is_identifier_like(js->tok)) return mkcoderef((jsoff_t) js->toff, (jsoff_t) js->tlen); 8758 8758 size_t tok_len = js->tlen > 20 ? 20 : js->tlen; 8759 - if (tok_len == 0) snprintf(err_buf, sizeof(err_buf), "Unexpected token 'EOF'"); else { 8760 - snprintf(err_buf, sizeof(err_buf), "Unexpected token '%.*s'", (int)tok_len, &js->code[js->toff]); 8761 - } 8762 - return js_mkerr_typed(js, JS_ERR_SYNTAX, err_buf); 8759 + if (tok_len == 0) return js_mkerr_typed(js, JS_ERR_SYNTAX, "Unexpected token 'EOF'"); 8760 + return js_mkerr_typed(js, JS_ERR_SYNTAX, "Unexpected token '%.*s'", (int)tok_len, &js->code[js->toff]); 8763 8761 } 8764 8762 } 8765 8763