aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/cgo
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd/cgo')
-rw-r--r--src/cmd/cgo/ast.go2
-rw-r--r--src/cmd/cgo/gcc.go6
-rw-r--r--src/cmd/cgo/main.go2
3 files changed, 6 insertions, 4 deletions
diff --git a/src/cmd/cgo/ast.go b/src/cmd/cgo/ast.go
index 3cbbeafdca..861479db7a 100644
--- a/src/cmd/cgo/ast.go
+++ b/src/cmd/cgo/ast.go
@@ -181,7 +181,7 @@ func (f *File) ParseGo(abspath string, src []byte) {
// Like ast.CommentGroup's Text method but preserves
// leading blank lines, so that line numbers line up.
func commentText(g *ast.CommentGroup) string {
- var pieces []string
+ pieces := make([]string, 0, len(g.List))
for _, com := range g.List {
c := com.Text
// Remove comment markers.
diff --git a/src/cmd/cgo/gcc.go b/src/cmd/cgo/gcc.go
index 6e7556de96..e5366435cc 100644
--- a/src/cmd/cgo/gcc.go
+++ b/src/cmd/cgo/gcc.go
@@ -281,9 +281,11 @@ func (p *Package) loadDefines(f *File) {
func (p *Package) guessKinds(f *File) []*Name {
// Determine kinds for names we already know about,
// like #defines or 'struct foo', before bothering with gcc.
- var names, needType []*Name
+ keys := nameKeys(f.Name)
+ names := make([]*Name, 0, len(keys))
+ needType := make([]*Name, 0, len(keys))
optional := map[*Name]bool{}
- for _, key := range nameKeys(f.Name) {
+ for _, key := range keys {
n := f.Name[key]
// If we've already found this name as a #define
// and we can translate it as a constant value, do so.
diff --git a/src/cmd/cgo/main.go b/src/cmd/cgo/main.go
index fce2671c2c..111ccddffc 100644
--- a/src/cmd/cgo/main.go
+++ b/src/cmd/cgo/main.go
@@ -80,7 +80,7 @@ func (f *File) offset(p token.Pos) int {
}
func nameKeys(m map[string]*Name) []string {
- var ks []string
+ ks := make([]string, 0, len(m))
for k := range m {
ks = append(ks, k)
}