Matthias Braun [Fri, 16 Nov 2007 21:13:31 +0000 (21:13 +0000)]
fix another bug in list handling of environment stack
[r18421]
Matthias Braun [Fri, 16 Nov 2007 20:53:01 +0000 (20:53 +0000)]
implement LOCAL_VARIBALE_ENTITY in reference_expression_addr
[r18420]
Christoph Mallon [Fri, 16 Nov 2007 20:46:22 +0000 (20:46 +0000)]
Handle the derefence operator in expression_to_addr().
[r18419]
Matthias Braun [Fri, 16 Nov 2007 20:45:03 +0000 (20:45 +0000)]
set address_taken flag
[r18418]
Matthias Braun [Fri, 16 Nov 2007 20:43:57 +0000 (20:43 +0000)]
we need _GNU_SOURCE for popen
[r18417]
Christoph Mallon [Fri, 16 Nov 2007 19:14:06 +0000 (19:14 +0000)]
Communicate via popen() with the preprocessor, to avoid the temporary file.
[r18416]
Matthias Braun [Fri, 16 Nov 2007 17:05:08 +0000 (17:05 +0000)]
implemented/fixed EXPR_SEL
[r18415]
Matthias Braun [Fri, 16 Nov 2007 16:01:42 +0000 (16:01 +0000)]
fix cond block in do-while loops
[r18414]
Matthias Braun [Fri, 16 Nov 2007 15:47:13 +0000 (15:47 +0000)]
fix local array allocation
[r18413]
Matthias Braun [Fri, 16 Nov 2007 15:38:21 +0000 (15:38 +0000)]
fix shift operations
[r18412]
Matthias Braun [Fri, 16 Nov 2007 14:48:44 +0000 (14:48 +0000)]
inline is not a type qualifier anymore, fix function entity creation
[r18411]
Matthias Braun [Fri, 16 Nov 2007 13:44:04 +0000 (13:44 +0000)]
improve array support, start doing some driver stuff
[r18410]
Matthias Braun [Thu, 15 Nov 2007 18:36:35 +0000 (18:36 +0000)]
improve ++ and -- semantic checks
[r18409]
Matthias Braun [Thu, 15 Nov 2007 18:06:43 +0000 (18:06 +0000)]
be more robust against parse errors
[r18408]
Matthias Braun [Thu, 15 Nov 2007 15:58:07 +0000 (15:58 +0000)]
fix some goto/label bugs
[r18407]
Matthias Braun [Thu, 15 Nov 2007 15:48:08 +0000 (15:48 +0000)]
implement gotos and labels
[r18406]
Matthias Braun [Thu, 15 Nov 2007 15:18:37 +0000 (15:18 +0000)]
fix a bug in the environment stack handling, improve goto/label parsing
[r18405]
Matthias Braun [Thu, 15 Nov 2007 15:18:12 +0000 (15:18 +0000)]
fix goto and label printing
[r18404]
Matthias Braun [Thu, 15 Nov 2007 14:42:36 +0000 (14:42 +0000)]
detect and handle errors when '}' is missing at end of input, start implementing gotos/labels
[r18403]
Matthias Braun [Thu, 15 Nov 2007 10:34:18 +0000 (10:34 +0000)]
fix uninitialized variable breaking implicitely defined functions
[r18402]
Matthias Braun [Thu, 15 Nov 2007 10:33:49 +0000 (10:33 +0000)]
skip empty declarations
[r18401]
Christoph Mallon [Wed, 14 Nov 2007 20:56:23 +0000 (20:56 +0000)]
Run control flow optimisation once, because the backend does not like Bad nodes.
[r18400]
Christoph Mallon [Wed, 14 Nov 2007 20:54:31 +0000 (20:54 +0000)]
Handle empty condition in for statements when building IR.
[r18399]
Matthias Braun [Wed, 14 Nov 2007 20:28:02 +0000 (20:28 +0000)]
dump keepalive edges
[r18398]
Matthias Braun [Wed, 14 Nov 2007 19:46:41 +0000 (19:46 +0000)]
do correct semantic check/adjustment for initializers, makes the last fix unnecessary
[r18397]
Christoph Mallon [Wed, 14 Nov 2007 19:26:28 +0000 (19:26 +0000)]
Handle empty step in for statements when building IR.
[r18396]
Matthias Braun [Wed, 14 Nov 2007 18:27:28 +0000 (18:27 +0000)]
fix left-right, right-left association, make sure global variable initialisations have correct mode, fix ast for printing
[r18395]
Matthias Braun [Wed, 14 Nov 2007 16:37:20 +0000 (16:37 +0000)]
implement atomic entity initialisation
[r18394]
Matthias Braun [Wed, 14 Nov 2007 16:34:58 +0000 (16:34 +0000)]
implement atomic entity initialisation
[r18393]
Matthias Braun [Wed, 14 Nov 2007 16:26:01 +0000 (16:26 +0000)]
allow some implicit pointer casts, fix pointer add,sub
[r18392]
Matthias Braun [Wed, 14 Nov 2007 16:14:43 +0000 (16:14 +0000)]
fix semantic bugs, do default promotion for call arguments, implement some arithmetic assign ops
[r18391]
Matthias Braun [Wed, 14 Nov 2007 14:24:12 +0000 (14:24 +0000)]
improve condition generation, support conditional expressions
[r18390]
Matthias Braun [Wed, 14 Nov 2007 10:44:08 +0000 (10:44 +0000)]
(untested) support for global variables
[r18389]
Matthias Braun [Wed, 14 Nov 2007 09:47:25 +0000 (09:47 +0000)]
support for pointer add/sub, no need for type_environment in ast2firm
[r18388]
Matthias Braun [Wed, 14 Nov 2007 01:26:04 +0000 (01:26 +0000)]
more work on semantic analysis
[r18387]
Christoph Mallon [Tue, 13 Nov 2007 22:49:15 +0000 (22:49 +0000)]
Create IR for for-statements.
[r18386]
Matthias Braun [Tue, 13 Nov 2007 21:10:28 +0000 (21:10 +0000)]
no need for ; in for statement after print_declaration_statement
[r18385]
Christoph Mallon [Tue, 13 Nov 2007 21:06:52 +0000 (21:06 +0000)]
Handle non-void functions which miss a return statement at the end. Especially handle the special case of main() returning 0.
[r18384]
Matthias Braun [Tue, 13 Nov 2007 21:03:47 +0000 (21:03 +0000)]
only look at declarations in main namespace
[r18383]
Matthias Braun [Tue, 13 Nov 2007 20:19:56 +0000 (20:19 +0000)]
implement switch statements, fix handling of dereference
[r18382]
Matthias Braun [Mon, 12 Nov 2007 20:00:22 +0000 (20:00 +0000)]
fix while statement_to_firm
[r18381]
Matthias Braun [Mon, 12 Nov 2007 19:48:52 +0000 (19:48 +0000)]
add missing files
[r18380]
Matthias Braun [Mon, 12 Nov 2007 19:48:06 +0000 (19:48 +0000)]
more work on local variable support
[r18379]
Matthias Braun [Mon, 12 Nov 2007 19:48:05 +0000 (19:48 +0000)]
parse wide strings
[r18378]
Matthias Braun [Mon, 12 Nov 2007 19:48:04 +0000 (19:48 +0000)]
stricter warnings
[r18377]
Matthias Braun [Mon, 12 Nov 2007 19:48:03 +0000 (19:48 +0000)]
partly implemented reference_expression_to_firm and unary expression_to_firm
[r18376]
Matthias Braun [Mon, 12 Nov 2007 19:48:01 +0000 (19:48 +0000)]
rename method to function
[r18375]
Matthias Braun [Mon, 12 Nov 2007 19:48:00 +0000 (19:48 +0000)]
link output
[r18374]
Matthias Braun [Mon, 12 Nov 2007 19:47:59 +0000 (19:47 +0000)]
more work on firm backend
[r18373]
Matthias Braun [Mon, 12 Nov 2007 19:47:58 +0000 (19:47 +0000)]
started create_function
[r18372]
Matthias Braun [Mon, 12 Nov 2007 19:47:57 +0000 (19:47 +0000)]
convert ast types to firm types
[r18371]
Matthias Braun [Mon, 12 Nov 2007 19:47:53 +0000 (19:47 +0000)]
link with libfirm
[r18370]
Matthias Braun [Sun, 30 Sep 2007 11:02:58 +0000 (11:02 +0000)]
- reworked handling environments and struct, union, enum namespace
- represent typedef and typeof explicitely in type graph
- lots of bugfixes
[r18369]
Christoph Mallon [Fri, 28 Sep 2007 21:58:33 +0000 (21:58 +0000)]
Fix typo in comment.
[r18368]
Matthias Braun [Fri, 28 Sep 2007 21:33:25 +0000 (21:33 +0000)]
improve initializer handling
[r18367]
Matthias Braun [Fri, 28 Sep 2007 21:06:38 +0000 (21:06 +0000)]
bugfixes, parse initializers
[r18366]
Matthias Braun [Fri, 28 Sep 2007 19:39:59 +0000 (19:39 +0000)]
we can now parse the infamous apfel.c, print ast as C and have it compiled and working again
[r18365]
Matthias Braun [Fri, 28 Sep 2007 19:02:24 +0000 (19:02 +0000)]
lex floating suffix, parser can now parse it's own source completely
[r18364]
Matthias Braun [Fri, 28 Sep 2007 18:37:42 +0000 (18:37 +0000)]
fix put_back in lexer
[r18363]
Matthias Braun [Fri, 28 Sep 2007 13:04:35 +0000 (13:04 +0000)]
Test multiline commits
Line2
[r18362]
Matthias Braun [Fri, 28 Sep 2007 13:02:52 +0000 (13:02 +0000)]
More work on cparser:
- cleanup some lexer code
- allow some usual non-c99 constructs (implicit function, implicit int type)
- parse float constants
[r18361]
Christoph Mallon [Fri, 28 Sep 2007 07:03:08 +0000 (07:03 +0000)]
Write the ANSI word "restrict" instead if "__restrict" in print_type_qualifiers().
[r18360]
Christoph Mallon [Fri, 28 Sep 2007 06:59:48 +0000 (06:59 +0000)]
Older GCCs do not know -Wextra. Only use -W.
[r18359]
Christoph Mallon [Fri, 28 Sep 2007 06:58:32 +0000 (06:58 +0000)]
Factorise and indent code for printing atomic types.
[r18358]
Matthias Braun [Thu, 27 Sep 2007 21:36:39 +0000 (21:36 +0000)]
- implemented decimal floating pointer numbers in lexer
- reworked declaration parser
- started working on array types
[r18357]
Matthias Braun [Sun, 23 Sep 2007 17:11:46 +0000 (17:11 +0000)]
filter trigraphs in advance and simplify lexer code because of that
[r18356]
Matthias Braun [Mon, 17 Sep 2007 09:02:05 +0000 (09:02 +0000)]
support for more builtins, additional bugfixes
[r18355]
Matthias Braun [Sun, 16 Sep 2007 14:05:40 +0000 (14:05 +0000)]
fix parameter names being taken from first declaration not currently parse declaration
[r18354]
Matthias Braun [Sun, 16 Sep 2007 13:36:11 +0000 (13:36 +0000)]
- countless bugfixes
- implement octal and hexadecimal escape sequences
- implemented more gcc extensions
[r18353]
Matthias Braun [Fri, 14 Sep 2007 21:44:52 +0000 (21:44 +0000)]
improvements in statement parsing, improvements in ast printing
[r18352]
Matthias Braun [Fri, 14 Sep 2007 20:21:53 +0000 (20:21 +0000)]
fix bug in method type hashing
[r18351]
Matthias Braun [Fri, 14 Sep 2007 20:11:50 +0000 (20:11 +0000)]
corrected type identities and handling of declaration/definitions
[r18350]
Matthias Braun [Fri, 14 Sep 2007 19:36:14 +0000 (19:36 +0000)]
improved union/struct parsing
[r18349]
Matthias Braun [Fri, 14 Sep 2007 11:56:54 +0000 (11:56 +0000)]
improvements for handling of function parameters
[r18348]
Matthias Braun [Mon, 10 Sep 2007 20:45:04 +0000 (20:45 +0000)]
improved support for enums
[r18347]
Matthias Braun [Sat, 8 Sep 2007 11:21:29 +0000 (11:21 +0000)]
handle multiple strings in a row
[r18346]
Matthias Braun [Sat, 8 Sep 2007 11:21:28 +0000 (11:21 +0000)]
improve parsing of function pointers
[r18345]
Matthias Braun [Sat, 8 Sep 2007 11:21:27 +0000 (11:21 +0000)]
add --print_ast option
[r18344]
Matthias Braun [Sat, 8 Sep 2007 11:21:27 +0000 (11:21 +0000)]
improve ast printing
[r18343]
Matthias Braun [Sat, 8 Sep 2007 11:21:26 +0000 (11:21 +0000)]
improve type printing
[r18342]
Matthias Braun [Fri, 7 Sep 2007 10:39:03 +0000 (10:39 +0000)]
improved parsing of function declarators
[r18341]
Matthias Braun [Fri, 7 Sep 2007 10:39:02 +0000 (10:39 +0000)]
improved representation of method types
[r18340]
Matthias Braun [Fri, 7 Sep 2007 10:39:02 +0000 (10:39 +0000)]
fix compound type comparison
[r18339]
Matthias Braun [Fri, 7 Sep 2007 10:39:01 +0000 (10:39 +0000)]
support for writing functions and function types in fluffy export
[r18338]
Matthias Braun [Thu, 6 Sep 2007 14:21:11 +0000 (14:21 +0000)]
add TODO point
[r18337]
Matthias Braun [Thu, 6 Sep 2007 00:14:10 +0000 (00:14 +0000)]
more bugfixes, started working on a fluffy declaration exporter
[r18336]
Matthias Braun [Sat, 21 Jul 2007 12:24:41 +0000 (12:24 +0000)]
bugfixes for context/symbol-declaration mapping
[r18335]
Matthias Braun [Sat, 21 Jul 2007 11:29:01 +0000 (11:29 +0000)]
refactored lexer code
[r18334]
Matthias Braun [Sat, 14 Jul 2007 00:38:09 +0000 (00:38 +0000)]
more work on parser, stdio.h is fully parsed now
[r18333]
Matthias Braun [Tue, 19 Jun 2007 22:48:08 +0000 (22:48 +0000)]
changed the way preprocessing directives are parsed
[r18332]
Matthias Braun [Mon, 18 Jun 2007 13:21:22 +0000 (13:21 +0000)]
make it compile
[r18331]
Matthias Braun [Mon, 18 Jun 2007 13:18:47 +0000 (13:18 +0000)]
more work on parser
[r18330]
Matthias Braun [Sun, 17 Jun 2007 10:06:29 +0000 (10:06 +0000)]
more work on parser
[r18329]
Matthias Braun [Sat, 16 Jun 2007 18:50:15 +0000 (18:50 +0000)]
more work on parser
[r18328]
Matthias Braun [Sat, 16 Jun 2007 15:36:01 +0000 (15:36 +0000)]
no enviornment passing around anymore in lexer, more work on lexer, import expression parsing infrastructure from mlang and started adapting to C
[r18327]
Matthias Braun [Sun, 10 Jun 2007 16:34:33 +0000 (16:34 +0000)]
adjust trigraphs test
[r18326]
Matthias Braun [Sun, 10 Jun 2007 16:33:32 +0000 (16:33 +0000)]
recognizre preprocessor hashs
[r18325]
Matthias Braun [Sun, 10 Jun 2007 15:08:40 +0000 (15:08 +0000)]
fix multiline comment parsing, extended comment test
[r18324]
Matthias Braun [Sun, 10 Jun 2007 14:09:35 +0000 (14:09 +0000)]
extended linefeed test
[r18323]
Matthias Braun [Sun, 10 Jun 2007 14:07:13 +0000 (14:07 +0000)]
proper newline handling
[r18322]