diff options
| author | Ian Lance Taylor <iant@golang.org> | 2015-11-20 13:53:18 -0800 |
|---|---|---|
| committer | Russ Cox <rsc@golang.org> | 2015-11-23 04:04:07 +0000 |
| commit | 041787280976d0bad15c646fc7c7bbfef76d7ee5 (patch) | |
| tree | 516c0295882ec6725c86287d802f3e604bd04889 /src | |
| parent | 5951823853916b8c6c0170286bc5f2b4793033c5 (diff) | |
| download | go-041787280976d0bad15c646fc7c7bbfef76d7ee5.tar.xz | |
cmd/cgo: ignore vars with no name or type if they have a AttrSpecification
Fixes #13344.
Change-Id: I33c6721fd33d144c85c87840ddf27ce15aa72328
Reviewed-on: https://go-review.googlesource.com/17151
Run-TryBot: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Minux Ma <minux@golang.org>
Diffstat (limited to 'src')
| -rw-r--r-- | src/cmd/cgo/gcc.go | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/cmd/cgo/gcc.go b/src/cmd/cgo/gcc.go index 5a9a3c2292..ed121dad81 100644 --- a/src/cmd/cgo/gcc.go +++ b/src/cmd/cgo/gcc.go @@ -491,6 +491,11 @@ func (p *Package) loadDWARF(f *File, names []*Name) { name, _ := e.Val(dwarf.AttrName).(string) typOff, _ := e.Val(dwarf.AttrType).(dwarf.Offset) if name == "" || typOff == 0 { + if e.Val(dwarf.AttrSpecification) != nil { + // Since we are reading all the DWARF, + // assume we will see the variable elsewhere. + break + } fatalf("malformed DWARF TagVariable entry") } if !strings.HasPrefix(name, "__cgo__") { |
