Commit graph

43 commits

Author SHA1 Message Date
Wolfgang (Blub) Bumiller
0e3db81cf3 uninit.qc test 2012-08-21 11:57:23 +02:00
Wolfgang (Blub) Bumiller
99bab76006 Creating the ast_function for a function only when encountering its body, so if no body is specified it works like a function pointer - just like QC wants it 2012-08-20 18:09:41 +02:00
Wolfgang (Blub) Bumiller
481baeeedc relax parse_close_paren to allow values in parenthesis with no operators... duh 2012-08-19 19:35:45 +02:00
Wolfgang (Blub) Bumiller
bd64d7d7b4 Automatic prototyping of frame-functions 2012-08-19 19:24:43 +02:00
Wolfgang (Blub) Bumiller
655e882e63 setting data/frames.qc right again 2012-08-19 17:52:44 +02:00
Wolfgang (Blub) Bumiller
e1ffa04bc2 calls for now use store_value since we don't properly deal with its liferange yet; fixing some local-alloation things; taking call parameters into account in ir_block_life_propagate 2012-08-19 17:29:36 +02:00
Wolfgang (Blub) Bumiller
49ad9ef006 fix a wrong print in parsing.qc test 2012-08-19 16:41:45 +02:00
Wolfgang (Blub) Bumiller
bc36414434 Oops setting wrong members 2012-08-19 16:18:39 +02:00
Wolfgang (Blub) Bumiller
464317dc4b data/frames.qc to test [frame,think] 2012-08-19 16:14:19 +02:00
Wolfgang (Blub) Bumiller
92d40e0925 Factoring out duplicate code into a function: create_vector_members; creating vector members for vector function parameters 2012-08-19 14:34:23 +02:00
Wolfgang (Blub) Bumiller
20635c5ae4 ast_type_adopt - ast_entfield now adopts the full type of the field 2012-08-18 20:30:24 +02:00
Wolfgang (Blub) Bumiller
588cd5018f data/vars.qc - when declaring a function, and it had a prototype - use the new parameter names instead of the ones from the prototype, otherwise things get messy 2012-08-18 20:16:51 +02:00
Wolfgang (Blub) Bumiller
d88e3e8f24 move the member-of check for '.' to after applying the previous dot operators so we don't need parens around 'a.b' of 'a.b.c = x' 2012-08-18 19:42:38 +02:00
Wolfgang (Blub) Bumiller
0d4e6a2ee8 data/functions.qc for some more tests 2012-08-18 19:39:48 +02:00
Wolfgang (Blub) Bumiller
79d8275eee adding data/proto.qc 2012-08-18 17:32:32 +02:00
Wolfgang (Blub) Bumiller
e2faedcca8 the opening paren is now an operator - to fix up the precedence rules, now 'anentity.afunction()' compiles 2012-08-18 15:25:45 +02:00
Wolfgang (Blub) Bumiller
efc540ceba add 'local' keyword in fields.qc, it's for qcc standard anyway 2012-08-18 14:56:15 +02:00
Wolfgang (Blub) Bumiller
cb2f89e5bb fields: testing function-fields 2012-08-18 14:50:30 +02:00
Wolfgang (Blub) Bumiller
076503770d Support for $modelname and $framerestore 2012-08-16 21:02:56 +02:00
Wolfgang (Blub) Bumiller
3b9a6b3ace Don't expand frame macros when they don't have a $ prefix 2012-08-16 20:49:58 +02:00
Wolfgang (Blub) Bumiller
e00c8da849 Added support for some modelgen/spritegen commands 2012-08-16 20:47:31 +02:00
Wolfgang (Blub) Bumiller
bf161e3919 data/fields.qc now tests fieldpointer parameters - requires -std=qcc to build 2012-08-16 16:39:43 +02:00
Wolfgang (Blub) Bumiller
1bc6d10898 entityfield tests 2012-08-16 16:29:41 +02:00
Wolfgang (Blub) Bumiller
5a383ac2b0 Reorganizing expression parsing to allow prefix-operators like unary minus 2012-08-16 15:11:03 +02:00
Wolfgang (Blub) Bumiller
dd995a8ee2 test for constants 2012-08-16 11:34:11 +02:00
Wolfgang (Blub) Bumiller
f9c86d1d69 Adding another test qc file, for constant folding 2012-08-14 23:53:55 +02:00
Wolfgang (Blub) Bumiller
baf6d3ead4 fixing ast_binstore_codegen's lvalue flag setting, now += on entfields works correctly 2012-08-14 17:35:02 +02:00
Wolfgang (Blub) Bumiller
a574da7df8 += operator implemented 2012-08-14 17:30:55 +02:00
Wolfgang (Blub) Bumiller
ae5dba3e0b Pushing my current testcode 2012-08-14 16:53:18 +02:00
Dale Weiler
99971b7806 util_strncmpexact 2012-05-04 22:01:02 -04:00
Dale Weiler
510d795c06 More assembler code (less allocations too) 2012-05-03 16:54:34 -04:00
Dale Weiler
fbe86450dc argsize parsing for assembler 2012-05-02 15:48:00 -04:00
Dale Weiler
bc318bb68e More function parsing for assembler 2012-05-02 11:48:46 -04:00
Dale Weiler
ca7ab3fd5f assembly statement operand parsing. Now all we need is tables and state to generate some valid code. 2012-05-01 20:36:37 -04:00
Dale Weiler
eaaa1d15d8 test.qs update 2012-05-01 18:05:41 -04:00
Dale Weiler
629f6f1e63 Assembly statement parsing 2012-05-01 18:05:11 -04:00
Dale Weiler
d51718118a Function parsing for the assembler now works, and adds the function to the function table for the code writer, quake and darkplaces can see it as well (since a def is also created) 2012-05-01 16:42:11 -04:00
Dale Weiler
f19cbe1400 Parse vector constants and add them to the constants table now for the assembler. 2012-04-29 19:03:06 -04:00
Dale Weiler
7d66144c1b vector parsing for assembly 2012-04-28 07:27:03 -04:00
Dale Weiler
de01d34925 type parsing for constants, globals and locals. Sanatize constants to select internal functions to prevent possible runtime issues that could be a result of atoi working for what we consider invalid strings containing constants. 2012-04-28 03:53:23 -04:00
Dale Weiler
07c6aea7dc assembler can parse internal functions. Wrote all internal functions (that are not extensions) to test.qs 2012-04-28 03:26:40 -04:00
Dale Weiler
403901d6ee More assembly work 2012-04-28 02:34:39 -04:00
Dale Weiler
6d0b925fbb test/ -> data/ 2012-04-24 13:09:17 -04:00