diff --git a/src/asm/section.c b/src/asm/section.c index ee5d5144..d2cbfd8f 100644 --- a/src/asm/section.c +++ b/src/asm/section.c @@ -378,6 +378,7 @@ uint32_t sect_GetOutputOffset(void) void sect_AlignPC(uint8_t alignment, uint16_t offset) { + checksection(); struct Section *sect = sect_GetSymbolSection(); if (sect->org != -1) { diff --git a/test/asm/align-pc-outside-section.asm b/test/asm/align-pc-outside-section.asm new file mode 100644 index 00000000..2fc56122 --- /dev/null +++ b/test/asm/align-pc-outside-section.asm @@ -0,0 +1 @@ +align 1 diff --git a/test/asm/align-pc-outside-section.err b/test/asm/align-pc-outside-section.err new file mode 100644 index 00000000..4640ff9f --- /dev/null +++ b/test/asm/align-pc-outside-section.err @@ -0,0 +1,2 @@ +FATAL: align-pc-outside-section.asm(1): + Code generation before SECTION directive diff --git a/test/asm/align-pc-outside-section.out b/test/asm/align-pc-outside-section.out new file mode 100644 index 00000000..e69de29b