]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/link: add -h flag, for debugging, same as cmd/compile
authorRuss Cox <rsc@golang.org>
Thu, 4 Jun 2015 18:30:30 +0000 (14:30 -0400)
committerRuss Cox <rsc@golang.org>
Fri, 5 Jun 2015 04:00:11 +0000 (04:00 +0000)
Change-Id: I3c9b05879fe0b6e94b63e9b65e4411ba2a917134
Reviewed-on: https://go-review.googlesource.com/10705
Reviewed-by: Ian Lance Taylor <iant@golang.org>
src/cmd/link/internal/ld/lib.go
src/cmd/link/internal/ld/pobj.go

index 95a2ce6279123f7327728f7dd9bed51b74d40ddf..18c02f8f01271ec98e9c7b59518fe635b4787bcb 100644 (file)
@@ -1949,8 +1949,10 @@ func Diag(format string, args ...interface{}) {
                sep = ": "
        }
        fmt.Printf("%s%s%s\n", tn, sep, fmt.Sprintf(format, args...))
-
        nerrors++
+       if Debug['h'] != 0 {
+               panic("error")
+       }
        if nerrors > 20 {
                Exitf("too many errors")
        }
index cbb4fa210978259e22c0b09e982e965d9f6ad212..ed8e30e9ffd27a688ece8a4656bc7a38d6d1bc58 100644 (file)
@@ -111,6 +111,7 @@ func Ldmain() {
        obj.Flagstr("extldflags", "pass `flags` to external linker", &extldflags)
        obj.Flagcount("f", "ignore version mismatch", &Debug['f'])
        obj.Flagcount("g", "disable go package data checks", &Debug['g'])
+       obj.Flagcount("h", "halt on error", &Debug['h'])
        obj.Flagstr("installsuffix", "set package directory `suffix`", &flag_installsuffix)
        obj.Flagstr("k", "set field tracking `symbol`", &tracksym)
        obj.Flagfn1("linkmode", "set link `mode` (internal, external, auto)", setlinkmode)