Commit graph

974 commits

Author SHA1 Message Date
ceriel
b1626ca895 try to move side effects as much as possible to the left of the
expression tree, to avoid stacking. This is not good enough yet!
1989-02-22 16:16:08 +00:00
ceriel
d5b2601b8f use a larger buffer on larger machines 1989-02-21 10:01:55 +00:00
ceriel
30959cd73f some fixes: calloc was wrong; catch traps, and let divides
by 0 generate a signal, if on a unix machine
1989-02-20 18:01:33 +00:00
ceriel
f7790b0e8e empty string in directory list now means current directory 1989-02-16 11:46:39 +00:00
ceriel
1e19db9d3a empty string in directory list now means current directory 1989-02-16 11:24:01 +00:00
ceriel
00ac6f88a7 empty string in directory list now means current directory 1989-02-16 11:18:44 +00:00
ceriel
eb3dcf275e fixed some problems, updated with cemcom 1989-02-14 14:35:38 +00:00
ceriel
4629647d78 fixed wrong count in popping parameters 1989-02-14 14:10:31 +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
dick
429d527a64 more and better declarations in c.llb 1989-02-10 16:46:01 +00:00
ceriel
3b922f1292 fix: CHR expects a CARDINAL parameter 1989-02-09 15:43:28 +00:00
ceriel
62d8930080 deleted makefile from distribution; Added some comments about this to
the README file
1989-02-09 15:43:25 +00:00
ceriel
fb88f5dbdd fixed problem with importing enumeration literals 1989-02-08 10:24:10 +00:00
ceriel
81f2477282 Adapted to our installation 1989-02-08 09:38:15 +00:00
ceriel
04e2dac8e7 replaced some BSS by CON; The order in memory is important!
Adapted to our installation
1989-02-08 09:23:46 +00:00
ceriel
6fec436051 use an ed script instead of an ex script; more portable 1989-02-07 17:54:33 +00:00
ceriel
0bc88b77b2 fixed several problems:
- hex numbers and floating point numbers were wrong
- grammar was wrong; did not accept correct ANSI C
- prototype updates did not work
- float parameters to routines without prototype were not upgraded to double
- the dot operator no longer requires lvalue as left-hand-side
1989-02-07 13:16:02 +00:00
ceriel
926da49d39 Initial revision 1989-02-07 11:04:05 +00:00
ceriel
c3f7993b1a fixed problem in sizeof() 1989-02-06 19:06:55 +00:00
dick
f70dfe4d00 better evaluation order checking in expressions 1989-02-02 13:57:07 +00:00
ceriel
5e14dddb6c fix in compile time int2float conversion 1989-01-23 16:52:22 +00:00
ceriel
cc55ab947d evaluate switch-expression on a different spot,
allow for *STRING expressions
1989-01-23 15:37:57 +00:00
ceriel
d55d4bb69f fixed another POINTER TO IDENT problem 1989-01-19 10:58:43 +00:00
ceriel
f4caec88e8 use C_con_cst instead of C_con_icon when possible;
fix sizeof(string) to return the size of the string instead of the size of
a pointer
1988-12-12 14:21:45 +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
15377abec5 Fix from Lindsey: changed CURRDIR mechanism to make it work on SunOs 4.0 1988-11-24 11:29:14 +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
430dad523d removed tab.c, use tabgen, and some fixes 1988-11-16 15:18:21 +00:00
ceriel
6ac798b50c removed tab.c, use tabgen 1988-11-16 11:23:58 +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
090f27251e fixed typo 1988-11-15 11:30:47 +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
dick
4ed20925c6 lint: printf testing and FORMATs 1988-11-03 15:18:46 +00:00
dick
7267917050 foute declaratie van sprint() 1988-11-03 14:59:47 +00:00
dick
190ea14bbf lint: retrieving string arguments from str_list 1988-11-03 13:20:27 +00:00
ceriel
3bb19b6e7d Added code-expander library 1988-10-31 14:17:17 +00:00
ceriel
b5083a9ccf inline substitution of strcmp: was called many times! 1988-10-31 14:10:39 +00:00
ceriel
4f11f3c3fd fixed bug in preprocessor part:
#define aap(a) a did not work if the actual argument was spread over
multiple lines
1988-10-31 14:10:00 +00:00
dick
900421f411 library files now end in .llb 1988-10-28 16:27:32 +00:00
dick
63c0ca38f9 moving lint and lint.1 to lpass2 1988-10-28 16:04:31 +00:00
ceriel
78237f3ef8 some small fixes 1988-10-28 10:11:49 +00:00
ceriel
01252cb592 Initial revision 1988-10-26 15:21:11 +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
dick
c08c3e5cf6 driver and manual page added 1988-10-13 11:31:00 +00:00
dick
e66f3adc06 formats introduced in lint 1988-10-12 16:05:17 +00:00
dick
ac21f8d98a formats introduced 1988-10-12 15:49:11 +00:00
dick
bcb3b108a5 formats introduced 1988-10-12 15:32:32 +00:00
ceriel
ac3bf2cc95 Added pascal.ign 1988-10-07 10:59:23 +00:00
ceriel
1169f99c92 Added 1988-10-07 10:58:26 +00:00
ceriel
8e7e1320ac Initial revision 1988-10-05 13:29:42 +00:00
ceriel
e1b871a6ea Initial revision 1988-10-04 13:41:01 +00:00
ceriel
a66faf4100 Initial revision 1988-10-04 10:56:50 +00:00
ceriel
7bac6eb164 Initial revision 1988-10-04 10:46:47 +00:00
ceriel
23a7e7b427 Initial revision 1988-10-04 10:33:39 +00:00
ceriel
6b7a135b2b Coercion from int to float is now always done compile time 1988-10-03 10:09:19 +00:00
dick
4cecb6bffb wrong Makefile committed 1988-09-30 16:49:02 +00:00
dick
ff682c0cfc testing enums in switches/cases 1988-09-30 16:43:04 +00:00
dick
1fb9c249b3 refinements in error reporting 1988-09-30 15:20:24 +00:00
dick
63d95a5f0e Initial commit 1988-09-30 11:45:14 +00:00
dick
4f8b2e9926 lint: additional type tests in expressions 1988-09-29 15:24:02 +00:00
dick
acf34e54ec crash() replaced by ASSERT() & NOTREACHED() in lint 1988-09-26 11:37:38 +00:00
dick
3d549e7932 reorganisation of lint code 1988-09-25 17:29:37 +00:00
ceriel
9435c895bf Added l_ files to .distr 1988-09-21 13:32:24 +00:00
ceriel
b52e0e8ff1 fixed l_dummy.c to also work for the C-compiler,
added lint.h to BigPars and SmallPars,
and added stuff for CODE_EXPANDER and PEEPHOLE to Makefile
1988-09-21 11:48:29 +00:00
dick
6839d8afb1 introduction of lint source code, governed by ifdef LINT 1988-09-20 16:44:27 +00:00
ceriel
7e502b0937 fix: resolve forward references if definition is needed in lookfor() 1988-09-20 13:31:57 +00:00
ceriel
f8fb06210d fixed: apparently, the profil system-call does not quite work as described
in the manual page?
1988-09-19 16:55:35 +00:00
dick
1f7115fa8d error messages and error handling 1988-09-16 23:19:50 +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
dick
a206f17205 #define PRIVATE; copyright message 1988-09-02 12:00:25 +00:00
ceriel
615b67952f make somewhat safer 1988-09-01 10:07:02 +00:00
ceriel
a40768b6f9 improve line number administration 1988-08-31 09:24:28 +00:00
ceriel
ac92c0b9c3 made safer 1988-08-30 12:52:09 +00:00
ceriel
d24592ee76 Added bsearch 1988-08-30 12:47:45 +00:00
ceriel
ddc46385f3 fix: did not work properly when name != TERM 1988-08-30 12:34:40 +00:00
ceriel
e102a3f5cb better checks for recursion in tc= 1988-08-30 11:37:32 +00:00
dick
32e5679d6c filename and linenumber info in more places 1988-08-29 15:51:48 +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
dick
61b8c3e9ec more modifications due to lint 1988-08-23 12:45:11 +00:00
dick
1a6665e21d initial small modifications for lint 1988-08-19 13:55:22 +00:00
ceriel
e8730266e5 removed not-used variable 1988-08-19 13:40:01 +00:00
ceriel
b1712321e2 made easier to patch 1988-08-19 13:26:27 +00:00
ceriel
371821c6a3 fixed typo 1988-08-11 15:59:35 +00:00
ceriel
ebfc4a15a4 Added strtod.c, use it in atof 1988-08-11 12:49:06 +00:00
ceriel
8f9ed86162 ignore floating overflow/underflow 1988-08-11 09:55:22 +00:00
ceriel
094d427268 prevent overflow 1988-08-10 15:54:15 +00:00
ceriel
d7d16cbede use new ecvt.c from C library 1988-08-10 11:21:40 +00:00
ceriel
03610bb643 improved/speeded up using new ecvt 1988-08-10 11:12:57 +00:00
ceriel
a1032b168c fix 1988-08-10 10:41:15 +00:00
ceriel
d388145dce new, much faster version 1988-08-10 09:14:43 +00:00
ceriel
e6d132830a fix: line number administration wrong in scan.c 1988-08-09 14:07:39 +00:00
ceriel
2c413b9455 makefile --> Makefile 1988-08-08 18:03:12 +00:00
dick
56fff3d6cd many improvements 1988-08-07 22:55:20 +00:00
ceriel
905c5a349f fix: >= and <= were wrong in constant expressions 1988-08-05 11:22:39 +00:00
ceriel
cdb038ed6f forgot leading zero in front of . in F format 1988-08-04 15:48:34 +00:00
ceriel
96fc9c9ab7 gcvt was called with wrong precision 1988-08-04 15:48:20 +00:00
ceriel
28d39e927b fixed problem with 'if (array)' 1988-08-04 14:37:06 +00:00
ceriel
1726d23a44 problem fixed: number of digits displayed and/or format was sometimes wrong 1988-08-04 11:17:27 +00:00
ceriel
56a070ad99 fixed 1988-08-03 19:24:55 +00:00
ceriel
38e7921a9d Added E, G, and g format 1988-08-03 16:29:30 +00:00
ceriel
3e66a45a0d fixed 1988-08-03 16:15:48 +00:00
ceriel
caf948e80e moved getopt to stdio, because it uses it 1988-08-03 14:42:47 +00:00
ceriel
0768c4d4f1 fix to fix 1988-07-29 19:22:48 +00:00
ceriel
87c8b648fc fix in preprocessor part: macro invocation with parameterlist on the
next line did not work
1988-07-29 18:38:25 +00:00
ceriel
bbe7ae21e8 BSD4.[23] could also run NFS 1988-07-28 09:26:22 +00:00
ceriel
75d52f0a3e corrected Makefiles 1988-07-28 08:37:37 +00:00
ceriel
e70f6d3276 Remove m2mm on clean 1988-07-27 09:28:31 +00:00
ceriel
84acaa1163 distribute Makefile 1988-07-26 19:08:46 +00:00
ceriel
fabf37e889 declared errno 1988-07-26 13:04:24 +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
e98a670850 fixed typo 1988-07-25 12:30:52 +00:00
ceriel
7b1eae1d37 fixed: call to atan changed into call to _atn 1988-07-25 11:41:19 +00:00
ceriel
c9f8962fc8 mod to remove declarations in math.h 1988-07-25 11:40:57 +00:00
ceriel
324c95ae62 replaced mathematical routines by our own 1988-07-25 11:26:26 +00:00
ceriel
d443f370d2 replaced mathematical routines by our own 1988-07-25 11:13:26 +00:00
ceriel
b09805786d Added some prints 1988-07-22 20:58:48 +00:00
ceriel
ffb6eb9ff4 Added .distr 1988-07-22 18:29:52 +00:00
ceriel
696f0b1c31 Added math 1988-07-22 18:29:51 +00:00
ceriel
a18fcb9048 Initial revision 1988-07-22 16:53:29 +00:00
ceriel
becd33d3a9 made to work on small machines 1988-07-18 16:45:25 +00:00
ceriel
ca51618fe9 made to work; contained too many dependencies on word/pointer size 1988-07-18 16:41:04 +00:00
ceriel
02154c02b2 fixed problem with D scale factor 1988-07-13 20:13:17 +00:00
ceriel
f8cf94da98 changed text 1988-07-13 17:44:14 +00:00
ceriel
eec2ea8ffe changed text; did not work properly 1988-07-13 17:39:20 +00:00
ceriel
db95ccff91 updated; the int command now is an interpreter 1988-07-13 13:51:57 +00:00