Dale Weiler
|
eb0e3c2898
|
Make it compile as C++ code again.
|
2013-02-06 10:36:27 +00:00 |
|
Wolfgang Bumiller
|
9bc774dcd3
|
find aliases in parser_find_global instead of parser_sya_operand
|
2013-02-06 10:55:06 +01:00 |
|
Dale Weiler
|
cb1a6a6a6b
|
Store the ast nodes for aliases
|
2013-02-06 09:44:23 +00:00 |
|
Dale Weiler
|
1e60bafcdc
|
Aliases to aliases is a bad idea, revert. Added better tests to show unused aliases
|
2013-02-06 09:28:42 +00:00 |
|
Dale Weiler
|
21e890602d
|
Fix alias bug. Implemented support for aliases of vectors (x, y, z components). Also made aliases corrector resident (e.g alias to vector foo, named bop, indexing bol_x [instead of bop_x] will result in a correction suggestion of bop_x now).
|
2013-02-06 09:09:47 +00:00 |
|
Dale Weiler
|
6fc141733f
|
Support for aliases to aliases too.
|
2013-02-06 08:43:11 +00:00 |
|
Dale Weiler
|
060bc0be10
|
Some sanity checks for aliases (undeclared variable checks, and incompatible types in alias checks.)
|
2013-02-06 05:51:05 +00:00 |
|
Dale Weiler
|
3dc8e9bb9c
|
add todo
|
2013-02-06 05:38:34 +00:00 |
|
Dale Weiler
|
e464cc1ea6
|
Implemented generalized attribute aliases. You can now alias functions, locals, or globals with [[alias("old_name")]] type new_name;
|
2013-02-06 05:30:09 +00:00 |
|
Dale Weiler
|
52ffc6db10
|
Merge branch 'cooking' of github.com:graphitemaster/gmqcc into cooking
|
2013-02-05 17:16:09 +00:00 |
|
Dale Weiler
|
b3e87c3280
|
ast referencing
|
2013-02-05 17:14:56 +00:00 |
|
Wolfgang Bumiller
|
4b5afe3456
|
ast_array_index_codegen: never regenerate code
|
2013-02-05 17:54:14 +01:00 |
|
Dale Weiler
|
e2c424d607
|
Merge branch 'cooking' of github.com:graphitemaster/gmqcc into cooking
|
2013-02-05 16:35:12 +00:00 |
|
Dale Weiler
|
8e87082e1d
|
Merge branch 'cooking' of github.com:graphitemaster/gmqcc into cooking
Conflicts:
parser.c
|
2013-02-05 16:34:55 +00:00 |
|
Wolfgang Bumiller
|
72106b0982
|
removing some left-over alloc checks
|
2013-02-05 17:34:40 +01:00 |
|
Dale Weiler
|
fed0f8b6b4
|
Work in progress <=> operator.
|
2013-02-05 16:34:03 +00:00 |
|
Wolfgang Bumiller
|
f860759758
|
fixing that comment
|
2013-02-05 17:24:02 +01:00 |
|
Wolfgang Bumiller
|
15141897ae
|
insert an error when an operator doesn't get found - note the comment...
|
2013-02-05 17:17:38 +01:00 |
|
Dale Weiler
|
31ce4c2afa
|
Better handling of multiple body functions.
|
2013-02-05 03:28:20 +00:00 |
|
Wolfgang Bumiller
|
e662efae61
|
fix: rotate_entfield_array_index_nodes deleting the old array caused expressions to be deleted recursively
|
2013-02-03 23:38:06 +01:00 |
|
Dale Weiler
|
319783e873
|
Better printing of token errors.
|
2013-02-02 01:03:39 +00:00 |
|
Dale Weiler
|
ccdfd4c65a
|
oops
|
2013-02-01 23:12:48 +00:00 |
|
Dale Weiler
|
a3559548a8
|
Fix ~ unary operator (can now const-fold). Also things like b &= ~1 work now. We also cache ast_value of float (-1) for -1-x (which is how ~ is implemented).
|
2013-02-01 23:10:23 +00:00 |
|
Dale Weiler
|
03b933bc7a
|
Work in progress ~ operator implemented as -1-x.
|
2013-02-01 12:56:01 +00:00 |
|
Dale Weiler
|
b9f46f4ef7
|
Not an assembler instruction, but virtual instruction used by the IR.
|
2013-01-30 06:31:24 +00:00 |
|
Dale Weiler
|
9f5f2b6d74
|
Fix pragma parsing that I broke.
|
2013-01-30 05:51:28 +00:00 |
|
Dale Weiler
|
e12d492d67
|
Removing #error/#warning/#message from parser, and making it part of preprocessor as directives again.
|
2013-01-30 05:49:08 +00:00 |
|
Dale Weiler
|
36c5722273
|
Rename
|
2013-01-30 05:35:07 +00:00 |
|
Dale Weiler
|
d201cfe6b4
|
Work in progress options cleanup.
|
2013-01-30 05:24:30 +00:00 |
|
Dale Weiler
|
f3c5c40104
|
Fix splint warning
|
2013-01-30 01:38:37 +00:00 |
|
Dale Weiler
|
3d35804a7d
|
Removed #warning and #error from ftepp, and made it part of the parser routine. These are "directives" that should exist regardless if -fftepp is enabled, like #pragma. Implemented #warning, #message and #error as directives in parser instead.
|
2013-01-30 01:24:58 +00:00 |
|
Wolfgang Bumiller
|
edfe340d09
|
Fix a warning
|
2013-01-26 14:43:49 +01:00 |
|
Wolfgang Bumiller
|
b39b61e514
|
store the actual parsing context before parsing into an expression and use that for the effectless-statement warning
|
2013-01-25 23:37:06 +01:00 |
|
Wolfgang Bumiller
|
9afe41471b
|
error when using a type not usable as boolean in a condition, ie an if statement
|
2013-01-25 19:19:23 +01:00 |
|
Wolfgang Bumiller
|
dca9dd56d1
|
adding missing wantop flag and some related parentheses code
|
2013-01-18 15:22:03 +01:00 |
|
Wolfgang Bumiller
|
ba207cc04c
|
Major expression parsing code refactoring, getting rid of lots of duplicated code and in the process also fixing a bug. Still thie will require more testing. xonotic code works with it though
|
2013-01-18 14:50:37 +01:00 |
|
Wolfgang Bumiller
|
1410840ef6
|
Make the varargs counter more stable, it'll now work with a function pointer with a different number of fixed params
|
2013-01-17 10:30:32 +01:00 |
|
Wolfgang Bumiller
|
00a9d2a9e3
|
fixing a possible NULL deref
|
2013-01-16 20:32:37 +01:00 |
|
Wolfgang Bumiller
|
e311dffcb3
|
fixing a warning
|
2013-01-16 16:16:52 +01:00 |
|
Wolfgang Bumiller
|
0ba8455f6a
|
initialize max_param_count to 1 so vararg functions don't try to create an accessor for an array of 0 elements...
|
2013-01-16 09:37:32 +01:00 |
|
Wolfgang Bumiller
|
e695a5919d
|
reduce the hashtable size a bit
|
2013-01-15 20:35:30 +01:00 |
|
Wolfgang Bumiller
|
73afc98699
|
fix: on error it was possible that leaveblock() is called after the function's already been deleted
|
2013-01-15 14:28:15 +01:00 |
|
Wolfgang Bumiller
|
150c6e21e7
|
fix a goto to a wrong error-cleanup part
|
2013-01-15 14:23:17 +01:00 |
|
Wolfgang Bumiller
|
c7ca5683b9
|
fix a possible leak
|
2013-01-15 14:20:08 +01:00 |
|
Wolfgang Bumiller
|
0f190026e8
|
Error on an empty paren expression
|
2013-01-15 14:18:03 +01:00 |
|
Wolfgang Bumiller
|
ee7d45f492
|
add a hint about -fvariadic-args to -Wvariadic-function
|
2013-01-15 11:35:18 +01:00 |
|
Wolfgang Bumiller
|
b208c1a49f
|
Fix a crash... if (!x) delete(x) yeah right...
|
2013-01-15 10:50:14 +01:00 |
|
Wolfgang Bumiller
|
ab8cc64dfd
|
constant-fold the 1/N division from a_vector/N
|
2013-01-13 20:53:07 +01:00 |
|
Wolfgang Bumiller
|
3d62cb37f1
|
allow vec/float
|
2013-01-13 20:49:16 +01:00 |
|
Wolfgang Bumiller
|
12ffd83d4f
|
parsewarning->compile_warning
|
2013-01-13 17:32:54 +01:00 |
|