texinfo-commits
[Top][All Lists]
Advanced

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

[7248] parsetexi update


From: gavinsmith0123
Subject: [7248] parsetexi update
Date: Sat, 9 Jul 2016 19:14:17 +0000 (UTC)

Revision: 7248
          http://svn.sv.gnu.org/viewvc/?view=rev&root=texinfo&revision=7248
Author:   gavin
Date:     2016-07-09 19:14:17 +0000 (Sat, 09 Jul 2016)
Log Message:
-----------
parsetexi update

Modified Paths:
--------------
    trunk/tp/parsetexi/parser.c
    trunk/tp/parsetexi/separator.c

Modified: trunk/tp/parsetexi/parser.c
===================================================================
--- trunk/tp/parsetexi/parser.c 2016-07-09 19:04:18 UTC (rev 7247)
+++ trunk/tp/parsetexi/parser.c 2016-07-09 19:14:17 UTC (rev 7248)
@@ -1397,8 +1397,6 @@
                    || outer == CM_abbr
                    || outer == CM_acronym
                    || outer == CM_dmn
-                   || outer == CM_ctrl
-                   || outer == CM_errormsg
                    || (outer_flags & CF_block // 475
                        && !(outer_flags & CF_def)
                        && command_data(outer).data != BLOCK_raw
@@ -1430,6 +1428,11 @@
                   || cmd == CM_inforef) // 404
                 ok = 0;
             }
+          else if (outer == CM_ctrl
+                   || outer == CM_errormsg)
+            {
+              ok = 0;
+            }
           else
             {
               /* Default to valid nesting, for example for commands for which 

Modified: trunk/tp/parsetexi/separator.c
===================================================================
--- trunk/tp/parsetexi/separator.c      2016-07-09 19:04:18 UTC (rev 7247)
+++ trunk/tp/parsetexi/separator.c      2016-07-09 19:14:17 UTC (rev 7248)
@@ -386,7 +386,27 @@
         }
       else if (closed_command == CM_errormsg) // 5173
         {
-          line_error (text_convert (current));
+          int i;
+          /* Find arg */
+          /* Should we use trim_spaces_comment_from_content instead? */
+          for (i = 0; i < current->contents.number; i++)
+            {
+              enum element_type t = current->contents.list[i]->type;
+              if (current->contents.list[i]->text.end > 0
+                  && t != ET_empty_line_after_command
+                  && t != ET_empty_spaces_after_command
+                  && t != ET_empty_spaces_before_argument
+                  && t != ET_empty_space_at_end_def_bracketed
+                  && t != ET_empty_spaces_after_close_brace)
+                break;
+            }
+          if (i == current->contents.number)
+            ;
+          else
+            {
+              char *arg = current->contents.list[i]->text.text;
+              line_error (arg);
+            }
         }
       else if (closed_command == CM_U)
         {




reply via email to

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