Commit graph

665 commits

Author SHA1 Message Date
eck 7157ec19b6 changed strrchr() into strchr() 1990-01-04 08:39:10 +00:00
eck 670ca5a83a added putenv.c 1990-01-03 17:23:10 +00:00
eck e109e76069 changed genfiles to shell script 1990-01-03 16:58:22 +00:00
ceriel 4bb598c9ad mkdir command always executed and result ignored 1990-01-03 16:07:05 +00:00
ceriel 33e47b1a51 Added mechanism for installing header files 1989-12-19 15:32:51 +00:00
eck 80b04b4440 changed Makefile again 1989-12-19 15:06:03 +00:00
ceriel 513b878285 again, dependencies 1989-12-19 14:54:40 +00:00
ceriel b60e8cead1 corrected install entry 1989-12-19 13:56:57 +00:00
ceriel 49834ac5c8 dependencies 1989-12-19 13:55:08 +00:00
eck f4e1d47704 changed Makefile 1989-12-19 11:20:16 +00:00
ceriel caf06d3a7b prepared for distribution 1989-12-19 11:17:21 +00:00
ceriel bff577eed4 name is cpp.ansi 1989-12-19 11:12:17 +00:00
ceriel a1f5834052 use normal C compiler 1989-12-19 11:07:03 +00:00
eck 7fab59ec17 added MakeArch and Makefile to .distr 1989-12-19 11:02:22 +00:00
eck c02f977487 Initial revision 1989-12-19 10:59:33 +00:00
ceriel 328b5011af use normal C compiler 1989-12-18 16:41:55 +00:00
eck dc87f207cd added Makefile, LIST and .distr 1989-12-18 16:15:07 +00:00
eck 25291680b0 changed EM_* to _EM_*, added Makefile, LIST and .distr 1989-12-18 16:11:26 +00:00
eck 2a15fcf645 fixed Makefile, added .distr 1989-12-18 16:06:47 +00:00
eck dc2dd991c6 fixed some bugs, added LIST, Makefile & .distr 1989-12-18 16:02:55 +00:00
eck 8a409311da fixed some bugs, added LIST, Makefile & .distr 1989-12-18 15:49:11 +00:00
eck d43142d811 changed from Hart & Cheney to Cody & Waite 1989-12-18 15:44:36 +00:00
eck 6e2b44962f made a lot of changes 1989-12-18 15:33:48 +00:00
eck e00f89ea6f made a lot of changes 1989-12-18 15:14:14 +00:00
eck 2f92b46a9d made a lot of changes 1989-12-18 15:04:14 +00:00
eck bb48507f58 small changes, added LIST, Makefile and .distr 1989-12-18 14:44:38 +00:00
eck 94db19641a Initial revision 1989-12-18 14:40:54 +00:00
eck d8486967aa many changes and improvements 1989-12-18 14:00:32 +00:00
eck 0c6ba1fd58 added Header 1989-12-18 13:53:00 +00:00
eck 09a352c151 Initial revision 1989-12-18 13:50:55 +00:00
eck c98a786cc4 Intial revision 1989-12-18 13:31:20 +00:00
eck 8790a879c9 fixed sizeof() 1989-12-13 12:53:22 +00:00
eck bdb0b550f7 U-flag was not handled properly 1989-12-12 14:59:59 +00:00
eck b3a142e244 fixed null-pointer constants and SkipToNewLine() 1989-12-12 12:52:03 +00:00
eck 24a1c0d390 SkipToNewLine() now recognizes strings and character constants 1989-12-12 12:41:39 +00:00
ceriel fec7208f70 new malloc.c, derived from new Minix version 1989-11-30 14:59:18 +00:00
eck 5f3e4693e6 array type-checking was wrong 1989-11-28 15:28:52 +00:00
ceriel 86b6eab206 speeded up a bit for printing 0.0 1989-11-27 17:29:35 +00:00
eck c6d60cb24f fixed small bug 1989-11-27 11:40:58 +00:00
eck 671556cfc4 improved type-checking, fixed preprocessor bug, fixed syntax bug 1989-11-27 11:37:11 +00:00
eck 4734150614 removed ctype.c, the library functions are generated 1989-11-23 10:43:15 +00:00
eck d50600e263 fixed unary & and indirect calls 1989-11-22 16:41:09 +00:00
eck 96da16ce33 fixed bugs, added dynamic buffer allocation to preprocessor 1989-11-22 13:58:36 +00:00
eck f9fadbf045 fixed bugs, added dynamic buffer allocation 1989-11-22 12:59:15 +00:00
ceriel f6c7b7bbcd changed some variables from arith to int 1989-11-21 11:37:10 +00:00
ceriel cf4c99a093 fixed line number after line directives 1989-11-21 11:33:21 +00:00
ceriel 01b937d82e some arith variables changed into int 1989-11-21 11:28:56 +00:00
ceriel c6134a1f59 changed mechanism a bit 1989-11-20 14:35:23 +00:00
ceriel 07cb257465 print unsigned bitfields as unsigned 1989-11-17 16:37:20 +00:00
ceriel c4ca7db14f improved #line handling 1989-11-17 14:53:05 +00:00
ceriel c023409091 improved make.tokcase for EOF handling 1989-11-17 11:41:47 +00:00
ceriel cde3638bc9 improved for EOF handling 1989-11-17 11:40:48 +00:00
ceriel b6c29b5541 fixed bug which caused memory faults on erroneous input 1989-11-17 11:36:43 +00:00
ceriel a43e504fb1 fixed error messages by allowing more than one "simultaneous" symbol2str 1989-11-17 11:31:05 +00:00
ceriel 676fee0a3e fixed bug which caused unsigned bitfield problems 1989-11-17 11:28:38 +00:00
ceriel d57dfac961 improved error messages 1989-11-17 11:27:26 +00:00
ceriel 72f667fbf9 Added unsigned bit-field test 1989-11-15 17:46:58 +00:00
eck 776233c718 improved qualifier checking 1989-11-13 14:01:50 +00:00
ceriel 12669d882f call to abs should be call to fabs 1989-11-13 10:15:35 +00:00
ceriel b93cdd9aac do not use sprintf; use sprint instead 1989-11-09 21:33:29 +00:00
ceriel 0ce3cd0c76 no casts in constants used in #if! 1989-11-09 18:07:14 +00:00
ceriel 013a6f9cd6 cleaned up a little 1989-11-09 14:06:35 +00:00
ceriel cfc1d926bf minor mod: added comment and removed a variable 1989-11-09 12:33:08 +00:00
ceriel 67f9f2a74f many little changes: removed some lint complaints; max_int and max_unsigned
are now constants if NOCROSS is defined; added lexstrict and expr_strict,
and changed calls where needed
1989-11-08 16:52:34 +00:00
dick ba7100a4c2 wrong Makefile committed at 1.209 1989-11-07 13:04:39 +00:00
ceriel 3dc49877a5 Made suitable for fast compiler version 1989-11-06 16:01:13 +00:00
eck 6e551adf21 fixed some more bugs 1989-11-03 10:36:56 +00:00
dick 787904f82c restrained error messages for lint + misc. 1989-11-02 18:17:59 +00:00
ceriel 2db075ab69 fixed memory fault, adapted mechanism code_scope 1989-11-01 15:41:06 +00:00
eck 7a18c01a7c relaxed typechecking a little bit 1989-10-31 10:48:20 +00:00
eck bdbbf32404 fixed bug, added -o option 1989-10-31 10:02:48 +00:00
dick a817264e90 better (more restrained) error reporting 1989-10-30 16:19:35 +00:00
eck 480de7cafb fixed some bugs, changed warning interface 1989-10-27 13:33:10 +00:00
ceriel 0f8516f861 use more simple hashing algorithm, made namelist generation dependant on a #define 1989-10-26 16:16:35 +00:00
ceriel 44ff24f085 Also recognize 'defined' without parentheses 1989-10-25 14:23:08 +00:00
eck d186cb605f removed bug for identifiers starting with L 1989-10-24 15:06:23 +00:00
eck 9286928275 improved domacro when NOPP defined 1989-10-24 15:02:02 +00:00
eck 1ce56a4e78 renamed nccp.6 to ncpp.6 1989-10-24 10:18:45 +00:00
ceriel 44b74a6c84 fixed for minix, which does not have ftime 1989-10-24 10:04:35 +00:00
eck dfb4d0c576 deleted } in arith.c 1989-10-23 14:39:33 +00:00
ceriel 4a5a463e44 improved handling of , (comma) operator and some more Minix squeezing 1989-10-23 13:50:27 +00:00
ceriel 788788edc0 improvements for the , (comma) operator 1989-10-23 13:45:19 +00:00
eck 741b43044d renamed ch7xxx to ch3xxx 1989-10-23 13:00:35 +00:00
eck 1d37165575 Initial revision 1989-10-23 10:35:56 +00:00
ceriel cf3bcb5e63 Added routine to evaluate operands of binary operator 1989-10-20 17:08:48 +00:00
ceriel 352c5c581b some more Minix squeezing 1989-10-20 16:16:06 +00:00
eck b6a7d4fa0f Minix again 1989-10-20 13:06:10 +00:00
ceriel d6fa6357f2 some more Minix squeezing 1989-10-20 11:58:37 +00:00
ceriel 3d5569183e some more squeezing for Minix 1989-10-19 19:29:39 +00:00
ceriel e4857c2446 many minor modifications (it still will not fit on Minix!) 1989-10-19 14:53:25 +00:00
eck 8ff400fd0f squeezing for MINIX 1989-10-18 13:12:31 +00:00
ceriel 9c403e7299 Added mechanism to make peephole optimizer version bigger (needed for SUN-3) 1989-10-18 11:39:19 +00:00
eck 46fb868503 introduced TABGEN variable 1989-10-17 11:35:13 +00:00
eck aa2bfa7738 adjusted sources for NOPP 1989-10-16 12:38:25 +00:00
eck fd259c398c fltcstoper.c addded to Repository 1989-10-13 11:04:42 +00:00
ceriel 155d41c3e0 Added mechanism for generating fast compilers 1989-10-13 09:25:21 +00:00
ceriel 10b58a8520 The InputLevel variable only exists when NOPP is not defined 1989-10-12 14:22:35 +00:00
dick 2364f3f6b0 some small corrections in the lint part 1989-10-10 11:21:55 +00:00
ceriel 8c9c04b549 fix to bitfield code: contained non-portable shift 1989-10-09 13:42:39 +00:00
dick 6ea0fa77db varargs in panic() 1989-10-04 16:04:02 +00:00
dick d75369dd40 better error reporting 1989-10-04 15:36:56 +00:00
dick 53fe78afae correction lint.1 1989-10-04 15:33:49 +00:00
eck 4bde31f78a minor changes concerning void and pre-processor 1989-09-29 16:20:38 +00:00
eck 26cc87efe6 improved parameters 1989-09-29 15:46:33 +00:00
eck 00027d3893 some minor fixes, renamed ch7 stuff to ch3 1989-09-25 14:28:10 +00:00
eck fa4e6eecb4 lots and lots of changes & improvements 1989-09-19 16:13:23 +00:00
ceriel e52091ea7c Added l_comment.h to .distr file, fixed problem with #
occurring between macro name and arguments
1989-08-21 10:58:24 +00:00
ceriel b1347283b9 Added warning for initializer of formal parameter (the syntax allows this!) 1989-08-02 11:26:51 +00:00
ceriel 47955d174e fixed typo 1989-08-02 09:47:27 +00:00
ceriel 5f35d0c644 fixed behaviour on too long floating point constants 1989-07-26 11:16:59 +00:00
ceriel 90101c0dec Added ext_comp.c 1989-07-26 11:08:24 +00:00
ceriel 09a52b8cf2 fixed a problem with recursive macros: this was not always detected 1989-07-14 09:51:02 +00:00
ceriel 1b08effa77 Added some %persistents, improved behaviour of preprocessor, and other
minor mods
1989-07-11 12:34:38 +00:00
eck 27d7d5ed68 various fixes and improvements 1989-06-26 10:37:05 +00:00
ceriel b11e382851 some minor corrections 1989-06-19 09:56:16 +00:00
ceriel 3824cfd66d fixed some leapyear problems 1989-06-19 09:50:38 +00:00
ceriel 96a52f7a6f fixed exit status of test program 1989-06-19 09:49:22 +00:00
ceriel b1c3d1bc53 fixed problem with void returns and changed a warning somewhat 1989-06-15 19:06:56 +00:00
eck cd367c7940 Initial revision 1989-06-14 16:11:19 +00:00
eck 8c9800d8fe Initial revision 1989-06-14 15:07:06 +00:00
eck 06c441dab7 Initial revision 1989-06-14 14:41:35 +00:00
eck 5406895717 Initial revision 1989-06-13 11:23:28 +00:00
eck 341aaf8dc1 Initial revision 1989-06-12 15:22:14 +00:00
ceriel cc3459e5a8 fix to constant unary minus 1989-05-31 12:42:56 +00:00
eck 69f02d8abc Initial revision 1989-05-30 13:34:25 +00:00
ceriel aa0e321971 some fixes 1989-05-29 11:32:23 +00:00
ceriel efe2c8d032 some more fixes 1989-05-18 18:02:24 +00:00
ceriel e431cec90a fixed some errors 1989-05-18 16:48:28 +00:00
ceriel 9f7ee118f7 new versions, mostly from Cody and Waite 1989-05-18 15:37:54 +00:00
eck d818da36f0 Initial revision 1989-05-16 13:13:53 +00:00
eck ee50a1d717 Initial revision 1989-05-11 12:32:26 +00:00
eck c5b0e1bd4f Initial revision 1989-05-11 10:21:37 +00:00
eck 749c364816 Initial revision 1989-05-11 10:09:52 +00:00
eck 0a7c058d01 Initial revision 1989-05-10 16:22:28 +00:00
eck d2f7f252b2 Initial revision 1989-05-10 16:08:14 +00:00
eck f0cec58cf9 Initial revision 1989-05-10 10:43:58 +00:00
eck 85c9115d5b converted to ANSI C 1989-05-10 10:20:14 +00:00
eck d20988a1cb Initial revision 1989-05-10 09:39:49 +00:00
ceriel 7a7d0e413b recognize but ignore #pragma 1989-03-31 11:47:12 +00:00
dick 1d0b3910b2 more lint code 1989-03-06 15:17:39 +00:00
ceriel 3ab954e38c adapted to new ordering in FILE struct 1989-03-02 11:24:55 +00:00
ceriel 5187e46404 speeded up a bit 1989-02-22 16:16:11 +00:00
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 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
dick 429d527a64 more and better declarations in c.llb 1989-02-10 16:46:01 +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 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 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 15377abec5 Fix from Lindsey: changed CURRDIR mechanism to make it work on SunOs 4.0 1988-11-24 11:29:14 +00:00
ceriel 6ac798b50c removed tab.c, use tabgen 1988-11-16 11:23:58 +00:00
ceriel 090f27251e fixed typo 1988-11-15 11:30:47 +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
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 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 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
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 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
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 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