]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/compile: modify line number printing for nodes
authorDavid Chase <drchase@google.com>
Thu, 3 Oct 2019 16:15:14 +0000 (12:15 -0400)
committerDavid Chase <drchase@google.com>
Fri, 4 Oct 2019 21:11:03 +0000 (21:11 +0000)
add preceding "+" for a line that is certainly a statement,
and "_" for a line this is certainly not a statement.

Change-Id: I831435dbc2302f25db1320b99d3513fe61fe1fa2
Reviewed-on: https://go-review.googlesource.com/c/go/+/198737
Run-TryBot: David Chase <drchase@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Jeremy Faller <jeremy@golang.org>
src/cmd/compile/internal/gc/fmt.go

index 3bb2df9917409deb0471e9ebb45b04f19ed6b110..87e0e40dca13aad6e5178f26ae14ca6948fe5ad6 100644 (file)
@@ -6,6 +6,7 @@ package gc
 
 import (
        "cmd/compile/internal/types"
+       "cmd/internal/src"
        "fmt"
        "io"
        "strconv"
@@ -425,7 +426,14 @@ func (n *Node) jconv(s fmt.State, flag FmtFlag) {
        }
 
        if n.Pos.IsKnown() {
-               fmt.Fprintf(s, " l(%d)", n.Pos.Line())
+               pfx := ""
+               switch n.Pos.IsStmt() {
+               case src.PosNotStmt:
+                       pfx = "_" // "-" would be confusing
+               case src.PosIsStmt:
+                       pfx = "+"
+               }
+               fmt.Fprintf(s, " l(%s%d)", pfx, n.Pos.Line())
        }
 
        if c == 0 && n.Xoffset != BADWIDTH {