Commit graph

107 commits

Author SHA1 Message Date
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
Rudolf Polzer
acf4da9385 Fixes for some minor bugs clang-analyzer and cppcheck found
Signed-off-by: Dale Weiler <killfieldengine@gmail.com>
2012-12-18 16:54:51 +00:00
Wolfgang (Blub) Bumiller
fe344cb5b2 vcompile_error, vcompile_warning; fixed: removed opts_ globals from con.c; made the lexer use vcompile_warning 2012-12-17 18:22:33 +01:00
Wolfgang (Blub) Bumiller
f9b1d057b5 Moving all the global opts_ variables into a struct, now there's one global 'opts' struct 2012-12-06 13:23:53 +01:00
Wolfgang (Blub) Bumiller
8e077f378e -Werror now changes the word 'warning' into 'error' 2012-12-04 12:54:53 +01:00
Wolfgang (Blub) Bumiller
88a4721de7 Parsing noref-pragma 2012-12-03 20:37:02 +01:00
Wolfgang (Blub) Bumiller
46942df6c0 skipwhite bugfix 2012-11-30 21:51:18 +01:00
Wolfgang (Blub) Bumiller
2f3612d905 increase the ridiculously low size limit on lex-pragma parameters 2012-11-30 17:28:46 +01:00
Wolfgang (Blub) Bumiller
f1a36ca647 Ignore modelgen commands with lex->flags.preprocessing 2012-11-30 15:44:45 +01:00
Wolfgang (Blub) Bumiller
5ca4390a1f Don't produce 'unknown token' errors in preprocessing mode 2012-11-30 15:38:03 +01:00
Wolfgang (Blub) Bumiller
b476a3deca fteqcc's \{number\} string control sequences 2012-11-30 14:22:00 +01:00
Wolfgang (Blub) Bumiller
fefb51c592 fteqcc like \[ and \] in strings 2012-11-30 14:18:45 +01:00
Wolfgang (Blub) Bumiller
70bda85629 lexer: hex sequences with \x and fteqcc-specific handling if one-digit sequences and <, -, and > sequences 2012-11-30 14:18:15 +01:00
Wolfgang (Blub) Bumiller
b4a5517851 fix a lexer error which parsed !! as one operator 2012-11-25 23:24:39 +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
089e490c69 Allow float constants which start with a dot 2012-11-25 22:35:41 +01:00
Wolfgang (Blub) Bumiller
797ceb9e04 handling TOKEN_CHARCONST - -Wmultibyte-character 2012-11-25 22:11:21 +01:00
Wolfgang (Blub) Bumiller
2234090398 Actually use TOKEN_CHARCONST in the lexer... 2012-11-25 22:04:27 +01:00
Wolfgang (Blub) Bumiller
2ec8ef4406 making goto a keyword 2012-11-25 21:56:21 +01:00
Wolfgang (Blub) Bumiller
36cdffe1b3 Fix linecounting mistake in try_digraph 2012-11-25 21:07:03 +01:00
Wolfgang (Blub) Bumiller
bf23ed948d Allow strings to contain a backslash and a newline at the end 2012-11-25 18:38:04 +01:00
Wolfgang (Blub) Bumiller
f65dbda659 linecounting fix for push/pop(line) pragmas 2012-11-25 18:13:46 +01:00
Wolfgang (Blub) Bumiller
e3acdcf0a9 Let's not have + and - as sole token, always allow ++ and -- to become operators independent of the noops flag 2012-11-25 18:07:19 +01:00
Wolfgang (Blub) Bumiller
04347508e6 linecounting issue in the lexer 2012-11-25 17:50:31 +01:00
Wolfgang (Blub) Bumiller
9a9ecd574e Fix a bug in the lexer causing double-dots to double the character after the 2nd dot 2012-11-25 17:43:24 +01:00
Wolfgang (Blub) Bumiller
23d16b303d typedef is now a keyword 2012-11-25 14:29:59 +01:00
Dale Weiler
5c0a62be96 Add respective license headers + some cleanups 2012-11-24 21:22:35 +00:00
Wolfgang (Blub) Bumiller
2bc99076cf 'var' is now no keyword anymore, :\ 2012-11-23 22:07:35 +01:00
Wolfgang (Blub) Bumiller
e3c1244687 preserve newlines in preprocessed multiline comments 2012-11-23 21:47:00 +01:00
Wolfgang (Blub) Bumiller
ab55673c35 Fix a very nasty bug in the lexer's handling of comments 2012-11-23 21:35:14 +01:00
Wolfgang (Blub) Bumiller
0d33939b1b operator &~= 2012-11-23 14:39:05 +01:00
Wolfgang (Blub) Bumiller
b771695e0d Fixing shadows in lexer.c 2012-11-22 20:46:13 +01:00
Wolfgang (Blub) Bumiller
5ec75a228e question mark must result in TOKEN_OPERATOR 2012-11-21 20:42:48 +01:00
Wolfgang (Blub) Bumiller
e0ddf32d2e parsing the ternary 2012-11-21 20:36:42 +01:00
Wolfgang (Blub) Bumiller
63969180cf 'case' and 'default' are now keywords too, not just switch 2012-11-19 21:40:38 +01:00
Wolfgang (Blub) Bumiller
6e888396b5 moving keywords into an array 2012-11-19 19:20:26 +01:00
Wolfgang (Blub) Bumiller
19e82883ea Fixing some indentation 2012-11-18 20:56:11 +01:00
Wolfgang (Blub) Bumiller
e4998e0798 Added #include 2012-11-18 16:22:07 +01:00
Wolfgang (Blub) Bumiller
43a72b2a63 Don't skip the \n after parsing a pragma in the lexer otherwise 2 pragmas in the row wouldn't work 2012-11-18 16:17:19 +01:00
Wolfgang (Blub) Bumiller
a5dbfacf2f pragma line(lineno) - sets the linenumber for the line after the pragma 2012-11-18 15:32:03 +01:00
Wolfgang (Blub) Bumiller
e66f2bcb33 Better linecounting for pragmas; support for prgama file(filename) 2012-11-18 15:30:49 +01:00
Wolfgang (Blub) Bumiller
9898ab5316 fixup line counting in #pragmas 2012-11-18 15:23:00 +01:00
Wolfgang (Blub) Bumiller
79619fbf50 Experimental support for push/pop(line) pragmas 2012-11-18 15:14:42 +01:00
Wolfgang (Blub) Bumiller
a014480987 Add quotes to the known control sequences... darn. Add stringification via # 2012-11-18 14:26:40 +01:00
Wolfgang (Blub) Bumiller
79abe3fb6d Merge branch 'master' into ftepp 2012-11-17 11:34:00 +01:00
Wolfgang (Blub) Bumiller
33be9edec7 quick and dirty fix to lexerror for when fopen fails 2012-11-17 10:36:35 +01:00