Allow for AALMAG as well as ARMAG
This commit is contained in:
@@ -117,7 +117,7 @@ argument(arg) char *arg; {
|
||||
inpoff = 2;
|
||||
if ((w = getu16()) == sp_magic )
|
||||
read_compact();
|
||||
else if (w == ARMAG) {
|
||||
else if (w == ARMAG || w == AALMAG) {
|
||||
archmode = TRUE;
|
||||
archive();
|
||||
archmode = FALSE;
|
||||
@@ -456,9 +456,6 @@ finish_up()
|
||||
* make the e.out file and stop.
|
||||
*/
|
||||
|
||||
#ifdef JOHAN
|
||||
if ( jflag ) return ;
|
||||
#endif
|
||||
#ifdef DUMP
|
||||
c_print();
|
||||
#endif
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
#define DUMP 1 /* dump between passes */
|
||||
/* #define TIMING 1 /* some timing measurements */
|
||||
/* #define JOHAN 1 /* dump the loaded instructions */
|
||||
#define JOHAN 1 /* dump the loaded instructions */
|
||||
#define MEMUSE 1 /* print memory usage statistics */
|
||||
|
||||
#ifndef DUMP
|
||||
|
||||
@@ -121,7 +121,7 @@ int size; /* size for hash */
|
||||
case ENTERING:
|
||||
break;
|
||||
case INTERNING:
|
||||
if (!new)
|
||||
if (!new && (g->g_status&EXT))
|
||||
werror("INA must be first occurrence of '%s'",name);
|
||||
break;
|
||||
case EXTERNING: /* lookup in other table */
|
||||
|
||||
@@ -185,12 +185,19 @@ unsigned get8() {
|
||||
cons_t xgetarb(l,f) int l; FILE *f ; {
|
||||
cons_t val ;
|
||||
register int shift ;
|
||||
int c;
|
||||
|
||||
shift=0 ; val=0 ;
|
||||
while ( l-- ) {
|
||||
val += ((cons_t)ctrunc(xgetc(f)))<<shift ;
|
||||
val += ((cons_t)(c = ctrunc(xgetc(f))))<<shift ;
|
||||
shift += 8 ;
|
||||
}
|
||||
if (c == 0377 && shift > 8 && ((shift>>3)&1)) {
|
||||
while (shift < 8*sizeof(cons_t)) {
|
||||
val += ((cons_t)c)<<shift ;
|
||||
shift += 8;
|
||||
}
|
||||
}
|
||||
return val ;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user