-typedef int (*out_run)(void *, const struct man *,
- const struct mdoc *);
-typedef void (*out_free)(void *);
-
-extern char *__progname;
-
-extern void *ascii_alloc(void);
-extern int terminal_run(void *, const struct man *,
- const struct mdoc *);
-extern int tree_run(void *, const struct man *,
- const struct mdoc *);
-extern void terminal_free(void *);
-
-static int foptions(int *, char *);
-static int toptions(enum outt *, char *);
-static int moptions(enum intt *, char *);
-static int woptions(int *, char *);
-static int merr(void *, int, int, const char *);
-static int manwarn(void *, int, int, const char *);
-static int mdocwarn(void *, int, int,
- enum mdoc_warn, const char *);
-static int fstdin(struct buf *, struct buf *,
- struct curparse *);
-static int ffile(struct buf *, struct buf *,
- const char *, struct curparse *);
-static int fdesc(struct buf *, struct buf *,
- struct curparse *);
-static int pset(const char *, size_t, struct curparse *,
- struct man **, struct mdoc **);
-static struct man *man_init(struct curparse *);
-static struct mdoc *mdoc_init(struct curparse *);
-__dead static void version(void);
-__dead static void usage(void);