diff options
author | Russ Cox <rsc@golang.org> | 2010-08-11 22:17:20 -0700 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2010-08-11 22:17:20 -0700 |
commit | 5dae7259a73c07c52b1494fa1b973c3c6cf00926 (patch) | |
tree | d0aa76cf69ce882eac0c32eb1528a285825de533 /test/fixedbugs/bug302.go | |
parent | d30a64e49ac36e4dae5160ef1eebbc1b49b27b27 (diff) | |
download | go-5dae7259a73c07c52b1494fa1b973c3c6cf00926.tar.gz |
gopack: handle long lines in export data
Also, if the header is bad, exit with a non-zero status.
Other calls to Brdline in the tree, by category:
Reading symbol name from object file:
./cmd/5l/obj.c:486: name = Brdline(f, '\0');
./cmd/6l/obj.c:535: name = Brdline(f, '\0');
./cmd/8l/obj.c:564: name = Brdline(f, '\0');
./libmach/sym.c:292: cp = Brdline(bp, '\0');
Reading archive header line (fixed, short):
./cmd/gc/lex.c:287: if((a = Brdline(b, '\n')) == nil)
./cmd/gc/lex.c:303: if((p = Brdline(b, '\n')) == nil)
Reading object file header line (fixed, short):
./cmd/ld/lib.c:421: line = Brdline(f, '\n');
Reading undefined symbol list (unused code):
./cmd/ld/lib.c:773: while((l = Brdline(b, '\n')) != nil){
Implementing Brdstr:
./libbio/brdstr.c:36: p = Brdline(bp, delim);
The symbol names ones will cause a problem loudly if they
fail: they'll error out with symbol name too long. This means
that you can't define an enormous struct without giving the
type a name and then stick it in an interface, because the
type's symbol name will be too long for the object file.
Since this will be a loud failure instead of a silent one,
I'm willing to wait until it comes up in practice.
R=r
CC=golang-dev
http://codereview.appspot.com/1982041
Diffstat (limited to 'test/fixedbugs/bug302.go')
-rw-r--r-- | test/fixedbugs/bug302.go | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/test/fixedbugs/bug302.go b/test/fixedbugs/bug302.go index 2a1d922d3..e9edb94ac 100644 --- a/test/fixedbugs/bug302.go +++ b/test/fixedbugs/bug302.go @@ -1,4 +1,4 @@ -// $G $D/bug302.dir/p.go && $G $D/bug302.dir/main.go +// $G $D/bug302.dir/p.go && gopack grc pp.a p.$A && $G $D/bug302.dir/main.go // Copyright 2010 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style |