1
0
mirror of https://github.com/golang/go synced 2024-11-25 04:57:56 -07:00

gc: do not treat .6 different from .a anymore

R=ken2
CC=golang-dev
https://golang.org/cl/195050
This commit is contained in:
Russ Cox 2010-01-26 16:12:50 -08:00
parent 090e71e7fd
commit 5f4c052e2d

View File

@ -279,7 +279,7 @@ void
importfile(Val *f, int line) importfile(Val *f, int line)
{ {
Biobuf *imp; Biobuf *imp;
char *file, *p; char *file;
int32 c; int32 c;
int len; int len;
Strlit *path; Strlit *path;
@ -301,9 +301,6 @@ importfile(Val *f, int line)
return; return;
} }
if(!findpkg(f->u.sval))
fatal("can't find import: %Z", f->u.sval);
path = f->u.sval; path = f->u.sval;
if(islocalname(path)) { if(islocalname(path)) {
snprint(cleanbuf, sizeof cleanbuf, "%s/%s", pathname, path->s); snprint(cleanbuf, sizeof cleanbuf, "%s/%s", pathname, path->s);
@ -311,6 +308,9 @@ importfile(Val *f, int line)
path = strlit(cleanbuf); path = strlit(cleanbuf);
} }
if(!findpkg(path))
fatal("can't find import: %Z", f->u.sval);
importpkg = mkpkg(path); importpkg = mkpkg(path);
imp = Bopen(namebuf, OREAD); imp = Bopen(namebuf, OREAD);
@ -322,17 +322,12 @@ importfile(Val *f, int line)
if(len > 2 && namebuf[len-2] == '.' && namebuf[len-1] == 'a') { if(len > 2 && namebuf[len-2] == '.' && namebuf[len-1] == 'a') {
if(!skiptopkgdef(imp)) if(!skiptopkgdef(imp))
fatal("import not package file: %s", namebuf); fatal("import not package file: %s", namebuf);
// assume .a files move (get installed)
// so don't record the full path.
p = file + len - f->u.sval->len - 2;
linehist(p, -1, 1); // acts as #pragma lib
} else {
// assume .6 files don't move around
// so do record the full path
linehist(file, -1, 0);
} }
// assume files move (get installed)
// so don't record the full path.
linehist(file + len - path->len - 2, -1, 1); // acts as #pragma lib
/* /*
* position the input right * position the input right
* after $$ and return * after $$ and return