Commit graph

275 commits

Author SHA1 Message Date
ceriel 50db0a3643 Fixed scope bug for structures: a(struct S *p) { struct S { int i; }; p->i ...
should work
1992-10-14 10:48:27 +00:00
ceriel 15dce0c943 Fix in "bits_in_type" variable 1992-07-22 15:44:47 +00:00
ceriel d390121280 improved symbol table generation when source file has line directives 1992-07-02 10:23:46 +00:00
ceriel ebdbabcedd Removed # in commands, and a small fix in ch3mon.c 1992-06-26 11:57:17 +00:00
ceriel 09a80e9e13 Fixed checking of unary '*' 1992-06-12 09:03:07 +00:00
ceriel 1de983200b Fixed bug in '#ifdef FALSE || 1 (garbage) 1992-05-26 18:09:11 +00:00
ceriel 47c7e6a43d Fixed bug in initalization expression handling 1992-04-21 09:54:32 +00:00
ceriel 5d9c7f4d9b Fixed bug: old-style float parameters resulted in wrong addresses for following parameters 1992-04-16 16:29:35 +00:00
ceriel 60c44af82b Fixed problem with array's of incomplete types 1992-04-14 13:30:37 +00:00
ceriel 661597162d Bug fix in old-style/new-style mixing 1992-03-02 14:37:37 +00:00
ceriel a38be6605e Do not use '#endif/#else xxx'; it is not allowed for ANSI C 1991-12-17 13:12:22 +00:00
ceriel f442ba9141 Fix to previous fix 1991-12-17 11:23:09 +00:00
ceriel 30de1bcf3f 'int x[];' is a valid compilation unit! See 3.7.2 of ANSI 1991-12-17 10:18:41 +00:00
ceriel 950e26815e Fix '#undef' handling 1991-12-16 14:06:09 +00:00
ceriel 9248d14195 l_states.c used 'const' as an identifier; unacceptable for ANSI-C! 1991-12-02 13:09:15 +00:00
ceriel ed4afc99f6 minor mods to parameters in grammar 1991-11-29 14:11:31 +00:00
ceriel 4e99d889ff Changed manual page installation mechanism 1991-11-05 15:31:14 +00:00
ceriel 1558096356 Bug fix in structure assignments 1991-10-29 15:57:26 +00:00
ceriel 6333faba3c Bug fix in padding code 1991-10-25 11:15:09 +00:00
ceriel 94b62ac792 Fixed typo 1991-10-17 16:36:54 +00:00
ceriel 82bad86ee6 a few minor fixes 1991-10-17 13:27:53 +00:00
ceriel 147bb196b2 generate Version.c 1991-10-16 13:07:28 +00:00
ceriel 1423d694f8 Corrected installation mechanism 1991-10-14 09:12:13 +00:00
ceriel 24a353f3e1 Did shift of 32. Not allowed 1991-10-02 13:41:33 +00:00
ceriel 9381b34dfa Fix: sometimes generated illegal register messages for parameters 1991-10-02 12:00:05 +00:00
ceriel 7551b8e83a Changes to manual page 1991-10-01 12:18:39 +00:00
ceriel daa7aef683 Removed LintPars 1991-10-01 09:54:42 +00:00
ceriel 8d25f69e77 Fix: sometimes crashed on initializers for unknown types 1991-09-30 15:00:46 +00:00
ceriel 4d7339bb60 Fixed proto.make 1991-09-13 12:01:42 +00:00
ceriel 0fb930b473 New installation mechanism 1991-08-26 14:39:14 +00:00
ceriel 942b24329f New installation mechanism 1991-08-26 14:29:59 +00:00
ceriel 2526e11a03 improved structure assignments 1991-08-26 14:26:07 +00:00
ceriel b503d85d23 If NOPP is defined, do not do trigraph translation; cpp does it 1991-08-09 13:57:13 +00:00
ceriel 2a6c8390fa Fix for symbolic debugger 1991-08-05 13:23:45 +00:00
ceriel da84cc69bc removed scan.c and fixed a bug: 'struct a;' is an empty decl if struct a is already known 1991-07-25 16:00:32 +00:00
ceriel 240dd55fd9 Removed the id_enum macro and replaced id_struct by id_tag (better name) 1991-07-08 16:49:04 +00:00
dick ca104453ca prototypes now handled by lint 1991-07-05 11:55:17 +00:00
ceriel 34d6b23ba6 Fixed two bugs:
- did not accept arrays in 'if (a) ...'
- did not detect too few parameters in functions with ellipsis prototypes
1991-07-01 14:10:15 +00:00
ceriel 42584ddcdb Fixed memory leak 1991-06-24 16:33:43 +00:00
ceriel 1be579a6e7 minor improvement to volatile code 1991-06-21 10:31:20 +00:00
ceriel 7a1d1ce1c1 fixed some label problems 1991-06-20 10:17:36 +00:00
ceriel 9f43986877 ANSI requires separate name space for labels, and made to use idf module 1991-06-19 16:12:56 +00:00
ceriel 3a074a6f99 FIxed problem with volatile structs and the ./-> operators 1991-06-13 15:56:14 +00:00
ceriel 2838d446ef Did not detect redeclaration of formal as local 1991-05-27 15:06:36 +00:00
ceriel d8d30b403b Fixed a cast bug (unsigned to unsigned char) 1991-05-13 10:08:54 +00:00
ceriel a3f4cdefa3 Minor change: improved conflict resolver that tested for never happening case 1991-04-19 15:26:50 +00:00
ceriel de12536c94 fixed bug with struct/union/enum declarations 1991-04-18 12:27:58 +00:00
ceriel 2552813eaa Corrected #error and #define 1991-04-11 10:52:52 +00:00
ceriel e096bc3fb3 fixed problem with extern declarations 1991-04-09 10:15:48 +00:00
ceriel ba2043808d correction: mixture of old-fashioned with ellipsis is always wrong 1991-04-03 10:02:40 +00:00
ceriel 8a25f4e66b Some minor mods in mixed mode checking 1991-03-27 12:46:37 +00:00
ceriel 3e16cf5116 Fix: prevent incorrect error messages 1991-03-26 09:45:20 +00:00
ceriel 17266fb373 A strict warning was given too often 1991-03-13 10:11:25 +00:00
ceriel 30867cf631 the -S option also falls under ifndef NOCROSS 1991-03-07 12:51:11 +00:00
ceriel b4aaa8824e be a bit more tolerant about external definitions 1991-03-07 12:01:34 +00:00
ceriel bd1da2f86c Improved switches, and fixed wrong place indication in error messages 1991-03-01 13:51:37 +00:00
ceriel e61d1b425d fixed old-fashioned decl check 1991-02-27 13:48:54 +00:00
ceriel dab38becd4 Fixed preprocessor problem with empty macro bodies 1991-02-21 12:08:13 +00:00
ceriel 24dd6b4cb5 Fixed problem with multiple TOKSEP's 1991-02-18 15:50:39 +00:00
ceriel 0539581d5d Generate less stupid conversions 1991-02-01 09:54:21 +00:00
ceriel e48822da7b Improved identifier string allocation mechanism 1991-01-30 11:25:25 +00:00
ceriel 81e80b2cd8 Changed implementation of dependency generator 1991-01-17 17:49:27 +00:00
ceriel e7b7aa3944 simplified compile time floating point somewhat 1991-01-15 18:21:16 +00:00
ceriel 0267340564 in SkipToNewLine(), check for TOKSEP; fixed problem with volatile 1991-01-15 12:00:24 +00:00
dick 32eddf7846 undo modifications outside #ifdef LINT 1991-01-10 17:49:19 +00:00
dick 4a7ef15df2 more additions for lint 1991-01-07 12:33:38 +00:00
ceriel 72fcc53c49 Check for garbage after #include 1991-01-03 13:45:22 +00:00
ceriel d7b6541a62 order of fields in struct was changed; PLEASE DICK, DO NOT DO THAT! 1990-12-19 17:32:04 +00:00
ceriel c747f1c1c0 simplified options.c 1990-12-19 11:07:15 +00:00
eck ccc5f10fca fixed bugs with storage-class and void in prototype 1990-12-17 13:08:05 +00:00
eck 73231e630b added error message because of declaration problems 1990-12-13 09:14:54 +00:00
eck 007151ef1d improved error-handling on conditionally excluded #-lines 1990-12-10 11:17:34 +00:00
dick 495a037714 lint update (merge from C compiler) 1990-12-07 14:42:26 +00:00
eck 0b35c31e5b fixed bug with function returning pointer to function 1990-12-04 11:09:34 +00:00
ceriel ae8ca35563 made Makefile more portable 1990-11-27 16:41:13 +00:00
ceriel 713521e0f5 make cmp entry was wrong 1990-11-22 13:48:08 +00:00
eck 7536a1f510 fixed two preprocessing bugs 1990-11-13 16:50:55 +00:00
eck 8a00e32bc8 fixed type of sizeof (decreases size!)
fixed bug with typedef of function with block scope
1990-11-12 15:28:44 +00:00
eck d7c15759ee added warning about old-fashioned declarations
cleaned up error reporting
changed implicit declaration handling
1990-11-02 09:23:27 +00:00
eck aef60fdda1 initialize sp_occurred[SP_SETJMP] at start of function 1990-10-26 12:38:06 +00:00
eck ba0cc3a57d fixed small bug (void expr. cast to void), squeezing for MINIX 1990-10-23 14:13:10 +00:00
eck b4f97588b7 fixed bug with undefined structs
ceriel changed debugging information
1990-10-19 11:50:32 +00:00
eck c3f305bea1 fixed bug with undefined structs
ceriel changed debugging information
1990-10-19 11:21:43 +00:00
ceriel 4483f237f6 de-linted somewhat 1990-10-02 17:13:40 +00:00
ceriel 41e3cf403b Added support for debugger, de-linted somewhat 1990-10-01 15:28:28 +00:00
eck fc6247ca5e removed some names from tokenname.c 1990-09-28 14:03:15 +00:00
eck 7dff46d44e fixed bug with -I flag 1990-09-27 15:59:38 +00:00
eck 5eb4a8d88f oops, fix for ## operator was wrong 1990-09-25 13:46:59 +00:00
eck a246152240 removed crash() call: it was wrong 1990-09-14 16:39:11 +00:00
eck 5ed44e3432 fixed error with # && ##-operators in non function-like macro's
pass printable garbage characters on to parser
1990-09-13 15:12:13 +00:00
eck e144c7cc4c fixed bugs with prototype scopes 1990-09-12 16:36:16 +00:00
eck 33c9811ba9 sometimes swap operands in expressions with side-effects 1990-09-06 14:49:52 +00:00
eck 2f0275ba3c added some optimalizations 1990-09-06 11:32:51 +00:00
eck b2efe2299f fixed bug in qualifier_type() 1990-09-04 10:48:04 +00:00
eck 02ea4988d1 fixed problems with declaration syntax 1990-09-03 13:46:30 +00:00
eck 47249aaad3 atw.h was wrong, since word_size may contain a cast 1990-07-20 10:30:49 +00:00
eck 43b01a70a0 squeezing for MINIX & bug fix in dumpidf 1990-07-19 17:16:36 +00:00
eck 7f5abdd670 fixed int to unsigned conversions, declarations, pp-list initialization 1990-07-13 10:18:27 +00:00
ceriel 0105d98302 tp_unsigned is now a true boolean 1990-06-21 15:49:41 +00:00
ceriel f234f061a1 Added dependency generator, reduced size of type structure 1990-06-08 10:03:47 +00:00
ceriel c4dabcd9a4 unsigned but-fields were sometimes sign-extended when converted to int 1990-05-18 10:29:57 +00:00
ceriel 0c6f2f490f the tp_sdef field of the type structure may only be used after checking tp_fund 1990-05-15 15:28:01 +00:00
eck a1e2a583b5 fixed bug with double definition 1990-05-03 16:18:22 +00:00
eck dc12b2fa3d warn about ptrdiff_t passed as long on 2-4 machines 1990-04-25 15:09:51 +00:00
eck 81b7f67cb4 result of sizeof() is 'unsigned int' (for backward compatibility) 1990-04-23 13:33:07 +00:00
eck 64e9d11570 the -U option did not work properly; call do_undef() now 1990-04-18 16:40:17 +00:00
eck 52f08181a6 two -D options for one identifier didn't work 1990-04-18 13:09:36 +00:00
eck a3f1aaa41f don't free prototype lists, they might be part of a typedef 1990-04-10 10:14:46 +00:00
eck aa4de95f26 various bug fixes & improvements 1990-04-06 15:37:16 +00:00
eck ad7e46a324 code for '*(ip = iarr) = x' was wrong 1990-04-04 15:08:45 +00:00
eck 84b8c8a6ca improved volatiles, added warning for possibly nested comments 1990-04-02 15:57:51 +00:00
eck ed2516a57a bug fixes after test-suite 1990-03-29 10:41:46 +00:00
ceriel 57790a926f simplified stupid ?: expression 1990-03-20 16:24:21 +00:00
eck 9a5ac60946 changed target_sizes.h to trgt_sizes.h 1990-03-12 13:35:26 +00:00
eck 61b718d716 floating-point yet again, fixed debugging bug 1990-03-01 13:02:39 +00:00
eck 2dd3439f90 also give a message on loading a floating-point function result 1990-02-28 15:32:07 +00:00
eck 44d9a8b42d improved the generation of floating-point messages 1990-02-28 14:51:35 +00:00
ceriel 63e64680bd Added some code to reverse evaluation order of assignment operators when possible 1990-02-28 12:18:36 +00:00
eck 073c81c9aa added extern declaration for flt_flt2arith() 1990-02-26 15:39:45 +00:00
ceriel 1228fe1baf a few fixes: usual arithmetic conversions were wrong 1990-02-20 13:31:52 +00:00
eck 67819cfd6c made a little mistake with the #else and #endif 1990-02-09 11:29:57 +00:00
eck d7d56d2cbb fixed bug with 0L; don't give warning on char x[3] = "abc" 1990-02-09 10:35:44 +00:00
eck 5625842582 fixed 2 bugs with line directives 1990-02-02 09:56:35 +00:00
eck 945c0dc404 don't recognize any pragma's (mechanism is still present) 1990-01-31 11:52:40 +00:00
eck 114048df57 ignore qualifiers when looking for sdef 1990-01-30 11:19:30 +00:00
eck 721005b4d7 big fix for #include in macro argument 1990-01-26 14:59:50 +00:00
eck 86501edf9e big fix: auto aggregate strings didn't work 1990-01-22 16:16:03 +00:00
eck b8d6eae391 fixed bug: tp_up is field in union; be more careful
give warning for struct/union declarations in prototypes
1990-01-18 16:58:53 +00:00
eck c4e0fddf5b MINIX squeezing with strings, fixed small preprocessor bug 1990-01-16 15:21:15 +00:00
eck 00876cd9df added alloction dump
shrunk some data structures
changed some ALLOCDEF's
changed setjmp to __setjmp
1990-01-10 17:33:35 +00:00
eck abcaa3e669 changed UnGetChar() to ChPushBack() in domacro.c 1990-01-05 09:28:54 +00:00
ceriel b60e8cead1 corrected install entry 1989-12-19 13:56:57 +00:00
ceriel a1f5834052 use normal C compiler 1989-12-19 11:07:03 +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 5f3e4693e6 array type-checking was wrong 1989-11-28 15:28:52 +00:00
eck 671556cfc4 improved type-checking, fixed preprocessor bug, fixed syntax bug 1989-11-27 11:37:11 +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
ceriel 01b937d82e some arith variables changed into int 1989-11-21 11:28:56 +00:00
ceriel c023409091 improved make.tokcase for EOF handling 1989-11-17 11:41:47 +00:00
ceriel b6c29b5541 fixed bug which caused memory faults on erroneous input 1989-11-17 11:36:43 +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
eck 776233c718 improved qualifier checking 1989-11-13 14:01:50 +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