ISSOtm
cf2001de5f
Allow compiling parser in debug mode with -DYYDEBUG=1
2020-02-19 00:01:51 +01:00
ISSOtm
6d00877231
Prevent infinite loop with line continuations without newlines
2020-02-18 20:58:20 +01:00
ISSOtm
6755a0912b
Improve naming of CI build artifacts
2020-02-18 20:23:37 +01:00
ISSOtm
b6ac23be3d
Remove Travis CI files
...
Obsoleted by GitHub Actions since #486
2020-02-18 20:12:18 +01:00
ISSOtm
e941cafedb
Make locals in main scope a non-fatal error
2020-02-18 20:07:44 +01:00
ISSOtm
03fe077b41
Make locals without parent a non-fatal error
2020-02-18 20:07:44 +01:00
Eldred Habert
12ef879860
Merge pull request #486 from ISSOtm/actions
...
Switch CI to GitHub Actions
2020-02-18 20:04:26 +01:00
ISSOtm
179e047474
Add Windows testing
2020-02-18 02:55:38 +01:00
ISSOtm
d497190aa1
Do not zip artifacts ourselves
...
GitHub does it, this creates zips of zips...
2020-02-17 15:04:14 +01:00
ISSOtm
e078c1e793
Use develop in CI when possible
2020-02-17 15:04:14 +01:00
ISSOtm
7471f46a07
Add checkpatch testing
2020-02-17 15:04:14 +01:00
ISSOtm
8cee3c3c3e
Upload binaries after compilation
2020-02-17 15:04:14 +01:00
ISSOtm
97bcbf5d84
Add GitHub Actions for regression testing
2020-02-17 15:04:14 +01:00
ISSOtm
3fce9ed9a4
Have Wine shim explicitly require bash
...
I didn't know the substitution was Bash-only..!
2020-02-17 15:03:46 +01:00
ISSOtm
21ffcc74db
Don't use echo -e for creating the Wine shim
...
Apparently that's not as portable as I expected.
2020-02-17 14:32:35 +01:00
ISSOtm
9e99db9a8e
Allow \r in strings
...
Fixes #484
2020-02-17 13:52:38 +01:00
ISSOtm
5fd38c5f67
Do not try to link libpng statically
2020-02-14 03:07:24 +01:00
ISSOtm
03ed914714
Give reason to why writing the object file fails
2020-02-14 00:29:24 +01:00
ISSOtm
42faffe6f3
Make the Wine shims a separate target
2020-02-13 23:06:05 +01:00
ISSOtm
bc80e910ed
Fix two code style errors
2020-02-13 20:43:47 +01:00
ISSOtm
30a95d735a
Improve testing PC
2020-02-13 20:20:35 +01:00
ISSOtm
f01a227470
Fix non-const labels with callbacks having incorrect values when diffed
...
Basically, this broke PC, which is currently the only label-typed symbol
with a callback.
2020-02-13 20:16:59 +01:00
ISSOtm
91b65c9380
Add include guards and license header to section.h
2020-02-13 15:57:27 +01:00
ISSOtm
18c47843f1
Check if sections referenced in linker script exist
2020-02-12 15:27:07 +01:00
Eldred Habert
d5fe377c11
Merge pull request #482 from ISSOtm/conflict
...
Fix one shift/reduce and one reduce/reduce conflict
2020-02-12 01:39:18 +01:00
ISSOtm
ed4a613473
Rename productions to "reloc" when not really constant
2020-02-11 19:04:35 +01:00
ISSOtm
112098514d
Fix 1 s/r and 1 r/r conflict
...
Implements the fix suggested [here](https://github.com/rednex/rgbds/issues/44#issuecomment-69360499 ), which performed better than expected!
I'm not \*too\* fond of this but this seems like the right way
2020-02-11 18:59:55 +01:00
ISSOtm
31aa1ea474
Improve arg-shift test
...
New test case courtesy of @aaaaaa123456789
2020-02-11 11:38:57 +01:00
ISSOtm
96b6e4a76e
Add forgotten semicolon in grammar
2020-02-11 11:36:50 +01:00
ISSOtm
001b95d12a
Add SHIFT with numeric argument
...
Fixes #442 .
2020-02-11 11:25:38 +01:00
ISSOtm
3b2c862320
Make more RGBASM errors print their line number
...
Fixes #379 .
2020-02-11 09:35:19 +01:00
ISSOtm
230f849229
Fix error output slightly broken on Windows
...
Apparently, `perror` on Windows forces a newline before itself, which is
not the behavior intended. Instead, print the error message inline.
2020-02-11 09:06:38 +01:00
Eldred Habert
c37253fe5a
Merge pull request #480 from ISSOtm/section
...
Improve section management
2020-02-11 08:51:00 +01:00
Eldred Habert
0ed8d3859d
Merge pull request #481 from rednex/revert-451-atomic_output
...
Revert "Make RGBASM overwrite output files atomically"
2020-02-11 08:32:27 +01:00
ISSOtm
6963d77f8a
Add documentation for LOAD blocks
2020-02-10 09:30:33 +01:00
ISSOtm
02ea52f453
Add test for LOAD
2020-02-10 03:39:09 +01:00
ISSOtm
cdabc057a0
Allow unseekable files with INCBIN
...
Go figure the use case, but the feature is there now
2020-02-10 03:39:09 +01:00
ISSOtm
eb0d75711a
Implement LOAD/ENDL blocks
...
Basically implements and closes rednex#274.
2020-02-10 03:39:09 +01:00
ISSOtm
f121119283
Use section's offset instead of general one
...
That's more future-proof and makes more sense
2020-02-10 03:37:44 +01:00
ISSOtm
d9c1b66931
Deduplicate value output function code
2020-02-10 03:37:43 +01:00
ISSOtm
2f60e0a59e
Use meaningful types for byte output functions
2020-02-10 03:36:51 +01:00
ISSOtm
ffe9e92b48
Skip double-checking overflow in byte output
2020-02-10 03:36:51 +01:00
ISSOtm
aa90a53f34
Move 1-byte overflow check to out_AbsByte
...
This check is already performed in bulk by all functions calling it except
`out_AbsByte`, adding extra overhead to those.
2020-02-10 03:36:51 +01:00
ISSOtm
598c923506
Use callback for PC's value
...
This causes it to auto-update whenever the current section's attributes are
updated, simplifying the code and eliminating redundancy.
This should also overall reduce overhead (one extra function call on each
PC evaluation, but less bookkeeping for each byte output)
2020-02-10 03:36:51 +01:00
ISSOtm
8c4b473d6f
Add more checks to section creation in RGBASM
...
Fixes rednex#471, but also backports a couple more checks from RGBLINK
2020-02-10 03:35:55 +01:00
ISSOtm
a4fe274c25
Unify all section declarations
2020-02-10 03:35:55 +01:00
ISSOtm
34597ce6a0
Mark some section functions as const
2020-02-10 03:34:58 +01:00
ISSOtm
4a2af807b2
Remove legacy forward declaration
2020-02-10 03:34:58 +01:00
ISSOtm
d0ec35628f
Split section management into its own file
2020-02-10 03:34:58 +01:00
ISSOtm
bfdbd00092
Do some misc cleanup of output.c
2020-02-10 03:25:03 +01:00