aboutsummaryrefslogtreecommitdiffstats
path: root/func.go
diff options
context:
space:
mode:
authorFumitoshi Ukai <fumitoshi.ukai@gmail.com>2015-06-12 23:51:38 +0900
committerFumitoshi Ukai <fumitoshi.ukai@gmail.com>2015-06-18 13:29:49 +0900
commit7c9aa9f17d5f8f27aed62b5520b8fbc6be0103ac (patch)
tree3529e0da88dee981c07dfca3d9e64141c2833a58 /func.go
parentb234e27aaedad3965c64eb8008a8216934f83437 (diff)
downloadandroid_build_kati-7c9aa9f17d5f8f27aed62b5520b8fbc6be0103ac.tar.gz
android_build_kati-7c9aa9f17d5f8f27aed62b5520b8fbc6be0103ac.tar.bz2
android_build_kati-7c9aa9f17d5f8f27aed62b5520b8fbc6be0103ac.zip
parseExpr less allocation
Diffstat (limited to 'func.go')
-rw-r--r--func.go8
1 files changed, 4 insertions, 4 deletions
diff --git a/func.go b/func.go
index 1ce5f38..a7ec835 100644
--- a/func.go
+++ b/func.go
@@ -979,13 +979,13 @@ func (f *funcEvalAssign) Eval(w io.Writer, ev *Evaluator) {
case ":=":
// TODO(ukai): compute parsed expr in Compact when f.rhs is
// literal? e.g. literal("$(foo)") => varref{literal("foo")}.
- expr, _, err := parseExpr(rhs, nil)
+ expr, _, err := parseExpr(rhs, nil, false)
if err != nil {
panic(fmt.Sprintf("eval assign error: %q: %v", f.String(), err))
}
- abuf.Reset()
- expr.Eval(&abuf, ev)
- rvalue = SimpleVar{value: tmpval(abuf.Bytes()), origin: "file"}
+ var vbuf bytes.Buffer
+ expr.Eval(&vbuf, ev)
+ rvalue = SimpleVar{value: tmpval(vbuf.Bytes()), origin: "file"}
case "=":
rvalue = RecursiveVar{expr: tmpval(rhs), origin: "file"}
case "+=":