Commit Graph
100 Commits
Author SHA1 Message Date
Rangi42 e1ac51d7da Use std::vector's .size() for SDCC sections and symbols 2024-02-29 13:44:08 -05:00
Rangi42 c3eb532439 Use copy constructor for file stack node 2024-02-29 13:44:08 -05:00
Rangi42 18d4a81954 Use move semantics for the union stacks 2024-02-29 13:44:08 -05:00
Rangi42 7daa8759c9 Use std::variant for STRFMT arguments 2024-02-29 13:44:08 -05:00
Rangi42 beb1997378 Use std::unordered_map for the keyword dict 2024-02-29 13:44:08 -05:00
Rangi42 962398969b Use std::string for PURGE args 2024-02-29 13:44:08 -05:00
Rangi42 0bed84174b Use std::string for FOR loop variables 2024-02-29 13:44:08 -05:00
Rangi42 48b2e94aa3 Use std::string for symbol/section/node names and assertion messages 2024-02-29 13:44:08 -05:00
Rangi42 a24df27cd8 Use std::vector for charmap output 2024-02-29 13:44:08 -05:00
Rangi42 52ac98c294 Use std::vector for section data 2024-02-29 13:44:08 -05:00
Rangi42 4cd88ade54 Use automatic allocation for object file symbols 2024-02-29 13:44:08 -05:00
Rangi42 dead69eb2c Use std::vector for section symbols 2024-02-29 13:44:08 -05:00
Rangi42 f47ce337bf Use std::vector for reading object file symbols 2024-02-29 13:44:08 -05:00
Rangi42 9a51fbafb3 Use std::vector for file stack nodes 2024-02-29 13:44:08 -05:00
Rangi42 3d23f5bbb3 Use std::vector for reading object file sections 2024-02-29 13:44:08 -05:00
Rangi42 af055ecd27 Use automatic allocation for IF stacks and expansions
Switch to using `std::deque` for IF stacks (supports `.clear()`)
2024-02-29 13:44:08 -05:00
Rangi42 31836967fa Use automatic allocation for lexer states
Lexer states are now owned by fstack contexts
2024-02-29 13:44:08 -05:00
Rangi42 514044496f Use std::string for RPN error reasons 2024-02-29 13:44:08 -05:00
Rangi42 cf42d035f2 Use std::variant for file stack nodes 2024-02-29 13:44:08 -05:00
Rangi42 4b2294292a Use std::string for target file name 2024-02-29 13:44:08 -05:00
Rangi42 0e19f6c0ae Use automatic allocation for fstack nodes' iters/names 2024-02-29 13:44:08 -05:00
Rangi42 5075ac8887 Use std::vector for RPN expressions 2024-02-29 13:44:08 -05:00
Rangi42 d792ee4b61 Use std::vector for section patches 2024-02-29 13:44:08 -05:00
Rangi42 b207bff157 Use std::vector for fstack REPT nodes 2024-02-29 13:44:08 -05:00
Rangi42 53343d2fa6 Use automatic allocation for symbols 2024-02-29 13:44:08 -05:00
Rangi42 e98d1efee3 Use std::vector for include paths 2024-02-29 13:44:08 -05:00
Rangi42 e4764e37b1 Use std::stack for fstack contexts 2024-02-29 13:44:08 -05:00
Rangi42 b8e267e387 Use std::vector for SDAS file sections 2024-02-29 13:44:08 -05:00
Rangi42 17861a970f Use std::vector for RPN data 2024-02-29 13:44:08 -05:00
Rangi42 a5ea25cde5 Use automatic allocation for RPN stack 2024-02-29 13:44:08 -05:00
Rangi42 843f3394c8 Use automatic allocation for DS args 2024-02-29 13:44:08 -05:00
Rangi42 b1aa98b43d Use automatic allocation for PURGE args 2024-02-29 13:44:08 -05:00
Rangi42 6a23c5fd48 Use automatic allocation for STRFMT args 2024-02-29 13:44:08 -05:00
Rangi42 6b2c6c20bc Use automatic allocation for macro args 2024-02-29 13:44:08 -05:00
Rangi42 a4ed7e1d18 Use automatic allocation for charmaps 2024-02-29 13:44:08 -05:00
Rangi42 1b8e588961 Use automatic allocation for patch RPN 2024-02-29 13:44:08 -05:00
Rangi42 dec1811d20 Use automatic allocation for section data 2024-02-29 13:44:08 -05:00
Rangi42 72e9f55368 Use automatic allocation for patches 2024-02-29 13:44:08 -05:00
Rangi42 9140180c85 Use automatic allocation for sections 2024-02-29 13:44:08 -05:00
Rangi42 e022adf4a0 Use automatic allocation for assertions 2024-02-29 13:44:08 -05:00
Rangi42 6e03504802 Use std::deque for expansions 2024-02-29 13:44:08 -05:00
Rangi42 003977a9fb Use std::deque for unassigned sections 2024-02-29 13:44:08 -05:00
Rangi42 1afc8554c0 Use std::deque for file stack nodes 2024-02-29 13:44:08 -05:00
Rangi42 26a93a530b Use std::deque for assertions
Also fix a memory leak
2024-02-29 13:44:08 -05:00
Rangi42 2df4fff6c9 Use std::vector for sorted symbols 2024-02-29 13:44:08 -05:00
Rangi42 b74b40abd2 Use std::deque for sorted sections 2024-02-29 13:44:08 -05:00
Rangi42 d53bba97e8 Remove our custom hashmap 2024-02-29 13:44:08 -05:00
Rangi42 95e7dac9a6 Use std::map for rgbasm charmaps 2024-02-29 13:44:08 -05:00
Rangi42 83d3a39dcd Use std::map for rgbasm symbols 2024-02-29 13:44:08 -05:00
Rangi42 f44701c02d Use std::map for rgblink symbols and sections 2024-02-29 13:44:08 -05:00
Rangi42 d5de3fa111 Use std::deque for symbol lists
Also fix a memory leak that this reveals
2024-02-29 13:44:08 -05:00
Rangi42 bc8cb754c0 Use std::deque for sections 2024-02-29 13:44:08 -05:00
Rangi42 2ea6de7195 Use std::stack for unions 2024-02-29 13:44:08 -05:00
Rangi42 8083ef605f Use std::deque for section patches 2024-02-29 13:44:08 -05:00
Rangi42 b87ee62e6c Use std::deque for assertions 2024-02-29 13:44:08 -05:00
Rangi42 521ca1c34a Use std::vector for symbols 2024-02-29 13:44:08 -05:00
Rangi42 a310b659cd Use std::deque (iterable) for section stack 2024-02-29 13:44:08 -05:00
Rangi42 feb342804b Use std::stack for IF stack 2024-02-29 13:44:08 -05:00
Rangi42 36cfce40ad Use std::stack for options 2024-02-29 13:44:08 -05:00
Rangi42 52c80c2740 Use std::stack for charmaps 2024-02-29 13:44:08 -05:00
Rangi42 3da201b26e Give explicit test output if the scramble-romx size is wrong 2024-02-26 18:26:17 -05:00
Rangi42 d87b1ed22a Refactor some redundant error/warning-printing code 2024-02-24 19:05:29 -05:00
Rangi42 c70cecc24a Add missing license header 2024-02-21 19:20:10 -05:00
Rangi42 bba5b8a740 Remove unused struct definition 2024-02-21 16:42:14 -05:00
Rangi42 c0da9fa2bb Remove obsolete #undef fail 2024-02-20 20:15:34 -05:00
Rangi42 ee59f17ea1 Free all the charmaps after parsing 2024-02-19 09:00:15 -05:00
Rangi42 464000bca8 Clarify TODO comment 2024-02-19 08:49:12 -05:00
Rangi42 bc8fd8a6dc Separate union members for EQUS and MACROs 2024-02-19 08:49:04 -05:00
Rangi42 f00e57a0ed Log indiviual rgblink test variants 2024-02-18 19:37:19 -05:00
Rangi42 cd297e1f90 Remove unused rgblink function sym_ForEach 2024-02-18 18:46:07 -05:00
Rangi42 5e8c87cf82 .dockerignore is too trivial to license :P 2024-02-18 18:45:49 -05:00
Rangi42 3860ab11c7 Reformat some deeply-indented lines 2024-02-18 18:14:13 -05:00
Rangi42 580b7ec5be Avoid links that just say "here" 2024-02-18 15:06:55 -05:00
Rangi42 bd56405aae Remove now-unnecessary indentation of code blocks 2024-02-18 15:02:17 -05:00
Rangi42 2dee0fc536 Refer to https URLs when applicable 2024-02-18 14:58:46 -05:00
Rangi42 26f150220b Update some contributors 2024-02-18 20:44:23 +01:00
Rangi42 289910fe83 Convert reStructuredText to Markdown 2024-02-18 20:44:23 +01:00
Rangi42 f1b6ef204d Fix some reStructuredText 2024-02-18 14:09:37 -05:00
Rangi42 a5ceaa3664 Use semicolons, not comma splices 2024-02-17 09:43:22 -05:00
Rangi42 3741510108 Use rgbasm -I, not -i 2024-01-29 16:41:06 -05:00
Rangi42 eaed9eee5b Gameboy -> Game Boy 2024-01-03 11:28:02 -05:00
Rangi42 7b199d7550 Fix documentation for ATAN2's (y, x) argument order 2023-12-24 03:59:01 -05:00
Rangi42 09dbc50447 Some refactoring 2023-12-18 15:51:13 -05:00
Rangi42 b46aa0f55b colour->color, behaviour->behavior
These spellings are more common elsewhere in the codebase
2023-11-27 16:02:17 -05:00
Rangi42 482160ea04 Prefer rpn_isKnown(expr) accessor to expr->isKnown directly 2023-11-21 10:46:59 -05:00
Rangi42 ad62421264 Use rpn_isKnown wrapper outside rpn.cpp 2023-11-21 10:33:35 -05:00
Rangi42 7a1e052b58 Factor out one shared enum FileStackNodeType 2023-11-07 08:27:03 +01:00
Rangi42 02f9128d07 Make some changes noticed while porting to C++ 2023-11-07 08:27:03 +01:00
Rangi42 a64f28de5c Avoid using %# printf specifier 2023-11-02 17:38:10 +01:00
Rangi42 b4dbb5093a Warn when SGB compatibility is set without old licensee 0x33 2023-11-02 17:38:10 +01:00
Rangi42 ab42eb2c50 Document STRUPR/STRLWR as ASCII-only 2023-10-31 14:28:38 -04:00
Rangi42 45c2a5e4ec Consistently use uppercase hex digits 2023-10-31 14:28:38 -04:00
Rangi 4cadc6f0fe \en not \n is a newline in troff 2023-03-04 18:36:22 -05:00
Rangi 01f1703dfb Preserve \@ through INCLUDE
Fixes #1112
2022-12-11 18:56:03 +01:00
Rangi 69a573923f Version 0.6.1 2022-12-02 22:48:37 -05:00
Rangi 79748afdc4 Align the "; Next union/fragment" comments with their symbols 2022-11-06 23:55:15 +01:00
Rangi 32cb0558e4 Print "; Next union/fragment" between "pieces" in .map file
Resolves #1099
2022-11-06 23:55:15 +01:00
Rangi f90857032c Version 0.6.0 2022-10-02 19:08:13 -04:00
Rangi 1653a9a3f2 Use -flto=auto 2022-10-02 13:50:35 -04:00
Rangi bbe28faab4 Sort rgbgfx's -r option alphabetically 2022-10-01 21:22:39 -04:00