xref: /netbsd-src/external/bsd/tradcpp/dist/TODO (revision 31615c9617fab4df7f5e221552df7da87f14320d)
1*31615c96Sdhollandnot implemented:
2*31615c96Sdholland	- mode.input_allow_dollars.
3*31615c96Sdholland	- column counts do not take tabstops into account.
4*31615c96Sdholland	- mode.output_linenumbers.
5*31615c96Sdholland	- mode.do_depend.
6*31615c96Sdholland	- mode.do_macrolist.
7*31615c96Sdholland	- mode.do_trace.
8*31615c96Sdholland	- warns.endiflabels. (they cause errors)
9*31615c96Sdholland	- warns.unused.
10*31615c96Sdholland	- the -iremap option.
11*31615c96Sdholland	- $CPP_RESTRICTED
12*31615c96Sdholland	- other environment variables
13*31615c96Sdholland
14*31615c96Sdhollandtidy up:
15*31615c96Sdholland	- get rid of inlinedefs.h
16*31615c96Sdholland	- use of places in and below macro.c is pretty bogus.
17*31615c96Sdholland	- macro code should be reworked.
18*31615c96Sdholland	- place_changefile is manky and wastes memory. Also, in an ideal
19*31615c96Sdholland	  world we'd remember the place #line changed the name and refer
20*31615c96Sdholland	  to it when printing errors.
21*31615c96Sdholland
22*31615c96Sdhollandfix:
23*31615c96Sdholland	- "#if 0 && 1/0" should not crash; fix eval method.
24*31615c96Sdholland	- quote characters and comment delimiters that are emitted by
25*31615c96Sdholland	  macros are not recognized. See:
26*31615c96Sdholland		t34 (should produce a quote and FOO Q)
27*31615c96Sdholland		t35 (similarly, this test may be redundant once it's fixed)
28*31615c96Sdholland		t36 (C(3) should produce nothing)
29*31615c96Sdholland		t37 (BC foo EC should produce nothing)
30*31615c96Sdholland	  Joerg says comments like in t36 should be stripped exactly
31*31615c96Sdholland	  twice, once when the macro is defined and again when it's
32*31615c96Sdholland	  expanded. Note that gcc's cpp -traditional is getting t37
33*31615c96Sdholland	  wrong, and it gets t36 wrong with -C.
34*31615c96Sdholland	- remove the intentionally undocumented -p option and generate
35*31615c96Sdholland	  proper linenumber output. (also, in this code what happens if
36*31615c96Sdholland	  a comment spans files? I bet currently it will emit the line
37*31615c96Sdholland	  number into the comment.)
38