{ lineno++; LISTLINE(1); RELODONE;}
| program '#' NUMBER STRING '\n'
{ lineno = $3;
- if (modulename) strncpy(modulename, &stringbuf[1], 63);
+ if (modulename) strncpy(modulename, &stringbuf[1], STRINGMAX-1);
LISTLINE(1); RELODONE;
}
| program error '\n'
newmodule(s)
char *s;
{
- static char nmbuf[64];
+ static char nmbuf[STRINGMAX];
switchsect(S_UND);
if (s && s != modulename) {
- strncpy(nmbuf, s, 63);
+ strncpy(nmbuf, s, STRINGMAX-1);
modulename = nmbuf;
}
else modulename = s;
s &= ~S_COM;
if ((n & RELPC) == 0 && s == S_ABS)
return;
- if ((n & RELPC) != 0 && s == DOTTYP)
+ if ((n & RELPC) != 0 && s == DOTTYP
+#ifndef ASLD
+ && ! iscomm
+#endif
+ )
return;
if (pass != PASS_3) {
outhead.oh_nrelo++;