-int contline_next P((void));
-void addline P((line_t **lp, char *str));
-void usage P((void));
-int main P((int argc, char **argv));
-
-void copy_template_file P((char *lbl_templ));
-void do_postscript_output P((void));
-void handle_start P((void));
-void handle_finish P((void));
-void handle_note P((void));
-void handle_summary P((void));
-void handle_stats P((void));
-void handle_error P((void));
-void handle_disk P((void));
-repdata_t *handle_success P((void));
-void handle_strange P((void));
-void handle_failed P((void));
-void generate_missing P((void));
-void output_tapeinfo P((void));
-void output_lines P((line_t *lp, FILE *f));
-void output_stats P((void));
-void output_summary P((void));
-void sort_disks P((void));
-int sort_by_time P((disk_t *a, disk_t *b));
-int sort_by_name P((disk_t *a, disk_t *b));
-void bogus_line P((void));
-char *nicedate P((int datestamp));
-static char *prefix P((char *host, char *disk, int level));
-repdata_t *find_repdata P((disk_t *dp, char *datestamp, int level));
-
-
-static int ColWidth(int From, int To) {
+int main(int argc, char **argv);
+
+static char * nicedate(const char * datestamp);
+static char * prefix(char *host, char *disk, int level);
+static char * prefixstrange(char *host, char *disk, int level,
+ size_t len_host, size_t len_disk);
+static char * Rule(int From, int To);
+static char * sDivZero(double a, double b, int cn);
+static char * TextRule(int From, int To, char *s);
+static int ColWidth(int From, int To);
+static int contline_next(void);
+static int sort_by_name(disk_t *a, disk_t *b);
+static repdata_t *find_repdata(disk_t *dp, char *datestamp, int level);
+static repdata_t *handle_chunk(logtype_t logtype);
+static repdata_t *handle_success(logtype_t logtype);
+static void addline(line_t **lp, char *str);
+static void addtoX_summary(X_summary_t **first, X_summary_t **last,
+ char *host, char *disk, int level, char *str);
+static void bogus_line(const char *);
+static void CalcMaxWidth(void);
+static void CheckFloatMax(ColumnInfo *cd, double d);
+static void CheckIntMax(ColumnInfo *cd, int n);
+static void CheckStringMax(ColumnInfo *cd, char *s);
+static void copy_template_file(char *lbl_templ);
+static void do_postscript_output(void);
+static void generate_missing(void);
+static void generate_bad_estimate(void);
+static void handle_disk(void);
+static void handle_error(void);
+static void handle_failed(void);
+static void handle_finish(void);
+static void handle_note(void);
+static void handle_partial(void);
+static void handle_start(void);
+static void handle_stats(void);
+static void handle_strange(void);
+static void handle_summary(void);
+static void output_lines(line_t *lp, FILE *f);
+static void output_stats(void);
+static void output_X_summary(X_summary_t *first);
+static void output_summary(void);
+static void output_tapeinfo(void);
+static void sort_disks(void);
+static void usage(void);
+
+static int
+ColWidth(
+ int From,
+ int To)
+{