From: Kevin Burke Date: Sat, 12 Nov 2016 00:56:07 +0000 (-0800) Subject: cmd/compile/internal/gc: document variables and functions X-Git-Tag: go1.8beta1~24 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=655a4e1284dadf3507a13b408d21900008e44221;p=gostls13.git cmd/compile/internal/gc: document variables and functions Change-Id: I01b2278eb50585331b8ff7ff5e3c1f9c5ba52b63 Reviewed-on: https://go-review.googlesource.com/33156 Reviewed-by: Matthew Dempsky --- diff --git a/src/cmd/compile/internal/gc/go.go b/src/cmd/compile/internal/gc/go.go index d427755386..ff33e9c1c4 100644 --- a/src/cmd/compile/internal/gc/go.go +++ b/src/cmd/compile/internal/gc/go.go @@ -119,8 +119,12 @@ var linkobj string var bout *bio.Writer +// nerrors is the number of compiler errors reported +// since the last call to saveerrors. var nerrors int +// nsavederrors is the total number of compiler errors +// reported before the last call to saveerrors. var nsavederrors int var nsyntaxerrors int diff --git a/src/cmd/compile/internal/gc/main.go b/src/cmd/compile/internal/gc/main.go index edb37c2c74..75f58a731c 100644 --- a/src/cmd/compile/internal/gc/main.go +++ b/src/cmd/compile/internal/gc/main.go @@ -98,6 +98,9 @@ func supportsDynlink(arch *sys.Arch) bool { var timings Timings var benchfile string +// Main parses flags and Go source files specified in the command-line +// arguments, type-checks the parsed Go package, compiles functions to machine +// code, and finally writes the compiled package definition to disk. func Main() { timings.Start("fe", "init") @@ -483,6 +486,7 @@ func Main() { errorexit() } + // Write object data to disk. timings.Start("be", "dumpobj") dumpobj() if asmhdr != "" { diff --git a/src/cmd/compile/internal/gc/subr.go b/src/cmd/compile/internal/gc/subr.go index fb5419f533..a53ba1fffc 100644 --- a/src/cmd/compile/internal/gc/subr.go +++ b/src/cmd/compile/internal/gc/subr.go @@ -58,6 +58,8 @@ func (x byLineno) Len() int { return len(x) } func (x byLineno) Less(i, j int) bool { return x[i].lineno < x[j].lineno } func (x byLineno) Swap(i, j int) { x[i], x[j] = x[j], x[i] } +// flusherrors sorts errors seen so far by line number, prints them to stdout, +// and empties the errors array. func flusherrors() { Ctxt.Bso.Flush() if len(errors) == 0 {