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

Diff for /mandoc/mdoc_validate.c between version 1.217 and 1.219

version 1.217, 2014/07/01 22:37:15 version 1.219, 2014/07/02 05:52:25
Line 98  static int  post_bx(POST_ARGS);
Line 98  static int  post_bx(POST_ARGS);
 static  int      post_defaults(POST_ARGS);  static  int      post_defaults(POST_ARGS);
 static  int      post_dd(POST_ARGS);  static  int      post_dd(POST_ARGS);
 static  int      post_dt(POST_ARGS);  static  int      post_dt(POST_ARGS);
   static  int      post_en(POST_ARGS);
   static  int      post_es(POST_ARGS);
 static  int      post_eoln(POST_ARGS);  static  int      post_eoln(POST_ARGS);
 static  int      post_hyph(POST_ARGS);  static  int      post_hyph(POST_ARGS);
 static  int      post_ignpar(POST_ARGS);  static  int      post_ignpar(POST_ARGS);
Line 125  static int  pre_display(PRE_ARGS);
Line 127  static int  pre_display(PRE_ARGS);
 static  int      pre_dt(PRE_ARGS);  static  int      pre_dt(PRE_ARGS);
 static  int      pre_it(PRE_ARGS);  static  int      pre_it(PRE_ARGS);
 static  int      pre_literal(PRE_ARGS);  static  int      pre_literal(PRE_ARGS);
   static  int      pre_obsolete(PRE_ARGS);
 static  int      pre_os(PRE_ARGS);  static  int      pre_os(PRE_ARGS);
 static  int      pre_par(PRE_ARGS);  static  int      pre_par(PRE_ARGS);
 static  int      pre_sh(PRE_ARGS);  static  int      pre_sh(PRE_ARGS);
Line 145  static v_post  posts_d1[] = { bwarn_ge1, post_hyph, NU
Line 148  static v_post  posts_d1[] = { bwarn_ge1, post_hyph, NU
 static  v_post   posts_dd[] = { post_dd, post_prol, NULL };  static  v_post   posts_dd[] = { post_dd, post_prol, NULL };
 static  v_post   posts_dl[] = { post_literal, bwarn_ge1, NULL };  static  v_post   posts_dl[] = { post_literal, bwarn_ge1, NULL };
 static  v_post   posts_dt[] = { post_dt, post_prol, NULL };  static  v_post   posts_dt[] = { post_dt, post_prol, NULL };
   static  v_post   posts_en[] = { post_en, NULL };
   static  v_post   posts_es[] = { post_es, NULL };
 static  v_post   posts_fo[] = { hwarn_eq1, bwarn_ge1, NULL };  static  v_post   posts_fo[] = { hwarn_eq1, bwarn_ge1, NULL };
 static  v_post   posts_hyph[] = { post_hyph, NULL };  static  v_post   posts_hyph[] = { post_hyph, NULL };
 static  v_post   posts_hyphtext[] = { ewarn_ge1, post_hyph, NULL };  static  v_post   posts_hyphtext[] = { ewarn_ge1, post_hyph, NULL };
Line 173  static v_pre  pres_dl[] = { pre_literal, pre_display, 
Line 178  static v_pre  pres_dl[] = { pre_literal, pre_display, 
 static  v_pre    pres_dd[] = { pre_dd, NULL };  static  v_pre    pres_dd[] = { pre_dd, NULL };
 static  v_pre    pres_dt[] = { pre_dt, NULL };  static  v_pre    pres_dt[] = { pre_dt, NULL };
 static  v_pre    pres_it[] = { pre_it, pre_par, NULL };  static  v_pre    pres_it[] = { pre_it, pre_par, NULL };
   static  v_pre    pres_obsolete[] = { pre_obsolete, NULL };
 static  v_pre    pres_os[] = { pre_os, NULL };  static  v_pre    pres_os[] = { pre_os, NULL };
 static  v_pre    pres_pp[] = { pre_par, NULL };  static  v_pre    pres_pp[] = { pre_par, NULL };
 static  v_pre    pres_sh[] = { pre_sh, NULL };  static  v_pre    pres_sh[] = { pre_sh, NULL };
Line 214  static const struct valids mdoc_valids[MDOC_MAX] = {
Line 220  static const struct valids mdoc_valids[MDOC_MAX] = {
         { NULL, posts_nd },                     /* Nd */          { NULL, posts_nd },                     /* Nd */
         { NULL, posts_nm },                     /* Nm */          { NULL, posts_nm },                     /* Nm */
         { NULL, NULL },                         /* Op */          { NULL, NULL },                         /* Op */
         { NULL, NULL },                         /* Ot */          { pres_obsolete, NULL },                /* Ot */
         { NULL, posts_defaults },               /* Pa */          { NULL, posts_defaults },               /* Pa */
         { pres_std, posts_std },                /* Rv */          { pres_std, posts_std },                /* Rv */
         { NULL, posts_st },                     /* St */          { NULL, posts_st },                     /* St */
Line 284  static const struct valids mdoc_valids[MDOC_MAX] = {
Line 290  static const struct valids mdoc_valids[MDOC_MAX] = {
         { NULL, NULL },                         /* Ek */          { NULL, NULL },                         /* Ek */
         { NULL, posts_eoln },                   /* Bt */          { NULL, posts_eoln },                   /* Bt */
         { NULL, NULL },                         /* Hf */          { NULL, NULL },                         /* Hf */
         { NULL, NULL },                         /* Fr */          { pres_obsolete, NULL },                /* Fr */
         { NULL, posts_eoln },                   /* Ud */          { NULL, posts_eoln },                   /* Ud */
         { NULL, posts_lb },                     /* Lb */          { NULL, posts_lb },                     /* Lb */
         { pres_pp, posts_pp },                  /* Lp */          { pres_pp, posts_pp },                  /* Lp */
Line 294  static const struct valids mdoc_valids[MDOC_MAX] = {
Line 300  static const struct valids mdoc_valids[MDOC_MAX] = {
         { NULL, NULL },                         /* Bro */          { NULL, NULL },                         /* Bro */
         { NULL, NULL },                         /* Brc */          { NULL, NULL },                         /* Brc */
         { NULL, posts_text },                   /* %C */          { NULL, posts_text },                   /* %C */
         { NULL, NULL },                         /* Es */          { pres_obsolete, posts_es },            /* Es */
         { NULL, NULL },                         /* En */          { pres_obsolete, posts_en },            /* En */
         { NULL, NULL },                         /* Dx */          { NULL, NULL },                         /* Dx */
         { NULL, posts_text },                   /* %Q */          { NULL, posts_text },                   /* %Q */
         { NULL, posts_pp },                     /* br */          { NULL, posts_pp },                     /* br */
Line 931  pre_std(PRE_ARGS)
Line 937  pre_std(PRE_ARGS)
 }  }
   
 static int  static int
   pre_obsolete(PRE_ARGS)
   {
   
           if (MDOC_ELEM == n->type || MDOC_BLOCK == n->type)
                   mandoc_msg(MANDOCERR_MACRO_OBS, mdoc->parse,
                       n->line, n->pos, mdoc_macronames[n->tok]);
           return(1);
   }
   
   static int
 pre_dt(PRE_ARGS)  pre_dt(PRE_ARGS)
 {  {
   
Line 1230  post_an(POST_ARGS)
Line 1246  post_an(POST_ARGS)
 }  }
   
 static int  static int
   post_en(POST_ARGS)
   {
   
           if (MDOC_BLOCK == mdoc->last->type)
                   mdoc->last->norm->Es = mdoc->last_es;
           return(1);
   }
   
   static int
   post_es(POST_ARGS)
   {
   
           mdoc->last_es = mdoc->last;
           return(1);
   }
   
   static int
 post_it(POST_ARGS)  post_it(POST_ARGS)
 {  {
         int               i, cols;          int               i, cols;
Line 1352  post_bl_block(POST_ARGS)
Line 1385  post_bl_block(POST_ARGS)
                                 continue;                                  continue;
                         }                          }
                         if (NULL == ni->next) {                          if (NULL == ni->next) {
                                 mdoc_nmsg(mdoc, nc, MANDOCERR_MOVEPAR);                                  mandoc_msg(MANDOCERR_PAR_MOVE,
                                       mdoc->parse, nc->line, nc->pos,
                                       mdoc_macronames[nc->tok]);
                                 if ( ! mdoc_node_relink(mdoc, nc))                                  if ( ! mdoc_node_relink(mdoc, nc))
                                         return(0);                                          return(0);
                         } else if (0 == n->norm->Bl.comp &&                          } else if (0 == n->norm->Bl.comp &&
                             LIST_column != n->norm->Bl.type) {                              LIST_column != n->norm->Bl.type) {
                                 mdoc_nmsg(mdoc, nc, MANDOCERR_IGNPAR);                                  mandoc_vmsg(MANDOCERR_PAR_SKIP,
                                       mdoc->parse, nc->line, nc->pos,
                                       "%s before It",
                                       mdoc_macronames[nc->tok]);
                                 mdoc_node_delete(mdoc, nc);                                  mdoc_node_delete(mdoc, nc);
                         } else                          } else
                                 break;                                  break;
Line 2045  post_ignpar(POST_ARGS)
Line 2083  post_ignpar(POST_ARGS)
   
         if (NULL != (np = mdoc->last->child))          if (NULL != (np = mdoc->last->child))
                 if (MDOC_Pp == np->tok || MDOC_Lp == np->tok) {                  if (MDOC_Pp == np->tok || MDOC_Lp == np->tok) {
                         mdoc_nmsg(mdoc, np, MANDOCERR_IGNPAR);                          mandoc_vmsg(MANDOCERR_PAR_SKIP,
                               mdoc->parse, np->line, np->pos,
                               "%s after %s", mdoc_macronames[np->tok],
                               mdoc_macronames[mdoc->last->tok]);
                         mdoc_node_delete(mdoc, np);                          mdoc_node_delete(mdoc, np);
                 }                  }
   
         if (NULL != (np = mdoc->last->last))          if (NULL != (np = mdoc->last->last))
                 if (MDOC_Pp == np->tok || MDOC_Lp == np->tok) {                  if (MDOC_Pp == np->tok || MDOC_Lp == np->tok) {
                         mdoc_nmsg(mdoc, np, MANDOCERR_IGNPAR);                          mandoc_vmsg(MANDOCERR_PAR_SKIP, mdoc->parse,
                               np->line, np->pos, "%s at the end of %s",
                               mdoc_macronames[np->tok],
                               mdoc_macronames[mdoc->last->tok]);
                         mdoc_node_delete(mdoc, np);                          mdoc_node_delete(mdoc, np);
                 }                  }
   
Line 2083  pre_par(PRE_ARGS)
Line 2127  pre_par(PRE_ARGS)
         if (MDOC_It == n->tok && n->parent->norm->Bl.comp)          if (MDOC_It == n->tok && n->parent->norm->Bl.comp)
                 return(1);                  return(1);
   
         mdoc_nmsg(mdoc, mdoc->last, MANDOCERR_IGNPAR);          mandoc_vmsg(MANDOCERR_PAR_SKIP, mdoc->parse,
               mdoc->last->line, mdoc->last->pos,
               "%s before %s", mdoc_macronames[mdoc->last->tok],
               mdoc_macronames[n->tok]);
         mdoc_node_delete(mdoc, mdoc->last);          mdoc_node_delete(mdoc, mdoc->last);
         return(1);          return(1);
 }  }
Line 2091  pre_par(PRE_ARGS)
Line 2138  pre_par(PRE_ARGS)
 static int  static int
 post_par(POST_ARGS)  post_par(POST_ARGS)
 {  {
           struct mdoc_node *np;
   
         if (MDOC_ELEM != mdoc->last->type &&          if (MDOC_ELEM != mdoc->last->type &&
             MDOC_BLOCK != mdoc->last->type)              MDOC_BLOCK != mdoc->last->type)
                 return(1);                  return(1);
   
         if (NULL == mdoc->last->prev) {          if (NULL == (np = mdoc->last->prev)) {
                 if (MDOC_Sh != mdoc->last->parent->tok &&                  np = mdoc->last->parent;
                     MDOC_Ss != mdoc->last->parent->tok)                  if (MDOC_Sh != np->tok && MDOC_Ss != np->tok)
                         return(1);                          return(1);
         } else {          } else {
                 if (MDOC_Pp != mdoc->last->prev->tok &&                  if (MDOC_Pp != np->tok && MDOC_Lp != np->tok &&
                     MDOC_Lp != mdoc->last->prev->tok &&  
                     (MDOC_br != mdoc->last->tok ||                      (MDOC_br != mdoc->last->tok ||
                      (MDOC_sp != mdoc->last->prev->tok &&                       (MDOC_sp != np->tok && MDOC_br != np->tok)))
                       MDOC_br != mdoc->last->prev->tok)))  
                         return(1);                          return(1);
         }          }
   
         mdoc_nmsg(mdoc, mdoc->last, MANDOCERR_IGNPAR);          mandoc_vmsg(MANDOCERR_PAR_SKIP, mdoc->parse,
               mdoc->last->line, mdoc->last->pos,
               "%s after %s", mdoc_macronames[mdoc->last->tok],
               mdoc_macronames[np->tok]);
         mdoc_node_delete(mdoc, mdoc->last);          mdoc_node_delete(mdoc, mdoc->last);
         return(1);          return(1);
 }  }

Legend:
Removed from v.1.217  
changed lines
  Added in v.1.219

CVSweb