Commit graph

76 commits

Author SHA1 Message Date
carl e8243402be Move to use C structures instead of typedef to align with other ACK compilers and to avoid forward declaration issues with include files. 2019-05-11 01:09:03 +08:00
carl 3867cfdaca + M2 Compiler ISO C90 compatibility
* Fixing of potential crash issue with function tables in compiler.
+ SYSTEM.h is now renamed to SYSTEMM2.h to avoid conflicts on non case sensitive filesystems.
2019-03-02 01:44:16 +08:00
David Given fd91851005 Add enough return types to the K&R C that the ACK builds (on Linux) using clang
now.
2016-11-10 22:04:18 +01:00
David Given dbf8332bf0 Fixed a small bug where two line number directives next to each other wouldn't
be parsed properly (the second one would be treated as Modula-2 syntax).
2016-08-13 12:21:16 +02:00
David Given f6c43b95ef Modula-2 now works.
--HG--
branch : dtrg-buildsystem
rename : lang/pc/build.mk => lang/m2/build.mk
rename : lang/pc/libpc/build.mk => lang/m2/comp/build.mk
rename : lang/pc/libpc/build.mk => lang/m2/libm2/build.mk
2013-05-14 22:24:38 +01:00
dtrg 45b4fef7d6 Rationalised use of #includes to be more standards-compliant. 2006-07-30 23:40:35 +00:00
ceriel 322c1c1b4c Some fixes 1996-11-19 09:12:36 +00:00
ceriel efacd02ffd Added LONGCARD as a local extension 1996-08-14 07:42:40 +00:00
ceriel 1db6a3029b Header --> Id 1994-06-24 14:02:31 +00:00
ceriel 670b7264ad Deleted comment that was no longer applicable 1991-11-27 14:52:17 +00:00
ceriel bf0caa6f32 Changed error-messages mechanism 1991-11-27 13:40:52 +00:00
ceriel 1da2103504 Delinted a bit 1991-04-25 16:47:47 +00:00
ceriel 0a517b9256 Changes to make node structure smaller, and cleaned up a bit 1991-03-12 16:52:00 +00:00
ceriel 76d79cf17a Added macro's for long selections 1991-03-06 10:52:34 +00:00
ceriel 6545b68874 Also update WorkingDir on line directives 1990-11-22 11:25:34 +00:00
ceriel c3b3faf7a4 Added support for constant floating point expressions 1989-12-19 09:40:25 +00:00
ceriel a8033da29e better error checking 1989-12-07 16:28:05 +00:00
ceriel d277946286 changed name of some identifiers to more accurately represent their
meaning, and fixed a problem with sometimes not detecting overflow in
constants
1989-08-08 09:11:32 +00:00
ceriel 5f35d0c644 fixed behaviour on too long floating point constants 1989-07-26 11:16:59 +00:00
ceriel e967e920be removed one goto 1989-04-19 15:00:07 +00:00
ceriel 0995f7a809 better error handling, simplified EOI handling with improved input module 1989-04-04 14:53:48 +00:00
ceriel f9b6acf1dc New version with different parameter passing mechanism and some
minor fixes
1989-03-20 13:32:06 +00:00
ceriel 5e766a0f20 Fixed bug with underscores in identifiers 1988-11-03 15:36:46 +00:00
ceriel ce0ec1c143 delinted somewhat 1988-10-13 15:43:23 +00:00
ceriel 02154c02b2 fixed problem with D scale factor 1988-07-13 20:13:17 +00:00
ceriel 2a1191bfc1 fixed very minor bug: strings should be aligned on word_boundaries 1988-05-03 15:04:30 +00:00
ceriel bfd4554758 fixed: did not compute hexadecimal numbers right 1988-04-26 13:47:02 +00:00
ceriel 9d3f9ea496 fixed a small problem with the 'symmetric' option; also fixed a
problem with Hex numbers
1988-04-19 14:40:27 +00:00
ceriel 1da83e161b made to fit on PDP-11 again, and some other minor mods 1988-04-13 18:37:45 +00:00
ceriel 702a73b734 identifiers may not contain two consecutive underscores, and a fix 1988-03-31 16:02:20 +00:00
ceriel 7f9fd963fd many minor mods 1988-03-23 17:44:25 +00:00
ceriel 759f4738ca too many changes: some cosmetic; some for 2/4; some for added options 1988-03-21 16:36:31 +00:00
ceriel 7bb1897e98 minor fixes 1988-01-27 15:10:16 +00:00
ceriel e67e59e56a bug fix in LONGINT constants 1988-01-26 13:54:24 +00:00
ceriel 3627b9a16c added use checking for types and constants, improved overflow checking 1987-11-27 14:24:46 +00:00
ceriel 896fec3fc5 version with better overflow checking 1987-11-26 14:15:24 +00:00
ceriel 6e5f3632c6 fixed some minor problems 1987-11-03 12:44:09 +00:00
ceriel fd817d4dbc Minor adaptions in order to reduce the size 1987-09-23 16:39:43 +00:00
ceriel a7b7fa4162 Added the possibility to disable range-checks 1987-08-11 10:50:30 +00:00
ceriel abf9c71fa9 Generated code for FOR-loops was wrong 1987-08-10 13:01:54 +00:00
ceriel 0e397f09f3 many changes; some cosmetic; coercions now explicit in tree 1987-07-30 13:37:39 +00:00
ceriel c839c01680 some fixes, and changed priority of unary minus 1987-06-18 15:46:08 +00:00
ceriel bb9b16ab50 fixes, added some standard functions to handle LONGREAL, LONGINT 1987-05-27 10:16:03 +00:00
ceriel 946006fb08 many minor corrections 1987-05-18 15:57:33 +00:00
ceriel fbc0415761 make to work on sun, added copyright, etc 1987-04-29 10:22:07 +00:00
ceriel fe2e67d1c6 minor fixes 1986-12-09 17:41:06 +00:00
ceriel c57d4ff268 some minor bug fixes 1986-12-01 10:06:53 +00:00
ceriel da54801353 newer version 1986-11-26 16:40:45 +00:00
ceriel 9d0ee46068 Trying to check more of an expression, giving some more sophisticated error messages,and be less wasteful with space for subranges 1986-11-17 11:41:28 +00:00
ceriel 9291d87dab Several bug fixes 1986-11-05 14:33:00 +00:00