Dale Weiler
|
6800d15872
|
Always print the char the lexer fails on for a token.
|
2013-08-31 16:52:46 -04:00 |
|
Dale Weiler
|
64661f54ea
|
Implemented >< (vector cross product operator). Currently support for constants only.
|
2013-08-31 13:41:25 -04:00 |
|
Wolfgang Bumiller
|
ba94df47f0
|
reset the column counter on a newline
|
2013-08-26 18:53:09 +02:00 |
|
Dale Weiler
|
2a79339735
|
Remove that idiom, and use GMQCC_ARRAY_COUNT.
|
2013-08-17 23:39:06 +00:00 |
|
Dale Weiler
|
d6ca5673dc
|
Use the _t consistency naming scheme. Also various cleanups.
|
2013-07-30 16:00:51 +00:00 |
|
Dale Weiler
|
8db9724c5d
|
Revert "Smaller memory footprint, 4/8 bytes vs 12/24 for individual token lex_ctx's. Use to be a 'shallow' copy of the details in lex_file, now it's a pointer to the contents in lex_file."
This reverts commit cddf70f46b .
|
2013-07-26 16:17:41 +00:00 |
|
Dale Weiler
|
cddf70f46b
|
Smaller memory footprint, 4/8 bytes vs 12/24 for individual token lex_ctx's. Use to be a 'shallow' copy of the details in lex_file, now it's a pointer to the contents in lex_file.
|
2013-07-26 16:09:26 +00:00 |
|
Dale Weiler
|
b534aca263
|
Fix a case of the uninitialized blues
|
2013-06-22 02:25:19 +00:00 |
|
Dale Weiler
|
6db2e69f9a
|
Oh my god microsoft you suck
|
2013-06-20 11:20:56 +00:00 |
|
Dale Weiler
|
a8fddbb7d3
|
Implemented bitwise xor operator.
|
2013-06-15 09:48:40 +00:00 |
|
Dale Weiler
|
8afd373e4f
|
Fixed whitespace
|
2013-06-14 21:36:16 +00:00 |
|
Dale Weiler
|
11179a2a71
|
Major header reworking, this respects the namespaces properly. Makes object dependency more obvious, allows for better make caches, and prevents misuse of library features, i.e use con_* instead of printf.
|
2013-06-04 02:47:07 +00:00 |
|
Dale Weiler
|
0b6269f607
|
column printing for warnings and errors now
|
2013-05-30 19:36:01 +00:00 |
|
Dale Weiler
|
f892b32335
|
Major export cleanup. Anything that was exported but wasn't used outside where it was implemented has been turned into static, and their exports have been removed. This actually makes the compiler compile slightly faster.
|
2013-05-29 03:29:04 +00:00 |
|
Dale Weiler
|
10dd7aacfe
|
Apply some static where it belongs
|
2013-04-25 03:34:42 +00:00 |
|
Wolfgang Bumiller
|
3a4aba0b31
|
Grrrr
|
2013-04-24 17:47:42 +02:00 |
|
Dale Weiler
|
489ad486bc
|
Get it compiling in visual studio again.
|
2013-04-24 01:43:53 +00:00 |
|
Dale Weiler
|
160e7cf7ee
|
Remove trailing whitespace
|
2013-04-21 10:24:55 +00:00 |
|
Wolfgang Bumiller
|
992c6fbfb8
|
lex_try_pragma: free the buffers
|
2013-04-16 14:14:15 +02:00 |
|
Dale Weiler
|
c2b5a95961
|
GCC specific stuff compile flags.
|
2013-04-15 06:23:13 +00:00 |
|
Dale Weiler
|
18fad16a7d
|
cleanups
|
2013-04-14 01:41:13 +00:00 |
|
Dale Weiler
|
f19adcd1b3
|
Implemented __builtin_mod, and % operator. Added floor builtin to the standalone executor. Mod works so long as the compiler can find a suitable definition of "float floor(float)", otherwise it prints a diagnostic and gives up (original id1 Quake had floor so we can depend on it).
|
2013-03-08 09:17:54 +00:00 |
|
Dale Weiler
|
d3c7b6fb39
|
Implement exponentiation operator ** as well as __builtin_pow (used for exponentiation operator). Use of exponentiation operator with constants results in const folded (precomputed at compile time exponentiation), otherwise runtime exponentiation with some clever loops (slow!).
|
2013-03-07 21:31:19 +00:00 |
|
Wolfgang Bumiller
|
d27c06ea7f
|
Merge branch 'master' into cooking
|
2013-02-20 23:08:58 +01:00 |
|
Wolfgang Bumiller
|
80184b0d80
|
fix: don't mess up multiline macros in files ending with \r\n
|
2013-02-20 23:08:50 +01:00 |
|
Dale Weiler
|
8d59d7029d
|
Cleanup cargocult directory and file specific things, to fs.c (renamed file.c which also contains directory handling stuff). Also cleaned up some stuff, and added proper end comments to conditional inclusion stuff.
|
2013-02-08 12:06:59 +00:00 |
|
Dale Weiler
|
fed0f8b6b4
|
Work in progress <=> operator.
|
2013-02-05 16:34:03 +00:00 |
|
Dale Weiler
|
7b96b0bd6d
|
s/%d/%s/
|
2013-02-02 01:04:26 +00:00 |
|
Dale Weiler
|
319783e873
|
Better printing of token errors.
|
2013-02-02 01:03:39 +00:00 |
|
Dale Weiler
|
03b933bc7a
|
Work in progress ~ operator implemented as -1-x.
|
2013-02-01 12:56:01 +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 |
|
Wolfgang Bumiller
|
b31e9b63eb
|
fix: trigraph check screwing up linenumbering
|
2013-01-16 22:09:27 +01:00 |
|
Wolfgang Bumiller
|
e149551744
|
Added '...(idx,type)' to access varargs
|
2013-01-12 14:53:48 +01:00 |
|
Wolfgang Bumiller
|
6c076f99f6
|
lex->flags.preprocessing causes the lexer to parse the unary number if it is one
|
2013-01-02 17:38:24 +01:00 |
|
Wolfgang Bumiller
|
0d839bd138
|
pragma code: signed correctness
|
2013-01-02 15:20:07 +01:00 |
|
Dale Weiler
|
29db4a44ed
|
Happy new years!
|
2013-01-01 05:08:55 +00:00 |
|
Wolfgang Bumiller
|
432a29e4d9
|
improvie/fix \{x...} char parsing
|
2012-12-29 19:11:06 +01:00 |
|
Dale Weiler
|
e2f9aa5027
|
Fix another warning
|
2012-12-28 12:40:00 +00:00 |
|
Wolfgang Bumiller
|
e72d141ec4
|
Uchar -> uchar_t for consistency
|
2012-12-23 10:34:29 +01:00 |
|
Wolfgang Bumiller
|
2164afb8cf
|
Better error message for -futf8
|
2012-12-23 10:23:42 +01:00 |
|
Wolfgang Bumiller
|
a707440e52
|
-futf8 implementation
|
2012-12-23 10:23:42 +01:00 |
|
Dale Weiler
|
6bc29a1601
|
Merge branch 'master' of github.com:graphitemaster/gmqcc
|
2012-12-23 06:06:57 +00:00 |
|
Dale Weiler
|
13003bf6af
|
Wrapper around FILE to take advantage of MSVC "secure" CRT. We don't actually defend bounds checks (we just hack in the few ones to silent MSVC .. and to pass WinRT "native code" rules)
|
2012-12-23 06:05:22 +00:00 |
|
Wolfgang Bumiller
|
77639bb21d
|
guard ]] with lex->flags.noops
|
2012-12-22 20:41:02 +01:00 |
|
Wolfgang Bumiller
|
b38b3b08bd
|
properly fill the token string for TOKEN_ATTRIBUTE_*
|
2012-12-22 18:09:17 +01:00 |
|
Wolfgang Bumiller
|
2c2bfab8bc
|
is now no keyword anymore
|
2012-12-22 18:03:43 +01:00 |
|
Wolfgang Bumiller
|
26a80e0868
|
Lexer: [[ and ]] are now TOKEN_ATTRIBUTE_{OPEN,CLOSE}
|
2012-12-22 18:00:51 +01:00 |
|
Dale Weiler
|
475b3152ca
|
One last fix for mankind
|
2012-12-20 09:01:01 +00:00 |
|
Wolfgang (Blub) Bumiller
|
664b6d6604
|
'noreturn' is - for now - a keyword, and used just like noref/var/const, to mark a function as not-returning
|
2012-12-19 20:56:22 +01:00 |
|