*fixed problem with non-existent error messages about short jumps
authorvav <vav@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Tue, 17 Oct 2000 09:13:24 +0000 (09:13 +0000)
committervav <vav@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Tue, 17 Oct 2000 09:13:24 +0000 (09:13 +0000)
in assembler
*assembler return code is sane now

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@471 4a8a32a2-be11-0410-ad9d-d568d2c75423

as/mcs51/asmain.c
as/mcs51/i51mch.c
as/z80/asmain.c
as/z80/z80mch.c

index 42c70a5d2cd99dc6e664bcd83f68cd02c272c311..32cde0eb35486d569e3c437a819ddd17e7bc2e2e 100644 (file)
@@ -317,7 +317,7 @@ char *argv[];
        if (lflag) {
                lstsym(lfp);
        }
-       asexit(aserr);
+       asexit(aserr != 0);
        return 0;
 }
 
index 9f1ceac4b47996e7d7be209fce40d92eb18365e4..0446fb26fca408c18185f600b5edf63f7a080deb 100644 (file)
@@ -424,7 +424,7 @@ struct mne *mp;
                        v1 = -3;
                    else
                        v1 = e1.e_addr - dot.s_addr - 1;
-                       if ((v1 < -128) || (v1 > 127))
+                       if (pass==2 && ((v1 < -128) || (v1 > 127)))
                                aerr();
                        outab(v1);
                } else {
@@ -443,7 +443,7 @@ struct mne *mp;
                        v1 = -2;
                    else   
                        v1 = e1.e_addr - dot.s_addr - 1;
-                       if ((v1 < -128) || (v1 > 127))
+                       if (pass == 2 && ((v1 < -128) || (v1 > 127)))
                                aerr();
                        outab(v1);
                } else {
index a74d7648856d6873d711d1df6b9c315279a881fc..e1686ccc8c76b33d9d9b65554efc50d30b40a1e2 100644 (file)
@@ -319,7 +319,7 @@ main(int argc, char **argv)
        if (lflag) {
                lstsym(lfp);
        }
-       asexit(aserr);
+       asexit(aserr != 0);
        /* Never reached */
        return 0;
 }
index 6758c0057a1d34e7ce9656493c5bcac3de954b0c..9e45ece7114a7c79a3342bbecfaed4ffa4ab905c 100644 (file)
@@ -557,7 +557,7 @@ struct mne *mp;
                outab(op);
                if (e2.e_base.e_ap == NULL || e2.e_base.e_ap == dot.s_area) {
                        v2 = e2.e_addr - dot.s_addr - 1;
-                       if ((v2 < -128) || (v2 > 127))
+                       if (pass == 2 && ((v2 < -128) || (v2 > 127)))
                                aerr();
                        outab(v2);
                } else {