aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/cmd/link/internal/ld/go.go10
-rw-r--r--src/cmd/link/internal/ld/ld.go14
2 files changed, 9 insertions, 15 deletions
diff --git a/src/cmd/link/internal/ld/go.go b/src/cmd/link/internal/ld/go.go
index ef73924914..a2db0bf655 100644
--- a/src/cmd/link/internal/ld/go.go
+++ b/src/cmd/link/internal/ld/go.go
@@ -50,11 +50,7 @@ func ldpkg(ctxt *Link, f *bio.Reader, lib *sym.Library, length int64, filename s
// process header lines
for data != "" {
var line string
- if i := strings.Index(data, "\n"); i >= 0 {
- line, data = data[:i], data[i+1:]
- } else {
- line, data = data, ""
- }
+ line, data, _ = strings.Cut(data, "\n")
if line == "main" {
lib.Main = true
}
@@ -141,8 +137,8 @@ func setCgoAttr(ctxt *Link, file string, pkg string, directives [][]string, host
}
q := ""
- if i := strings.Index(remote, "#"); i >= 0 {
- remote, q = remote[:i], remote[i+1:]
+ if before, after, found := strings.Cut(remote, "#"); found {
+ remote, q = before, after
}
s := l.LookupOrCreateSym(local, 0)
st := l.SymType(s)
diff --git a/src/cmd/link/internal/ld/ld.go b/src/cmd/link/internal/ld/ld.go
index d416571653..77fde0b41d 100644
--- a/src/cmd/link/internal/ld/ld.go
+++ b/src/cmd/link/internal/ld/ld.go
@@ -62,15 +62,13 @@ func (ctxt *Link) readImportCfg(file string) {
continue
}
- var verb, args string
- if i := strings.Index(line, " "); i < 0 {
- verb = line
- } else {
- verb, args = line[:i], strings.TrimSpace(line[i+1:])
+ verb, args, found := strings.Cut(line, " ")
+ if found {
+ args = strings.TrimSpace(args)
}
- var before, after string
- if i := strings.Index(args, "="); i >= 0 {
- before, after = args[:i], args[i+1:]
+ before, after, exist := strings.Cut(args, "=")
+ if !exist {
+ before = ""
}
switch verb {
default: