Michael Beck [Tue, 7 Apr 2009 12:22:09 +0000 (12:22 +0000)]
- fixed handling of calling convention in function_types_compatible()
[r25816]
Michael Beck [Tue, 7 Apr 2009 12:14:19 +0000 (12:14 +0000)]
- BugFix: use CC_DEFAULT as the default calling convention, NOT CDECL
[r25815]
Michael Beck [Tue, 7 Apr 2009 12:10:38 +0000 (12:10 +0000)]
- fixed function type calling convention
[r25814]
Michael Beck [Tue, 7 Apr 2009 12:04:51 +0000 (12:04 +0000)]
- BugFix: make_function_1_type_variadic() must hash the type itself, NOT
modify another one
- BugFix: r25810: only functions can have a prototype
- add a prototyped filed to function types
- K&R functions having a prototype are NOT variadic: this fixes
fehler166.c
[r25813]
Michael Beck [Tue, 7 Apr 2009 11:25:49 +0000 (11:25 +0000)]
- do NOT warn about "unnecessary static forward declaration" if the
definition is a K&R style function
[r25810]
Moritz Kroll [Mon, 6 Apr 2009 11:49:23 +0000 (11:49 +0000)]
Fixed assertion on C/gnu99/attributes5.c
[r25794]
Matthias Braun [Fri, 20 Mar 2009 05:32:50 +0000 (05:32 +0000)]
fix
[r25711]
Matthias Braun [Fri, 20 Mar 2009 05:21:46 +0000 (05:21 +0000)]
another bugfix
[r25709]
Matthias Braun [Fri, 20 Mar 2009 05:03:08 +0000 (05:03 +0000)]
bugfix
[r25706]
Matthias Braun [Fri, 20 Mar 2009 04:51:26 +0000 (04:51 +0000)]
another iteration of the struct layout code
[r25705]
Matthias Braun [Fri, 20 Mar 2009 04:51:03 +0000 (04:51 +0000)]
strings are visibility local
[r25704]
Matthias Braun [Tue, 10 Mar 2009 01:43:41 +0000 (01:43 +0000)]
another bitfield fix
[r25656]
Matthias Braun [Tue, 10 Mar 2009 01:30:29 +0000 (01:30 +0000)]
fix packed bitfield handling, long double is 16bytes in memory on OS/X but still only 10 byte in the CPU - need to differentiate CPU/memory representation
[r25654]
Matthias Braun [Mon, 9 Mar 2009 20:01:48 +0000 (20:01 +0000)]
attempt to fix bug #40
[r25652]
Matthias Braun [Mon, 9 Mar 2009 16:18:43 +0000 (16:18 +0000)]
TODO update
[r25649]
Matthias Braun [Mon, 9 Mar 2009 16:12:46 +0000 (16:12 +0000)]
correctly fix calling convention problems from bug #42
[r25648]
Matthias Braun [Sun, 8 Mar 2009 19:23:44 +0000 (19:23 +0000)]
packed struct implementation, attribute assignment isn't always correct yet
[r25642]
Matthias Braun [Sun, 8 Mar 2009 16:19:00 +0000 (16:19 +0000)]
Rework compound type handling:
- type layout is calculated completely in parser.c now. No more code duplication in ast2firm.c
- anonymous structs/unions are not flattened anymore, but implicit select
expressions are created
[r25637]
Michael Beck [Sun, 8 Mar 2009 10:47:24 +0000 (10:47 +0000)]
- do not expand the frame size for inner functions, they are NOT living on the outer frame
[r25631]
Matthias Braun [Sun, 8 Mar 2009 00:21:52 +0000 (00:21 +0000)]
create fold_constant_to_bool function to avoid some of the problems with long long constants
[r25630]
Matthias Braun [Sun, 8 Mar 2009 00:01:33 +0000 (00:01 +0000)]
don't output calling convention warnings on non-functions for now, as we tentatively apply the attribute on the return type too. Ignore calling convention when testing for function type compatibility - this is stupid but the way gcc works and we should be compatible here
[r25628]
Matthias Braun [Sat, 7 Mar 2009 23:32:22 +0000 (23:32 +0000)]
fix
[r25624]
Matthias Braun [Sat, 7 Mar 2009 23:11:29 +0000 (23:11 +0000)]
support attribute(__const) because it is used in glibc headers
[r25622]
Matthias Braun [Sat, 7 Mar 2009 20:40:28 +0000 (20:40 +0000)]
fix __extension__ in for statement
[r25615]
Matthias Braun [Sat, 7 Mar 2009 20:34:38 +0000 (20:34 +0000)]
improve deprecated handling, parse attributes after bitfields
[r25614]
Matthias Braun [Sat, 7 Mar 2009 20:04:17 +0000 (20:04 +0000)]
we have to be able to fold EXPR_INVALID since we report is as constant
[r25612]
Matthias Braun [Sat, 7 Mar 2009 19:55:51 +0000 (19:55 +0000)]
fix for last commit
[r25610]
Matthias Braun [Sat, 7 Mar 2009 19:52:41 +0000 (19:52 +0000)]
rewrite of attribute handling
[r25609]
Matthias Braun [Fri, 27 Feb 2009 17:06:41 +0000 (17:06 +0000)]
don't emit dead initializers
[r25577]
Matthias Braun [Fri, 27 Feb 2009 16:54:57 +0000 (16:54 +0000)]
report an error on static function declarations in local scope
[r25576]
Moritz Kroll [Sat, 21 Feb 2009 18:51:26 +0000 (18:51 +0000)]
Renamed get_Cond_defaultProj() to get_Cond_default_proj() for consistency.
[r25546]
Christoph Mallon [Fri, 20 Feb 2009 16:45:42 +0000 (16:45 +0000)]
Marginally simplify parse_goto().
[r25535]
Christoph Mallon [Fri, 20 Feb 2009 16:39:52 +0000 (16:39 +0000)]
Typos.
[r25534]
Christoph Mallon [Fri, 20 Feb 2009 16:38:59 +0000 (16:38 +0000)]
Supress the error message that the array size must be an integer expression if the type is invalid.
[r25533]
Sebastian Buchwald [Thu, 19 Feb 2009 19:24:20 +0000 (19:24 +0000)]
- fixed semantic of compound assign operator
- warn on out-of-range shift counts
[r25531]
Christoph Mallon [Fri, 6 Feb 2009 12:24:54 +0000 (12:24 +0000)]
skip_typeref().
[r25444]
Christoph Mallon [Fri, 6 Feb 2009 12:23:18 +0000 (12:23 +0000)]
Remove unnecessary assignment.
[r25443]
Christoph Mallon [Fri, 6 Feb 2009 12:22:28 +0000 (12:22 +0000)]
In strict mode set the error type for a k&r parameter without a type declaration, so we do not encounter a null pointer later on.
[r25442]
Moritz Kroll [Fri, 6 Feb 2009 00:48:26 +0000 (00:48 +0000)]
Added --export-ir parameter and support for .ir input files (at least one simple programm with two functions already survives a round trip)
[r25441]
Christoph Mallon [Wed, 4 Feb 2009 13:02:32 +0000 (13:02 +0000)]
Improve error recovery: Gracefully handle type names while parsing expressions.
[r25425]
Christoph Mallon [Wed, 4 Feb 2009 12:58:10 +0000 (12:58 +0000)]
Before testing the kind of an entity, make sure we got an entity at all.
[r25424]
Christoph Mallon [Wed, 4 Feb 2009 09:32:45 +0000 (09:32 +0000)]
Minor correction of error message.
[r25421]
Christoph Mallon [Fri, 30 Jan 2009 18:41:06 +0000 (18:41 +0000)]
Reference the standard.
[r25407]
Matthias Braun [Fri, 30 Jan 2009 10:29:25 +0000 (10:29 +0000)]
although the literals, label addresses are not constant expression, they are address constants
[r25401]
Matthias Braun [Thu, 29 Jan 2009 17:27:43 +0000 (17:27 +0000)]
cosmetics
[r25398]
Matthias Braun [Thu, 29 Jan 2009 17:27:40 +0000 (17:27 +0000)]
array size must be integer
[r25397]
Matthias Braun [Thu, 29 Jan 2009 17:27:22 +0000 (17:27 +0000)]
some things aren't constant
[r25396]
Matthias Braun [Thu, 29 Jan 2009 17:04:24 +0000 (17:04 +0000)]
avoid obstack_printf for very large strings (it's cheating with a fixed size buffer)
[r25395]
Christoph Mallon [Wed, 28 Jan 2009 10:07:59 +0000 (10:07 +0000)]
Document evaluation of typedef with VLA declarator by citing the standard.
[r25386]
Christoph Mallon [Wed, 28 Jan 2009 00:07:31 +0000 (00:07 +0000)]
C99 §6.2.3:1 24) There is only one name space for tags even though three are possible.
[r25385]
Christoph Mallon [Tue, 27 Jan 2009 23:33:22 +0000 (23:33 +0000)]
Indendation.
[r25384]
Christoph Mallon [Tue, 27 Jan 2009 14:50:58 +0000 (14:50 +0000)]
fputs() + fputc() -> fputs().
[r25382]
Matthias Braun [Tue, 20 Jan 2009 09:49:17 +0000 (09:49 +0000)]
fix of by 1 error, add a hack for pointer arrays
[r25288]
Matthias Braun [Tue, 20 Jan 2009 09:48:53 +0000 (09:48 +0000)]
missing skip_typeref
[r25287]
Matthias Braun [Tue, 20 Jan 2009 09:48:41 +0000 (09:48 +0000)]
add missing directories to Makefile
[r25286]
Michael Beck [Mon, 19 Jan 2009 20:55:11 +0000 (20:55 +0000)]
- fixed access to outer variables
[r25270]
Michael Beck [Mon, 19 Jan 2009 16:19:52 +0000 (16:19 +0000)]
- corerctly transform inner functions to firm
[r25265]
Michael Beck [Mon, 19 Jan 2009 01:06:42 +0000 (01:06 +0000)]
Get rid of pn_Start_value_param:
Access to value_type entities is now given by the frame pointer.
[r25250]
Michael Beck [Sun, 18 Jan 2009 01:05:51 +0000 (01:05 +0000)]
- some doxygen info for the changed routines
[r25242]
Michael Beck [Sun, 18 Jan 2009 01:00:33 +0000 (01:00 +0000)]
- add __based support
[r25241]
Christoph Mallon [Sat, 3 Jan 2009 06:55:57 +0000 (06:55 +0000)]
Remove unused variable.
[r25075]
Michael Beck [Sat, 3 Jan 2009 04:48:59 +0000 (04:48 +0000)]
- add intrinsic lowerer for strcpy(), mempcpy(), memmove(), strncmp()
- add missing strlen() intrinsic lowerer
[r25073]
Michael Beck [Sat, 3 Jan 2009 04:13:52 +0000 (04:13 +0000)]
- free-standing is a negative option
[r25071]
Michael Beck [Sat, 3 Jan 2009 03:56:38 +0000 (03:56 +0000)]
- implemented va_copy(), needed for C99
- add semantic to va_arg
- add walk_expression support for va_* expressions
[r25070]
Christoph Mallon [Fri, 2 Jan 2009 19:37:17 +0000 (19:37 +0000)]
map strcasecmp() to _stricmp() for Windows.
[r25066]
Michael Beck [Fri, 2 Jan 2009 17:45:38 +0000 (17:45 +0000)]
- typo fixed
[r25064]
Michael Beck [Fri, 2 Jan 2009 17:33:13 +0000 (17:33 +0000)]
- add FE support for MS _AddressOfReturnAddress()
[r25062]
Michael Beck [Fri, 2 Jan 2009 17:32:24 +0000 (17:32 +0000)]
- some comments
[r25061]
Michael Beck [Fri, 2 Jan 2009 17:31:06 +0000 (17:31 +0000)]
- va_start/va_arg uses now the stack parameter alignment
[r25060]
Michael Beck [Fri, 2 Jan 2009 17:13:48 +0000 (17:13 +0000)]
- add stricmp() macro
[r25056]
Christoph Mallon [Fri, 2 Jan 2009 11:43:19 +0000 (11:43 +0000)]
Use next_token() instead of eat() after eat_until_matching_token(), because we could have reached EOF.
[r25039]
Christoph Mallon [Fri, 2 Jan 2009 11:40:41 +0000 (11:40 +0000)]
When skipping arguments of unknown __attribute__s also skip the closing ")".
Reported by: sanxiyn
[r25038]
Christoph Mallon [Fri, 2 Jan 2009 09:40:56 +0000 (09:40 +0000)]
Complain about arrays with length <= 0.
[r25035]
Christoph Mallon [Thu, 1 Jan 2009 20:47:58 +0000 (20:47 +0000)]
Refer to the standard.
[r25031]
Christoph Mallon [Thu, 1 Jan 2009 20:43:53 +0000 (20:43 +0000)]
Avoid printing two more possible null pointers.
[r25030]
Christoph Mallon [Thu, 1 Jan 2009 20:12:42 +0000 (20:12 +0000)]
Tweak error message: Avoid printing null pointer string.
[r25029]
Christoph Mallon [Thu, 1 Jan 2009 20:09:45 +0000 (20:09 +0000)]
Move (void) parameter detection into a separate function, simplify daisy chaining parameters.
[r25028]
Christoph Mallon [Thu, 1 Jan 2009 17:52:48 +0000 (17:52 +0000)]
Simplify daisy chaining function call arguments.
[r25027]
Christoph Mallon [Thu, 1 Jan 2009 17:16:23 +0000 (17:16 +0000)]
Simplify daisy chaining function parameters in parse_kr_declaration_list().
[r25026]
Christoph Mallon [Thu, 1 Jan 2009 16:45:20 +0000 (16:45 +0000)]
Factorise code to allocate parameters.
[r25025]
Christoph Mallon [Thu, 1 Jan 2009 16:05:50 +0000 (16:05 +0000)]
Make parsing of __based() less intrusive.
[r25023]
Christoph Mallon [Thu, 1 Jan 2009 14:16:40 +0000 (14:16 +0000)]
Simplify daisy chaining of construct types in parse_inner_declarator().
[r25022]
Christoph Mallon [Thu, 1 Jan 2009 13:27:02 +0000 (13:27 +0000)]
Introduce union construct_type_t to avoid dubious casts.
[r25020]
Christoph Mallon [Thu, 1 Jan 2009 11:34:56 +0000 (11:34 +0000)]
Slightly simplify type hashing in construct_declarator_type().
[r25015]
Christoph Mallon [Thu, 1 Jan 2009 10:31:55 +0000 (10:31 +0000)]
Fix linkage check for local variables in check_variable_type_complete().
[r25014]
Christoph Mallon [Thu, 1 Jan 2009 10:16:04 +0000 (10:16 +0000)]
Remove the write-only attribute bool has_flexible_member from struct compound_t.
[r25013]
Christoph Mallon [Thu, 1 Jan 2009 09:34:19 +0000 (09:34 +0000)]
Simplify macro mumbo jumbo.
[r25012]
Christoph Mallon [Wed, 31 Dec 2008 20:43:53 +0000 (20:43 +0000)]
Fix logic error in is_builtin_expect() introduced in r24902.
[r25011]
Christoph Mallon [Tue, 30 Dec 2008 17:33:18 +0000 (17:33 +0000)]
Remove resolved TODO item (-Wparentheses).
[r24989]
Christoph Mallon [Tue, 30 Dec 2008 17:32:17 +0000 (17:32 +0000)]
Do not query the precedence in the AST printer, if it is known already.
[r24988]
Michael Beck [Mon, 29 Dec 2008 02:17:42 +0000 (02:17 +0000)]
- more MS intrinsics
[r24939]
Michael Beck [Sat, 27 Dec 2008 03:44:55 +0000 (03:44 +0000)]
- more builtins
[r24905]
Michael Beck [Sat, 27 Dec 2008 03:43:48 +0000 (03:43 +0000)]
- c_mode must be set before init_types()
[r24904]
Michael Beck [Sat, 27 Dec 2008 00:38:45 +0000 (00:38 +0000)]
- fixed warnings
[r24903]
Michael Beck [Sat, 27 Dec 2008 00:26:19 +0000 (00:26 +0000)]
Removed EXPR_BUILTIN_SYMBOL: Builtins are now predefined functions
with a builtin_kind != bk_none.
This simplifies parsing and allows to have "different" builtin-sets (enable MS builtins for instance)
[r24902]
Christoph Mallon [Fri, 26 Dec 2008 08:53:10 +0000 (08:53 +0000)]
Add windows-1252 (alias cp1252) as input encoding.
[r24898]
Christoph Mallon [Thu, 25 Dec 2008 09:22:08 +0000 (09:22 +0000)]
Fix printing of pointers and references to arrays.
[r24893]
Michael Beck [Wed, 24 Dec 2008 03:47:58 +0000 (03:47 +0000)]
- fixed implementation of various __builtin functions
[r24886]
Michael Beck [Wed, 24 Dec 2008 02:38:38 +0000 (02:38 +0000)]
- implemented __builtin_trap()
[r24883]
Michael Beck [Tue, 23 Dec 2008 17:35:01 +0000 (17:35 +0000)]
- implemented __builtin_(ffs|ctz|clz|popcount|parity)
[r24871]