Commit graph

2573 commits

Author SHA1 Message Date
Wolfgang (Blub) Bumiller
e8d1e5dbc0 Make the >8 parameter message a warning 2012-11-18 19:19:38 +01:00
Wolfgang (Blub) Bumiller
41235108c4 Importing a tiny README file 2012-11-18 19:15:20 +01:00
Wolfgang (Blub) Bumiller
ccb9cf5347 Importing LICENSE file 2012-11-18 19:14:06 +01:00
Wolfgang (Blub) Bumiller
2652353f50 Checking in an INSTALL file 2012-11-18 18:54:10 +01:00
Wolfgang (Blub) Bumiller
2ab7d8d5c3 Adding myself to main.c's copyright notice 2012-11-18 17:06:26 +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
d3861cea9f Make pragmas pass through the preprocessor so the user can write them manually 2012-11-18 15:30:24 +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
4c2e5d7ebf update old_string after a recursive preprocess call so we don't reset to a free'd vector; add recursion header/footer pragmas 2012-11-18 14:39:24 +01:00
Wolfgang (Blub) Bumiller
441a224435 Comment about why stringify is so short 2012-11-18 14:29:15 +01:00
Wolfgang (Blub) Bumiller
edbe8f54cb don't call parser_cleanup with -E 2012-11-18 14:27:47 +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
0330b082a2 The ftepp now always outputs into a string buffer, with -E the buffer will be dumped to stdout or the via -o specified file, without -E it'll be passed to the parser to be compiled 2012-11-18 13:33:53 +01:00
Wolfgang (Blub) Bumiller
f0d56d07fe Merge branch 'master' into ftepp 2012-11-18 13:06:29 +01:00
Wolfgang (Blub) Bumiller
cec58b53e4 Collect accessor functions in the parser so they can later be deleted, fixed that leak 2012-11-18 13:06:16 +01:00
Wolfgang (Blub) Bumiller
f47a20aa53 Removing some code duplication 2012-11-18 13:00:18 +01:00
Wolfgang (Blub) Bumiller
d1373af7fc Make -E print to stdout by default and honor -o, changed handling of source list a bit 2012-11-18 12:51:38 +01:00
Wolfgang (Blub) Bumiller
366557bbab Since like with parsing, the preprocessor state has to be preserved across files for macros, we do that now, and with that introduce a new warning: -Wmultifile-if in case an #if spans over several command-line-provided source files (or progs.src file provided for that matter) 2012-11-18 11:54:11 +01:00
Wolfgang (Blub) Bumiller
2b65ea599f Some printf/con_out/con_err conversions, guarded some outputs with not-opts_pp_only so the -E switch can print to stdout normally 2012-11-18 11:43:46 +01:00
Wolfgang (Blub) Bumiller
79abe3fb6d Merge branch 'master' into ftepp 2012-11-17 11:34:00 +01:00
Dale Weiler
d1fd7d044b Merge branch 'master' into test-suite
Conflicts:
	Makefile
2012-11-17 10:02:21 +00:00
Dale Weiler
227c85ba4e More makefile changes 2012-11-17 10:00:55 +00:00
Wolfgang (Blub) Bumiller
852b2b91d2 install targets 2012-11-17 11:00:32 +01:00
Dale Weiler
990dcb106a Merge branch 'master' into test-suite
Conflicts:
	Makefile
2012-11-17 09:56:48 +00:00
Dale Weiler
55491bbc23 Added more tests, fixed existing ones, and some more test system changes. 2012-11-17 09:51:55 +00:00
Wolfgang (Blub) Bumiller
6333130537 Temporary list of dependencies for objects 2012-11-17 10:46:23 +01:00
Wolfgang (Blub) Bumiller
33be9edec7 quick and dirty fix to lexerror for when fopen fails 2012-11-17 10:36:35 +01:00
Wolfgang (Blub) Bumiller
7b74a2bb94 removing mem.c from this branch in preparation for 0.1 2012-11-17 10:35:52 +01:00
Dale Weiler
d0c6e0a481 sigh 2012-11-17 08:54:24 +00:00
Dale Weiler
e062c847cb Fix test suite 2012-11-17 08:50:09 +00:00
Dale Weiler
49cb2bcda2 Actually add the tests 2012-11-17 08:31:23 +00:00
Dale Weiler
56987b41eb Test system works, and added some working tests! 2012-11-17 08:10:31 +00:00
Dale Weiler
bf3011a28d Actually commit the new test stuff 2012-11-17 02:55:33 +00:00
Dale Weiler
0dc4febb91 New test-suite initial implementation. Just need to write some tests. 2012-11-17 02:54:30 +00:00
Wolfgang (Blub) Bumiller
515cafe8bd Lexer should keep newlines in merged lines, so will the preprocessor, but therefore the lexer will replace comments with actual spaces so we don't get borken output... also don't error about redifining a macro when inside a non-outputting #if branch 2012-11-16 23:13:53 +01:00
Wolfgang (Blub) Bumiller
990450bfe0 ## concatenation, -Wpreprocessor warning about redefining macros, #undef 2012-11-16 22:54:59 +01:00
Wolfgang (Blub) Bumiller
d237ff1736 don't error on non-EOL EOF at the end of a macro line 2012-11-16 22:41:29 +01:00
Wolfgang (Blub) Bumiller
0ad2b8b2c7 also use recursive-expansion on macros without parameters 2012-11-16 22:38:58 +01:00
Wolfgang (Blub) Bumiller
57ac55ad01 recursively call the preprocessor on expanded macros 2012-11-16 22:31:51 +01:00
Wolfgang (Blub) Bumiller
05a26333fc Expand macros into a string buffer 2012-11-16 22:22:31 +01:00
Wolfgang (Blub) Bumiller
99dd208880 moving ftepp_delete out of ftepp_preprocess so that it can actually be called recursively 2012-11-16 22:07:53 +01:00
Wolfgang (Blub) Bumiller
03f0e39f7f ftepp_out can now output to a string buffer 2012-11-16 22:06:07 +01:00
Wolfgang (Blub) Bumiller
b8a5c87360 Correctly handle nested #ifs 2012-11-16 22:02:38 +01:00
Wolfgang (Blub) Bumiller
5b91c2af5e Relax the preprocessor condition: # in the middle of a line also counts, but take care of builtin numbers since they use # as well 2012-11-16 21:37:34 +01:00
Wolfgang (Blub) Bumiller
7e660951c2 Fix a bug in macro call parameter parsing 2012-11-16 21:27:15 +01:00
Wolfgang (Blub) Bumiller
d688820518 Parsing parameters for a macro call 2012-11-16 21:20:31 +01:00