texinfo-commits
[Top][All Lists]
Advanced

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

texinfo/tp TODO Texinfo/Parser.pm t/30sectionin...


From: Patrice Dumas
Subject: texinfo/tp TODO Texinfo/Parser.pm t/30sectionin...
Date: Fri, 29 Oct 2010 23:04:32 +0000

CVSROOT:        /sources/texinfo
Module name:    texinfo
Changes by:     Patrice Dumas <pertusus>        10/10/29 23:04:32

Modified files:
        tp             : TODO 
        tp/Texinfo     : Parser.pm 
        tp/t           : 30sectioning.t 57invalid_nestings.t 
                         test_utils.pl 
        tp/t/results/coverage_braces: brace_opened_no_command.pl 
                                      space_in_anchor.pl 
        tp/t/results/invalid_nestings: accents.pl center.pl in_table.pl 
                                       on_block_command_line.pl 
                                       on_index_entry_line.pl 
                                       on_itemize_line.pl 
                                       on_section_line.pl 
        tp/t/results/sectioning: empty_anchor.pl node.pl 
                                 nodename_parentheses.pl 
Added files:
        tp/t/results/sectioning: double_node_anchor_float.pl 
                                 double_top.pl 

Log message:
        Register node/anchor/float and error out when there is a duplication.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/TODO?cvsroot=texinfo&r1=1.45&r2=1.46
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/Texinfo/Parser.pm?cvsroot=texinfo&r1=1.125&r2=1.126
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/30sectioning.t?cvsroot=texinfo&r1=1.8&r2=1.9
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/57invalid_nestings.t?cvsroot=texinfo&r1=1.8&r2=1.9
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/test_utils.pl?cvsroot=texinfo&r1=1.30&r2=1.31
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/coverage_braces/brace_opened_no_command.pl?cvsroot=texinfo&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/coverage_braces/space_in_anchor.pl?cvsroot=texinfo&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/invalid_nestings/accents.pl?cvsroot=texinfo&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/invalid_nestings/center.pl?cvsroot=texinfo&r1=1.10&r2=1.11
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/invalid_nestings/in_table.pl?cvsroot=texinfo&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/invalid_nestings/on_block_command_line.pl?cvsroot=texinfo&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/invalid_nestings/on_index_entry_line.pl?cvsroot=texinfo&r1=1.7&r2=1.8
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/invalid_nestings/on_itemize_line.pl?cvsroot=texinfo&r1=1.8&r2=1.9
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/invalid_nestings/on_section_line.pl?cvsroot=texinfo&r1=1.8&r2=1.9
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/sectioning/empty_anchor.pl?cvsroot=texinfo&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/sectioning/node.pl?cvsroot=texinfo&r1=1.18&r2=1.19
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/sectioning/nodename_parentheses.pl?cvsroot=texinfo&r1=1.6&r2=1.7
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/sectioning/double_node_anchor_float.pl?cvsroot=texinfo&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/sectioning/double_top.pl?cvsroot=texinfo&rev=1.1

Patches:
Index: TODO
===================================================================
RCS file: /sources/texinfo/texinfo/tp/TODO,v
retrieving revision 1.45
retrieving revision 1.46
diff -u -b -r1.45 -r1.46
--- TODO        28 Oct 2010 19:09:23 -0000      1.45
+++ TODO        29 Oct 2010 23:04:32 -0000      1.46
@@ -84,6 +84,8 @@
 sectioning/at_commands_in_refs.texi
 sectioning/test_refs.texi
 sectioning/nodename_parentheses.texi
+sectioning/double_node_anchor_float.texi
+sectioning/double_top.texi   (but not @ref and menu)
 
 indices/unknown_index_entry.texi
 indices/more_unknown_index_entry.texi (but without the document structure)

Index: Texinfo/Parser.pm
===================================================================
RCS file: /sources/texinfo/texinfo/tp/Texinfo/Parser.pm,v
retrieving revision 1.125
retrieving revision 1.126
diff -u -b -r1.125 -r1.126
--- Texinfo/Parser.pm   29 Oct 2010 22:17:40 -0000      1.125
+++ Texinfo/Parser.pm   29 Oct 2010 23:04:32 -0000      1.126
@@ -102,6 +102,9 @@
   'clickstyle' => 'arrow',
   'sections_level' => 0,    # modified by raise/lowersections
   'merged_indices' => {},   # the key is merged in the value
+  'nodes'          => {},   # keys are normalized node names, as described
+                            # in the `HTML Xref' node.  Value should be
+                            # a node/anchor or float in the tree.
 );
 
 # the other possible keys for the parser state are:
@@ -1004,12 +1007,13 @@
 }
 
 # format a line error
-sub _line_error($$$)
+sub _line_error($$$;$)
 {
   my $parser = shift;
   my $text = shift;
   chomp ($text);
   my $line_number = shift;
+  my $continuation = shift;
   if (defined($line_number)) {
     my $file = $line_number->{'file_name'};
     $file =~ s/^.*\/// if ($parser->{'test'});
@@ -1018,11 +1022,13 @@
        if ($line_number->{'macro'} ne '');
     my $error_text = "$file:$line_number->{'line_nr'}: $text$macro_text\n";
     warn "$error_text" if ($parser->{'debug'});
+    my $type = 'error';
+    $type = 'error continuation' if ($continuation);
     push @{$parser->{'errors_warnings'}},
-         { 'type' => 'error', 'text' => $text, 'error_line' => $error_text,
+         { 'type' => $type, 'text' => $text, 'error_line' => $error_text,
            %{$line_number} };
   }
-  $parser->{'error_nrs'}++;
+  $parser->{'error_nrs'}++ unless ($continuation);
 }
 
 # parse a @macro line
@@ -1713,6 +1719,27 @@
   return address@hidden, @args_results];
 }
 
+sub _register_label($$$$)
+{
+  my $self = shift;
+  my $current = shift;
+  my $label = shift;
+  my $line_nr = shift;
+  my $normalized = $label->{'normalized'};
+  if ($self->{'nodes'}->{$normalized}) {
+    _line_error($self, sprintf($self->__("address@hidden `%s' previously 
defined"), 
+                         $current->{'cmdname'}, 
+                   tree_to_texi({'contents' => $label->{'node_content'}})), 
+                           $line_nr);
+    _line_error($self, sprintf($self->__("here is the previous definition as 
address@hidden"),
+                               $self->{'nodes'}->{$normalized}->{'cmdname'}),
+                       $self->{'nodes'}->{$normalized}->{'line_nr'}, 1);
+  } else {
+    $current->{'special'}->{'normalized'} = $normalized;
+    $current->{'special'}->{'node_content'} = $label->{'node_content'};
+    $self->{'nodes'}->{$normalized} = $current;
+  }
+}
 
 # close constructs and do stuff at end of line (or end of the document)
 sub _end_line($$$);
@@ -1897,8 +1924,7 @@
                                $line_nr);
           if (defined($float_label) and $float_label->{'node_content'}
              and $float_label->{'normalized'} =~ /\S/) {
-            $float->{'special'}->{'normalized'} = $float_label->{'normalized'};
-            $float->{'special'}->{'node_content'} = 
$float_label->{'node_content'};
+            _register_label($self, $float, $float_label, $line_nr);
           }
         }
         _parse_float_type ($float);
@@ -2011,10 +2037,8 @@
       }
       if (_check_node_label($self, $current->{'extra'}->{'nodes_manuals'}->[0],
                         $current->{'args'}->[0], $command, $line_nr)) {
-        $current->{'special'}->{'normalized'} 
-          = $current->{'extra'}->{'nodes_manuals'}->[0]->{'normalized'};
-        $current->{'special'}->{'node_content'} 
-          = $current->{'extra'}->{'nodes_manuals'}->[0]->{'node_content'};
+        _register_label($self, $current, 
+                       $current->{'extra'}->{'nodes_manuals'}->[0], $line_nr);
       }
     } elsif ($command eq 'listoffloats') {
       my $empty_listoffloats = 1;
@@ -3122,13 +3146,12 @@
             print STDERR "CLOSING address@hidden>{'parent'}->{'cmdname'}\n" if 
($self->{'debug'});
             delete $current->{'parent'}->{'remaining_args'};
             if ($current->{'parent'}->{'cmdname'} eq 'anchor') {
+              $current->{'parent'}->{'line_nr'} = $line_nr;
               my $parsed_anchor = _parse_node_manual($current);
               if (_check_node_label($self, $parsed_anchor, $current,
                                 $current->{'parent'}->{'cmdname'}, $line_nr)) {
-                $current->{'parent'}->{'special'}->{'normalized'} 
-                  = $parsed_anchor->{'normalized'};
-                $current->{'parent'}->{'special'}->{'node_content'} 
-                  = $parsed_anchor->{'node_content'};
+                _register_label($self, $current->{'parent'},
+                  $parsed_anchor, $line_nr);
               }
             }
             $current = $current->{'parent'}->{'parent'};

Index: t/30sectioning.t
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/30sectioning.t,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -b -r1.8 -r1.9
--- t/30sectioning.t    29 Oct 2010 21:43:24 -0000      1.8
+++ t/30sectioning.t    29 Oct 2010 23:04:32 -0000      1.9
@@ -5,11 +5,11 @@
 my @test_cases = (
 [ 'node',
 '
address@hidden one arg 
address@hidden one arg, two arg
address@hidden one arg, two arg, three arg
address@hidden one arg, two arg, three arg, four arg
address@hidden one arg, two arg, three arg, four arg, five arg
address@hidden one arg1 
address@hidden one arg2, two arg
address@hidden one arg3, two arg, three arg
address@hidden one arg4, two arg, three arg, four arg
address@hidden one arg5, two arg, three arg, four arg, five arg
 
 @node comment @comment
 
@@ -304,6 +304,35 @@
 ['empty_anchor',
 '@anchor{}. 
 @anchor{   }.
+'],
+['double_node_anchor_float',
+'@node node1
+
address@hidden node1
+
address@hidden
+
address@hidden
+
address@hidden anchor1
+
address@hidden Text, node1
address@hidden float
+
address@hidden Text, anchor1
address@hidden float
+
address@hidden Text, float1
address@hidden float
+
address@hidden float1
+'],
+['double_top',
+'@node ToP, top
+
address@hidden top,,ToP,Top
+
address@hidden
 ']
 
 );

Index: t/57invalid_nestings.t
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/57invalid_nestings.t,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -b -r1.8 -r1.9
--- t/57invalid_nestings.t      24 Oct 2010 10:02:42 -0000      1.8
+++ t/57invalid_nestings.t      29 Oct 2010 23:04:32 -0000      1.9
@@ -11,7 +11,7 @@
 @item @titlefont{in titlefont}
 @end multitable
 
address@hidden @indent @titlefont{in titlefont} @anchor{in address@hidden 
@exdent exdent
address@hidden @indent @titlefont{in titlefont} @anchor{in quotation 
address@hidden @exdent exdent
 @end quotation
 '],
 ['ignored_text',

Index: t/test_utils.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/test_utils.pl,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -b -r1.30 -r1.31
--- t/test_utils.pl     29 Oct 2010 07:25:01 -0000      1.30
+++ t/test_utils.pl     29 Oct 2010 23:04:32 -0000      1.31
@@ -163,7 +163,7 @@
       #print STDERR "".Data::Dumper->Dump([$diff->raw()], ['$diff']);
     #}
     ok (Data::Compare::Compare($result, $result_trees{$test_name}, 
-               { 'ignore_hash_keys' => [qw(parent next)] }), 
+               { 'ignore_hash_keys' => [qw(parent next node_content)] }), 
         $test_name.' tree' );
     ok (Data::Compare::Compare($structure, $result_sectioning{$test_name}, 
               { 'ignore_hash_keys' => [qw(next prev up section)] }), 

Index: t/results/coverage_braces/brace_opened_no_command.pl
===================================================================
RCS file: 
/sources/texinfo/texinfo/tp/t/results/coverage_braces/brace_opened_no_command.pl,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- t/results/coverage_braces/brace_opened_no_command.pl        29 Oct 2010 
22:17:40 -0000      1.5
+++ t/results/coverage_braces/brace_opened_no_command.pl        29 Oct 2010 
23:04:32 -0000      1.6
@@ -31,6 +31,11 @@
           ],
           'cmdname' => 'anchor',
           'contents' => [],
+          'line_nr' => {
+            'file_name' => '',
+            'line_nr' => 1,
+            'macro' => ''
+          },
           'parent' => {},
           'special' => {
             'node_content' => [

Index: t/results/coverage_braces/space_in_anchor.pl
===================================================================
RCS file: 
/sources/texinfo/texinfo/tp/t/results/coverage_braces/space_in_anchor.pl,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- t/results/coverage_braces/space_in_anchor.pl        29 Oct 2010 22:17:40 
-0000      1.2
+++ t/results/coverage_braces/space_in_anchor.pl        29 Oct 2010 23:04:32 
-0000      1.3
@@ -28,6 +28,11 @@
           ],
           'cmdname' => 'anchor',
           'contents' => [],
+          'line_nr' => {
+            'file_name' => '',
+            'line_nr' => 1,
+            'macro' => ''
+          },
           'parent' => {},
           'special' => {
             'node_content' => [

Index: t/results/invalid_nestings/accents.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/invalid_nestings/accents.pl,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- t/results/invalid_nestings/accents.pl       29 Oct 2010 22:17:41 -0000      
1.5
+++ t/results/invalid_nestings/accents.pl       29 Oct 2010 23:04:32 -0000      
1.6
@@ -130,6 +130,11 @@
                   ],
                   'cmdname' => 'anchor',
                   'contents' => [],
+                  'line_nr' => {
+                    'file_name' => '',
+                    'line_nr' => 5,
+                    'macro' => ''
+                  },
                   'parent' => {},
                   'special' => {
                     'node_content' => [

Index: t/results/invalid_nestings/center.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/invalid_nestings/center.pl,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -b -r1.10 -r1.11
--- t/results/invalid_nestings/center.pl        29 Oct 2010 22:17:41 -0000      
1.10
+++ t/results/invalid_nestings/center.pl        29 Oct 2010 23:04:32 -0000      
1.11
@@ -61,6 +61,7 @@
               ],
               'cmdname' => 'anchor',
               'contents' => [],
+              'line_nr' => {},
               'parent' => {},
               'special' => {
                 'node_content' => [
@@ -447,6 +448,7 @@
 $result_trees{'center'}{'contents'}[0]{'args'}[0]{'contents'}[4]{'parent'} = 
$result_trees{'center'}{'contents'}[0]{'args'}[0];
 
$result_trees{'center'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'args'}[0]{'contents'}[0]{'parent'}
 = $result_trees{'center'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'args'}[0];
 
$result_trees{'center'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'args'}[0]{'parent'}
 = $result_trees{'center'}{'contents'}[0]{'args'}[0]{'contents'}[5];
+$result_trees{'center'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'line_nr'} = 
$result_trees{'center'}{'contents'}[0]{'args'}[0]{'contents'}[1]{'line_nr'};
 $result_trees{'center'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'parent'} = 
$result_trees{'center'}{'contents'}[0]{'args'}[0];
 
$result_trees{'center'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'special'}{'node_content'}[0]
 = 
$result_trees{'center'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'args'}[0]{'contents'}[0];
 
$result_trees{'center'}{'contents'}[0]{'args'}[0]{'contents'}[6]{'args'}[0]{'contents'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'center'}{'contents'}[0]{'args'}[0]{'contents'}[6]{'args'}[0]{'contents'}[0];

Index: t/results/invalid_nestings/in_table.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/invalid_nestings/in_table.pl,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- t/results/invalid_nestings/in_table.pl      29 Oct 2010 22:17:41 -0000      
1.9
+++ t/results/invalid_nestings/in_table.pl      29 Oct 2010 23:04:32 -0000      
1.10
@@ -140,6 +140,7 @@
                   ],
                   'cmdname' => 'anchor',
                   'contents' => [],
+                  'line_nr' => {},
                   'parent' => {},
                   'special' => {
                     'node_content' => [
@@ -275,6 +276,7 @@
 
$result_trees{'in_table'}{'contents'}[3]{'contents'}[1]{'args'}[0]{'contents'}[4]{'parent'}
 = $result_trees{'in_table'}{'contents'}[3]{'contents'}[1]{'args'}[0];
 
$result_trees{'in_table'}{'contents'}[3]{'contents'}[1]{'args'}[0]{'contents'}[5]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'in_table'}{'contents'}[3]{'contents'}[1]{'args'}[0]{'contents'}[5]{'args'}[0];
 
$result_trees{'in_table'}{'contents'}[3]{'contents'}[1]{'args'}[0]{'contents'}[5]{'args'}[0]{'parent'}
 = 
$result_trees{'in_table'}{'contents'}[3]{'contents'}[1]{'args'}[0]{'contents'}[5];
+$result_trees{'in_table'}{'contents'}[3]{'contents'}[1]{'args'}[0]{'contents'}[5]{'line_nr'}
 = 
$result_trees{'in_table'}{'contents'}[3]{'contents'}[1]{'args'}[0]{'contents'}[1]{'line_nr'};
 
$result_trees{'in_table'}{'contents'}[3]{'contents'}[1]{'args'}[0]{'contents'}[5]{'parent'}
 = $result_trees{'in_table'}{'contents'}[3]{'contents'}[1]{'args'}[0];
 
$result_trees{'in_table'}{'contents'}[3]{'contents'}[1]{'args'}[0]{'contents'}[5]{'special'}{'node_content'}[0]
 = 
$result_trees{'in_table'}{'contents'}[3]{'contents'}[1]{'args'}[0]{'contents'}[5]{'args'}[0]{'contents'}[0];
 
$result_trees{'in_table'}{'contents'}[3]{'contents'}[1]{'args'}[0]{'contents'}[6]{'args'}[0]{'contents'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'in_table'}{'contents'}[3]{'contents'}[1]{'args'}[0]{'contents'}[6]{'args'}[0]{'contents'}[0];

Index: t/results/invalid_nestings/on_block_command_line.pl
===================================================================
RCS file: 
/sources/texinfo/texinfo/tp/t/results/invalid_nestings/on_block_command_line.pl,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- t/results/invalid_nestings/on_block_command_line.pl 29 Oct 2010 22:17:41 
-0000      1.9
+++ t/results/invalid_nestings/on_block_command_line.pl 29 Oct 2010 23:04:32 
-0000      1.10
@@ -28,6 +28,11 @@
                   ],
                   'cmdname' => 'anchor',
                   'contents' => [],
+                  'line_nr' => {
+                    'file_name' => '',
+                    'line_nr' => 1,
+                    'macro' => ''
+                  },
                   'parent' => {},
                   'special' => {
                     'node_content' => [
@@ -192,7 +197,7 @@
                   'contents' => [
                     {
                       'parent' => {},
-                      'text' => 'in anchor'
+                      'text' => 'in quotation anchor'
                     }
                   ],
                   'parent' => {},
@@ -201,12 +206,13 @@
               ],
               'cmdname' => 'anchor',
               'contents' => [],
+              'line_nr' => {},
               'parent' => {},
               'special' => {
                 'node_content' => [
                   {}
                 ],
-                'normalized' => 'in-anchor'
+                'normalized' => 'in-quotation-anchor'
               }
             },
             {
@@ -308,6 +314,7 @@
 
$result_trees{'on_block_command_line'}{'contents'}[3]{'args'}[0]{'contents'}[4]{'parent'}
 = $result_trees{'on_block_command_line'}{'contents'}[3]{'args'}[0];
 
$result_trees{'on_block_command_line'}{'contents'}[3]{'args'}[0]{'contents'}[5]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'on_block_command_line'}{'contents'}[3]{'args'}[0]{'contents'}[5]{'args'}[0];
 
$result_trees{'on_block_command_line'}{'contents'}[3]{'args'}[0]{'contents'}[5]{'args'}[0]{'parent'}
 = 
$result_trees{'on_block_command_line'}{'contents'}[3]{'args'}[0]{'contents'}[5];
+$result_trees{'on_block_command_line'}{'contents'}[3]{'args'}[0]{'contents'}[5]{'line_nr'}
 = 
$result_trees{'on_block_command_line'}{'contents'}[3]{'args'}[0]{'contents'}[1]{'line_nr'};
 
$result_trees{'on_block_command_line'}{'contents'}[3]{'args'}[0]{'contents'}[5]{'parent'}
 = $result_trees{'on_block_command_line'}{'contents'}[3]{'args'}[0];
 
$result_trees{'on_block_command_line'}{'contents'}[3]{'args'}[0]{'contents'}[5]{'special'}{'node_content'}[0]
 = 
$result_trees{'on_block_command_line'}{'contents'}[3]{'args'}[0]{'contents'}[5]{'args'}[0]{'contents'}[0];
 
$result_trees{'on_block_command_line'}{'contents'}[3]{'args'}[0]{'contents'}[6]{'args'}[0]{'contents'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'on_block_command_line'}{'contents'}[3]{'args'}[0]{'contents'}[6]{'args'}[0]{'contents'}[0];
@@ -328,7 +335,7 @@
 @item @titlefont{in titlefont}
 @end multitable
 
address@hidden @indent @titlefont{in titlefont} @anchor{in address@hidden 
@exdent exdent
address@hidden @indent @titlefont{in titlefont} @anchor{in quotation 
address@hidden @exdent exdent
 @end quotation
 ';
 

Index: t/results/invalid_nestings/on_index_entry_line.pl
===================================================================
RCS file: 
/sources/texinfo/texinfo/tp/t/results/invalid_nestings/on_index_entry_line.pl,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- t/results/invalid_nestings/on_index_entry_line.pl   29 Oct 2010 22:17:41 
-0000      1.7
+++ t/results/invalid_nestings/on_index_entry_line.pl   29 Oct 2010 23:04:32 
-0000      1.8
@@ -61,6 +61,7 @@
               ],
               'cmdname' => 'anchor',
               'contents' => [],
+              'line_nr' => {},
               'parent' => {},
               'special' => {
                 'node_content' => [
@@ -137,6 +138,7 @@
 
$result_trees{'on_index_entry_line'}{'contents'}[0]{'args'}[0]{'contents'}[4]{'parent'}
 = $result_trees{'on_index_entry_line'}{'contents'}[0]{'args'}[0];
 
$result_trees{'on_index_entry_line'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'on_index_entry_line'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'args'}[0];
 
$result_trees{'on_index_entry_line'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'args'}[0]{'parent'}
 = 
$result_trees{'on_index_entry_line'}{'contents'}[0]{'args'}[0]{'contents'}[5];
+$result_trees{'on_index_entry_line'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'line_nr'}
 = 
$result_trees{'on_index_entry_line'}{'contents'}[0]{'args'}[0]{'contents'}[1]{'line_nr'};
 
$result_trees{'on_index_entry_line'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'parent'}
 = $result_trees{'on_index_entry_line'}{'contents'}[0]{'args'}[0];
 
$result_trees{'on_index_entry_line'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'special'}{'node_content'}[0]
 = 
$result_trees{'on_index_entry_line'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'args'}[0]{'contents'}[0];
 
$result_trees{'on_index_entry_line'}{'contents'}[0]{'args'}[0]{'contents'}[6]{'args'}[0]{'contents'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'on_index_entry_line'}{'contents'}[0]{'args'}[0]{'contents'}[6]{'args'}[0]{'contents'}[0];

Index: t/results/invalid_nestings/on_itemize_line.pl
===================================================================
RCS file: 
/sources/texinfo/texinfo/tp/t/results/invalid_nestings/on_itemize_line.pl,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -b -r1.8 -r1.9
--- t/results/invalid_nestings/on_itemize_line.pl       29 Oct 2010 22:17:41 
-0000      1.8
+++ t/results/invalid_nestings/on_itemize_line.pl       29 Oct 2010 23:04:32 
-0000      1.9
@@ -61,6 +61,7 @@
               ],
               'cmdname' => 'anchor',
               'contents' => [],
+              'line_nr' => {},
               'parent' => {},
               'special' => {
                 'node_content' => [
@@ -226,6 +227,7 @@
 
$result_trees{'on_itemize_line'}{'contents'}[0]{'args'}[0]{'contents'}[4]{'parent'}
 = $result_trees{'on_itemize_line'}{'contents'}[0]{'args'}[0];
 
$result_trees{'on_itemize_line'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'on_itemize_line'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'args'}[0];
 
$result_trees{'on_itemize_line'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'args'}[0]{'parent'}
 = $result_trees{'on_itemize_line'}{'contents'}[0]{'args'}[0]{'contents'}[5];
+$result_trees{'on_itemize_line'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'line_nr'}
 = 
$result_trees{'on_itemize_line'}{'contents'}[0]{'args'}[0]{'contents'}[1]{'line_nr'};
 
$result_trees{'on_itemize_line'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'parent'}
 = $result_trees{'on_itemize_line'}{'contents'}[0]{'args'}[0];
 
$result_trees{'on_itemize_line'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'special'}{'node_content'}[0]
 = 
$result_trees{'on_itemize_line'}{'contents'}[0]{'args'}[0]{'contents'}[5]{'args'}[0]{'contents'}[0];
 
$result_trees{'on_itemize_line'}{'contents'}[0]{'args'}[0]{'contents'}[6]{'args'}[0]{'contents'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'on_itemize_line'}{'contents'}[0]{'args'}[0]{'contents'}[6]{'args'}[0]{'contents'}[0];

Index: t/results/invalid_nestings/on_section_line.pl
===================================================================
RCS file: 
/sources/texinfo/texinfo/tp/t/results/invalid_nestings/on_section_line.pl,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -b -r1.8 -r1.9
--- t/results/invalid_nestings/on_section_line.pl       29 Oct 2010 22:17:41 
-0000      1.8
+++ t/results/invalid_nestings/on_section_line.pl       29 Oct 2010 23:04:32 
-0000      1.9
@@ -69,6 +69,7 @@
               ],
               'cmdname' => 'anchor',
               'contents' => [],
+              'line_nr' => {},
               'parent' => {},
               'special' => {
                 'node_content' => [
@@ -147,6 +148,7 @@
 
$result_trees{'on_section_line'}{'contents'}[1]{'args'}[0]{'contents'}[5]{'parent'}
 = $result_trees{'on_section_line'}{'contents'}[1]{'args'}[0];
 
$result_trees{'on_section_line'}{'contents'}[1]{'args'}[0]{'contents'}[6]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'on_section_line'}{'contents'}[1]{'args'}[0]{'contents'}[6]{'args'}[0];
 
$result_trees{'on_section_line'}{'contents'}[1]{'args'}[0]{'contents'}[6]{'args'}[0]{'parent'}
 = $result_trees{'on_section_line'}{'contents'}[1]{'args'}[0]{'contents'}[6];
+$result_trees{'on_section_line'}{'contents'}[1]{'args'}[0]{'contents'}[6]{'line_nr'}
 = 
$result_trees{'on_section_line'}{'contents'}[1]{'args'}[0]{'contents'}[1]{'line_nr'};
 
$result_trees{'on_section_line'}{'contents'}[1]{'args'}[0]{'contents'}[6]{'parent'}
 = $result_trees{'on_section_line'}{'contents'}[1]{'args'}[0];
 
$result_trees{'on_section_line'}{'contents'}[1]{'args'}[0]{'contents'}[6]{'special'}{'node_content'}[0]
 = 
$result_trees{'on_section_line'}{'contents'}[1]{'args'}[0]{'contents'}[6]{'args'}[0]{'contents'}[0];
 
$result_trees{'on_section_line'}{'contents'}[1]{'args'}[0]{'contents'}[7]{'args'}[0]{'contents'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'on_section_line'}{'contents'}[1]{'args'}[0]{'contents'}[7]{'args'}[0]{'contents'}[0];

Index: t/results/sectioning/empty_anchor.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/sectioning/empty_anchor.pl,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- t/results/sectioning/empty_anchor.pl        29 Oct 2010 21:43:24 -0000      
1.1
+++ t/results/sectioning/empty_anchor.pl        29 Oct 2010 23:04:32 -0000      
1.2
@@ -14,6 +14,11 @@
           ],
           'cmdname' => 'anchor',
           'contents' => [],
+          'line_nr' => {
+            'file_name' => '',
+            'line_nr' => 1,
+            'macro' => ''
+          },
           'parent' => {}
         },
         {
@@ -36,6 +41,11 @@
           ],
           'cmdname' => 'anchor',
           'contents' => [],
+          'line_nr' => {
+            'file_name' => '',
+            'line_nr' => 2,
+            'macro' => ''
+          },
           'parent' => {}
         },
         {

Index: t/results/sectioning/node.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/sectioning/node.pl,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -b -r1.18 -r1.19
--- t/results/sectioning/node.pl        29 Oct 2010 22:17:41 -0000      1.18
+++ t/results/sectioning/node.pl        29 Oct 2010 23:04:32 -0000      1.19
@@ -24,7 +24,7 @@
             },
             {
               'parent' => {},
-              'text' => 'one arg'
+              'text' => 'one arg1'
             },
             {
               'parent' => {},
@@ -45,7 +45,7 @@
             'node_content' => [
               {}
             ],
-            'normalized' => 'one-arg'
+            'normalized' => 'one-arg1'
           }
         ]
       },
@@ -57,7 +57,7 @@
       'parent' => {},
       'special' => {
         'node_content' => [],
-        'normalized' => 'one-arg'
+        'normalized' => 'one-arg1'
       }
     },
     {
@@ -71,7 +71,7 @@
             },
             {
               'parent' => {},
-              'text' => 'one arg'
+              'text' => 'one arg2'
             }
           ],
           'parent' => {},
@@ -106,7 +106,7 @@
             'node_content' => [
               {}
             ],
-            'normalized' => 'one-arg'
+            'normalized' => 'one-arg2'
           },
           {
             'node_content' => [
@@ -124,7 +124,7 @@
       'parent' => {},
       'special' => {
         'node_content' => [],
-        'normalized' => 'one-arg'
+        'normalized' => 'one-arg2'
       }
     },
     {
@@ -138,7 +138,7 @@
             },
             {
               'parent' => {},
-              'text' => 'one arg'
+              'text' => 'one arg3'
             }
           ],
           'parent' => {},
@@ -187,7 +187,7 @@
             'node_content' => [
               {}
             ],
-            'normalized' => 'one-arg'
+            'normalized' => 'one-arg3'
           },
           {
             'node_content' => [
@@ -211,7 +211,7 @@
       'parent' => {},
       'special' => {
         'node_content' => [],
-        'normalized' => 'one-arg'
+        'normalized' => 'one-arg3'
       }
     },
     {
@@ -225,7 +225,7 @@
             },
             {
               'parent' => {},
-              'text' => 'one arg'
+              'text' => 'one arg4'
             }
           ],
           'parent' => {},
@@ -288,7 +288,7 @@
             'node_content' => [
               {}
             ],
-            'normalized' => 'one-arg'
+            'normalized' => 'one-arg4'
           },
           {
             'node_content' => [
@@ -318,7 +318,7 @@
       'parent' => {},
       'special' => {
         'node_content' => [],
-        'normalized' => 'one-arg'
+        'normalized' => 'one-arg4'
       }
     },
     {
@@ -332,7 +332,7 @@
             },
             {
               'parent' => {},
-              'text' => 'one arg'
+              'text' => 'one arg5'
             }
           ],
           'parent' => {},
@@ -402,7 +402,7 @@
             'node_content' => [
               {}
             ],
-            'normalized' => 'one-arg'
+            'normalized' => 'one-arg5'
           },
           {
             'node_content' => [
@@ -432,7 +432,7 @@
       'parent' => {},
       'special' => {
         'node_content' => [],
-        'normalized' => 'one-arg'
+        'normalized' => 'one-arg5'
       }
     },
     {
@@ -744,11 +744,11 @@
 $result_trees{'node'}{'contents'}[7]{'special'}{'node_content'} = 
$result_trees{'node'}{'contents'}[7]{'extra'}{'nodes_manuals'}[0]{'node_content'};
 
 $result_texis{'node'} = '
address@hidden one arg 
address@hidden one arg, two arg
address@hidden one arg, two arg, three arg
address@hidden one arg, two arg, three arg, four arg
address@hidden one arg, two arg, three arg, four arg five arg
address@hidden one arg1 
address@hidden one arg2, two arg
address@hidden one arg3, two arg, three arg
address@hidden one arg4, two arg, three arg, four arg
address@hidden one arg5, two arg, three arg, four arg five arg
 
 @node comment @comment
 

Index: t/results/sectioning/nodename_parentheses.pl
===================================================================
RCS file: 
/sources/texinfo/texinfo/tp/t/results/sectioning/nodename_parentheses.pl,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- t/results/sectioning/nodename_parentheses.pl        29 Oct 2010 22:17:41 
-0000      1.6
+++ t/results/sectioning/nodename_parentheses.pl        29 Oct 2010 23:04:32 
-0000      1.7
@@ -650,6 +650,11 @@
               ],
               'cmdname' => 'anchor',
               'contents' => [],
+              'line_nr' => {
+                'file_name' => '',
+                'line_nr' => 27,
+                'macro' => ''
+              },
               'parent' => {},
               'special' => {
                 'node_content' => [

Index: t/results/sectioning/double_node_anchor_float.pl
===================================================================
RCS file: t/results/sectioning/double_node_anchor_float.pl
diff -N t/results/sectioning/double_node_anchor_float.pl
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ t/results/sectioning/double_node_anchor_float.pl    29 Oct 2010 23:04:32 
-0000      1.1
@@ -0,0 +1,721 @@
+use vars qw(%result_texis %result_texts %result_trees %result_errors 
%results_indices);
+
+$result_trees{'double_node_anchor_float'} = {
+  'contents' => [
+    {
+      'contents' => [],
+      'type' => 'text_root'
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'parent' => {},
+              'text' => ' ',
+              'type' => 'empty_spaces_after_command'
+            },
+            {
+              'parent' => {},
+              'text' => 'node1'
+            },
+            {
+              'parent' => {},
+              'text' => '
+',
+              'type' => 'spaces_at_end'
+            }
+          ],
+          'parent' => {},
+          'type' => 'misc_line_arg'
+        }
+      ],
+      'cmdname' => 'node',
+      'contents' => [
+        {
+          'parent' => {},
+          'text' => '
+',
+          'type' => 'empty_line'
+        }
+      ],
+      'extra' => {
+        'nodes_manuals' => [
+          {
+            'node_content' => [
+              {}
+            ],
+            'normalized' => 'node1'
+          }
+        ]
+      },
+      'line_nr' => {
+        'file_name' => '',
+        'line_nr' => 1,
+        'macro' => ''
+      },
+      'parent' => {},
+      'special' => {
+        'node_content' => [],
+        'normalized' => 'node1'
+      }
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'parent' => {},
+              'text' => ' ',
+              'type' => 'empty_spaces_after_command'
+            },
+            {
+              'parent' => {},
+              'text' => 'node1'
+            },
+            {
+              'parent' => {},
+              'text' => '
+',
+              'type' => 'spaces_at_end'
+            }
+          ],
+          'parent' => {},
+          'type' => 'misc_line_arg'
+        }
+      ],
+      'cmdname' => 'node',
+      'contents' => [
+        {
+          'parent' => {},
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'contents' => [
+            {
+              'args' => [
+                {
+                  'contents' => [
+                    {
+                      'parent' => {},
+                      'text' => 'node1'
+                    }
+                  ],
+                  'parent' => {},
+                  'type' => 'brace_command_arg'
+                }
+              ],
+              'cmdname' => 'anchor',
+              'contents' => [],
+              'line_nr' => {
+                'file_name' => '',
+                'line_nr' => 5,
+                'macro' => ''
+              },
+              'parent' => {}
+            },
+            {
+              'parent' => {},
+              'text' => '
+'
+            }
+          ],
+          'parent' => {},
+          'type' => 'paragraph'
+        },
+        {
+          'parent' => {},
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'contents' => [
+            {
+              'args' => [
+                {
+                  'contents' => [
+                    {
+                      'parent' => {},
+                      'text' => 'anchor1'
+                    }
+                  ],
+                  'parent' => {},
+                  'type' => 'brace_command_arg'
+                }
+              ],
+              'cmdname' => 'anchor',
+              'contents' => [],
+              'line_nr' => {
+                'file_name' => '',
+                'line_nr' => 7,
+                'macro' => ''
+              },
+              'parent' => {},
+              'special' => {
+                'node_content' => [
+                  {}
+                ],
+                'normalized' => 'anchor1'
+              }
+            },
+            {
+              'parent' => {},
+              'text' => '
+'
+            }
+          ],
+          'parent' => {},
+          'type' => 'paragraph'
+        },
+        {
+          'parent' => {},
+          'text' => '
+',
+          'type' => 'empty_line'
+        }
+      ],
+      'extra' => {
+        'nodes_manuals' => [
+          {
+            'node_content' => [
+              {}
+            ],
+            'normalized' => 'node1'
+          }
+        ]
+      },
+      'line_nr' => {
+        'file_name' => '',
+        'line_nr' => 3,
+        'macro' => ''
+      },
+      'parent' => {}
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'parent' => {},
+              'text' => ' ',
+              'type' => 'empty_spaces_after_command'
+            },
+            {
+              'parent' => {},
+              'text' => 'anchor1'
+            },
+            {
+              'parent' => {},
+              'text' => '
+',
+              'type' => 'spaces_at_end'
+            }
+          ],
+          'parent' => {},
+          'type' => 'misc_line_arg'
+        }
+      ],
+      'cmdname' => 'node',
+      'contents' => [
+        {
+          'parent' => {},
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'parent' => {},
+                  'text' => ' ',
+                  'type' => 'empty_spaces_after_command'
+                },
+                {
+                  'parent' => {},
+                  'text' => 'Text'
+                }
+              ],
+              'parent' => {},
+              'type' => 'block_line_arg'
+            },
+            {
+              'contents' => [
+                {
+                  'text' => ' ',
+                  'type' => 'empty_spaces_before_argument'
+                },
+                {
+                  'parent' => {},
+                  'text' => 'node1'
+                },
+                {
+                  'parent' => {},
+                  'text' => '
+',
+                  'type' => 'space_at_end_block_command'
+                }
+              ],
+              'parent' => {},
+              'type' => 'block_line_arg'
+            }
+          ],
+          'cmdname' => 'float',
+          'contents' => [],
+          'line_nr' => {
+            'file_name' => '',
+            'line_nr' => 11,
+            'macro' => ''
+          },
+          'parent' => {},
+          'special' => {
+            'type' => {
+              'content' => [
+                {}
+              ],
+              'normalized' => 'Text'
+            }
+          }
+        },
+        {
+          'parent' => {},
+          'text' => '
+',
+          'type' => 'empty_line_after_command'
+        },
+        {
+          'parent' => {},
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'parent' => {},
+                  'text' => ' ',
+                  'type' => 'empty_spaces_after_command'
+                },
+                {
+                  'parent' => {},
+                  'text' => 'Text'
+                }
+              ],
+              'parent' => {},
+              'type' => 'block_line_arg'
+            },
+            {
+              'contents' => [
+                {
+                  'text' => ' ',
+                  'type' => 'empty_spaces_before_argument'
+                },
+                {
+                  'parent' => {},
+                  'text' => 'anchor1'
+                },
+                {
+                  'parent' => {},
+                  'text' => '
+',
+                  'type' => 'space_at_end_block_command'
+                }
+              ],
+              'parent' => {},
+              'type' => 'block_line_arg'
+            }
+          ],
+          'cmdname' => 'float',
+          'contents' => [],
+          'line_nr' => {
+            'file_name' => '',
+            'line_nr' => 14,
+            'macro' => ''
+          },
+          'parent' => {},
+          'special' => {
+            'type' => {
+              'content' => [
+                {}
+              ],
+              'normalized' => 'Text'
+            }
+          }
+        },
+        {
+          'parent' => {},
+          'text' => '
+',
+          'type' => 'empty_line_after_command'
+        },
+        {
+          'parent' => {},
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'parent' => {},
+                  'text' => ' ',
+                  'type' => 'empty_spaces_after_command'
+                },
+                {
+                  'parent' => {},
+                  'text' => 'Text'
+                }
+              ],
+              'parent' => {},
+              'type' => 'block_line_arg'
+            },
+            {
+              'contents' => [
+                {
+                  'text' => ' ',
+                  'type' => 'empty_spaces_before_argument'
+                },
+                {
+                  'parent' => {},
+                  'text' => 'float1'
+                },
+                {
+                  'parent' => {},
+                  'text' => '
+',
+                  'type' => 'space_at_end_block_command'
+                }
+              ],
+              'parent' => {},
+              'type' => 'block_line_arg'
+            }
+          ],
+          'cmdname' => 'float',
+          'contents' => [],
+          'line_nr' => {
+            'file_name' => '',
+            'line_nr' => 17,
+            'macro' => ''
+          },
+          'parent' => {},
+          'special' => {
+            'node_content' => [
+              {}
+            ],
+            'normalized' => 'float1',
+            'type' => {
+              'content' => [
+                {}
+              ],
+              'normalized' => 'Text'
+            }
+          }
+        },
+        {
+          'parent' => {},
+          'text' => '
+',
+          'type' => 'empty_line_after_command'
+        },
+        {
+          'parent' => {},
+          'text' => '
+',
+          'type' => 'empty_line'
+        }
+      ],
+      'extra' => {
+        'nodes_manuals' => [
+          {
+            'node_content' => [
+              {}
+            ],
+            'normalized' => 'anchor1'
+          }
+        ]
+      },
+      'line_nr' => {
+        'file_name' => '',
+        'line_nr' => 9,
+        'macro' => ''
+      },
+      'parent' => {}
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'parent' => {},
+              'text' => ' ',
+              'type' => 'empty_spaces_after_command'
+            },
+            {
+              'parent' => {},
+              'text' => 'float1'
+            },
+            {
+              'parent' => {},
+              'text' => '
+',
+              'type' => 'spaces_at_end'
+            }
+          ],
+          'parent' => {},
+          'type' => 'misc_line_arg'
+        }
+      ],
+      'cmdname' => 'node',
+      'contents' => [],
+      'extra' => {
+        'nodes_manuals' => [
+          {
+            'node_content' => [
+              {}
+            ],
+            'normalized' => 'float1'
+          }
+        ]
+      },
+      'line_nr' => {
+        'file_name' => '',
+        'line_nr' => 20,
+        'macro' => ''
+      },
+      'parent' => {}
+    }
+  ],
+  'type' => 'document_root'
+};
+$result_trees{'double_node_anchor_float'}{'contents'}[1]{'args'}[0]{'contents'}[0]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[1]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[1]{'args'}[0]{'contents'}[1]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[1]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[1]{'args'}[0]{'contents'}[2]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[1]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[1]{'args'}[0]{'parent'} 
= $result_trees{'double_node_anchor_float'}{'contents'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[1]{'contents'}[0]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[1]{'extra'}{'nodes_manuals'}[0]{'node_content'}[0]
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[1]{'args'}[0]{'contents'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[1]{'parent'} = 
$result_trees{'double_node_anchor_float'};
+$result_trees{'double_node_anchor_float'}{'contents'}[1]{'special'}{'node_content'}
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[1]{'extra'}{'nodes_manuals'}[0]{'node_content'};
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'args'}[0]{'contents'}[0]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[2]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'args'}[0]{'contents'}[1]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[2]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'args'}[0]{'contents'}[2]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[2]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'args'}[0]{'parent'} 
= $result_trees{'double_node_anchor_float'}{'contents'}[2];
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[0]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[2];
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[1]{'contents'}[0]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[1]{'contents'}[0]{'args'}[0]{'parent'}
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[1]{'contents'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[1]{'contents'}[0]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[1]{'contents'}[1]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[1]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[2];
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[2]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[2];
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[3]{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[3]{'contents'}[0]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[3]{'contents'}[0]{'args'}[0]{'parent'}
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[3]{'contents'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[3]{'contents'}[0]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[3];
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[3]{'contents'}[0]{'special'}{'node_content'}[0]
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[3]{'contents'}[0]{'args'}[0]{'contents'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[3]{'contents'}[1]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[3];
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[3]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[2];
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'contents'}[4]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[2];
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'extra'}{'nodes_manuals'}[0]{'node_content'}[0]
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[2]{'args'}[0]{'contents'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[2]{'parent'} = 
$result_trees{'double_node_anchor_float'};
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'args'}[0]{'contents'}[0]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[3]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'args'}[0]{'contents'}[1]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[3]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'args'}[0]{'contents'}[2]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[3]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'args'}[0]{'parent'} 
= $result_trees{'double_node_anchor_float'}{'contents'}[3];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[0]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[3];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[1]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[1]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[1]{'args'}[0]{'contents'}[1]{'parent'}
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[1]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[1]{'args'}[0]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[1]{'args'}[1]{'contents'}[1]{'parent'}
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[1]{'args'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[1]{'args'}[1]{'contents'}[2]{'parent'}
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[1]{'args'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[1]{'args'}[1]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[1]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[3];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[1]{'special'}{'type'}{'content'}[0]
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[1]{'args'}[0]{'contents'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[2]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[3];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[3]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[3];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[4]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[4]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[4]{'args'}[0]{'contents'}[1]{'parent'}
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[4]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[4]{'args'}[0]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[4];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[4]{'args'}[1]{'contents'}[1]{'parent'}
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[4]{'args'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[4]{'args'}[1]{'contents'}[2]{'parent'}
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[4]{'args'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[4]{'args'}[1]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[4];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[4]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[3];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[4]{'special'}{'type'}{'content'}[0]
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[4]{'args'}[0]{'contents'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[5]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[3];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[6]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[3];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[7]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[7]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[7]{'args'}[0]{'contents'}[1]{'parent'}
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[7]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[7]{'args'}[0]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[7];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[7]{'args'}[1]{'contents'}[1]{'parent'}
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[7]{'args'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[7]{'args'}[1]{'contents'}[2]{'parent'}
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[7]{'args'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[7]{'args'}[1]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[7];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[7]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[3];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[7]{'special'}{'node_content'}[0]
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[7]{'args'}[1]{'contents'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[7]{'special'}{'type'}{'content'}[0]
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[7]{'args'}[0]{'contents'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[8]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[3];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'contents'}[9]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[3];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'extra'}{'nodes_manuals'}[0]{'node_content'}[0]
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[3]{'args'}[0]{'contents'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[3]{'parent'} = 
$result_trees{'double_node_anchor_float'};
+$result_trees{'double_node_anchor_float'}{'contents'}[4]{'args'}[0]{'contents'}[0]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[4]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[4]{'args'}[0]{'contents'}[1]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[4]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[4]{'args'}[0]{'contents'}[2]{'parent'}
 = $result_trees{'double_node_anchor_float'}{'contents'}[4]{'args'}[0];
+$result_trees{'double_node_anchor_float'}{'contents'}[4]{'args'}[0]{'parent'} 
= $result_trees{'double_node_anchor_float'}{'contents'}[4];
+$result_trees{'double_node_anchor_float'}{'contents'}[4]{'extra'}{'nodes_manuals'}[0]{'node_content'}[0]
 = 
$result_trees{'double_node_anchor_float'}{'contents'}[4]{'args'}[0]{'contents'}[1];
+$result_trees{'double_node_anchor_float'}{'contents'}[4]{'parent'} = 
$result_trees{'double_node_anchor_float'};
+
+$result_texis{'double_node_anchor_float'} = '@node node1
+
address@hidden node1
+
address@hidden
+
address@hidden
+
address@hidden anchor1
+
address@hidden Text, node1
address@hidden float
+
address@hidden Text, anchor1
address@hidden float
+
address@hidden Text, float1
address@hidden float
+
address@hidden float1
+';
+
+
+$result_texts{'double_node_anchor_float'} = '
+
+
+
+
+
+
+
+
+
+';
+
+$result_sectioning{'double_node_anchor_float'} = {
+  'text' => '_ROOT'
+};
+$result_errors{'double_node_anchor_float'} = [
+  {
+    'error_line' => ':3: @node `node1\' previously defined
+',
+    'file_name' => '',
+    'line_nr' => 3,
+    'macro' => '',
+    'text' => '@node `node1\' previously defined',
+    'type' => 'error'
+  },
+  {
+    'error_line' => ':1: here is the previous definition as @node
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => 'here is the previous definition as @node',
+    'type' => 'error continuation'
+  },
+  {
+    'error_line' => ':5: @anchor `node1\' previously defined
+',
+    'file_name' => '',
+    'line_nr' => 5,
+    'macro' => '',
+    'text' => '@anchor `node1\' previously defined',
+    'type' => 'error'
+  },
+  {
+    'error_line' => ':1: here is the previous definition as @node
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => 'here is the previous definition as @node',
+    'type' => 'error continuation'
+  },
+  {
+    'error_line' => ':9: @node `anchor1\' previously defined
+',
+    'file_name' => '',
+    'line_nr' => 9,
+    'macro' => '',
+    'text' => '@node `anchor1\' previously defined',
+    'type' => 'error'
+  },
+  {
+    'error_line' => ':7: here is the previous definition as @anchor
+',
+    'file_name' => '',
+    'line_nr' => 7,
+    'macro' => '',
+    'text' => 'here is the previous definition as @anchor',
+    'type' => 'error continuation'
+  },
+  {
+    'error_line' => ':11: @float `node1\' previously defined
+',
+    'file_name' => '',
+    'line_nr' => 11,
+    'macro' => '',
+    'text' => '@float `node1\' previously defined',
+    'type' => 'error'
+  },
+  {
+    'error_line' => ':1: here is the previous definition as @node
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => 'here is the previous definition as @node',
+    'type' => 'error continuation'
+  },
+  {
+    'error_line' => ':14: @float `anchor1\' previously defined
+',
+    'file_name' => '',
+    'line_nr' => 14,
+    'macro' => '',
+    'text' => '@float `anchor1\' previously defined',
+    'type' => 'error'
+  },
+  {
+    'error_line' => ':7: here is the previous definition as @anchor
+',
+    'file_name' => '',
+    'line_nr' => 7,
+    'macro' => '',
+    'text' => 'here is the previous definition as @anchor',
+    'type' => 'error continuation'
+  },
+  {
+    'error_line' => ':20: @node `float1\' previously defined
+',
+    'file_name' => '',
+    'line_nr' => 20,
+    'macro' => '',
+    'text' => '@node `float1\' previously defined',
+    'type' => 'error'
+  },
+  {
+    'error_line' => ':17: here is the previous definition as @float
+',
+    'file_name' => '',
+    'line_nr' => 17,
+    'macro' => '',
+    'text' => 'here is the previous definition as @float',
+    'type' => 'error continuation'
+  }
+];
+
+
+1;

Index: t/results/sectioning/double_top.pl
===================================================================
RCS file: t/results/sectioning/double_top.pl
diff -N t/results/sectioning/double_top.pl
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ t/results/sectioning/double_top.pl  29 Oct 2010 23:04:32 -0000      1.1
@@ -0,0 +1,294 @@
+use vars qw(%result_texis %result_texts %result_trees %result_errors 
%results_indices);
+
+$result_trees{'double_top'} = {
+  'contents' => [
+    {
+      'contents' => [],
+      'type' => 'text_root'
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'parent' => {},
+              'text' => ' ',
+              'type' => 'empty_spaces_after_command'
+            },
+            {
+              'parent' => {},
+              'text' => 'ToP'
+            }
+          ],
+          'parent' => {},
+          'type' => 'misc_line_arg'
+        },
+        {
+          'contents' => [
+            {
+              'text' => ' ',
+              'type' => 'empty_spaces_before_argument'
+            },
+            {
+              'parent' => {},
+              'text' => 'top'
+            },
+            {
+              'parent' => {},
+              'text' => '
+',
+              'type' => 'spaces_at_end'
+            }
+          ],
+          'parent' => {},
+          'type' => 'misc_line_arg'
+        }
+      ],
+      'cmdname' => 'node',
+      'contents' => [
+        {
+          'parent' => {},
+          'text' => '
+',
+          'type' => 'empty_line'
+        }
+      ],
+      'extra' => {
+        'nodes_manuals' => [
+          {
+            'node_content' => [
+              {}
+            ],
+            'normalized' => 'Top'
+          },
+          {
+            'node_content' => [
+              {}
+            ],
+            'normalized' => 'Top'
+          }
+        ]
+      },
+      'line_nr' => {
+        'file_name' => '',
+        'line_nr' => 1,
+        'macro' => ''
+      },
+      'parent' => {},
+      'special' => {
+        'node_content' => [],
+        'normalized' => 'Top'
+      }
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'parent' => {},
+              'text' => ' ',
+              'type' => 'empty_spaces_after_command'
+            },
+            {
+              'parent' => {},
+              'text' => 'top'
+            }
+          ],
+          'parent' => {},
+          'type' => 'misc_line_arg'
+        },
+        {
+          'contents' => [],
+          'parent' => {},
+          'type' => 'misc_line_arg'
+        },
+        {
+          'contents' => [
+            {
+              'parent' => {},
+              'text' => 'ToP'
+            }
+          ],
+          'parent' => {},
+          'type' => 'misc_line_arg'
+        },
+        {
+          'contents' => [
+            {
+              'parent' => {},
+              'text' => 'Top'
+            },
+            {
+              'parent' => {},
+              'text' => '
+',
+              'type' => 'spaces_at_end'
+            }
+          ],
+          'parent' => {},
+          'type' => 'misc_line_arg'
+        }
+      ],
+      'cmdname' => 'node',
+      'contents' => [
+        {
+          'parent' => {},
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'contents' => [
+            {
+              'args' => [
+                {
+                  'contents' => [
+                    {
+                      'parent' => {},
+                      'text' => 'TOP'
+                    }
+                  ],
+                  'parent' => {},
+                  'type' => 'brace_command_arg'
+                }
+              ],
+              'cmdname' => 'anchor',
+              'contents' => [],
+              'line_nr' => {
+                'file_name' => '',
+                'line_nr' => 5,
+                'macro' => ''
+              },
+              'parent' => {}
+            },
+            {
+              'parent' => {},
+              'text' => '.
+'
+            }
+          ],
+          'parent' => {},
+          'type' => 'paragraph'
+        }
+      ],
+      'extra' => {
+        'nodes_manuals' => [
+          {
+            'node_content' => [
+              {}
+            ],
+            'normalized' => 'Top'
+          },
+          undef,
+          {
+            'node_content' => [
+              {}
+            ],
+            'normalized' => 'Top'
+          },
+          {
+            'node_content' => [
+              {}
+            ],
+            'normalized' => 'Top'
+          }
+        ]
+      },
+      'line_nr' => {
+        'file_name' => '',
+        'line_nr' => 3,
+        'macro' => ''
+      },
+      'parent' => {}
+    }
+  ],
+  'type' => 'document_root'
+};
+$result_trees{'double_top'}{'contents'}[1]{'args'}[0]{'contents'}[0]{'parent'} 
= $result_trees{'double_top'}{'contents'}[1]{'args'}[0];
+$result_trees{'double_top'}{'contents'}[1]{'args'}[0]{'contents'}[1]{'parent'} 
= $result_trees{'double_top'}{'contents'}[1]{'args'}[0];
+$result_trees{'double_top'}{'contents'}[1]{'args'}[0]{'parent'} = 
$result_trees{'double_top'}{'contents'}[1];
+$result_trees{'double_top'}{'contents'}[1]{'args'}[1]{'contents'}[1]{'parent'} 
= $result_trees{'double_top'}{'contents'}[1]{'args'}[1];
+$result_trees{'double_top'}{'contents'}[1]{'args'}[1]{'contents'}[2]{'parent'} 
= $result_trees{'double_top'}{'contents'}[1]{'args'}[1];
+$result_trees{'double_top'}{'contents'}[1]{'args'}[1]{'parent'} = 
$result_trees{'double_top'}{'contents'}[1];
+$result_trees{'double_top'}{'contents'}[1]{'contents'}[0]{'parent'} = 
$result_trees{'double_top'}{'contents'}[1];
+$result_trees{'double_top'}{'contents'}[1]{'extra'}{'nodes_manuals'}[0]{'node_content'}[0]
 = $result_trees{'double_top'}{'contents'}[1]{'args'}[0]{'contents'}[1];
+$result_trees{'double_top'}{'contents'}[1]{'extra'}{'nodes_manuals'}[1]{'node_content'}[0]
 = $result_trees{'double_top'}{'contents'}[1]{'args'}[1]{'contents'}[1];
+$result_trees{'double_top'}{'contents'}[1]{'parent'} = 
$result_trees{'double_top'};
+$result_trees{'double_top'}{'contents'}[1]{'special'}{'node_content'} = 
$result_trees{'double_top'}{'contents'}[1]{'extra'}{'nodes_manuals'}[0]{'node_content'};
+$result_trees{'double_top'}{'contents'}[2]{'args'}[0]{'contents'}[0]{'parent'} 
= $result_trees{'double_top'}{'contents'}[2]{'args'}[0];
+$result_trees{'double_top'}{'contents'}[2]{'args'}[0]{'contents'}[1]{'parent'} 
= $result_trees{'double_top'}{'contents'}[2]{'args'}[0];
+$result_trees{'double_top'}{'contents'}[2]{'args'}[0]{'parent'} = 
$result_trees{'double_top'}{'contents'}[2];
+$result_trees{'double_top'}{'contents'}[2]{'args'}[1]{'parent'} = 
$result_trees{'double_top'}{'contents'}[2];
+$result_trees{'double_top'}{'contents'}[2]{'args'}[2]{'contents'}[0]{'parent'} 
= $result_trees{'double_top'}{'contents'}[2]{'args'}[2];
+$result_trees{'double_top'}{'contents'}[2]{'args'}[2]{'parent'} = 
$result_trees{'double_top'}{'contents'}[2];
+$result_trees{'double_top'}{'contents'}[2]{'args'}[3]{'contents'}[0]{'parent'} 
= $result_trees{'double_top'}{'contents'}[2]{'args'}[3];
+$result_trees{'double_top'}{'contents'}[2]{'args'}[3]{'contents'}[1]{'parent'} 
= $result_trees{'double_top'}{'contents'}[2]{'args'}[3];
+$result_trees{'double_top'}{'contents'}[2]{'args'}[3]{'parent'} = 
$result_trees{'double_top'}{'contents'}[2];
+$result_trees{'double_top'}{'contents'}[2]{'contents'}[0]{'parent'} = 
$result_trees{'double_top'}{'contents'}[2];
+$result_trees{'double_top'}{'contents'}[2]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'double_top'}{'contents'}[2]{'contents'}[1]{'contents'}[0]{'args'}[0];
+$result_trees{'double_top'}{'contents'}[2]{'contents'}[1]{'contents'}[0]{'args'}[0]{'parent'}
 = $result_trees{'double_top'}{'contents'}[2]{'contents'}[1]{'contents'}[0];
+$result_trees{'double_top'}{'contents'}[2]{'contents'}[1]{'contents'}[0]{'parent'}
 = $result_trees{'double_top'}{'contents'}[2]{'contents'}[1];
+$result_trees{'double_top'}{'contents'}[2]{'contents'}[1]{'contents'}[1]{'parent'}
 = $result_trees{'double_top'}{'contents'}[2]{'contents'}[1];
+$result_trees{'double_top'}{'contents'}[2]{'contents'}[1]{'parent'} = 
$result_trees{'double_top'}{'contents'}[2];
+$result_trees{'double_top'}{'contents'}[2]{'extra'}{'nodes_manuals'}[0]{'node_content'}[0]
 = $result_trees{'double_top'}{'contents'}[2]{'args'}[0]{'contents'}[1];
+$result_trees{'double_top'}{'contents'}[2]{'extra'}{'nodes_manuals'}[2]{'node_content'}[0]
 = $result_trees{'double_top'}{'contents'}[2]{'args'}[2]{'contents'}[0];
+$result_trees{'double_top'}{'contents'}[2]{'extra'}{'nodes_manuals'}[3]{'node_content'}[0]
 = $result_trees{'double_top'}{'contents'}[2]{'args'}[3]{'contents'}[0];
+$result_trees{'double_top'}{'contents'}[2]{'parent'} = 
$result_trees{'double_top'};
+
+$result_texis{'double_top'} = '@node ToP, top
+
address@hidden top,,ToP,Top
+
address@hidden
+';
+
+
+$result_texts{'double_top'} = '
+
+.
+';
+
+$result_sectioning{'double_top'} = {
+  'text' => '_ROOT'
+};
+$result_errors{'double_top'} = [
+  {
+    'error_line' => ':3: @node `top\' previously defined
+',
+    'file_name' => '',
+    'line_nr' => 3,
+    'macro' => '',
+    'text' => '@node `top\' previously defined',
+    'type' => 'error'
+  },
+  {
+    'error_line' => ':1: here is the previous definition as @node
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => 'here is the previous definition as @node',
+    'type' => 'error continuation'
+  },
+  {
+    'error_line' => ':5: @anchor `TOP\' previously defined
+',
+    'file_name' => '',
+    'line_nr' => 5,
+    'macro' => '',
+    'text' => '@anchor `TOP\' previously defined',
+    'type' => 'error'
+  },
+  {
+    'error_line' => ':1: here is the previous definition as @node
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => 'here is the previous definition as @node',
+    'type' => 'error continuation'
+  }
+];
+
+
+1;



reply via email to

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