texinfo-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

texinfo/makeinfo makeinfo.c,1.7,1.8


From: karl
Subject: texinfo/makeinfo makeinfo.c,1.7,1.8
Date: Mon, 22 Dec 2003 20:34:14 +0100

Update of /cvsroot/texinfo/texinfo/makeinfo
In directory sheep:/tmp/cvs-serv2907/makeinfo

Modified Files:
        makeinfo.c 
Log Message:
warning if bad char after @ref

Index: makeinfo.c
===================================================================
RCS file: /cvsroot/texinfo/texinfo/makeinfo/makeinfo.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** makeinfo.c  2003/12/18 20:27:38     1.7
--- makeinfo.c  2003/12/22 19:34:12     1.8
***************
*** 3424,3428 ****
           valid to follow an xref (so info readers can find the node
           names).  `input_text_offset' is pointing at the "}" which ended
!          the xref or ref command. */
        int temp;
  
--- 3424,3430 ----
           valid to follow an xref (so info readers can find the node
           names).  `input_text_offset' is pointing at the "}" which ended
!          the xref or ref command.  This is not used for @pxref, since we
!          insert the necessary periods above if needed.  And for @ref, we
!          also allow ), which doesn't make sense for @xref.  */
        int temp;
  
***************
*** 3431,3441 ****
            if (cr_or_whitespace (input_text[temp]))
              temp++;
!           else
!             {
!               if (input_text[temp] != '.' && input_text[temp] != ',')
!                 warning (_("`.' or `,' must follow cross reference, not %c"),
!                          input_text[temp]);
!               break;
              }
          }
      }
--- 3433,3452 ----
            if (cr_or_whitespace (input_text[temp]))
              temp++;
!           else {
!             /* sorry to switch indentation styles, but it's just too
!                much nesting.  --karl.  */
!             if (input_text[temp] != '.' && input_text[temp] != ',') {
!               if (ref_flag) {
!                 if (input_text[temp] != ')') {
!                   warning (_("`.' or `,' or `)' must follow @ref, not %c"),
!                            input_text[temp]);
!                 }
!               } else {
!                 warning (_("`.' or `,' must follow @xref, not %c"),
!                            input_text[temp]);
!               }
              }
+             break;
+           }
          }
      }
***************
*** 3452,3459 ****
        px_ref_flag--;
      }
!   /* Note that cm_xref isn't called with arg == END, which disables
!      the code near the end of cm_xref that checks for `.' or `,'
!      after the cross-reference.  This is because @pxref{} generates
!      the required character itself, when needed.  */
  }
  
--- 3463,3470 ----
        px_ref_flag--;
      }
!   /* cm_xref isn't called with arg == END, which disables the code near
!      the end of cm_xref that checks for `.' or `,' after the
!      cross-reference.  This is because cm_xref generates the required
!      character itself (when needed) if px_ref_flag is set.  */
  }
  
***************
*** 3462,3471 ****
       int arg;
  {
!   if (arg == START)
!     {
!       ref_flag++;
!       cm_xref (arg);
!       ref_flag--;
!     }
  }
  
--- 3473,3480 ----
       int arg;
  {
!   /* Call cm_xref for both START and END, so we get the checking.  */
!   ref_flag++;
!   cm_xref (arg);
!   ref_flag--;
  }
  



reply via email to

[Prev in Thread] Current Thread [Next in Thread]