[BACK]Return to man_validate.c CVS log [TXT][DIR] Up to [cvsweb.bsd.lv] / mandoc

Diff for /mandoc/man_validate.c between version 1.121 and 1.122

version 1.121, 2015/10/22 21:54:23 version 1.122, 2016/01/08 17:48:09
Line 1 
Line 1 
 /*      $OpenBSD$ */  /*      $OpenBSD$ */
 /*  /*
  * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>   * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
  * Copyright (c) 2010, 2012-2015 Ingo Schwarze <schwarze@openbsd.org>   * Copyright (c) 2010, 2012-2016 Ingo Schwarze <schwarze@openbsd.org>
  *   *
  * Permission to use, copy, modify, and distribute this software for any   * Permission to use, copy, modify, and distribute this software for any
  * purpose with or without fee is hereby granted, provided that the above   * purpose with or without fee is hereby granted, provided that the above
Line 180  static void
Line 180  static void
 post_OP(CHKARGS)  post_OP(CHKARGS)
 {  {
   
         if (n->nchild == 0)          if (n->child == NULL)
                 mandoc_msg(MANDOCERR_OP_EMPTY, man->parse,                  mandoc_msg(MANDOCERR_OP_EMPTY, man->parse,
                     n->line, n->pos, "OP");                      n->line, n->pos, "OP");
         else if (n->nchild > 2) {          else if (n->child->next != NULL && n->child->next->next != NULL) {
                 n = n->child->next->next;                  n = n->child->next->next;
                 mandoc_vmsg(MANDOCERR_ARG_EXCESS, man->parse,                  mandoc_vmsg(MANDOCERR_ARG_EXCESS, man->parse,
                     n->line, n->pos, "OP ... %s", n->string);                      n->line, n->pos, "OP ... %s", n->string);
Line 206  post_ft(CHKARGS)
Line 206  post_ft(CHKARGS)
         char    *cp;          char    *cp;
         int      ok;          int      ok;
   
         if (0 == n->nchild)          if (n->child == NULL)
                 return;                  return;
   
         ok = 0;          ok = 0;
Line 256  check_par(CHKARGS)
Line 256  check_par(CHKARGS)
   
         switch (n->type) {          switch (n->type) {
         case ROFFT_BLOCK:          case ROFFT_BLOCK:
                 if (0 == n->body->nchild)                  if (n->body->child == NULL)
                         roff_node_delete(man, n);                          roff_node_delete(man, n);
                 break;                  break;
         case ROFFT_BODY:          case ROFFT_BODY:
                 if (0 == n->nchild)                  if (n->child == NULL)
                         mandoc_vmsg(MANDOCERR_PAR_SKIP,                          mandoc_vmsg(MANDOCERR_PAR_SKIP,
                             man->parse, n->line, n->pos,                              man->parse, n->line, n->pos,
                             "%s empty", man_macronames[n->tok]);                              "%s empty", man_macronames[n->tok]);
                 break;                  break;
         case ROFFT_HEAD:          case ROFFT_HEAD:
                 if (n->nchild)                  if (n->child != NULL)
                         mandoc_vmsg(MANDOCERR_ARG_SKIP,                          mandoc_vmsg(MANDOCERR_ARG_SKIP,
                             man->parse, n->line, n->pos,                              man->parse, n->line, n->pos,
                             "%s %s%s", man_macronames[n->tok],                              "%s %s%s", man_macronames[n->tok],
                             n->child->string,                              n->child->string,
                             n->nchild > 1 ? " ..." : "");                              n->child->next != NULL ? " ..." : "");
                 break;                  break;
         default:          default:
                 break;                  break;
Line 284  post_IP(CHKARGS)
Line 284  post_IP(CHKARGS)
   
         switch (n->type) {          switch (n->type) {
         case ROFFT_BLOCK:          case ROFFT_BLOCK:
                 if (0 == n->head->nchild && 0 == n->body->nchild)                  if (n->head->child == NULL && n->body->child == NULL)
                         roff_node_delete(man, n);                          roff_node_delete(man, n);
                 break;                  break;
         case ROFFT_BODY:          case ROFFT_BODY:
                 if (0 == n->parent->head->nchild && 0 == n->nchild)                  if (n->parent->head->child == NULL && n->child == NULL)
                         mandoc_vmsg(MANDOCERR_PAR_SKIP,                          mandoc_vmsg(MANDOCERR_PAR_SKIP,
                             man->parse, n->line, n->pos,                              man->parse, n->line, n->pos,
                             "%s empty", man_macronames[n->tok]);                              "%s empty", man_macronames[n->tok]);

Legend:
Removed from v.1.121  
changed lines
  Added in v.1.122

CVSweb