Registers used inline were not getting allocated.
[fw/sdcc] / as / mcs51 / lkmain.c
index 22fcac0b102ecf15c526b082af18327bf690d1d0..3b0dbfe9857236a7570d667355a8e54d70accf30 100644 (file)
  *           - use a_type == 0 as "virgin area" flag: set == 1 if -b
  */
 
+#include <stdlib.h>
 #include <stdio.h>
 #include <string.h>
-#if defined(_MSC_VER)
-#include <stdlib.h>
-#else
-#include <alloc.h>
-#endif
 #include "aslink.h"
 
 /* yuck - but including unistd.h causes problems on Cygwin by redefining
@@ -146,8 +142,6 @@ char *argv[];
        register char *p;
        register int c, i;
 
-       fprintf(stdout, "\n");
-
        startp = (struct lfile *) new (sizeof (struct lfile));
 
        pflag = 1;
@@ -420,7 +414,7 @@ link_main()
                sdp.s_area = NULL;
                sdp.s_areax = NULL;
                sdp.s_addr = 0;
-               lastExtendedAddress = -1;
+               // jwk lastExtendedAddress = -1;
                break;
 
        case 'M':
@@ -1049,14 +1043,14 @@ char *ft;
        register char *p1, *p2, *p3;
        register int c;
        FILE *fp;
-       char fb[FILSPC];
+       char fb[PATH_MAX];
        char *omode = (wf ? (wf == 2 ? "a" : "w") : "r");
 
        p1 = fn;
        p2 = fb;
        p3 = ft;
        while ((c = *p1++) != 0 && c != FSEPX) {
-               if (p2 < &fb[FILSPC-4])
+               if (p2 < &fb[PATH_MAX-4])
                        *p2++ = c;
        }
        *p2++ = FSEPX;
@@ -1068,7 +1062,7 @@ char *ft;
                }
        }
        while ((c = *p3++) != 0) {
-               if (p2 < &fb[FILSPC-1])
+               if (p2 < &fb[PATH_MAX-1])
                        *p2++ = c;
        }
        *p2++ = 0;