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
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
5300633c2b
improved error messages
1989-11-17 11:52:33 +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
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
b11e382851
some minor corrections
1989-06-19 09:56: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
944c818096
Corrected some warnings a bit
1989-04-11 14:34:21 +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
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
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
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
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
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
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
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
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
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
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
a0d2a1ea74
delinted somewhat
1988-09-05 15:51:35 +00:00
ceriel
5e34ca7d2b
ignore exit status of size
1988-08-24 11:39:57 +00:00
ceriel
905c5a349f
fix: >= and <= were wrong in constant expressions
1988-08-05 11:22:39 +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
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
8f9818c385
Added short-hand for C_cal+C_asp, made interface new_stackptr cleaner
1988-06-13 10:29:36 +00:00
ceriel
3d044db749
improved error messages with opaque types
1988-06-09 11:39:11 +00:00
ceriel
b9943e0ca2
minor update
1988-05-03 15:17:13 +00:00
ceriel
2a1191bfc1
fixed very minor bug: strings should be aligned on word_boundaries
1988-05-03 15:04:30 +00:00
ceriel
781a1218a5
only increment line number on ASCII LF
1988-05-03 11:30:25 +00:00
ceriel
aadfe97a58
make to fit on PDP-11 again
1988-04-29 15:41:38 +00:00
ceriel
69b293d86b
types of case-labels are base-types
1988-04-29 09:16:51 +00:00
ceriel
bfd4554758
fixed: did not compute hexadecimal numbers right
1988-04-26 13:47:02 +00:00
ceriel
6c825b7892
fixed hexadecimal character class
1988-04-26 10:51:50 +00:00
ceriel
2bbecf2416
better argument checking of standard functions
1988-04-26 10:14:01 +00:00
ceriel
d260937564
improved layout with varargs
1988-04-25 16:24:42 +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
d1c9c94493
generate message about parameter count
1988-04-15 17:29:02 +00:00
ceriel
2549099d3b
use varargs where needed
1988-04-15 15:19: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
39c5ab2997
better ORD, VAL, and CAP, and some other minor mods
1988-04-12 09:19:06 +00:00
ceriel
54bfaff625
Added a mechanism to test pointers as soon as possible
1988-04-11 18:32:47 +00:00
ceriel
32d38f3eb8
two versions of the parameters file: small and large
1988-04-08 10:04:03 +00:00
ceriel
c8a728969d
some minor changes and a fix in pointer arithmetic
1988-04-06 18:14:50 +00:00
ceriel
2be8437d73
identifiers may not contain two consecutive underscores, and a fix
1988-03-31 16:09:53 +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
e71df15045
made to fit on PDP-11 again
1988-03-22 17:54:01 +00:00
ceriel
fba9192bbc
new version, with 2/4 handling
1988-03-21 18:22:52 +00:00
ceriel
dea657a673
too many changes: some cosmetic; some for 2/4; some for added options
1988-03-21 17:43:54 +00:00
ceriel
795a078d08
too many changes: some cosmetic; some for 2/4; some for added options
1988-03-21 17:22:26 +00:00
ceriel
0976dfa3b9
too many changes: some cosmetic; some for 2/4; some for added options
1988-03-21 17:06:20 +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
759f4738ca
too many changes: some cosmetic; some for 2/4; some for added options
1988-03-21 16:36:31 +00:00
ceriel
ea21b16846
Added dependency
1988-03-08 10:44:09 +00:00
ceriel
78926a5a84
fix typo and parameters of overflow
1988-03-08 10:35:53 +00:00
ceriel
5cf3fc1017
some minor mods, mostly for better line number tracking
1988-03-08 10:18:58 +00:00
ceriel
d7d501d43a
made to fit on a PDP-11 again
1988-02-10 14:06:34 +00:00
ceriel
78de25b639
New baseline for distribution
1988-02-09 11:45:30 +00:00
ceriel
6217293e23
some fixes:
...
- always remove imports from definition modules
- minor improvement in error messages
1988-02-09 11:41:08 +00:00
ceriel
eb2ce1f30b
This version fixes many problems in older versions
1988-02-02 16:27:54 +00:00
ceriel
da3c00aeac
compare pointers with CMP
1988-02-01 10:17:51 +00:00
ceriel
a22ab5c7b7
better error message
1988-01-28 16:54:33 +00:00
ceriel
16e381031b
improved filename and linenumber generation
1988-01-28 16:15:16 +00:00
ceriel
72e13f3a5a
Yet another fix. ChkUnOper can also be called with a COERCION operator,
...
when NEW and DISPOSE are expanded
1988-01-28 14:05:34 +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
a7cdd16125
Allow the checking of definition modules
1988-01-22 12:04:27 +00:00
ceriel
ad2d61154b
fixed some minor problems
1988-01-15 16:55:01 +00:00
ceriel
a61d36ff49
fixes and squeezing
1987-12-02 10:41:38 +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
b2824fe796
check number of locals and parameters
1987-11-24 14:21:35 +00:00
ceriel
ea2c86ef0c
do not allow reals as case labels, check size of array's
1987-11-24 13:22:04 +00:00
ceriel
619f6bb893
Fixed bug: subranges of subranges did not work right
1987-11-17 14:29:14 +00:00
ceriel
808e5d8c7d
generate CSA for empty case statement
1987-11-13 16:19:51 +00:00
ceriel
603c65950c
Fixed some problems:
...
files that use the em_code module must include the em_code.h file
improved checking of definitions after use
fixed problem with ranges in case statements
1987-11-11 13:10:08 +00:00
ceriel
4489526a11
fixed some minor problems
1987-11-09 16:11:04 +00:00
ceriel
785e174cbb
Added mechanism for non-cross compiler (yet another way of squeezing it onto
...
a PDP-11
1987-11-09 11:29:48 +00:00
ceriel
e1a3a1c136
made to fit on a PDP-11
1987-11-09 10:17:20 +00:00
ceriel
6e5f3632c6
fixed some minor problems
1987-11-03 12:44:09 +00:00
ceriel
5cd95d47b2
Now detects use before declaration, f.i. in
...
VAR k: REAL;
REAL : INTEGER;
1987-10-30 09:19:23 +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
04f0550f1d
do not warn about not using a type-identifier that indicates
...
an enumeration type and is imported, because its enumeration literals
might be used
1987-10-27 09:45:27 +00:00
ceriel
015e1b776e
Some corrections and additions to improve the mechanism for
...
generating warnings on unused/uninitialized variables
1987-10-21 11:29:52 +00:00
ceriel
688567a532
fix in reference counts for sets
1987-10-20 13:32:18 +00:00
ceriel
503edee161
New version, with an option for strict Modula-2, and
...
warnings for unused or uninitialized variables
1987-10-19 11:28:37 +00:00
ceriel
4695d966ee
next version
1987-10-14 12:38:01 +00:00
ceriel
fc6a8c5aa8
some minor fixes
1987-10-14 12:34:47 +00:00
ceriel
e61b887e31
improved previous fix
1987-10-05 16:17:51 +00:00
ceriel
38f70a3a06
new version for distr
1987-10-05 15:52:02 +00:00
ceriel
5d5e497d22
fixed a problem with procedures imported from other modules but not
...
declared in their definition modules
1987-10-05 15:41:30 +00:00
ceriel
4c7dc7eb20
did not work with CASE statements with large difference between lower
...
and upper bound
1987-10-05 15:40:53 +00:00
ceriel
8c6981f642
ran 'make depend' again
1987-09-28 10:18:02 +00:00
ceriel
a4c02d15c6
new version
1987-09-24 13:42:50 +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
8d2afe1103
some more fixes
1987-09-14 12:41:08 +00:00
ceriel
74c758e503
some more fixes
1987-09-14 11:24:12 +00:00
ceriel
99f8e49e93
FLOAT did not work
1987-08-24 14:23:13 +00:00
ceriel
6fdd5b6a6d
FLOAT did not work
1987-08-24 13:59:06 +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
86b6fe60ea
corrected option handling
1987-08-20 13:12:43 +00:00
ceriel
d8370d797b
do not accept p flag
1987-08-19 18:13:19 +00:00
ceriel
0983b7700f
changed code for loops a bit, and fixed an error in MkCoercion
1987-08-19 18:07:41 +00:00
ceriel
a7b7fa4162
Added the possibility to disable range-checks
1987-08-11 10:50:30 +00:00
ceriel
d0b452373b
yet another fix in those tricky FOR-loops
1987-08-11 08:58:20 +00:00
ceriel
51169956dc
some more fixes, and tried to make smaller
1987-08-10 21:43:47 +00:00
ceriel
abf9c71fa9
Generated code for FOR-loops was wrong
1987-08-10 13:01:54 +00:00
ceriel
956fa21b89
fix: variable sets were handled wrong
1987-08-03 18:20:55 +00:00
ceriel
d10dd029b5
updated
1987-08-03 09:47:46 +00:00
ceriel
9c014b9e64
some fixes and cosmetic changes
1987-08-03 09:09:07 +00:00
ceriel
064f2b6a8b
new version that passes current tests
1987-07-30 14:21:19 +00:00
ceriel
0e397f09f3
many changes; some cosmetic; coercions now explicit in tree
1987-07-30 13:37:39 +00:00
ceriel
3af275f8d6
A different way of detecting conformant arrays
1987-07-22 17:02:54 +00:00
ceriel
d502a17312
added docs about -Xi flag
1987-07-22 13:42:46 +00:00
ceriel
0bffe65c24
some more fixes
1987-07-22 10:59:24 +00:00
ceriel
6614384f3c
fixes, changes to make smaller on PDP
1987-07-21 13:54:33 +00:00