shithub: rgbds

Download patch

ref: 3992ce2502e46caf0105d093ee8f65651b2c6650
parent: 215d6f0c5b57b6be70fc4eac8f14859151c17f2d
author: Anthony J. Bentley <[email protected]>
date: Thu Sep 25 16:40:25 EDT 2014

Separate errors that shouldn't have been combined in the first place.

--- a/src/asm/output.c
+++ b/src/asm/output.c
@@ -504,9 +504,12 @@
 checkcodesection(SLONG size)
 {
 	checksection();
-	if ((pCurrentSection->nType == SECT_ROM0
-		|| pCurrentSection->nType == SECT_ROMX)
-	    && (pCurrentSection->nPC + size <= MAXSECTIONSIZE)) {
+	if (pCurrentSection->nType != SECT_ROM0 &&
+	    pCurrentSection->nType != SECT_ROMX) {
+		errx(1, "Section '%s' cannot contain code or data (not a "
+		    "ROM0 or ROMX)", pCurrentSection->pzName);
+	}
+	if (pCurrentSection->nPC + size <= MAXSECTIONSIZE) {
 		if (((pCurrentSection->nPC % SECTIONCHUNK) >
 			((pCurrentSection->nPC + size) % SECTIONCHUNK))
 		    && (pCurrentSection->nType == SECT_ROM0
@@ -523,8 +526,7 @@
 		}
 		return;
 	} else
-		fatalerror
-		    ("Section can't contain initialized data or section limit exceeded");
+		errx(1, "Section '%s' is too big", pCurrentSection->pzName);
 }
 /*
  * RGBAsm - OUTPUT.C - Outputs an objectfile