Christoph Mallon [Mon, 17 Dec 2007 18:22:26 +0000 (18:22 +0000)]
Fix explicit dereferencing of function pointers.
[r18787]
Christoph Mallon [Mon, 17 Dec 2007 18:01:54 +0000 (18:01 +0000)]
When parsing a union declaration, build a union type, not a struct type.
[r18786]
Christoph Mallon [Mon, 17 Dec 2007 17:56:23 +0000 (17:56 +0000)]
Accept __builtin_nan and __builtin_nand.
[r18785]
Matthias Braun [Mon, 17 Dec 2007 16:07:50 +0000 (16:07 +0000)]
always prefere complete over incomplete types when mergin declarations
[r18784]
Matthias Braun [Mon, 17 Dec 2007 15:47:05 +0000 (15:47 +0000)]
testprogs for bugs, more TODO ideas
[r18783]
Matthias Braun [Mon, 17 Dec 2007 15:47:05 +0000 (15:47 +0000)]
bug in current cparser
[r18782]
Matthias Braun [Mon, 17 Dec 2007 15:46:56 +0000 (15:46 +0000)]
change complicated syntax
[r18781]
Christoph Mallon [Mon, 17 Dec 2007 14:48:13 +0000 (14:48 +0000)]
Fix creation of local static variables.
[r18780]
Matthias Braun [Mon, 17 Dec 2007 13:42:31 +0000 (13:42 +0000)]
rename the statement_base_t statement to base in the statement structs
[r18779]
Matthias Braun [Mon, 17 Dec 2007 13:12:32 +0000 (13:12 +0000)]
rename datatype to type in expression_base_t, rename expression_base_t expression to base in all the expression structs
[r18778]
Christoph Mallon [Mon, 17 Dec 2007 11:14:04 +0000 (11:14 +0000)]
Fix parsing of K&R style function definitions.
[r18777]
Christoph Mallon [Mon, 17 Dec 2007 10:37:33 +0000 (10:37 +0000)]
Do not crash when the second parameter of va_start() has no declaration.
[r18776]
Christoph Mallon [Sun, 16 Dec 2007 08:42:27 +0000 (08:42 +0000)]
Update the pointer to the last element when putting new elements into the lists of goto and label statements. This fixes spurious warnings.
[r18775]
Christoph Mallon [Sun, 16 Dec 2007 08:21:52 +0000 (08:21 +0000)]
Do no include -Wswitch-default in -Wall.
[r18774]
Michael Beck [Sat, 15 Dec 2007 19:02:39 +0000 (19:02 +0000)]
- fixed gcc compilation
- fixed -Wsign-compare
[r18773]
Michael Beck [Sat, 15 Dec 2007 18:56:02 +0000 (18:56 +0000)]
- implemented -Wsign-compare
- recognize -Wshadow (semantic not implemented yet)
[r18772]
Michael Beck [Sat, 15 Dec 2007 18:29:08 +0000 (18:29 +0000)]
Improved __alignof__: If expression represents a variable, return the alignment of this variable.
[r18771]
Michael Beck [Sat, 15 Dec 2007 18:14:42 +0000 (18:14 +0000)]
- fixed _-alignof__ expression: it has the same syntax like sizeof ...
[r18770]
Christoph Mallon [Sat, 15 Dec 2007 16:44:30 +0000 (16:44 +0000)]
Warn about unused global static variables, too, and do not warn about unused static *inline* functions.
[r18769]
Christoph Mallon [Sat, 15 Dec 2007 15:41:07 +0000 (15:41 +0000)]
Remove duplicates.
[r18768]
Christoph Mallon [Sat, 15 Dec 2007 15:39:51 +0000 (15:39 +0000)]
Accept -Wno-all, -Wno-extra and -Wno-unused like GCC.
[r18767]
Michael Beck [Sat, 15 Dec 2007 13:57:38 +0000 (13:57 +0000)]
- renamed is_type_floating() to is_type_float()
- some doxygen docu added
[r18766]
Michael Beck [Sat, 15 Dec 2007 04:14:15 +0000 (04:14 +0000)]
finished -Wunused-function
[r18765]
Michael Beck [Sat, 15 Dec 2007 04:03:40 +0000 (04:03 +0000)]
implemented -Wall, -Wextra, -Wunused, -Wunused-function with limited
functionality
[r18764]
Michael Beck [Sat, 15 Dec 2007 03:47:00 +0000 (03:47 +0000)]
improved error output for function cases
[r18763]
Michael Beck [Sat, 15 Dec 2007 03:34:02 +0000 (03:34 +0000)]
finished -Wunused-parameter
[r18762]
Michael Beck [Sat, 15 Dec 2007 03:22:36 +0000 (03:22 +0000)]
prelimiraries for -Wunused-parameter and -Wunused-variable:
- mark used declarations
- add field to link declarations
- recognize options (no warnings yet)
[r18761]
Michael Beck [Sat, 15 Dec 2007 03:07:35 +0000 (03:07 +0000)]
- fixed source position of binary expressions
- added initialization for -Wunused-label
- switched some warnings off by default
[r18760]
Michael Beck [Sat, 15 Dec 2007 02:49:56 +0000 (02:49 +0000)]
- implemented -Wunused-label
[r18759]
Michael Beck [Sat, 15 Dec 2007 02:30:37 +0000 (02:30 +0000)]
- implemented Wfloat-equal
[r18758]
Michael Beck [Fri, 14 Dec 2007 23:43:07 +0000 (23:43 +0000)]
- renamed context_t to the more logical scope_t
- improved -Wmain checks
- fixed icc warnings (jumping over initialization)
[r18757]
Christoph Mallon [Fri, 14 Dec 2007 19:21:54 +0000 (19:21 +0000)]
Implement -Wmain.
[r18756]
Christoph Mallon [Fri, 14 Dec 2007 18:29:09 +0000 (18:29 +0000)]
Print the unskipped type in warnings.
[r18755]
Christoph Mallon [Fri, 14 Dec 2007 18:19:45 +0000 (18:19 +0000)]
Also do not warn about function declarations without a prior declaration. *sigh*
[r18754]
Christoph Mallon [Fri, 14 Dec 2007 18:14:40 +0000 (18:14 +0000)]
Simplify condition.
[r18753]
Christoph Mallon [Fri, 14 Dec 2007 18:11:21 +0000 (18:11 +0000)]
Do not warn about no prior declaration for extern declarations.
[r18752]
Christoph Mallon [Fri, 14 Dec 2007 18:08:18 +0000 (18:08 +0000)]
Do not warn about no prior declaration for non-global variables, enum entries and static thread local variables.
[r18751]
Christoph Mallon [Fri, 14 Dec 2007 17:44:25 +0000 (17:44 +0000)]
Do not warn about an empty statement after a label, i.e. label:;.
[r18750]
Christoph Mallon [Fri, 14 Dec 2007 17:28:16 +0000 (17:28 +0000)]
Warn when a non-static global variable has no prior declaration.
[r18749]
Michael Beck [Fri, 14 Dec 2007 17:24:40 +0000 (17:24 +0000)]
add option -l and -L, reorganize option handler
[r18748]
Christoph Mallon [Fri, 14 Dec 2007 17:17:35 +0000 (17:17 +0000)]
Do not warn, if main() has no prior declaration or prototype.
[r18747]
Matthias Braun [Fri, 14 Dec 2007 17:02:28 +0000 (17:02 +0000)]
mark_private works again
[r18746]
Matthias Braun [Fri, 14 Dec 2007 17:02:01 +0000 (17:02 +0000)]
disable cc optimisations for now until they are fixed
[r18745]
Matthias Braun [Fri, 14 Dec 2007 17:02:01 +0000 (17:02 +0000)]
no need to pass expression type around in parse_sub_initializer
[r18744]
Christoph Mallon [Fri, 14 Dec 2007 16:54:15 +0000 (16:54 +0000)]
Make warning about statement without effect less aggressive for && and ||.
[r18743]
Matthias Braun [Fri, 14 Dec 2007 16:52:36 +0000 (16:52 +0000)]
fix warnings, disable empty statement warning by default
[r18742]
Matthias Braun [Fri, 14 Dec 2007 16:52:27 +0000 (16:52 +0000)]
-W switches are not allowed to have a whitespace after -W
[r18741]
Christoph Mallon [Fri, 14 Dec 2007 10:04:41 +0000 (10:04 +0000)]
Add -Wempty-statement, which warns about empty statements, i.e. lone ';'
[r18740]
Christoph Mallon [Fri, 14 Dec 2007 09:50:38 +0000 (09:50 +0000)]
Do not crash, when the body of an switch statement is empty.
[r18739]
Christoph Mallon [Fri, 14 Dec 2007 09:48:32 +0000 (09:48 +0000)]
Implement -Wunknown-pragmas.
[r18738]
Christoph Mallon [Fri, 14 Dec 2007 09:44:12 +0000 (09:44 +0000)]
Implement -Wswitch-default.
[r18737]
Christoph Mallon [Fri, 14 Dec 2007 07:21:18 +0000 (07:21 +0000)]
Consider type qualifiers to avoid incorrect format warnings.
[r18736]
Christoph Mallon [Fri, 14 Dec 2007 06:36:31 +0000 (06:36 +0000)]
Remove stray \n.
[r18735]
Christoph Mallon [Thu, 13 Dec 2007 22:25:35 +0000 (22:25 +0000)]
Fix r741.
[r18734]
Christoph Mallon [Thu, 13 Dec 2007 22:04:01 +0000 (22:04 +0000)]
Implement -Wmissing_prototypes.
[r18733]
Christoph Mallon [Thu, 13 Dec 2007 21:51:13 +0000 (21:51 +0000)]
Implement -Wunused-value.
[r18732]
Christoph Mallon [Thu, 13 Dec 2007 16:40:13 +0000 (16:40 +0000)]
Remove unused macro.
[r18731]
Christoph Mallon [Thu, 13 Dec 2007 15:26:45 +0000 (15:26 +0000)]
Implement a new agile warning framework.
[r18730]
Christoph Mallon [Thu, 13 Dec 2007 09:59:18 +0000 (09:59 +0000)]
Remove an unnecessary NULL test, because parse_compound_statement() never returns NULL.
[r18729]
Christoph Mallon [Thu, 13 Dec 2007 09:57:27 +0000 (09:57 +0000)]
Warn about empty statement expressions ({}).
[r18728]
Christoph Mallon [Thu, 13 Dec 2007 09:51:08 +0000 (09:51 +0000)]
Do no crash on empty statement expressions ({}).
[r18727]
Christoph Mallon [Thu, 13 Dec 2007 09:38:48 +0000 (09:38 +0000)]
Remove unnecessary temporary variables.
[r18726]
Christoph Mallon [Thu, 13 Dec 2007 08:48:33 +0000 (08:48 +0000)]
Generate an error, if argument and parameter type are incompatible.
[r18725]
Christoph Mallon [Thu, 13 Dec 2007 08:30:02 +0000 (08:30 +0000)]
Remove unnecessary tests for the error type or at least push them in error paths.
[r18724]
Christoph Mallon [Thu, 13 Dec 2007 08:12:00 +0000 (08:12 +0000)]
Use the error type consistently.
[r18723]
Matthias Braun [Wed, 12 Dec 2007 22:45:50 +0000 (22:45 +0000)]
test for invalid array/function types at type construction not when the declaration is created.
[r18722]
Matthias Braun [Wed, 12 Dec 2007 22:44:56 +0000 (22:44 +0000)]
more tricky test
[r18721]
Michael Beck [Wed, 12 Dec 2007 17:41:13 +0000 (17:41 +0000)]
use type_error_type instead of NULL
[r18720]
Christoph Mallon [Wed, 12 Dec 2007 17:28:31 +0000 (17:28 +0000)]
Use semantic_assign() properly.
[r18719]
Michael Beck [Wed, 12 Dec 2007 17:23:00 +0000 (17:23 +0000)]
- functions returning arrays are not allowed
- enum types can be incomplete like coumpound types
[r18718]
Michael Beck [Wed, 12 Dec 2007 16:48:37 +0000 (16:48 +0000)]
- create an error type
- improved declaration checking
[r18717]
Michael Beck [Wed, 12 Dec 2007 15:51:33 +0000 (15:51 +0000)]
add error if array of voids is declared
[r18716]
Matthias Braun [Wed, 12 Dec 2007 15:27:55 +0000 (15:27 +0000)]
abort if preprocessing fails
[r18715]
Michael Beck [Wed, 12 Dec 2007 15:27:58 +0000 (15:27 +0000)]
test for error directive
[r18714]
Christoph Mallon [Wed, 12 Dec 2007 15:09:16 +0000 (15:09 +0000)]
Do not generate a warning about a redundant declaration for function definitions.
[r18713]
Christoph Mallon [Wed, 12 Dec 2007 15:07:17 +0000 (15:07 +0000)]
Print original (unskipped) type in error message.
[r18712]
Christoph Mallon [Wed, 12 Dec 2007 15:05:39 +0000 (15:05 +0000)]
Cleanup.
[r18711]
Michael Beck [Wed, 12 Dec 2007 15:05:44 +0000 (15:05 +0000)]
fixed crash with unclosed string literal
[r18710]
Christoph Mallon [Wed, 12 Dec 2007 15:02:07 +0000 (15:02 +0000)]
Remove redundant record_declaration() call.
[r18709]
Christoph Mallon [Wed, 12 Dec 2007 13:44:44 +0000 (13:44 +0000)]
Handle string literals with embedded \0 correctly.
[r18708]
Matthias Braun [Wed, 12 Dec 2007 11:07:18 +0000 (11:07 +0000)]
designator test
[r18707]
Matthias Braun [Wed, 12 Dec 2007 10:45:08 +0000 (10:45 +0000)]
use allocate_statement_zero for allocating statements
[r18706]
Christoph Mallon [Wed, 12 Dec 2007 09:43:52 +0000 (09:43 +0000)]
Add allocate_declaration_zero() for convenience.
[r18705]
Christoph Mallon [Wed, 12 Dec 2007 09:19:07 +0000 (09:19 +0000)]
Plug minor memory leak when an error occurs while parsing enum entries.
[r18704]
Christoph Mallon [Wed, 12 Dec 2007 09:16:36 +0000 (09:16 +0000)]
Remove unnecessary pointer/type indirection.
[r18703]
Christoph Mallon [Wed, 12 Dec 2007 09:08:21 +0000 (09:08 +0000)]
Improve error messages slightly.
[r18702]
Christoph Mallon [Wed, 12 Dec 2007 08:19:30 +0000 (08:19 +0000)]
A statement_base_t is enough space for break and continue statements.
[r18701]
Christoph Mallon [Wed, 12 Dec 2007 08:05:20 +0000 (08:05 +0000)]
Remove stray \n in warning message.
[r18700]
Christoph Mallon [Wed, 12 Dec 2007 08:01:49 +0000 (08:01 +0000)]
Fix off-by-two-tokens error in the location of break and continue statements.
[r18699]
Christoph Mallon [Wed, 12 Dec 2007 07:51:33 +0000 (07:51 +0000)]
Fix checking, whether break/continue is within a loop/switch.
[r18698]
Michael Beck [Wed, 12 Dec 2007 02:49:47 +0000 (02:49 +0000)]
made error output for missing labels gcc like
[r18697]
Michael Beck [Wed, 12 Dec 2007 02:39:50 +0000 (02:39 +0000)]
- added check for multiple default labels
- added check for undefined goto labels
[r18696]
Michael Beck [Wed, 12 Dec 2007 01:51:01 +0000 (01:51 +0000)]
more cases to test added
[r18695]
Michael Beck [Wed, 12 Dec 2007 01:50:09 +0000 (01:50 +0000)]
add missing test for default
[r18694]
Michael Beck [Wed, 12 Dec 2007 01:47:35 +0000 (01:47 +0000)]
check that break and continue are inside switches and loops
[r18693]
Michael Beck [Wed, 12 Dec 2007 01:39:12 +0000 (01:39 +0000)]
test for wrong switches
[r18692]
Michael Beck [Wed, 12 Dec 2007 01:37:58 +0000 (01:37 +0000)]
removed superfluous &
[r18691]
Michael Beck [Wed, 12 Dec 2007 01:35:44 +0000 (01:35 +0000)]
- check for case labels outside a switch statement
- add infrastructure for further case label checks
[r18690]
Matthias Braun [Wed, 12 Dec 2007 00:03:09 +0000 (00:03 +0000)]
2 test programs I had lying around here
[r18689]
Matthias Braun [Wed, 12 Dec 2007 00:02:12 +0000 (00:02 +0000)]
improvements and fixes to K&R style parameter parsing
[r18688]