Revert "Revert "fix: handle $(eval foo := $(var)) case""
This reverts commit 5fbd0bdf4551af6b9233a0d52e1138cfba882a93.
rhs should trim left after 1st eval
diff --git a/expr_test.go b/expr_test.go
index febe438..7cc7747 100644
--- a/expr_test.go
+++ b/expr_test.go
@@ -226,40 +226,46 @@
rhs: literal(""),
},
},
- /*
- {
- in: `$(eval foo := $(bar))`,
- val: &funcEvalAssign{
- lhs: "foo",
- op: ":=",
- rhs: varref{
- literal("bar"),
+ {
+ in: `$(eval foo := $(bar))`,
+ val: &funcEvalAssign{
+ lhs: "foo",
+ op: ":=",
+ rhs: varref{
+ literal("bar"),
+ },
+ },
+ },
+ {
+ in: `$(eval foo := $$(bar))`,
+ val: &funcEvalAssign{
+ lhs: "foo",
+ op: ":=",
+ rhs: literal("$(bar)"),
+ },
+ },
+ {
+ in: `$(strip $1)`,
+ val: &funcStrip{
+ fclosure: fclosure{
+ args: []Value{
+ literal("(strip"),
+ paramref(1),
},
},
},
- {
- in: `$(strip $1)`,
- val: &funcStrip{
- fclosure: fclosure{
- args: []Value{
- literal("(strip"),
- paramref(1),
- },
+ },
+ {
+ in: `$(strip $(1))`,
+ val: &funcStrip{
+ fclosure: fclosure{
+ args: []Value{
+ literal("(strip"),
+ paramref(1),
},
},
},
- {
- in: `$(strip $(1))`,
- val: &funcStrip{
- fclosure: fclosure{
- args: []Value{
- literal("(strip"),
- paramref(1),
- },
- },
- },
- },
- */
+ },
} {
val, _, err := parseExpr([]byte(tc.in), nil)
if tc.isErr {