From 893bae8423de80c7baf45c169fc263a6fbb7783a Mon Sep 17 00:00:00 2001 From: kbkpbot Date: Fri, 22 Aug 2025 10:39:37 +0800 Subject: [PATCH] fix wasm, fix vast --- cmd/tools/vast/vast.v | 1 - vlib/v/gen/wasm/comptime.v | 22 +++++++++------------- 2 files changed, 9 insertions(+), 14 deletions(-) diff --git a/cmd/tools/vast/vast.v b/cmd/tools/vast/vast.v index ec1c08de53..5e2ba843b2 100644 --- a/cmd/tools/vast/vast.v +++ b/cmd/tools/vast/vast.v @@ -1538,7 +1538,6 @@ fn (t Tree) if_branch(node ast.IfBranch) &Node { obj.add_terse('cond', t.expr(node.cond)) obj.add('pos', t.pos(node.pos)) obj.add('body_pos', t.pos(node.body_pos)) - obj.add_terse('pkg_exist', t.bool_node(node.pkg_exist)) obj.add_terse('stmts', t.array_node_stmt(node.stmts)) obj.add('scope', t.number_node(int(node.scope))) obj.add('comments', t.array_node_comment(node.comments)) diff --git a/vlib/v/gen/wasm/comptime.v b/vlib/v/gen/wasm/comptime.v index 5266c1ed46..b94f944ae2 100644 --- a/vlib/v/gen/wasm/comptime.v +++ b/vlib/v/gen/wasm/comptime.v @@ -5,36 +5,32 @@ module wasm import v.ast -pub fn (mut g Gen) comptime_cond(cond ast.Expr, pkg_exists bool) bool { +pub fn (mut g Gen) comptime_cond(cond ast.Expr) bool { match cond { ast.BoolLiteral { return cond.val } ast.ParExpr { - g.comptime_cond(cond.expr, pkg_exists) + g.comptime_cond(cond.expr) } ast.PrefixExpr { if cond.op == .not { - return !g.comptime_cond(cond.right, pkg_exists) + return !g.comptime_cond(cond.right) } } ast.InfixExpr { match cond.op { .and { - return g.comptime_cond(cond.left, pkg_exists) - && g.comptime_cond(cond.right, pkg_exists) + return g.comptime_cond(cond.left) && g.comptime_cond(cond.right) } .logical_or { - return g.comptime_cond(cond.left, pkg_exists) - || g.comptime_cond(cond.right, pkg_exists) + return g.comptime_cond(cond.left) || g.comptime_cond(cond.right) } .eq { - return g.comptime_cond(cond.left, pkg_exists) == g.comptime_cond(cond.right, - pkg_exists) + return g.comptime_cond(cond.left) == g.comptime_cond(cond.right) } .ne { - return g.comptime_cond(cond.left, pkg_exists) != g.comptime_cond(cond.right, - pkg_exists) + return g.comptime_cond(cond.left) != g.comptime_cond(cond.right) } // wasm doesn't support generics // .key_is, .not_is @@ -45,7 +41,7 @@ pub fn (mut g Gen) comptime_cond(cond ast.Expr, pkg_exists bool) bool { return g.comptime_if_to_ifdef(cond.name, false) } ast.ComptimeCall { - return pkg_exists // more documentation needed here... + return false // pkg_exists, more documentation needed here... } ast.PostfixExpr { return g.comptime_if_to_ifdef((cond.expr as ast.Ident).name, true) @@ -66,7 +62,7 @@ pub fn (mut g Gen) comptime_if_expr(node ast.IfExpr, expected ast.Type, existing for i, branch in node.branches { has_expr := !(node.has_else && i + 1 >= node.branches.len) - if has_expr && !g.comptime_cond(branch.cond, branch.pkg_exist) { + if has_expr && !g.comptime_cond(branch.cond) { continue } // !node.is_expr || cond