]>
git.rm.cloudns.org Git - xonotic/gmqcc.git/log
Wolfgang Bumiller [Wed, 2 Jan 2013 14:08:02 +0000 (15:08 +0100)]
remove ast.h-include from lexer.h to parser.c...
Wolfgang Bumiller [Wed, 2 Jan 2013 14:05:52 +0000 (15:05 +0100)]
Makefile: ftepp.o: lexer.h
Wolfgang Bumiller [Wed, 2 Jan 2013 14:03:20 +0000 (15:03 +0100)]
lex.peek char->int
Wolfgang Bumiller [Wed, 2 Jan 2013 13:16:42 +0000 (14:16 +0100)]
tests for __VA_ARGS__
Wolfgang Bumiller [Wed, 2 Jan 2013 13:15:16 +0000 (14:15 +0100)]
__VA_ARGS__ support
Wolfgang Bumiller [Wed, 2 Jan 2013 09:45:55 +0000 (10:45 +0100)]
fix a leak: delete the output string of macro calls
Wolfgang Bumiller [Wed, 2 Jan 2013 09:44:39 +0000 (10:44 +0100)]
update old_string on failure in ftepp_macro_expand to not segfault on a preprocessor-error inside recursive preprocessor calls
Wolfgang Bumiller [Wed, 2 Jan 2013 09:35:00 +0000 (10:35 +0100)]
when recursinve into macros copy the previous line number; fixes macros showing line 1 for each error
Dale Weiler [Tue, 1 Jan 2013 07:59:04 +0000 (07:59 +0000)]
Implemented a optimized hash-set that can be used in various parts of the compiler (to get a little more speed). I intend this to replace the hackery that is code_genstring, and code_util_str_htgeth.
Dale Weiler [Tue, 1 Jan 2013 05:08:55 +0000 (05:08 +0000)]
Happy new years!
Dale Weiler [Mon, 31 Dec 2012 18:50:57 +0000 (18:50 +0000)]
Fix util_vasprintf.
Dale Weiler [Mon, 31 Dec 2012 18:34:13 +0000 (18:34 +0000)]
Add todo about util_vasprintf (too lazy to fix right now)
Dale Weiler [Mon, 31 Dec 2012 14:39:53 +0000 (14:39 +0000)]
Fix #include for <machine/endian.h> s/endiane/endian/
Wolfgang Bumiller [Mon, 31 Dec 2012 12:25:18 +0000 (13:25 +0100)]
Actually allocate a nil-vector for nil
Wolfgang Bumiller [Mon, 31 Dec 2012 12:20:08 +0000 (13:20 +0100)]
add codegen_output_type to ast_binary_codegen
Wolfgang Bumiller [Mon, 31 Dec 2012 12:19:34 +0000 (13:19 +0100)]
fix store op for nil as parameter
Wolfgang Bumiller [Mon, 31 Dec 2012 11:56:04 +0000 (12:56 +0100)]
Adding '&~=' to the -std=gmqcc operator list
Wolfgang Bumiller [Mon, 31 Dec 2012 11:43:15 +0000 (12:43 +0100)]
Another hardcoded -std=gmqcc option removed and added to the implied -std=gmqcc flags
Wolfgang Bumiller [Mon, 31 Dec 2012 11:40:09 +0000 (12:40 +0100)]
remove another hardcoded -std=gmqcc case
Wolfgang Bumiller [Mon, 31 Dec 2012 11:37:47 +0000 (12:37 +0100)]
-std=gmqcc now implies -Werror-missing-return-values; another hardcoded error removed
Wolfgang Bumiller [Mon, 31 Dec 2012 11:35:26 +0000 (12:35 +0100)]
Just allow variable declarations in for-loop initializers in any standard...
Wolfgang Bumiller [Mon, 31 Dec 2012 11:29:25 +0000 (12:29 +0100)]
Changing -Wtoo-few-parameters to -Winvalid-parameter-count; removing hardcoded COMPILER_GMQCC code which makes invalid parameter counts an error and instead make -std=gmqcc imply -Werror-invalid-parameter-count
Wolfgang Bumiller [Mon, 31 Dec 2012 11:08:47 +0000 (12:08 +0100)]
Adding some more internal-error messages where they were missing; fixed ast_ternary_codegen to use the ast_node's type instead of the ir generated ones to avoid erroring on TYPE_NIL
Wolfgang Bumiller [Mon, 31 Dec 2012 10:45:00 +0000 (11:45 +0100)]
nil in ternary, and fix ternary to honor -fcorrect-logic/-ftrue/false-empty-strings
Wolfgang Bumiller [Mon, 31 Dec 2012 10:39:00 +0000 (11:39 +0100)]
Explicitly allow 'return nil'
Wolfgang Bumiller [Mon, 31 Dec 2012 10:34:29 +0000 (11:34 +0100)]
This should actually cover all nil cases
Wolfgang Bumiller [Mon, 31 Dec 2012 10:30:02 +0000 (11:30 +0100)]
nil check in paramter type checking
Wolfgang Bumiller [Mon, 31 Dec 2012 10:23:49 +0000 (11:23 +0100)]
Allow assigning nil to a field
Wolfgang Bumiller [Mon, 31 Dec 2012 10:14:43 +0000 (11:14 +0100)]
gmqcc.ini.example: -Wparenthesis
Wolfgang Bumiller [Mon, 31 Dec 2012 10:14:34 +0000 (11:14 +0100)]
manpage: -Wparenthesis
Wolfgang Bumiller [Mon, 31 Dec 2012 10:14:24 +0000 (11:14 +0100)]
Activate -Wparenthesis by default
Wolfgang Bumiller [Mon, 31 Dec 2012 10:11:46 +0000 (11:11 +0100)]
Adding -Wparenthesis, fixing constant folding of && and ||
Dale Weiler [Sun, 30 Dec 2012 11:01:45 +0000 (11:01 +0000)]
Fix evaluation order bug
Wolfgang Bumiller [Sun, 30 Dec 2012 10:59:29 +0000 (11:59 +0100)]
Do we REALLY need to listen to splint?
Wolfgang Bumiller [Sun, 30 Dec 2012 10:03:59 +0000 (11:03 +0100)]
Clean up trailing whitespaces
Dale Weiler [Sun, 30 Dec 2012 09:59:32 +0000 (09:59 +0000)]
Merge branch 'master' of github.com:graphitemaster/gmqcc
Dale Weiler [Sun, 30 Dec 2012 09:58:52 +0000 (09:58 +0000)]
Add support for user defined messages for [[deprecated]] generalized attribute
Wolfgang Bumiller [Sun, 30 Dec 2012 09:37:15 +0000 (10:37 +0100)]
fix: ftepp_delete needs to ftepp_flush to not cause a leak on errors
Dale Weiler [Sun, 30 Dec 2012 06:43:07 +0000 (06:43 +0000)]
Implement [[deprecated]] general attribute, will mark functions as deprecated. Making calls to functions marked as such will trigger a compiler warning. Enabled by default.
Wolfgang Bumiller [Sat, 29 Dec 2012 20:15:59 +0000 (21:15 +0100)]
Properly support globals initialized to nil
Wolfgang Bumiller [Sat, 29 Dec 2012 18:11:06 +0000 (19:11 +0100)]
improvie/fix \{x...} char parsing
Wolfgang Bumiller [Sat, 29 Dec 2012 16:41:01 +0000 (17:41 +0100)]
gmqcc.ini.example: DIFFERENT_QUALIFIERS, DIFFERENT_ATTRIBUTES
Wolfgang Bumiller [Sat, 29 Dec 2012 16:38:50 +0000 (17:38 +0100)]
manpage: -Wdifferent-qualifiers -Wdifferent-attributes
Wolfgang Bumiller [Sat, 29 Dec 2012 16:36:27 +0000 (17:36 +0100)]
-Wdifferent-qualifiers, -Wdifferent-attributes
Dale Weiler [Sat, 29 Dec 2012 14:42:17 +0000 (14:42 +0000)]
Merge branch 'master' of github.com:graphitemaster/gmqcc
Dale Weiler [Sat, 29 Dec 2012 14:41:47 +0000 (14:41 +0000)]
Fix uninitialized-global
Wolfgang Bumiller [Sat, 29 Dec 2012 14:13:54 +0000 (15:13 +0100)]
Don't allow code like: v * '0 1 0' = 3; to actually work...
Wolfgang Bumiller [Sat, 29 Dec 2012 14:13:28 +0000 (15:13 +0100)]
gmqcc.ini.example: VECTOR_COMPONENTS
Wolfgang Bumiller [Sat, 29 Dec 2012 14:10:04 +0000 (15:10 +0100)]
manpage: -Ovector-components
Wolfgang Bumiller [Sat, 29 Dec 2012 14:05:04 +0000 (15:05 +0100)]
-Ovector-components
Dale Weiler [Sat, 29 Dec 2012 03:10:06 +0000 (19:10 -0800)]
Merge pull request #80 from matthiaskrgr/master
add .gitignore file
matthiaskrgr [Fri, 28 Dec 2012 22:33:43 +0000 (23:33 +0100)]
Merge remote-tracking branch 'upstream/master'
matthiaskrgr [Fri, 28 Dec 2012 22:32:33 +0000 (23:32 +0100)]
add .gitignore file
Wolfgang Bumiller [Fri, 28 Dec 2012 20:05:04 +0000 (21:05 +0100)]
Typo...
Wolfgang Bumiller [Fri, 28 Dec 2012 20:04:14 +0000 (21:04 +0100)]
Updating gmqcc.ini.example
Wolfgang Bumiller [Fri, 28 Dec 2012 19:39:30 +0000 (20:39 +0100)]
GMQCC_GITINFO
Wolfgang Bumiller [Fri, 28 Dec 2012 18:46:28 +0000 (19:46 +0100)]
more general qualifier/attribute parsing, added not-yet-used AST_FLAG_INLINE and [[inline]]
Wolfgang Bumiller [Fri, 28 Dec 2012 18:11:29 +0000 (19:11 +0100)]
manpage: -Wuninitialized-constant -Wuninitialized-global
Wolfgang Bumiller [Fri, 28 Dec 2012 18:09:06 +0000 (19:09 +0100)]
noref testcase must use -Wno-uninitialized-global
Wolfgang Bumiller [Fri, 28 Dec 2012 18:07:43 +0000 (19:07 +0100)]
-Wuninitialized-const, -Wuninitialized-global
Wolfgang Bumiller [Fri, 28 Dec 2012 17:27:34 +0000 (18:27 +0100)]
manpage: -Wreserved-names, -funtyped-nil, -fpermissive
Wolfgang Bumiller [Fri, 28 Dec 2012 17:22:09 +0000 (18:22 +0100)]
-Wreserved-names, -fpermissive allows local variables named 'nil' to be created even with -funtyped-nil, they supersede the global untyped 'nil'
Wolfgang Bumiller [Fri, 28 Dec 2012 17:16:19 +0000 (18:16 +0100)]
'nil' global with -funtyped-nil
Wolfgang Bumiller [Fri, 28 Dec 2012 17:05:28 +0000 (18:05 +0100)]
TYPE_NIL, builder->nil, ast_value_codegen for TYPE_NIL
Dale Weiler [Fri, 28 Dec 2012 15:19:19 +0000 (15:19 +0000)]
Fix teh paren!
Dale Weiler [Fri, 28 Dec 2012 15:02:53 +0000 (15:02 +0000)]
added util_vasprintf/util_asprintf .. so we can stop assuming a certian static array size for formatting strings ... I expect to see full migration to this before the next release for protection of over/under flows. As well as identifers >= 1024 bytes :)
Dale Weiler [Fri, 28 Dec 2012 14:47:27 +0000 (14:47 +0000)]
memleak
Dale Weiler [Fri, 28 Dec 2012 12:57:41 +0000 (12:57 +0000)]
s/\t/ /g - utf8.c
Dale Weiler [Fri, 28 Dec 2012 12:54:20 +0000 (12:54 +0000)]
Fix another Blub bug .. learn to use comments properly :P
Dale Weiler [Fri, 28 Dec 2012 12:50:37 +0000 (12:50 +0000)]
Fix a very possible bug
Dale Weiler [Fri, 28 Dec 2012 12:43:08 +0000 (12:43 +0000)]
Fixed another possible implementation specific bug thanks to this progressive splint idea :)
Dale Weiler [Fri, 28 Dec 2012 12:40:00 +0000 (12:40 +0000)]
Fix another warning
Dale Weiler [Fri, 28 Dec 2012 12:36:15 +0000 (12:36 +0000)]
Fix another warning
Dale Weiler [Fri, 28 Dec 2012 12:33:10 +0000 (12:33 +0000)]
Fix one warning
Dale Weiler [Fri, 28 Dec 2012 12:29:46 +0000 (12:29 +0000)]
Added splint.sh (a progressive way to fix some possible bugs)
Wolfgang Bumiller [Fri, 28 Dec 2012 10:50:03 +0000 (11:50 +0100)]
So why doesn't any popular compiler complain about this
Wolfgang Bumiller [Fri, 28 Dec 2012 10:43:17 +0000 (11:43 +0100)]
... This... I'll have to git rewrite-history at some point
Dale Weiler [Fri, 28 Dec 2012 09:30:01 +0000 (09:30 +0000)]
Working on getting gmqcc to work when compiled with tcc
Dale Weiler [Fri, 28 Dec 2012 09:06:04 +0000 (09:06 +0000)]
Reorder operands
Dale Weiler [Fri, 28 Dec 2012 09:05:14 +0000 (09:05 +0000)]
Quoting of strings is forbid in some "make" implementations
Dale Weiler [Fri, 28 Dec 2012 08:59:41 +0000 (08:59 +0000)]
Got it working on arm :)
Dale Weiler [Fri, 28 Dec 2012 08:52:13 +0000 (08:52 +0000)]
Always use -fsigned-char .. The compiler I was using had -funsigned-char by default on ARM (which was breaking everything ...) try it .. add -funsigned-char and run the test-suite (only 2 out of all the tests actually pass, and it's by fluke)
Wolfgang Bumiller [Thu, 27 Dec 2012 23:21:59 +0000 (00:21 +0100)]
manpage: -floop-labels
Wolfgang Bumiller [Thu, 27 Dec 2012 23:21:53 +0000 (00:21 +0100)]
Some default options for -std=gmqcc including -floop-labels
Wolfgang Bumiller [Thu, 27 Dec 2012 23:04:09 +0000 (00:04 +0100)]
finish parsing of labeled loops; ast support added
Wolfgang Bumiller [Thu, 27 Dec 2012 22:52:57 +0000 (23:52 +0100)]
distinguish between break/continue levels in the parser
Wolfgang Bumiller [Thu, 27 Dec 2012 22:43:20 +0000 (23:43 +0100)]
parsing of loop labels
Wolfgang Bumiller [Thu, 27 Dec 2012 21:18:39 +0000 (22:18 +0100)]
there's no -f flag named overlap-locals... removed the opts.def entry
Wolfgang Bumiller [Thu, 27 Dec 2012 19:10:10 +0000 (11:10 -0800)]
Merge pull request #77 from matthiaskrgr/PKGBUILD
PKGBUILDs: note myself as contributor.
matthiaskrgr [Thu, 27 Dec 2012 19:07:58 +0000 (20:07 +0100)]
PKGBUILDs: note myself as contributor.
Wolfgang Bumiller [Thu, 27 Dec 2012 13:48:52 +0000 (14:48 +0100)]
bumping arch/release PKGBUILD to 0.2.2
Wolfgang Bumiller [Thu, 27 Dec 2012 13:33:58 +0000 (14:33 +0100)]
Another bool->int fix; now clang-compiled gmqcc actually works...
Wolfgang Bumiller [Thu, 27 Dec 2012 11:48:36 +0000 (12:48 +0100)]
manpage: -fbail-on-werror
Wolfgang Bumiller [Thu, 27 Dec 2012 11:46:36 +0000 (12:46 +0100)]
-fbail-on-werror option
Wolfgang Bumiller [Thu, 27 Dec 2012 10:46:08 +0000 (11:46 +0100)]
fix: when there are no additional temps the first one allocated slot's size was counted twice resulting in some additional unused globals
Wolfgang Bumiller [Thu, 27 Dec 2012 10:06:04 +0000 (02:06 -0800)]
Merge pull request #75 from matthiaskrgr/master
mention PKGBUILDs in INSTALL file, fix typo in manpage
Wolfgang Bumiller [Wed, 26 Dec 2012 22:20:49 +0000 (23:20 +0100)]
manpage: -Oglobal-temps
Wolfgang Bumiller [Wed, 26 Dec 2012 22:18:45 +0000 (23:18 +0100)]
-Oglobal-temps
Wolfgang Bumiller [Wed, 26 Dec 2012 21:49:50 +0000 (22:49 +0100)]
fix -v option parsing in qcvm
Wolfgang Bumiller [Wed, 26 Dec 2012 21:09:54 +0000 (22:09 +0100)]
factoring out temp-slot-assignment and using it for the declared locals too, makes -Olocal-temps more effective