ceriel
1da2103504
Delinted a bit
1991-04-25 16:47:47 +00:00
ceriel
49c5c36362
Added defaults for M2COMPILER and DEF_DIR
1991-04-10 15:10:32 +00:00
ceriel
b2b79edc42
Removed use of STATIC
1991-04-10 13:32:42 +00:00
ceriel
ca06e574ca
Improved code generation for sets somewhat
1991-03-25 13:28:50 +00:00
ceriel
2684a45cc5
do not write in strings: they could reside in ROM
1991-03-19 11:14:39 +00:00
ceriel
5a53ba3f50
Several minor mods: simplifications and identifier name changes
1991-03-18 16:30:49 +00:00
ceriel
9155b8a68a
Fixed bug that never occurred, but was discovered by reading the code
1991-03-15 11:21:46 +00:00
ceriel
f4691c73c4
Call _cleanup before _exit
1991-03-15 09:24:03 +00:00
ceriel
852601d0b5
minor mods
1991-03-14 13:16:32 +00:00
ceriel
5ebc2017a0
Do not use the allocation mechanism for the desig structure; overkill
1991-03-14 11:10:40 +00:00
ceriel
86bc055fa1
Corrected error on NOCROSS
1991-03-14 09:31:32 +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
3e18caaab0
fixed bug in coroutine mechanism
1991-03-11 16:21:13 +00:00
ceriel
b893ec7013
m_a_i_n --> _m_a_i_n
1991-03-06 14:26:16 +00:00
ceriel
76d79cf17a
Added macro's for long selections
1991-03-06 10:52:34 +00:00
ceriel
24fd4e190e
Fixed bugs
1991-03-06 10:20:17 +00:00
ceriel
3a715f5479
Lay-out changes and made IMPORTS more specific
1991-03-05 13:47:08 +00:00
ceriel
d8ff0feed3
Replaced some EM code by C code
1991-03-05 11:56:39 +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
bb31795d33
removed -i flag
1991-02-20 09:48:36 +00:00
ceriel
c863c96023
Made use of C_insertpart dependant on compile-time flag
1991-02-19 16:22:41 +00:00
ceriel
c59e581ef2
Delinted a bit
1991-02-19 15:28:48 +00:00
ceriel
b5c5f09b16
moved some static declarations that were illegal ANSI C
1991-02-19 12:44:38 +00:00
ceriel
c40ca6ebbd
Made ability for -g dependant on compile-time flag
1991-02-18 17:18:36 +00:00
ceriel
b3deddfaf3
also handle SIGFPE; runtime start-off should leave it alone
1990-12-03 13:54:36 +00:00
ceriel
32598a47a2
Also update WorkingDir on line directives
1990-11-22 12:02:00 +00:00
ceriel
2299e83685
Wrong version committed
1990-11-22 11:48:08 +00:00
ceriel
6545b68874
Also update WorkingDir on line directives
1990-11-22 11:25:34 +00:00
ceriel
b2bee3043a
Did not handle RETURN's in module bodies right
1990-11-22 09:49:37 +00:00
ceriel
1136d63929
made compilable by the ACK ANSI C compiler
1990-11-02 14:29:02 +00:00
ceriel
928c2dacc5
Fixed problem with -I option
1990-09-27 17:45:34 +00:00
ceriel
282d93dde0
Fixed problems with -I and with value conformant arrays
1990-09-27 17:01:01 +00:00
ceriel
4900ad0743
improved line number administration
1990-09-14 14:37:24 +00:00
ceriel
11d8919d76
Fix: the type INTEGER[0..255] was put in one byte
1990-09-12 17:09:57 +00:00
ceriel
1cb247fa39
only deal with signals that are not ignored
1990-08-29 11:44:33 +00:00
ceriel
2a26b4d335
avoid double LINs and corrected bug in symbol table entries for records
1990-08-22 15:33:43 +00:00
ceriel
36b11dc296
improved REAL constant and string constant stab generation
1990-08-10 18:01:50 +00:00
ceriel
5ca5b63151
some more changes for debugger support
1990-08-01 14:35:07 +00:00
ceriel
8eecdff85a
added support for debugger
1990-07-30 15:56:25 +00:00
ceriel
109a357e95
Fix: DIV and MOD on negative args
1990-07-16 09:05:19 +00:00
ceriel
cabefb9d9e
fixed -I option
1990-06-29 10:00:41 +00:00
ceriel
266d247470
fixed -I option
1990-06-28 18:06:16 +00:00
ceriel
39fee04619
fix previous fix
1990-06-11 15:17:50 +00:00
ceriel
8e6fe7258c
fix: ARRAY type of itself caused crash;
...
better implementation of ranges in CASE labels
1990-03-06 13:22:30 +00:00
ceriel
01829a4203
Fixes: random did not work properly, and RealToString did not deal with
...
numbers not fitting in the format given properly
1990-01-31 11:01:53 +00:00
ceriel
bcf2aa511c
bug fix: casts of constants to a set type caused memory fault
1990-01-18 10:12:38 +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
a49ffb7945
fixed entier routine: did not work properly for negative args
1989-11-28 14:16:38 +00:00
ceriel
5d81b090b9
Corrected MathLib0.mod: entier was wrong on negative args
1989-11-27 09:37:56 +00:00
ceriel
5300633c2b
improved error messages
1989-11-17 11:52:33 +00:00
ceriel
35586d769a
DEFDIR fix
1989-10-25 13:37:26 +00:00
ceriel
80cb794116
Added mechanism to change default directory
1989-10-24 16:54:55 +00:00
ceriel
b4504c0f73
parameterize back library name (needed for SUN)
1989-10-18 11:51:12 +00:00
ceriel
9c403e7299
Added mechanism to make peephole optimizer version bigger (needed for SUN-3)
1989-10-18 11:39:19 +00:00
ceriel
654715cf8a
Added mechanism for generating fast compilers
1989-10-13 09:59:54 +00:00
ceriel
008a907894
makefile removed, was path-dependant
1989-10-03 16:31:29 +00:00
ceriel
73246f3824
Improved checks for conversion between cardinal and integer
1989-08-21 17:08:54 +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
228fe4b4d0
undef PASS_BIG_VAL_AS_VAR for now; it does not work properly in all cases
1989-07-17 15:37:04 +00:00
ceriel
347197573b
made to compile, added proper cast
1989-07-11 12:48:40 +00:00
ceriel
7d131a2cd5
fix: did not work when called from different directory
1989-06-29 11:03:23 +00:00
ceriel
11349c78cd
use better algorithms for some mathematical functions
1989-06-20 13:10:32 +00:00
ceriel
6d78cd6710
bug fix: printed some reals wrong
1989-06-20 11:43:01 +00:00
ceriel
9e151cf706
Added routines to read and write LONGREALS
1989-06-20 11:23:43 +00:00
ceriel
d4389da709
initialize variable inheader
1989-06-19 11:31:22 +00:00
ceriel
197f5bc796
generated with newer makefile generator
1989-06-19 11:30:37 +00:00
ceriel
b11e382851
some minor corrections
1989-06-19 09:56:16 +00:00
ceriel
c1075bd08c
Added Version.c
1989-05-29 10:32:46 +00:00
ceriel
fd4e81f64e
Modified to make the default M2 compiler name definable at compile time
1989-05-29 10:27:54 +00:00
ceriel
13bc7e128d
a trap from a routine called by the termination sequence could
...
cause an infinite loop. This is prevented
1989-05-12 09:36:16 +00:00
ceriel
dfc5d7318c
Added cemain entry in Resolve script
1989-04-26 11:32:46 +00:00
ceriel
e967e920be
removed one goto
1989-04-19 15:00:07 +00:00
ceriel
ec3d8bb5aa
fix: filename label sometimes turned up as external
1989-04-14 18:25:39 +00:00
ceriel
6e75af9cef
make entry to generate .o files
1989-04-11 15:51:01 +00:00
ceriel
944c818096
Corrected some warnings a bit
1989-04-11 14:34:21 +00:00
ceriel
6f8702a65e
fixed problem with hex numbers, and use new PushBack feature
1989-04-11 11:40:49 +00:00
ceriel
ff853d748c
using new input module simplifies EOI handling
1989-04-04 15:02:47 +00:00
ceriel
0995f7a809
better error handling, simplified EOI handling with improved input module
1989-04-04 14:53:48 +00:00
ceriel
3030b5edd1
better attempt to indicate start and end of own BSS; still not good
...
enough
1989-04-04 10:09:27 +00:00
ceriel
c5345bf6ac
Changed semantics of CallAtEnd so that it calls installed procedures
...
in reversed order
1989-03-22 17:36:20 +00:00
ceriel
4e21aced73
bug fix in WITH statement: called WalkDesignator instead of ChkDesig
1989-03-22 11:07:21 +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
346bc839a3
use value parameters when VAR not needed
1989-03-20 13:03:34 +00:00
ceriel
9379157da7
use value parameters when VAR not needed
1989-03-20 12:46:25 +00:00
ceriel
88ebd891b1
generate -c instead of -c.$(SUFFIX)
1989-03-17 17:06:21 +00:00
ceriel
bb83c44309
fixed the arctan routine
1989-03-15 13:16:40 +00:00
ceriel
6218df1293
improved error message for no RETURN from function procedure
1989-03-15 10:46:27 +00:00
ceriel
21a8f93bc7
adapted for larger function result area
1989-03-14 15:36:33 +00:00
ceriel
c81a6a0c7a
better warnings for unused/undefined parameters
1989-03-13 15:04:05 +00:00
ceriel
183942e70c
made return value of topsize an unsigned. Some 2/4 back-ends do
...
not implement BLS 4
1989-03-10 14:03:34 +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
24f3f2f10e
updated to ed4
1989-03-08 17:28:08 +00:00
ceriel
018d91b6a1
Added options
1989-03-03 16:16:52 +00:00
ceriel
a1b4e28760
Added a local extension: procedure constants
1989-03-03 16:13:45 +00:00
ceriel
1e19db9d3a
empty string in directory list now means current directory
1989-02-16 11:24:01 +00:00
ceriel
ebce0b4a18
New coroutine mechanism incorporated
1989-02-13 18:41:17 +00:00
ceriel
7b2e749b0d
make runtime error messages emacs-compatible
1989-02-13 18:28:17 +00:00
ceriel
3b922f1292
fix: CHR expects a CARDINAL parameter
1989-02-09 15:43:28 +00:00
ceriel
fb88f5dbdd
fixed problem with importing enumeration literals
1989-02-08 10:24:10 +00:00
ceriel
d55d4bb69f
fixed another POINTER TO IDENT problem
1989-01-19 10:58:43 +00:00
ceriel
10157af05f
fixed: the fgets replacement did not work properly
1988-12-08 16:18:29 +00:00
ceriel
18b719de80
killbss routine smarter now; does not overwrite all BSS; did not work
...
as it should, because systemcall interface also uses the fact that BSS = 0
1988-12-02 15:39:59 +00:00
ceriel
5252b760d9
handle intorcard_type better in case statements
1988-11-29 13:13:03 +00:00
ceriel
73ac23824b
changed error messages, initialize bss with funny value, and be
...
somewhat more conservative with memory usage
1988-11-28 12:54:38 +00:00
ceriel
da11deeece
improved interface
1988-11-25 13:49:07 +00:00
ceriel
9eb1f7a67b
cleaned up interface a bit
1988-11-24 11:46:31 +00:00
ceriel
6a8360b335
Fix from Lindsey: changed CURRDIR mechanism to make it work on SunOs 4.0
1988-11-24 09:41:39 +00:00
ceriel
982138b8da
another minor problem fixed: only test on options['R'] once
...
in a FOR statement!
1988-11-23 13:10:57 +00:00
ceriel
b86a455efa
minor fix: sometimes wrote 0-byte
1988-11-23 11:31:20 +00:00
ceriel
d7bb7c9cf3
Added termcap support
1988-11-23 10:59:09 +00:00
ceriel
b8cc947bc3
removed tab.c, use tabgen
1988-11-16 11:04:17 +00:00
ceriel
a08e71a16f
removed tab.c, use tabgen
1988-11-16 10:58:33 +00:00
ceriel
f1245e2e00
fixed some problems:
...
- removed null-reference in illegal use of pointers in constant expressions
- FOR-loops that count downwards did not work
- POINTER TO mechanism changed; works better now
1988-11-15 14:45:59 +00:00
ceriel
ef6f9168c4
do not refer to _exit. For some machines, it does not exist
1988-11-07 10:25:45 +00:00
ceriel
b90690ba5d
Changed translation of FOR-statement: now, if it is executed 0
...
times, the loop-control-variable is not assigned to
1988-11-04 13:12:14 +00:00
ceriel
d418617de6
new version number
1988-11-04 10:24:34 +00:00
ceriel
93cee9d434
Fixed problem with IMPORTS through PROCEDURE bounds
1988-11-03 15:37:37 +00:00
ceriel
5e766a0f20
Fixed bug with underscores in identifiers
1988-11-03 15:36:46 +00:00
ceriel
a7a80689bf
Only generate FIL when needed
1988-10-25 17:43:19 +00:00
ceriel
416020b5bd
fixed minor problem with subranges
1988-10-21 17:24:34 +00:00
ceriel
0ba4588be1
Changed name of compiler to m2
1988-10-19 16:44:01 +00:00
ceriel
ce0ec1c143
delinted somewhat
1988-10-13 15:43:23 +00:00
ceriel
7e502b0937
fix: resolve forward references if definition is needed in lookfor()
1988-09-20 13:31:57 +00:00
ceriel
64aae9d435
DS and DE are not man macros
1988-09-07 10:13:36 +00:00
ceriel
74fba213bc
DS and DE are not man macros
1988-09-07 10:01:59 +00:00
ceriel
612ddc8a4e
return value sometimes was wrong
1988-09-06 15:34:47 +00:00
ceriel
575d4f5223
Extended to handle user libraries
1988-09-06 11:28:16 +00:00
ceriel
a0d2a1ea74
delinted somewhat
1988-09-05 15:51:35 +00:00
ceriel
dca9ed9bb2
Added stty and gtty
1988-09-02 15:40:45 +00:00
ceriel
2b47b43390
fix: did not handle the case that a program module name and file name
...
differ
1988-09-02 12:01:53 +00:00
ceriel
5e34ca7d2b
ignore exit status of size
1988-08-24 11:39:57 +00:00
ceriel
2ffad4edb4
ignore exit status of size
1988-08-24 10:49:24 +00:00
ceriel
03610bb643
improved/speeded up using new ecvt
1988-08-10 11:12:57 +00:00
ceriel
905c5a349f
fix: >= and <= were wrong in constant expressions
1988-08-05 11:22:39 +00:00
ceriel
e70f6d3276
Remove m2mm on clean
1988-07-27 09:28:31 +00:00
ceriel
dbbff76f4c
Used new math lib of C to create new version of Mathlib
1988-07-25 16:41:51 +00:00
ceriel
02154c02b2
fixed problem with D scale factor
1988-07-13 20:13:17 +00:00
ceriel
d1a390924f
we were lucky, but - indicates a range; corrected
1988-07-08 10:29:48 +00:00
ceriel
2ea025fdb4
fixed previously introduced error
1988-07-06 09:43:05 +00:00
ceriel
afc4d5211b
made to fit on PDP-11 ...
1988-07-05 19:06:40 +00:00
ceriel
6ade1e3215
Also export LONGREAL routines
1988-06-30 16:32:54 +00:00
ceriel
74c779b81e
mods to handle forward references better
1988-06-30 14:50:30 +00:00
ceriel
fa9e4c5ea3
corrected minor problem
1988-06-30 09:19:06 +00:00
ceriel
3ed0f85ba7
fixed typo
1988-06-29 13:13:49 +00:00
ceriel
184984d472
Minor adaptions to comments
1988-06-16 11:44:31 +00:00