1
0
mirror of https://github.com/KarolS/millfork.git synced 2024-05-31 18:41:30 +00:00
Commit Graph

105 Commits

Author SHA1 Message Date
Karol Stasiak
1e4a193741 Optimization hints 2021-03-15 00:44:14 +01:00
Karol Stasiak
521b73d0d3 Array fields for structs and unions (see #87) 2021-02-22 23:23:00 +01:00
Karol Stasiak
9c7e946f4c Allow labels in assembly on the same line (see #101) 2021-02-03 09:49:17 +01:00
Karol Stasiak
600bfce0c1 Allow new lines after = 2021-01-13 14:38:59 +01:00
Karol Stasiak
7962a1d083 Point at the end of the line if the error is something missing at the end of the line 2020-12-01 03:21:04 +01:00
Karol Stasiak
52c9da36b8 Fix GraalVM NPE when getting a character name 2020-12-01 03:20:31 +01:00
Karol Stasiak
cba145d674 Better error messages for variable definitions in macros (#77) 2020-12-01 03:19:38 +01:00
Karol Stasiak
97c7d0ffed Basic groundwork for optimization hint support 2020-11-18 22:37:58 +01:00
Karol Stasiak
c0eae29a41 Minor compilation speed optimization 2020-09-21 00:15:16 +02:00
Karol Stasiak
e09db3d132 Local labels in assembly 2020-09-01 22:00:07 +02:00
Karol Stasiak
b9cd18c3c8 Improve error message for multiple operators at the same priority 2020-08-14 22:28:50 +02:00
Karol Stasiak
fccbf7df7d Add dollar syntax for decimal operators, disallow identifiers ending in a dollar sign. 2020-08-14 02:22:13 +02:00
Karol Stasiak
89ff89bc48 Some more defensive programming 2020-07-31 17:11:30 +02:00
Karol Stasiak
cf707cc31f Protect against confusable non-ASCII characters 2020-07-31 17:08:44 +02:00
Karol Stasiak
d5367cc1fe for loops over arrays 2020-07-24 19:12:19 +02:00
Karol Stasiak
a2c49a1f89 Add manual type alignment. 6502: Optimize multiplications by constants. 2020-07-18 01:15:33 +02:00
Karol Stasiak
718245c56a Module templates 2020-06-03 23:13:17 +02:00
Karol Stasiak
7f9bd18bdd The big text encoding overhaul 2020-05-01 01:31:54 +02:00
Karol Stasiak
78fe0e37bb Allow importing modules from subdirectories. Move platform definitions 2020-04-27 12:42:18 +02:00
Karol Stasiak
5df695f2c2 Add support for Pascal-style strings 2020-04-04 00:45:09 +02:00
Karol Stasiak
63ff28e94e Changes to macros and parameter list syntax:
* non-asm macros can now take `const` and `call` parameters
* register parameters to asm functions and macros can be given names if annotated explicitly
2020-03-30 19:23:48 +02:00
Karol Stasiak
d478f3504f Const-pure functions 2020-03-19 23:53:16 +01:00
Karol Stasiak
2eb8ef53ca Put almost all warnings behind internal flags 2020-03-17 21:08:43 +01:00
Karol Stasiak
6e65cd1902 Better error messages when failing to parse array definitions (fixes #45) 2020-02-12 01:07:14 +01:00
Karol Stasiak
0333b339ca Allow omitting length in file array initalizers (fixes #35) 2020-01-10 18:37:49 +01:00
Karol Stasiak
b2dd4eadd4 Start work on supporting member arrays 2019-12-30 11:50:18 +01:00
Karol Stasiak
3b78206c35 Fix errors about invalid function flags 2019-11-13 18:39:27 +01:00
Karol Stasiak
088688122e #6 Improve semicolon comment parsing 2019-11-04 14:26:01 +01:00
Karol Stasiak
ec52963b46 Fix literals 2019-11-03 22:25:08 +01:00
Karol Stasiak
7092f2a5de Properly handle all integer literal sizes 2019-10-31 12:13:02 +01:00
Karol Stasiak
33405ffcd6 Better handling for invalid statements inside segment blocks 2019-10-31 12:11:05 +01:00
Karol Stasiak
e3b3c36924 Parse function and variable flags correctly 2019-10-31 12:10:18 +01:00
Karol Stasiak
258b17beb0 Allow unary minus (fixes #18) 2019-10-31 12:09:20 +01:00
Karol Stasiak
1ddee6155d Allow for comments at the end of the file (fixes #15) 2019-10-31 12:08:45 +01:00
Karol Stasiak
f65651f2c0 #6 Improve error messages related to semicolons 2019-10-22 01:06:51 +02:00
Karol Stasiak
f5b6d9999c #9 Support astral characters in UTF-8 2019-10-18 11:01:31 +02:00
Karol Stasiak
3a6790e47a Add UTF-8 and UTF-16 encodings #9 2019-10-17 23:23:57 +02:00
Karol Stasiak
e9990dc9c1 Allow semicolons in certain positions. Partially implements #6 2019-10-08 18:45:11 +02:00
Karol Stasiak
c61d044226 Document keywords and handle them better 2019-10-08 01:33:55 +02:00
Karol Stasiak
d38405f467 Fix signed constants and word-sbyte subtraction 2019-09-20 18:33:41 +02:00
Karol Stasiak
960d16fa18 Add nullchar constant, NULLCHAR feature, and vectrex encoding 2019-08-16 00:46:11 +02:00
Karol Stasiak
b68e4b67c8 Better support for big-endian systems 2019-07-29 22:51:08 +02:00
Karol Stasiak
4b25ce2d8c Pointers to fields of array elements 2019-07-24 00:14:27 +02:00
Karol Stasiak
12d32594d1 Allow a line break after an operator 2019-07-19 15:46:19 +02:00
Karol Stasiak
20f4baf2b2 Allow setting segments for multiple declarations at once 2019-07-17 20:51:34 +02:00
Karol Stasiak
f3dcfc78ba Dijkstra wept 2019-07-15 02:06:23 +02:00
Karol Stasiak
6d499f3623 Arrays with elements larger than one byte 2019-07-10 16:51:12 +02:00
Karol Stasiak
62f79388bd Slowly move towards removing the farword alias 2019-07-09 22:03:53 +02:00
Karol Stasiak
8a5672c2dc Allow declaring multiple variables in one line 2019-07-08 19:24:11 +02:00
Karol Stasiak
25c440f17d Add local arrays 2019-06-24 22:32:29 +02:00