Commit graph

83 commits

Author SHA1 Message Date
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 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
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 0ae5288ab7 Fix for membership test with constant LHS 1994-12-20 16:00:57 +00:00
ceriel 1db6a3029b Header --> Id 1994-06-24 14:02:31 +00:00
ceriel 75afbd450b Fixed problem with the IN operator 1993-11-19 09:53:47 +00:00
ceriel 5dfe51c5d4 Oops: committed wrong version 1993-11-17 09:37:02 +00:00
ceriel 0dde39aa63 Fixed problem with IN operator 1993-11-16 16:31:27 +00:00
ceriel 81ec28ccb9 Bug fix: INC/DEC evaluated argument twice(!) 1992-01-31 13:44:57 +00:00
ceriel ca06e574ca Improved code generation for sets somewhat 1991-03-25 13:28:50 +00:00
ceriel 5a53ba3f50 Several minor mods: simplifications and identifier name changes 1991-03-18 16:30:49 +00:00
ceriel 5ebc2017a0 Do not use the allocation mechanism for the desig structure; overkill 1991-03-14 11:10:40 +00:00
ceriel f7504dbd4b Cleaned up a bit more 1991-03-13 17:26:07 +00:00
ceriel 52842cd09a Cleaned up a bit 1991-03-13 13:49:56 +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 81cc04f9a3 Changed unsigned checking so that runtime routines cab be written in C 1991-03-05 11:55:22 +00:00
ceriel 109a357e95 Fix: DIV and MOD on negative args 1990-07-16 09:05:19 +00:00
ceriel c3b3faf7a4 Added support for constant floating point expressions 1989-12-19 09:40:25 +00:00
ceriel 73246f3824 Improved checks for conversion between cardinal and integer 1989-08-21 17:08:54 +00:00
ceriel 3a3b5db45d made the previous changes in parameter passing mechanism and return
value mechanism settable with compile time constants
1989-03-22 09:53:47 +00:00
ceriel f9b6acf1dc New version with different parameter passing mechanism and some
minor fixes
1989-03-20 13:32:06 +00:00
ceriel 162b824030 Changed method for returning big values; Instead of using a chunk of
global data area, caller creates space on the stack just above parameters
to store the result
1989-03-10 10:40:07 +00:00
ceriel a1b4e28760 Added a local extension: procedure constants 1989-03-03 16:13:45 +00:00
ceriel a7a80689bf Only generate FIL when needed 1988-10-25 17:43:19 +00:00
ceriel ce0ec1c143 delinted somewhat 1988-10-13 15:43:23 +00:00
ceriel 8f9818c385 Added short-hand for C_cal+C_asp, made interface new_stackptr cleaner 1988-06-13 10:29:36 +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 54bfaff625 Added a mechanism to test pointers as soon as possible 1988-04-11 18:32:47 +00:00
ceriel c8a728969d some minor changes and a fix in pointer arithmetic 1988-04-06 18:14:50 +00:00
ceriel 7f9fd963fd many minor mods 1988-03-23 17:44:25 +00:00
ceriel e71df15045 made to fit on PDP-11 again 1988-03-22 17:54:01 +00:00
ceriel bb51d7b0e2 too many changes: some cosmetic; some for 2/4; some for added options 1988-03-21 16:47:51 +00:00
ceriel 5cf3fc1017 some minor mods, mostly for better line number tracking 1988-03-08 10:18:58 +00:00
ceriel da3c00aeac compare pointers with CMP 1988-02-01 10:17:51 +00:00
ceriel 16e381031b improved filename and linenumber generation 1988-01-28 16:15:16 +00:00
ceriel a61d36ff49 fixes and squeezing 1987-12-02 10:41:38 +00:00
ceriel 896fec3fc5 version with better overflow checking 1987-11-26 14:15:24 +00:00
ceriel 4489526a11 fixed some minor problems 1987-11-09 16:11:04 +00:00
ceriel e1a3a1c136 made to fit on a PDP-11 1987-11-09 10:17:20 +00:00
ceriel b668810351 sets now allowed for all subranges 1987-10-28 16:03:56 +00:00
ceriel d80b501829 Fixed some problems, and improved range-checking 1987-10-28 11:10:30 +00:00
ceriel c5674041bf Some minor mods and a bug fix with type transfer functions 1987-09-24 13:07:31 +00:00
ceriel fd817d4dbc Minor adaptions in order to reduce the size 1987-09-23 16:39:43 +00:00
ceriel 74c758e503 some more fixes 1987-09-14 11:24:12 +00:00
ceriel f0fc857cb4 compiler could not handle using addresses of procedures declared
in imported definition modules. This is corrected
1987-08-24 11:42:37 +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