diff options
author | Ingo Schwarze <schwarze@openbsd.org> | 2015-03-16 14:51:14 +0000 |
---|---|---|
committer | Ingo Schwarze <schwarze@openbsd.org> | 2015-03-16 14:51:14 +0000 |
commit | 6f012a44632546e74fbbe0018e81fd78f3f61049 (patch) | |
tree | 939cd8e5ba2860f225edacf80f206be8ae486c5f | |
parent | c7e9eaf82d8a0689a69d341a31f3ba3206e20bc3 (diff) | |
download | mandoc-6f012a44632546e74fbbe0018e81fd78f3f61049.tar.gz mandoc-6f012a44632546e74fbbe0018e81fd78f3f61049.tar.zst mandoc-6f012a44632546e74fbbe0018e81fd78f3f61049.zip |
naddy@ found a tough problem - fittingly, in cobfusc(1)...
-rw-r--r-- | TODO | 15 |
1 files changed, 14 insertions, 1 deletions
@@ -1,6 +1,6 @@ ************************************************************************ * Official mandoc TODO. -* $Id: TODO,v 1.202 2015/03/11 13:11:22 schwarze Exp $ +* $Id: TODO,v 1.203 2015/03/16 14:51:14 schwarze Exp $ ************************************************************************ Many issues are annotated for difficulty as follows: @@ -105,6 +105,19 @@ are mere guesses, and some may be wrong. needed for Tcl_NewStringObj(3) via wiz@ Wed, 5 Mar 2014 22:27:43 +0100 loc ** exist *** algo *** size * imp *** +- \\ in high-level macro arguments + Currently, \\ is expanded in two situations: + 1) macro and string definition (roff.c setstrn()) + 2) macro argument parsing (mandoc.c mandoc_getarg()) + For user defined macros, the second happens in time because of ROFF_REPARSE. + But for standard high-level macros, it only happens after entering the + high level parsers, which is too late because the code doesn't get + back to roff.c roff_res() from that point. Because this requires + distinguishing requests, user-defined macros and standard macros + on the roff_res() level, it is hard to solve without the parser reorg. + Found by naddy@ in devel/cutils cobfusc(1) Mon, 16 Feb 2015 19:10:52 +0100 + loc *** exist *** algo *** size ** imp * + - using undefined strings or macros defines them to be empty wl@ Mon, 14 Nov 2011 14:37:01 +0000 loc * exist * algo * size * imp * |