Wolfgang (Blub) Bumiller
|
0af62801f4
|
Don't add redeclared globals a second time
|
2012-11-25 23:35:31 +01:00 |
|
Wolfgang (Blub) Bumiller
|
38df8b5e40
|
Another case for -fassign-function-types
|
2012-11-25 23:28:47 +01:00 |
|
Wolfgang (Blub) Bumiller
|
0d3896ca54
|
introducing -fassign-function-types, previously guarded by std==qcc this is now the flag to cause a warning (-Wassign-function-types) instead of an error when assigning functions of wrong types
|
2012-11-25 23:27:48 +01:00 |
|
Wolfgang (Blub) Bumiller
|
2f5a26a4de
|
__builtin_debug_printtype directive... helped me down tracking a bug: parsing typedeffed types in parameter lists properly now
|
2012-11-25 22:57:11 +01:00 |
|
Wolfgang (Blub) Bumiller
|
08ef8bd045
|
Only check the ast-type of a switch case, not if it's an ACTUAL constant, fteqcc doesn't either... grrr
|
2012-11-25 22:40:35 +01:00 |
|
Wolfgang (Blub) Bumiller
|
10f49a38ca
|
actually handle unary plus...
|
2012-11-25 22:38:52 +01:00 |
|
Wolfgang (Blub) Bumiller
|
42bd37a2e8
|
Ah right, 'var' is not an actual keyword, support TOKEN_IDENT-var inside functions
|
2012-11-25 22:26:28 +01:00 |
|
Wolfgang (Blub) Bumiller
|
f1bbdb7d45
|
Use the correct default cv-qualifier on locals
|
2012-11-25 22:16:08 +01:00 |
|
Wolfgang (Blub) Bumiller
|
c62e0a93eb
|
Allow 'var' in functions... even there initialized locals seem to be constant by default... laaaaaaaame
|
2012-11-25 22:15:08 +01:00 |
|
Wolfgang (Blub) Bumiller
|
797ceb9e04
|
handling TOKEN_CHARCONST - -Wmultibyte-character
|
2012-11-25 22:11:21 +01:00 |
|
Wolfgang (Blub) Bumiller
|
e2602e6b87
|
Filling up remaining gotos at the end of a function for when the label is defined after the goto; erroring for missing labels
|
2012-11-25 21:56:38 +01:00 |
|
Wolfgang (Blub) Bumiller
|
24f9b63475
|
parsing goto
|
2012-11-25 21:53:14 +01:00 |
|
Wolfgang (Blub) Bumiller
|
474d8bd6f0
|
ast_label, and labels later used for goto
|
2012-11-25 21:27:14 +01:00 |
|
Wolfgang (Blub) Bumiller
|
336d91494f
|
temporarily disable the 'constant' flag when parsing the initializer to avoid the 'assigning to constant' error in a block-local constant
|
2012-11-25 21:10:43 +01:00 |
|
Wolfgang (Blub) Bumiller
|
22173df7bd
|
Allow 'const' within function bodies
|
2012-11-25 21:08:30 +01:00 |
|
Wolfgang (Blub) Bumiller
|
3424b7227b
|
Set the output to NULL always before parsing stuff
|
2012-11-25 20:48:06 +01:00 |
|
Wolfgang (Blub) Bumiller
|
4513fc4d0b
|
fix wrong parameter order in parse_variable calls, dammit I hate how 'bool' and 'int' are implicitly convertible here
|
2012-11-25 20:29:12 +01:00 |
|
Wolfgang (Blub) Bumiller
|
1b72cb264a
|
more on CV_CONST/CV_VAR, initializers to check 'constant' not just 'hasvalue'
|
2012-11-25 20:25:39 +01:00 |
|
Wolfgang (Blub) Bumiller
|
6cd432a909
|
const/variable qualifier flag for parse_variable
|
2012-11-25 20:22:47 +01:00 |
|
Wolfgang (Blub) Bumiller
|
779c974511
|
Allow dangling semicolons for now
|
2012-11-25 20:18:40 +01:00 |
|
Wolfgang (Blub) Bumiller
|
f2887f1208
|
a '(void)' parameter list does not mean 1 parameter of type void, but empty... xonotic needs this
|
2012-11-25 19:44:21 +01:00 |
|
Wolfgang (Blub) Bumiller
|
b59401db1b
|
fixed: -frelaxed-switch check was in the wrong position
|
2012-11-25 19:42:16 +01:00 |
|
Wolfgang (Blub) Bumiller
|
353b1f945f
|
assignment to constant error
|
2012-11-25 19:37:31 +01:00 |
|
Wolfgang (Blub) Bumiller
|
39f572fe99
|
constant flag, -finitialized-nonconstants to turn initialized globals into mutable variables
|
2012-11-25 19:35:00 +01:00 |
|
Wolfgang (Blub) Bumiller
|
6e400ca81f
|
ast: isconst->hasvalue, const keyword will set the const flag
|
2012-11-25 19:30:10 +01:00 |
|
Wolfgang (Blub) Bumiller
|
55aa53beca
|
Parse the 'not' keyword in if as TOKEN_IDENT
|
2012-11-25 19:20:00 +01:00 |
|
Wolfgang (Blub) Bumiller
|
ca033e5acd
|
Some side-effect propagation for better warnings, so that comma-operators with assignments in them don't cause the -Weffectless-statement warning, and fixing ternary precedence for fte operator list
|
2012-11-25 19:19:36 +01:00 |
|
Wolfgang (Blub) Bumiller
|
63d89f9f5a
|
Allow regular AND used on non-float types
|
2012-11-25 18:56:22 +01:00 |
|
Wolfgang (Blub) Bumiller
|
2c0a9d78df
|
Guard translatable strings by -ftranslatable-strings, defaults to ON with -std=fteqcc
|
2012-11-25 18:25:01 +01:00 |
|
Wolfgang (Blub) Bumiller
|
66317aaef9
|
update noops flag while parsing a translatable string
|
2012-11-25 18:23:48 +01:00 |
|
Wolfgang (Blub) Bumiller
|
7838e772de
|
Translatable string constants
|
2012-11-25 18:22:00 +01:00 |
|
Wolfgang (Blub) Bumiller
|
0df394dcbc
|
parser_const_string can now create a translatable string
|
2012-11-25 18:17:08 +01:00 |
|
Wolfgang (Blub) Bumiller
|
e22af32805
|
Fix parsing of multi-dot field types
|
2012-11-25 17:43:13 +01:00 |
|
Wolfgang (Blub) Bumiller
|
2884556fe3
|
multiple dots to start a field type, ie ..float for a fieldpointer field
|
2012-11-25 17:37:54 +01:00 |
|
Wolfgang (Blub) Bumiller
|
b5d6f454a4
|
moving cleanvar=false out of a condition
|
2012-11-25 16:20:22 +01:00 |
|
Wolfgang (Blub) Bumiller
|
2da37129d7
|
a more verbose error
|
2012-11-25 15:58:10 +01:00 |
|
Wolfgang (Blub) Bumiller
|
4b619ce1cd
|
-Wconst-var
|
2012-11-25 15:56:13 +01:00 |
|
Wolfgang (Blub) Bumiller
|
f6a374c1d5
|
free the _locals vector
|
2012-11-25 15:31:26 +01:00 |
|
Wolfgang (Blub) Bumiller
|
3c0c002e2f
|
Fix a missing uninitialized value which caused typedefs within functions to cause a segfault
|
2012-11-25 15:30:31 +01:00 |
|
Wolfgang (Blub) Bumiller
|
63d9e44f56
|
Allow typedefs to shadow defs of previous scopes
|
2012-11-25 15:27:22 +01:00 |
|
Wolfgang (Blub) Bumiller
|
b851f542ac
|
Implementing typedef
|
2012-11-25 15:21:52 +01:00 |
|
Wolfgang (Blub) Bumiller
|
d69b576d6b
|
Fix some uninitialized values
|
2012-11-25 13:55:29 +01:00 |
|
Wolfgang (Blub) Bumiller
|
613e1e7247
|
Change the parser to use the hashtable functions
|
2012-11-25 13:23:37 +01:00 |
|
Dale Weiler
|
5c0a62be96
|
Add respective license headers + some cleanups
|
2012-11-24 21:22:35 +00:00 |
|
Wolfgang (Blub) Bumiller
|
86f3ef2194
|
turn the message about global variable double-declaration into a warning instead of an error on std != gmqcc
|
2012-11-23 22:30:35 +01:00 |
|
Wolfgang (Blub) Bumiller
|
39b8b6a660
|
warn about double function declarations...
|
2012-11-23 22:22:22 +01:00 |
|
Wolfgang (Blub) Bumiller
|
2bc99076cf
|
'var' is now no keyword anymore, :\
|
2012-11-23 22:07:35 +01:00 |
|
Wolfgang (Blub) Bumiller
|
1c7e9c5fde
|
handling 'const' - still need correct separation of constant and just initialized later when we distinguish between them
|
2012-11-23 21:52:16 +01:00 |
|
Wolfgang (Blub) Bumiller
|
6df6906ed2
|
Adding an unrecognized keywords error
|
2012-11-23 21:41:50 +01:00 |
|
Wolfgang (Blub) Bumiller
|
0d33939b1b
|
operator &~=
|
2012-11-23 14:39:05 +01:00 |
|