aboutsummaryrefslogtreecommitdiff
path: root/src/encoding/json/decode.go
diff options
context:
space:
mode:
authorMatthew Dempsky <mdempsky@google.com>2018-04-18 23:22:26 -0700
committerMatthew Dempsky <mdempsky@google.com>2018-04-20 01:09:31 +0000
commit25824c96dc34c0634dffb3860c3e01c666628606 (patch)
tree0dbf480584af9ef85704af961a7170a69c492b05 /src/encoding/json/decode.go
parent60e3ebb9cba900f7b2f559b472726cee47e823c0 (diff)
downloadgo-25824c96dc34c0634dffb3860c3e01c666628606.tar.xz
cmd/compile: make generated function code more consistent
There are a bunch of places where we generate functions: equality and hash functions; method expression and promoted method wrappers; and print/delete wrappers for defer/go statements. This CL brings them in sync by: 1) Always using dclfunc and funcbody. Most were already using this, but makepartialcall needed some changes. 2) Removing duplicate types.Markdcl/types.Popdcl calls. These are already handled by dclfunc and funcbody. 3) Using structargs (already used by genwrapper) to construct new param/result lists from existing types. 4) Always accessing the parameter ONAME nodes through Field.Nname instead of poking into the ODCLFIELD. Also, since creating a slice of the entire parameter list is common, extract this out into a paramNnames helper function. 5) Add a Type.IsVariadic method to simplify identifying variadic function types. Passes toolstash-check -gcflags=-dwarf=false. DWARF output changes because using structargs in makepartialcall changes the generated parameter names. Change-Id: I6661d3699afdbe7852ad60db5a4ec6eeb2b696e4 Reviewed-on: https://go-review.googlesource.com/108216 Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Robert Griesemer <gri@golang.org>
Diffstat (limited to 'src/encoding/json/decode.go')
0 files changed, 0 insertions, 0 deletions