Avoid using %# printf specifier

This commit is contained in:
Rangi42
2023-11-02 11:20:49 -04:00
committed by Eldred Habert
parent b4dbb5093a
commit a64f28de5c
7 changed files with 22 additions and 21 deletions

View File

@@ -57,7 +57,7 @@ diff <(xxd "$1") <(xxd "$2") | while read -r LINE; do
while read -r SYMADDR SYM; do while read -r SYMADDR SYM; do
SYMADDR=$((0x${SYMADDR#*:})) SYMADDR=$((0x${SYMADDR#*:}))
if [[ $SYMADDR -le $ADDR ]]; then if [[ $SYMADDR -le $ADDR ]]; then
printf " (%s+%#x)\n" "$SYM" $((ADDR - SYMADDR)) printf " (%s+0x%x)\n" "$SYM" $((ADDR - SYMADDR))
fi fi
# TODO: assumes sorted sym files # TODO: assumes sorted sym files
done | tail -n 1 done | tail -n 1

View File

@@ -335,8 +335,8 @@ static struct Section *getSection(char const *name, enum SectionType type, uint3
if (org != (uint32_t)-1) { if (org != (uint32_t)-1) {
if (org < sectionTypeInfo[type].startAddr || org > endaddr(type)) if (org < sectionTypeInfo[type].startAddr || org > endaddr(type))
error("Section \"%s\"'s fixed address %#" PRIx32 error("Section \"%s\"'s fixed address $%04" PRIx32
" is outside of range [%#" PRIx16 "; %#" PRIx16 "]\n", " is outside of range [$%04" PRIx16 "; $%04" PRIx16 "]\n",
name, org, sectionTypeInfo[type].startAddr, endaddr(type)); name, org, sectionTypeInfo[type].startAddr, endaddr(type));
} }

View File

@@ -969,7 +969,7 @@ static void processFile(int input, int output, char const *name, off_t fileSize)
overwriteByte(rom0, 0x14B, oldLicensee, "old licensee code"); overwriteByte(rom0, 0x14B, oldLicensee, "old licensee code");
else if (sgb && rom0[0x14B] != 0x33) else if (sgb && rom0[0x14B] != 0x33)
fprintf(stderr, fprintf(stderr,
"warning: SGB compatibility enabled, but old licensee was %#x, not 0x33\n", "warning: SGB compatibility enabled, but old licensee was 0x%02x, not 0x33\n",
rom0[0x14B]); rom0[0x14B]);
if (romVersion != UNSPECIFIED) if (romVersion != UNSPECIFIED)
@@ -1440,7 +1440,7 @@ do { \
if (sgb && oldLicensee != UNSPECIFIED && oldLicensee != 0x33) if (sgb && oldLicensee != UNSPECIFIED && oldLicensee != 0x33)
fprintf(stderr, fprintf(stderr,
"warning: SGB compatibility enabled, but old licensee is %#x, not 0x33\n", "warning: SGB compatibility enabled, but old licensee is 0x%02x, not 0x33\n",
oldLicensee); oldLicensee);
argv += musl_optind; argv += musl_optind;

View File

@@ -525,7 +525,7 @@ static void applyFilePatches(struct Section *section, struct Section *dataSectio
if (!isError && (value < types[patch->type].min if (!isError && (value < types[patch->type].min
|| value > types[patch->type].max)) || value > types[patch->type].max))
error(patch->src, patch->lineNo, error(patch->src, patch->lineNo,
"Value %#" PRIx32 "%s is not %u-bit", "Value %" PRId32 "%s is not %u-bit",
value, value < 0 ? " (maybe negative?)" : "", value, value < 0 ? " (maybe negative?)" : "",
types[patch->type].size * 8U); types[patch->type].size * 8U);
for (uint8_t i = 0; i < types[patch->type].size; i++) { for (uint8_t i = 0; i < types[patch->type].size; i++) {

View File

@@ -274,8 +274,9 @@ static void doSanityChecks(struct Section *section, void *ptr)
// Check if section has a chance to be placed // Check if section has a chance to be placed
if (section->size > sectionTypeInfo[section->type].size) if (section->size > sectionTypeInfo[section->type].size)
error(NULL, 0, "Section \"%s\" is bigger than the max size for that type: %#" PRIx16 " > %#" PRIx16, error(NULL, 0, "Section \"%s\" is bigger than the max size for that type: $%"
section->name, section->size, sectionTypeInfo[section->type].size); PRIx16 " > $%" PRIx16,
section->name, section->size, sectionTypeInfo[section->type].size);
// Translate loose constraints to strong ones when they're equivalent // Translate loose constraints to strong ones when they're equivalent
@@ -296,14 +297,14 @@ static void doSanityChecks(struct Section *section, void *ptr)
// Ensure the target address is valid // Ensure the target address is valid
if (section->org < sectionTypeInfo[section->type].startAddr if (section->org < sectionTypeInfo[section->type].startAddr
|| section->org > endaddr(section->type)) || section->org > endaddr(section->type))
error(NULL, 0, "Section \"%s\"'s fixed address %#" PRIx16 " is outside of range [%#" error(NULL, 0, "Section \"%s\"'s fixed address $%04" PRIx16 " is outside of range [$%04"
PRIx16 "; %#" PRIx16 "]", section->name, section->org, PRIx16 "; $%04" PRIx16 "]", section->name, section->org,
sectionTypeInfo[section->type].startAddr, endaddr(section->type)); sectionTypeInfo[section->type].startAddr, endaddr(section->type));
if (section->org + section->size > endaddr(section->type) + 1) if (section->org + section->size > endaddr(section->type) + 1)
error(NULL, 0, "Section \"%s\"'s end address %#x is greater than last address %#x", error(NULL, 0, "Section \"%s\"'s end address $%04x is greater than last address $%04x",
section->name, section->org + section->size, section->name, section->org + section->size,
endaddr(section->type) + 1); endaddr(section->type) + 1);
} }
#undef fail #undef fail

View File

@@ -1,15 +1,15 @@
error: fixed-oob.asm(1): error: fixed-oob.asm(1):
Section "ROM0"'s fixed address 0xbabe is outside of range [0; 0x7fff] Section "ROM0"'s fixed address $babe is outside of range [$0000; $7fff]
error: fixed-oob.asm(3): error: fixed-oob.asm(3):
Section "ROMX"'s fixed address 0xbeef is outside of range [0x4000; 0x7fff] Section "ROMX"'s fixed address $beef is outside of range [$4000; $7fff]
error: fixed-oob.asm(5): error: fixed-oob.asm(5):
Section "VRAM"'s fixed address 0xc0de is outside of range [0x8000; 0x9fff] Section "VRAM"'s fixed address $c0de is outside of range [$8000; $9fff]
error: fixed-oob.asm(7): error: fixed-oob.asm(7):
Section "SRAM"'s fixed address 0xcafe is outside of range [0xa000; 0xbfff] Section "SRAM"'s fixed address $cafe is outside of range [$a000; $bfff]
error: fixed-oob.asm(11): error: fixed-oob.asm(11):
Section "WRAMX"'s fixed address 0xdad is outside of range [0xd000; 0xdfff] Section "WRAMX"'s fixed address $0dad is outside of range [$d000; $dfff]
error: fixed-oob.asm(13): error: fixed-oob.asm(13):
Section "OAM"'s fixed address 0xcab is outside of range [0xfe00; 0xfe9f] Section "OAM"'s fixed address $0cab is outside of range [$fe00; $fe9f]
error: fixed-oob.asm(15): error: fixed-oob.asm(15):
Section "HRAM"'s fixed address 0xbad is outside of range [0xff80; 0xfffe] Section "HRAM"'s fixed address $0bad is outside of range [$ff80; $fffe]
error: Assembly aborted (7 errors)! error: Assembly aborted (7 errors)!

View File

@@ -1,2 +1,2 @@
error: Section "rom" is bigger than the max size for that type: 0x8000 > 0x4000 error: Section "rom" is bigger than the max size for that type: $8000 > $4000
Linking failed with 1 error Linking failed with 1 error