annotate TODO @ 167:fa9752f194c6

Don't shortcut macro expansion of non-parameter macros. It won't work once we have more kinds of expansion items than strings and arguments, viz., magic tokens for __FILE__ and __LINE__ and so on. (separate version of this applied against Joerg's changes, because we need to revert some of them)
author David A. Holland
date Fri, 12 Jun 2015 01:55:31 -0400
parents 15f51ed08ecf
children e8f7ae63844f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
23
fb83c2df2268 notes for later.
David A. Holland
parents:
diff changeset
1 not implemented:
fb83c2df2268 notes for later.
David A. Holland
parents:
diff changeset
2 - mode.input_allow_dollars.
fb83c2df2268 notes for later.
David A. Holland
parents:
diff changeset
3 - column counts do not take tabstops into account.
fb83c2df2268 notes for later.
David A. Holland
parents:
diff changeset
4 - mode.output_linenumbers.
fb83c2df2268 notes for later.
David A. Holland
parents:
diff changeset
5 - mode.do_depend.
fb83c2df2268 notes for later.
David A. Holland
parents:
diff changeset
6 - mode.do_macrolist.
fb83c2df2268 notes for later.
David A. Holland
parents:
diff changeset
7 - mode.do_trace.
fb83c2df2268 notes for later.
David A. Holland
parents:
diff changeset
8 - warns.endiflabels. (they cause errors)
fb83c2df2268 notes for later.
David A. Holland
parents:
diff changeset
9 - warns.unused.
fb83c2df2268 notes for later.
David A. Holland
parents:
diff changeset
10 - the -iremap option.
fb83c2df2268 notes for later.
David A. Holland
parents:
diff changeset
11 - #line directives.
fb83c2df2268 notes for later.
David A. Holland
parents:
diff changeset
12 - $CPP_RESTRICTED
fb83c2df2268 notes for later.
David A. Holland
parents:
diff changeset
13 - other environment variables
fb83c2df2268 notes for later.
David A. Holland
parents:
diff changeset
14
fb83c2df2268 notes for later.
David A. Holland
parents:
diff changeset
15 tidy up:
fb83c2df2268 notes for later.
David A. Holland
parents:
diff changeset
16 - get rid of inlinedefs.h
fb83c2df2268 notes for later.
David A. Holland
parents:
diff changeset
17 - use of places in and below macro.c is pretty bogus.
fb83c2df2268 notes for later.
David A. Holland
parents:
diff changeset
18 - macro code should be reworked.
32
b81ddd969691 add some TODO items
David A. Holland
parents: 23
diff changeset
19
b81ddd969691 add some TODO items
David A. Holland
parents: 23
diff changeset
20 fix:
b81ddd969691 add some TODO items
David A. Holland
parents: 23
diff changeset
21 - "#if 0 && 1/0" should not crash; fix eval method.
89
64d275661bf0 update TODO some
David A. Holland
parents: 32
diff changeset
22 - an unterminated comment is reported as "no newline at end of file"
64d275661bf0 update TODO some
David A. Holland
parents: 32
diff changeset
23 (which isn't fatal by default)
146
15f51ed08ecf Add more tests for some degenerate cases we don't handle right.
David A. Holland
parents: 145
diff changeset
24 - quote characters and comment delimiters that are emitted by
15f51ed08ecf Add more tests for some degenerate cases we don't handle right.
David A. Holland
parents: 145
diff changeset
25 macros are not recognized. See:
15f51ed08ecf Add more tests for some degenerate cases we don't handle right.
David A. Holland
parents: 145
diff changeset
26 t34 (should produce a quote and FOO Q)
15f51ed08ecf Add more tests for some degenerate cases we don't handle right.
David A. Holland
parents: 145
diff changeset
27 t35 (similarly, this test may be redundant once it's fixed)
15f51ed08ecf Add more tests for some degenerate cases we don't handle right.
David A. Holland
parents: 145
diff changeset
28 t36 (C(3) should produce nothing)
15f51ed08ecf Add more tests for some degenerate cases we don't handle right.
David A. Holland
parents: 145
diff changeset
29 t37 (BC foo EC should produce nothing)
15f51ed08ecf Add more tests for some degenerate cases we don't handle right.
David A. Holland
parents: 145
diff changeset
30 Joerg says comments like in t36 should be stripped exactly
15f51ed08ecf Add more tests for some degenerate cases we don't handle right.
David A. Holland
parents: 145
diff changeset
31 twice, once when the macro is defined and again when it's
15f51ed08ecf Add more tests for some degenerate cases we don't handle right.
David A. Holland
parents: 145
diff changeset
32 expanded. Note that gcc's cpp -traditional is getting t37
15f51ed08ecf Add more tests for some degenerate cases we don't handle right.
David A. Holland
parents: 145
diff changeset
33 wrong, and it gets t36 wrong with -C.