yyerror("import statement not a string");
return;
}
- // BOTCH need to get .8 from backend
+
+ // BOTCH need to get .6 from backend
snprint(namebuf, sizeof(namebuf), "%Z.6", f->sval);
file = strdup(namebuf);
linehist(file, 0);
imp = Bopen(file, OREAD);
if(imp == nil)
fatal("cant open import: %s", namebuf);
+ linehist(file, -1); // acts as #pragma lib
/*
* position the input right
linehist(char *file, long off)
{
Hist *h;
+ char *cp;
if(debug['i'])
- if(file != nil)
- print("%L: import %s\n", file);
- else
+ if(file != nil) {
+ if(off < 0)
+ print("%L: pragma %s\n", file);
+ else
+ print("%L: import %s\n", file);
+ } else
print("%L: <eof>\n");
+ if(off < 0 && file[0] != '/') {
+ cp = mal(strlen(file) + strlen(pathname) + 2);
+ sprint(cp, "%s/%s", pathname, file);
+ file = cp;
+ }
+
h = alloc(sizeof(Hist));
h->name = file;
h->line = lineno;