* tta/C/main/tree_types.h (enum extra_type): rename extra_misc_args as
extra_string_list.  Update users.

* tta/C/main/extra.c (add_extra_string_list)
(lookup_extra_string_list): rename lookup_extra_misc_args as
lookup_extra_string_list and add_extra_misc_args as
add_extra_string_list.  Update callers.

* tta/C/main/tree_types.h (AI_KEYS_LIST), tta/C/parsetexi/macro.c
(parse_macro_command_line, lookup_macro_parameter)
(expand_macro_arguments, expand_linemacro_arguments, handle_macro),
tta/perl/Texinfo/Example/TexinfoMarkup.pm (_convert),
tta/perl/Texinfo/ManipulateTree.pm (_print_element_associated_info),
tta/perl/Texinfo/ParserNonXS.pm (_parse_macro_command_line)
(_expand_macro_arguments, _expand_linemacro_arguments)
(_handle_macro): add formal_args extra_string_list extra element for
macro formal arguments list and use it.

* tta/C/api_for_swig/swig_interface.c (txi_ext_element_formal_args),
tta/swig/texinfo.i (element_formal_args): add.
diff --git a/ChangeLog b/ChangeLog
index 8d9df1b..3c507eb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,26 @@
+2026-04-20 Patrice Dumas  <pertusus@free.fr>
+
+	* tta/C/main/tree_types.h (enum extra_type): rename extra_misc_args as
+	extra_string_list.  Update users.
+
+	* tta/C/main/extra.c (add_extra_string_list)
+	(lookup_extra_string_list): rename lookup_extra_misc_args as
+	lookup_extra_string_list and add_extra_misc_args as
+	add_extra_string_list.  Update callers.
+
+	* tta/C/main/tree_types.h (AI_KEYS_LIST), tta/C/parsetexi/macro.c
+	(parse_macro_command_line, lookup_macro_parameter)
+	(expand_macro_arguments, expand_linemacro_arguments, handle_macro),
+	tta/perl/Texinfo/Example/TexinfoMarkup.pm (_convert),
+	tta/perl/Texinfo/ManipulateTree.pm (_print_element_associated_info),
+	tta/perl/Texinfo/ParserNonXS.pm (_parse_macro_command_line)
+	(_expand_macro_arguments, _expand_linemacro_arguments)
+	(_handle_macro): add formal_args extra_string_list extra element for
+	macro formal arguments list and use it.
+
+	* tta/C/api_for_swig/swig_interface.c (txi_ext_element_formal_args),
+	tta/swig/texinfo.i (element_formal_args): add.
+
 2026-04-19 Patrice Dumas  <pertusus@free.fr>
 
 	* tta/C/convert/html_converter_finish.c (html_free_converter): clear
diff --git a/doc/tta_api/api_includes/Texinfo-Parser.texi b/doc/tta_api/api_includes/Texinfo-Parser.texi
index c1641a7..13445f3 100644
--- a/doc/tta_api/api_includes/Texinfo-Parser.texi
+++ b/doc/tta_api/api_includes/Texinfo-Parser.texi
@@ -1279,9 +1279,13 @@
 @item @code{@@macro}
 @anchor{Texinfo@asis{::}Parser @code{@@macro}}
 
+@item @code{@@linemacro}
+@anchor{Texinfo@asis{::}Parser @code{@@linemacro}}
+
 @emph{macro_name} holds the macro name.
 @emph{invalid_syntax} is set if there was an error on the @code{@@macro}
-line.
+line.  @emph{formal_args} is an array containing the name of the formal
+arguments.
 
 @item @code{menu_entry_node}
 @anchor{Texinfo@asis{::}Parser @code{menu_entry_node} 1}
diff --git a/tta/C/api_for_swig/swig_interface.c b/tta/C/api_for_swig/swig_interface.c
index e04a75a..909983a6 100644
--- a/tta/C/api_for_swig/swig_interface.c
+++ b/tta/C/api_for_swig/swig_interface.c
@@ -457,7 +457,13 @@
 const STRING_LIST *
 txi_ext_element_misc_args (ELEMENT *element)
 {
-  return lookup_extra_misc_args (element, AI_key_misc_args);
+  return lookup_extra_string_list (element, AI_key_misc_args);
+}
+
+const STRING_LIST *
+txi_ext_element_formal_args (ELEMENT *element)
+{
+  return lookup_extra_string_list (element, AI_key_formal_args);
 }
 
 
diff --git a/tta/C/api_for_swig/swig_interface.h b/tta/C/api_for_swig/swig_interface.h
index f6753c1..03ce848 100644
--- a/tta/C/api_for_swig/swig_interface.h
+++ b/tta/C/api_for_swig/swig_interface.h
@@ -44,6 +44,7 @@
 int txi_ext_string_list_strings_number (STRING_LIST *string_list);
 
 const STRING_LIST *txi_ext_element_misc_args (ELEMENT *element);
+const STRING_LIST *txi_ext_element_formal_args (ELEMENT *element);
 
 INDEX_ENTRY *txi_ext_element_index_entry (DOCUMENT *document,
                                           ELEMENT *element);
diff --git a/tta/C/convert/format_html.c b/tta/C/convert/format_html.c
index 880a057..ff78997 100644
--- a/tta/C/convert/format_html.c
+++ b/tta/C/convert/format_html.c
@@ -9266,7 +9266,7 @@
                          const HTML_ARGS_FORMATTED *args_formatted,
                          const char *content, TEXT *result)
 {
-  const STRING_LIST *misc_args = lookup_extra_misc_args (element,
+  const STRING_LIST *misc_args = lookup_extra_string_list (element,
                                                 AI_key_misc_args);
   unsigned int sp_nr = 1;
   unsigned int i;
@@ -9717,7 +9717,7 @@
   if (columnfractions)
     {
       const STRING_LIST *cf_misc_args
-         = lookup_extra_misc_args (columnfractions, AI_key_misc_args);
+         = lookup_extra_string_list (columnfractions, AI_key_misc_args);
       if (cf_misc_args && cf_misc_args->number >= cell_nr)
         {
           const char *fraction_str
@@ -10062,7 +10062,7 @@
   if (html_in_string (self))
     return;
 
-  misc_args = lookup_extra_misc_args (element, AI_key_misc_args);
+  misc_args = lookup_extra_string_list (element, AI_key_misc_args);
   if (misc_args && misc_args->number > 0)
     index_name = misc_args->list[0];
   else
diff --git a/tta/C/main/build_perl_info.c b/tta/C/main/build_perl_info.c
index b24eac6..8f0a26d 100644
--- a/tta/C/main/build_perl_info.c
+++ b/tta/C/main/build_perl_info.c
@@ -549,7 +549,7 @@
       return newSViv (k->k.integer);
       break;
       }
-    case extra_misc_args:
+    case extra_string_list:
       {
       AV *av = build_string_list (k->k.strings_list, svt_char);
       return newRV_noinc ((SV *)av);
diff --git a/tta/C/main/convert_to_text.c b/tta/C/main/convert_to_text.c
index 3c210c8..e5fa814 100644
--- a/tta/C/main/convert_to_text.c
+++ b/tta/C/main/convert_to_text.c
@@ -974,7 +974,7 @@
           else if (data_cmd == CM_sp)
             {
               const STRING_LIST *misc_args
-                 = lookup_extra_misc_args (element, AI_key_misc_args);
+                 = lookup_extra_string_list (element, AI_key_misc_args);
               /* misc_args can be 0 with invalid args */
               if (misc_args && misc_args->number > 0)
                 {
diff --git a/tta/C/main/debug.c b/tta/C/main/debug.c
index 40dcdc9..f58bae1 100644
--- a/tta/C/main/debug.c
+++ b/tta/C/main/debug.c
@@ -168,7 +168,7 @@
             free (element_str);
             break;
           }
-        case extra_misc_args:
+        case extra_string_list:
           {
             size_t j;
             const STRING_LIST *l = k->k.strings_list;
diff --git a/tta/C/main/extra.c b/tta/C/main/extra.c
index d5a3504..39a0078 100644
--- a/tta/C/main/extra.c
+++ b/tta/C/main/extra.c
@@ -195,11 +195,11 @@
 }
 
 void
-add_extra_misc_args (ELEMENT *e, enum ai_key_name key, STRING_LIST *value)
+add_extra_string_list (ELEMENT *e, enum ai_key_name key, STRING_LIST *value)
 {
   if (!value) return;
 
-  if (check_key_type_or_abort (key, extra_misc_args, "add_extra_misc_args"))
+  if (check_key_type_or_abort (key, extra_string_list, "add_extra_string_list"))
     {
       KEY_PAIR *k = get_associated_info_key (&e->e.c->extra_info, key);
       k->k.strings_list = value;
@@ -367,9 +367,10 @@
 }
 
 const STRING_LIST *
-lookup_extra_misc_args (const ELEMENT *e, enum ai_key_name key)
+lookup_extra_string_list (const ELEMENT *e, enum ai_key_name key)
 {
-  if (check_key_type_or_abort (key, extra_misc_args, "lookup_extra_misc_args"))
+  if (check_key_type_or_abort (key, extra_string_list,
+                               "lookup_extra_string_list"))
     {
       const KEY_PAIR *k = lookup_extra (e, key);
       if (k)
diff --git a/tta/C/main/extra.h b/tta/C/main/extra.h
index ea51fc2..948ccf0 100644
--- a/tta/C/main/extra.h
+++ b/tta/C/main/extra.h
@@ -26,7 +26,7 @@
 void add_extra_container (ELEMENT *e, enum ai_key_name key, ELEMENT *value);
 const ELEMENT **add_extra_directions (ELEMENT *e,
                                                 enum ai_key_name key);
-void add_extra_misc_args (ELEMENT *e, enum ai_key_name key, STRING_LIST *value);
+void add_extra_string_list (ELEMENT *e, enum ai_key_name key, STRING_LIST *value);
 void add_extra_index_entry (ELEMENT *e, enum ai_key_name key,
                             INDEX_ENTRY_LOCATION *value);
 void add_extra_string (ELEMENT *e, enum ai_key_name key, char *value);
@@ -37,7 +37,7 @@
 ELEMENT *lookup_extra_element_oot (const ELEMENT *e, enum ai_key_name key);
 ELEMENT *lookup_extra_container (const ELEMENT *e, enum ai_key_name key);
 CONST_ELEMENT_LIST * lookup_extra_contents (const ELEMENT *e, enum ai_key_name key);
-const STRING_LIST *lookup_extra_misc_args (const ELEMENT *e,
+const STRING_LIST *lookup_extra_string_list (const ELEMENT *e,
                                            enum ai_key_name key);
 const INDEX_ENTRY_LOCATION *lookup_extra_index_entry (const ELEMENT *e,
                                                       enum ai_key_name key);
diff --git a/tta/C/main/manipulate_tree.c b/tta/C/main/manipulate_tree.c
index dd8f011..d72355f 100644
--- a/tta/C/main/manipulate_tree.c
+++ b/tta/C/main/manipulate_tree.c
@@ -166,7 +166,7 @@
             k->k.integer = k_ref->k.integer;
             break;
           }
-        case extra_misc_args:
+        case extra_string_list:
           {
           KEY_PAIR *k = get_associated_info_key (new_info, key);
           k->k.strings_list = new_string_list();
@@ -1563,7 +1563,7 @@
             need_eol = 1;
             break;
           }
-        case extra_misc_args:
+        case extra_string_list:
           {
             char *values_string = join_strings_list (k_pair->k.strings_list, 0);
             xasprintf (&value, "A{%s}", values_string);
diff --git a/tta/C/main/tree.c b/tta/C/main/tree.c
index 472af61..1700d2c 100644
--- a/tta/C/main/tree.c
+++ b/tta/C/main/tree.c
@@ -163,7 +163,7 @@
       if (k_pair->k.element)
         destroy_element (k_pair->k.element);
       break;
-    case extra_misc_args:
+    case extra_string_list:
       destroy_strings_list (k_pair->k.strings_list);
       break;
     case extra_index_entry:
diff --git a/tta/C/main/tree_types.h b/tta/C/main/tree_types.h
index 67b06fe..ad61f1b 100644
--- a/tta/C/main/tree_types.h
+++ b/tta/C/main/tree_types.h
@@ -45,7 +45,7 @@
    extra_contents,
    extra_container,
    extra_directions,
-   extra_misc_args,
+   extra_string_list,
    extra_index_entry, /* index name and position in index */
    extra_string,
    extra_integer,
@@ -139,7 +139,8 @@
   ai_key(manual_content, container, 0) \
   ai_key(node_content, container, 0) \
   \
-  ai_key(misc_args, misc_args, 0) \
+  ai_key(formal_args, string_list, 0) \
+  ai_key(misc_args, string_list, 0) \
   \
   ai_key(index_entry, index_entry, 0) \
   ai_key(associated_index_entry, index_entry, 0) \
@@ -215,7 +216,7 @@
       char *string;
       int integer;
       INDEX_ENTRY_LOCATION *index_entry;
-      /* for extra_misc_args */
+      /* for extra_string_list */
       STRING_LIST *strings_list;
       const struct ELEMENT **directions;
     } k;
diff --git a/tta/C/main/utils.c b/tta/C/main/utils.c
index 3446cc7..4182d81 100644
--- a/tta/C/main/utils.c
+++ b/tta/C/main/utils.c
@@ -2548,7 +2548,7 @@
   if (cmd == CM_set || cmd == CM_clear)
     {
       const STRING_LIST *misc_args
-        = lookup_extra_misc_args (element, AI_key_misc_args);
+        = lookup_extra_string_list (element, AI_key_misc_args);
       if (misc_args && misc_args->number > 0)
         {
           if (!strcmp (misc_args->list[0], "txicodequoteundirected"))
@@ -2617,7 +2617,7 @@
   text_arg = lookup_extra_string (element, AI_key_text_arg);
   if (text_arg)
     return text_arg;
-  misc_args = lookup_extra_misc_args (element, AI_key_misc_args);
+  misc_args = lookup_extra_string_list (element, AI_key_misc_args);
   if (misc_args && misc_args->number > 0)
     return misc_args->list[0];
   if (builtin_command_data[cmd].flags & CF_line
diff --git a/tta/C/parsetexi/end_line.c b/tta/C/parsetexi/end_line.c
index b77692c..1bf6877 100644
--- a/tta/C/parsetexi/end_line.c
+++ b/tta/C/parsetexi/end_line.c
@@ -858,7 +858,7 @@
       if (columnfractions)
         {
           const STRING_LIST *misc_args
-              = lookup_extra_misc_args (columnfractions, AI_key_misc_args);
+            = lookup_extra_string_list (columnfractions, AI_key_misc_args);
 
           if (misc_args)
             max_columns = misc_args->number;
@@ -1280,7 +1280,7 @@
     {
       STRING_LIST *args = parse_line_command_args (current);
       if (args)
-        add_extra_misc_args (current, AI_key_misc_args, args);
+        add_extra_string_list (current, AI_key_misc_args, args);
     }
   else if (arg_spec == LINE_text)
     {
diff --git a/tta/C/parsetexi/handle_commands.c b/tta/C/parsetexi/handle_commands.c
index 343626d..aa32eaa 100644
--- a/tta/C/parsetexi/handle_commands.c
+++ b/tta/C/parsetexi/handle_commands.c
@@ -867,7 +867,7 @@
             }
 
           if (args)
-            add_extra_misc_args (command_e, AI_key_misc_args, args);
+            add_extra_string_list (command_e, AI_key_misc_args, args);
 
           element_value_equivalent (command_e, &global_cmd);
         }
diff --git a/tta/C/parsetexi/macro.c b/tta/C/parsetexi/macro.c
index a36f51a..8e291cd 100644
--- a/tta/C/parsetexi/macro.c
+++ b/tta/C/parsetexi/macro.c
@@ -175,7 +175,7 @@
   add_extra_string (macro, AI_key_macro_name, name);
 
   formal_args = new_string_list ();
-  add_extra_misc_args (macro, AI_key_misc_args, formal_args);
+  add_extra_string_list (macro, AI_key_formal_args, formal_args);
 
   args_ptr = pline;
   args_ptr += strspn (args_ptr, whitespace_chars);
@@ -285,8 +285,8 @@
 {
   size_t i;
   /* the args_list pointer is const not the ELEMENT */
-  const STRING_LIST *formal_args_list = lookup_extra_misc_args (macro,
-                                                      AI_key_misc_args);
+  const STRING_LIST *formal_args_list = lookup_extra_string_list (macro,
+                                                      AI_key_formal_args);
 
   /* Find 'arg' in MACRO parameters. */
   for (i = 0; i < formal_args_list->number; i++)
@@ -312,8 +312,8 @@
   int whitespaces_len;
   ELEMENT *argument = new_element (ET_brace_arg);
   ELEMENT *argument_content = new_text_element (ET_macro_call_arg_text);
-  const STRING_LIST *formal_args_list = lookup_extra_misc_args (macro,
-                                                       AI_key_misc_args);
+  const STRING_LIST *formal_args_list = lookup_extra_string_list (macro,
+                                                       AI_key_formal_args);
 
   add_to_element_contents (current, argument);
   arg = argument_content->e.text;
@@ -467,8 +467,8 @@
   size_t i;
   ELEMENT *argument = new_element (ET_linemacro_arg);
   ELEMENT *argument_content = new_text_element (ET_macro_call_arg_text);
-  const STRING_LIST *formal_args_list = lookup_extra_misc_args (macro,
-                                                       AI_key_misc_args);
+  const STRING_LIST *formal_args_list = lookup_extra_string_list (macro,
+                                                       AI_key_formal_args);
 
   add_to_element_contents (current, argument);
   arg = argument_content->e.text;
@@ -817,7 +817,7 @@
   if (!macro_record)
     fatal ("no macro record");
   macro = macro_record->element;
-  formal_args_list = lookup_extra_misc_args (macro, AI_key_misc_args);
+  formal_args_list = lookup_extra_string_list (macro, AI_key_formal_args);
 
   /* It is important to check for expansion before the expansion and
      not after, as during the expansion, the text may go past the
diff --git a/tta/perl/Texinfo/Example/TexinfoMarkup.pm b/tta/perl/Texinfo/Example/TexinfoMarkup.pm
index 786fe03..f652ea8 100644
--- a/tta/perl/Texinfo/Example/TexinfoMarkup.pm
+++ b/tta/perl/Texinfo/Example/TexinfoMarkup.pm
@@ -1360,10 +1360,10 @@
             and defined($element->{'extra'}->{'macro_name'})) {
           my $macro_name = $element->{'extra'}->{'macro_name'};
           push @$attribute, ['name', $macro_name];
-          my $macro_args_nr = scalar(@{$element->{'extra'}->{'misc_args'}});
+          my $macro_args_nr = scalar(@{$element->{'extra'}->{'formal_args'}});
           if ($macro_args_nr) {
             for (my $i = 0; $i < $macro_args_nr; $i++) {
-              my $formal_arg = $element->{'extra'}->{'misc_args'}->[$i];
+              my $formal_arg = $element->{'extra'}->{'formal_args'}->[$i];
               $prepended_elements .= $self->txi_markup_open_element('formalarg')
                 .$self->txi_markup_protect_text($formal_arg)
                 .$self->txi_markup_close_element('formalarg');
diff --git a/tta/perl/Texinfo/ManipulateTree.pm b/tta/perl/Texinfo/ManipulateTree.pm
index d720b78..c8169af 100644
--- a/tta/perl/Texinfo/ManipulateTree.pm
+++ b/tta/perl/Texinfo/ManipulateTree.pm
@@ -871,7 +871,9 @@
         my $element_value = element_number_or_error($value);
         $result .= "[$element_value]";
       }
-    } elsif ($key eq 'misc_args') {
+    } elsif ($ref eq 'ARRAY'
+             and ($key eq 'misc_args'
+                  or $key eq 'formal_args')) {
       $result .= 'A{'.join('|', @{$value}).'}';
     } elsif ($key eq 'index_entry' or $key eq 'associated_index_entry') {
       my ($index_name, $number) = @{$value};
diff --git a/tta/perl/Texinfo/ParserNonXS.pm b/tta/perl/Texinfo/ParserNonXS.pm
index 6ae42be..61211f6 100644
--- a/tta/perl/Texinfo/ParserNonXS.pm
+++ b/tta/perl/Texinfo/ParserNonXS.pm
@@ -1430,7 +1430,7 @@
   print STDERR "MACRO \@$command $macro_name\n"
                            if ($self->{'conf'}->{'DEBUG'});
 
-  $macro->{'extra'} = {'macro_name' => $macro_name, 'misc_args' => []};
+  $macro->{'extra'} = {'macro_name' => $macro_name, 'formal_args' => []};
 
   my $args_def = $line;
   $args_def =~ s/^\s*//;
@@ -1441,7 +1441,7 @@
   }
 
   foreach my $formal_arg (@args) {
-    push @{$macro->{'extra'}->{'misc_args'}}, $formal_arg;
+    push @{$macro->{'extra'}->{'formal_args'}}, $formal_arg;
     if ($formal_arg !~ /^[\w\-]+$/) {
       _line_error($self, sprintf(__("bad or empty \@%s formal argument: %s"),
                                  $command, $formal_arg), $source_info);
@@ -2779,7 +2779,7 @@
     = Texinfo::TreeElement::new({'text' => '',
                                  'type' => 'macro_call_arg_text'});
 
-  my $args_total = scalar(@{$macro->{'extra'}->{'misc_args'}});
+  my $args_total = scalar(@{$macro->{'extra'}->{'formal_args'}});
   my $name = $macro->{'extra'}->{'macro_name'};
 
   my $source_info_orig = $source_info;
@@ -2902,7 +2902,7 @@
                            'type' => 'spaces_before_argument'});
   }
   push @{$argument->{'contents'}}, $argument_content;
-  my $args_total = scalar(@{$macro->{'extra'}->{'misc_args'}});
+  my $args_total = scalar(@{$macro->{'extra'}->{'formal_args'}});
   my $name = $macro->{'extra'}->{'macro_name'};
 
   while (1) {
@@ -3035,7 +3035,7 @@
 sub _lookup_macro_parameter($$) {
   my ($macro, $name) = @_;
 
-  my $args_array = $macro->{'element'}->{'extra'}->{'misc_args'};
+  my $args_array = $macro->{'element'}->{'extra'}->{'formal_args'};
   my $args_total = scalar(@$args_array);
   if ($args_total > 0) {
     my $arg_index;
@@ -5444,7 +5444,7 @@
      = _expand_linemacro_arguments($self, $expanded_macro, $line, $source_info,
                                    $macro_call_element);
   } else {
-    my $args_number = scalar(@{$expanded_macro->{'extra'}->{'misc_args'}});
+    my $args_number = scalar(@{$expanded_macro->{'extra'}->{'formal_args'}});
     if ($line =~ /^\s*{/) { # } macro with args
       if ($line =~ s/^(\s+)//) {
         my $spaces_element = Texinfo::TreeElement::new({'text' => $1,
@@ -9704,9 +9704,12 @@
 
 =item C<@macro>
 
+=item C<@linemacro>
+
 I<macro_name> holds the macro name.
 I<invalid_syntax> is set if there was an error on the C<@macro>
-line.
+line.  I<formal_args> is an array containing the name of the formal
+arguments.
 
 =item C<menu_entry_node>
 
diff --git a/tta/perl/t/results/alias/alias_macro_target_removed.pl b/tta/perl/t/results/alias/alias_macro_target_removed.pl
index 22e8749..6c920a3 100644
--- a/tta/perl/t/results/alias/alias_macro_target_removed.pl
+++ b/tta/perl/t/results/alias/alias_macro_target_removed.pl
@@ -9,8 +9,8 @@
  *before_node_section C9
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{mystrong}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: mystrong {arg}\\n}
    {raw:!!\\arg\\!!\\n}
diff --git a/tta/perl/t/results/alias/alias_of_macro.pl b/tta/perl/t/results/alias/alias_of_macro.pl
index c3ef927..fc95e47 100644
--- a/tta/perl/t/results/alias/alias_of_macro.pl
+++ b/tta/perl/t/results/alias/alias_of_macro.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{thearg}
   |macro_name:{mymacro}
-  |misc_args:A{thearg}
    *arguments_line C1
     {macro_line: mymacro {thearg}\\n}
    {raw:||\\thearg||\\n}
diff --git a/tta/perl/t/results/alias/alias_of_macro_before_macro.pl b/tta/perl/t/results/alias/alias_of_macro_before_macro.pl
index 538bb65..b503d3d 100644
--- a/tta/perl/t/results/alias/alias_of_macro_before_macro.pl
+++ b/tta/perl/t/results/alias/alias_of_macro_before_macro.pl
@@ -17,8 +17,8 @@
   {empty_line:\\n}
   *@macro C3 l3
   |EXTRA
+  |formal_args:A{thearg}
   |macro_name:{mymacro}
-  |misc_args:A{thearg}
    *arguments_line C1
     {macro_line: mymacro {thearg}\\n}
    {raw:||\\thearg||\\n}
diff --git a/tta/perl/t/results/alias/texinfo_command_alias.pl b/tta/perl/t/results/alias/texinfo_command_alias.pl
index 9937957..c6d4268 100644
--- a/tta/perl/t/results/alias/texinfo_command_alias.pl
+++ b/tta/perl/t/results/alias/texinfo_command_alias.pl
@@ -9,8 +9,8 @@
  *before_node_section C10
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{mystrong}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: mystrong {arg}\\n}
    {raw:!!\\arg\\!!\\n}
diff --git a/tta/perl/t/results/alias/texinfo_command_alias_indirect.pl b/tta/perl/t/results/alias/texinfo_command_alias_indirect.pl
index 71e323e..03e200f 100644
--- a/tta/perl/t/results/alias/texinfo_command_alias_indirect.pl
+++ b/tta/perl/t/results/alias/texinfo_command_alias_indirect.pl
@@ -9,8 +9,8 @@
  *before_node_section C7
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{mystrong}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: mystrong {arg}\\n}
    {raw:!!\\arg\\!!\\n}
diff --git a/tta/perl/t/results/alias/texinfo_command_alias_indirect_before.pl b/tta/perl/t/results/alias/texinfo_command_alias_indirect_before.pl
index 2f4b450..5d8cafd 100644
--- a/tta/perl/t/results/alias/texinfo_command_alias_indirect_before.pl
+++ b/tta/perl/t/results/alias/texinfo_command_alias_indirect_before.pl
@@ -9,8 +9,8 @@
  *before_node_section C7
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{mystrong}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: mystrong {arg}\\n}
    {raw:!!\\arg\\!!\\n}
diff --git a/tta/perl/t/results/conditionals/command_conditionals_user_defined.pl b/tta/perl/t/results/conditionals/command_conditionals_user_defined.pl
index f0185d9..8390578 100644
--- a/tta/perl/t/results/conditionals/command_conditionals_user_defined.pl
+++ b/tta/perl/t/results/conditionals/command_conditionals_user_defined.pl
@@ -9,8 +9,8 @@
  *before_node_section C15
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{truc}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: truc\\n}
    {raw:machin\\n}
diff --git a/tta/perl/t/results/conditionals/macro_in_ifset.pl b/tta/perl/t/results/conditionals/macro_in_ifset.pl
index 2b3ff51..ae6b11c 100644
--- a/tta/perl/t/results/conditionals/macro_in_ifset.pl
+++ b/tta/perl/t/results/conditionals/macro_in_ifset.pl
@@ -10,8 +10,8 @@
   {empty_line:\\n}
   *@macro C3 l2
   |EXTRA
+  |formal_args:A{}
   |macro_name:{truc}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: truc {}\\n}
    {raw:truc\\n}
diff --git a/tta/perl/t/results/conditionals/macro_in_ifset_set.pl b/tta/perl/t/results/conditionals/macro_in_ifset_set.pl
index 5d8ad78..d57c1f7 100644
--- a/tta/perl/t/results/conditionals/macro_in_ifset_set.pl
+++ b/tta/perl/t/results/conditionals/macro_in_ifset_set.pl
@@ -18,8 +18,8 @@
   {empty_line:\\n}
   *@macro C3 l4
   |EXTRA
+  |formal_args:A{}
   |macro_name:{truc}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: truc {}\\n}
    {raw:truc\\n}
@@ -48,8 +48,8 @@
     {spaces_after_argument:\\n}
   *@macro C3 l10
   |EXTRA
+  |formal_args:A{}
   |macro_name:{truc}
-  |misc_args:A{}
   >SOURCEMARKS
   >expanded_conditional_command<end;1>
    >*@end C1 l13
diff --git a/tta/perl/t/results/conditionals/nested_ifset_ifclear.pl b/tta/perl/t/results/conditionals/nested_ifset_ifclear.pl
index 97d8895..2da527e 100644
--- a/tta/perl/t/results/conditionals/nested_ifset_ifclear.pl
+++ b/tta/perl/t/results/conditionals/nested_ifset_ifclear.pl
@@ -10,8 +10,8 @@
   {empty_line:\\n}
   *@macro C10 l2
   |EXTRA
+  |formal_args:A{}
   |macro_name:{conditionals}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: conditionals{}\\n}
    {raw:@ifset somevar\\n}
diff --git a/tta/perl/t/results/conditionals/user_defined_txiinternalvalue.pl b/tta/perl/t/results/conditionals/user_defined_txiinternalvalue.pl
index 1e44b1d..9a6df11 100644
--- a/tta/perl/t/results/conditionals/user_defined_txiinternalvalue.pl
+++ b/tta/perl/t/results/conditionals/user_defined_txiinternalvalue.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{txiinternalvalue}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: txiinternalvalue\\n}
    {raw:user internalvalue\\n}
diff --git a/tta/perl/t/results/converters_tests/at_commands_in_raw.pl b/tta/perl/t/results/converters_tests/at_commands_in_raw.pl
index fc3b679..be390e8 100644
--- a/tta/perl/t/results/converters_tests/at_commands_in_raw.pl
+++ b/tta/perl/t/results/converters_tests/at_commands_in_raw.pl
@@ -29,8 +29,8 @@
   {empty_line:\\n}
   *@macro C3 l4
   |EXTRA
+  |formal_args:A{}
   |macro_name:{othermacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: othermacro{}\\n}
    {raw:Other macro\\n}
diff --git a/tta/perl/t/results/coverage_braces/test_image.pl b/tta/perl/t/results/coverage_braces/test_image.pl
index aaf7cfb..0e3e9cb 100644
--- a/tta/perl/t/results/coverage_braces/test_image.pl
+++ b/tta/perl/t/results/coverage_braces/test_image.pl
@@ -9,8 +9,8 @@
  *before_node_section C4
   *@macro C5 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{files-char}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: files-char\\n}
    {raw:@image{f@@i--le@/.@.  a@@<"%@@@verb{:  < & @ % " :} ,,,,.ext@@i--le@/.@.  a@@<"%@@@verb{:  < & @ % " :}}\\n}
diff --git a/tta/perl/t/results/include/cpp_lines.pl b/tta/perl/t/results/include/cpp_lines.pl
index 04bfd3a..5f69f7f 100644
--- a/tta/perl/t/results/include/cpp_lines.pl
+++ b/tta/perl/t/results/include/cpp_lines.pl
@@ -72,8 +72,8 @@
   {empty_line:\\n}
   *@macro C3 g_f:l53
   |EXTRA
+  |formal_args:A{}
   |macro_name:{macr}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: macr\\n}
    {raw:# line 7 "k"\\n}
@@ -107,8 +107,8 @@
   {empty_line:\\n}
   *@macro C4 g_f:l63
   |EXTRA
+  |formal_args:A{}
   |macro_name:{macrtwo}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: macrtwo\\n}
    {raw:line before\\n}
diff --git a/tta/perl/t/results/include/macro_and_commands_in_early_commands.pl b/tta/perl/t/results/include/macro_and_commands_in_early_commands.pl
index 2d2028f..f0448cc 100644
--- a/tta/perl/t/results/include/macro_and_commands_in_early_commands.pl
+++ b/tta/perl/t/results/include/macro_and_commands_in_early_commands.pl
@@ -9,8 +9,8 @@
  *before_node_section C10
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{begin-file}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: begin-file\\n}
    {raw:macro_i--n_pass@@\\n}
@@ -40,8 +40,8 @@
   {empty_line:\\n}
   *@macro C3 l7
   |EXTRA
+  |formal_args:A{}
   |macro_name:{latin1}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: latin1 \\n}
    {raw:ISO-8859-1@@\\n}
@@ -72,8 +72,8 @@
   {empty_line:\\n}
   *@macro C4 l13
   |EXTRA
+  |formal_args:A{}
   |macro_name:{multiinclude}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: multiinclude\\n}
    {raw:macro_included.texi\\n}
@@ -131,8 +131,8 @@
      >{spaces_after_argument:\\n}
   *@macro C3 macro_included.texi:l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{themacro}
-  |misc_args:A{}
   >SOURCEMARKS
   >include<end;1>
   >include<start;2>
diff --git a/tta/perl/t/results/include/macro_definition_in_include.pl b/tta/perl/t/results/include/macro_definition_in_include.pl
index cb1ebba..4245ecc 100644
--- a/tta/perl/t/results/include/macro_definition_in_include.pl
+++ b/tta/perl/t/results/include/macro_definition_in_include.pl
@@ -19,8 +19,8 @@
      >{spaces_after_argument:\\n}
   *@macro C3 macro_included.texi:l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{themacro}
-  |misc_args:A{}
   >SOURCEMARKS
   >include<end;1>
    *arguments_line C1
diff --git a/tta/perl/t/results/include/macro_in_early_commands.pl b/tta/perl/t/results/include/macro_in_early_commands.pl
index d0f5d16..22ed093 100644
--- a/tta/perl/t/results/include/macro_in_early_commands.pl
+++ b/tta/perl/t/results/include/macro_in_early_commands.pl
@@ -9,8 +9,8 @@
  *before_node_section C13
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{begin-file}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: begin-file\\n}
    {raw:macro_in_pass\\n}
@@ -23,8 +23,8 @@
      {spaces_after_argument:\\n}
   *@macro C3 l4
   |EXTRA
+  |formal_args:A{ext}
   |macro_name:{end-file-name}
-  |misc_args:A{ext}
    *arguments_line C1
     {macro_line: end-file-name {ext}\\n}
    {raw:texi_commands.\\ext\\\\n}
@@ -57,8 +57,8 @@
   {empty_line:\\n}
   *@macro C3 l10
   |EXTRA
+  |formal_args:A{}
   |macro_name:{latin1}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: latin1 \\n}
    {raw:ISO-8859-1\\n}
@@ -72,8 +72,8 @@
   {empty_line:\\n}
   *@macro C3 l14
   |EXTRA
+  |formal_args:A{}
   |macro_name:{documentencoding-command}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: documentencoding-command\\n}
    {raw:@documentencoding\\n}
@@ -107,8 +107,8 @@
   {empty_line:\\n}
   *@macro C4 l20
   |EXTRA
+  |formal_args:A{}
   |macro_name:{multiinclude}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: multiinclude\\n}
    {raw:macro_included.texi\\n}
@@ -166,8 +166,8 @@
      >{spaces_after_argument:\\n}
   *@macro C3 macro_included.texi:l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{themacro}
-  |misc_args:A{}
   >SOURCEMARKS
   >include<end;1>
   >include<start;2>
diff --git a/tta/perl/t/results/info_tests/def_in_copying.pl b/tta/perl/t/results/info_tests/def_in_copying.pl
index f15fe58..f2d75b8 100644
--- a/tta/perl/t/results/info_tests/def_in_copying.pl
+++ b/tta/perl/t/results/info_tests/def_in_copying.pl
Binary files differ
diff --git a/tta/perl/t/results/linemacro/api_doc_with_linemacro.pl b/tta/perl/t/results/linemacro/api_doc_with_linemacro.pl
index c5d3aba..45c2b1f 100644
--- a/tta/perl/t/results/linemacro/api_doc_with_linemacro.pl
+++ b/tta/perl/t/results/linemacro/api_doc_with_linemacro.pl
@@ -9,8 +9,8 @@
  *before_node_section C8
   *@linemacro C3 l1
   |EXTRA
+  |formal_args:A{param|type}
   |macro_name:{param}
-  |misc_args:A{param|type}
    *arguments_line C1
     {macro_line: param {param, type}\\n}
    {raw:@defline Parameter @var{\\param\\} @code{ : \\type\\}\\n}
@@ -23,8 +23,8 @@
      {spaces_after_argument:\\n}
   *@linemacro C3 l4
   |EXTRA
+  |formal_args:A{param|type}
   |macro_name:{returns}
-  |misc_args:A{param|type}
    *arguments_line C1
     {macro_line: returns {param, type}\\n}
    {raw:@defline {Return Value} @var{\\param\\} @code{ : \\type\\}\\n}
@@ -37,8 +37,8 @@
      {spaces_after_argument:\\n}
   *@linemacro C3 l7
   |EXTRA
+  |formal_args:A{exception}
   |macro_name:{raises}
-  |misc_args:A{exception}
    *arguments_line C1
     {macro_line: raises {exception}\\n}
    {raw:@defline {Exception} \\exception\\\\n}
diff --git a/tta/perl/t/results/linemacro/arobase_brace_in_linemacro_call.pl b/tta/perl/t/results/linemacro/arobase_brace_in_linemacro_call.pl
index 45803c1..52f04ce 100644
--- a/tta/perl/t/results/linemacro/arobase_brace_in_linemacro_call.pl
+++ b/tta/perl/t/results/linemacro/arobase_brace_in_linemacro_call.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@linemacro C4 l1
   |EXTRA
+  |formal_args:A{arg1|arg2}
   |macro_name:{simplemac}
-  |misc_args:A{arg1|arg2}
    *arguments_line C1
     {macro_line: simplemac { arg1 , arg2 }\\n}
    {raw:first: \\arg1\\|\\n}
diff --git a/tta/perl/t/results/linemacro/begin_conditional_in_linemacro.pl b/tta/perl/t/results/linemacro/begin_conditional_in_linemacro.pl
index 2364821..1aaf698 100644
--- a/tta/perl/t/results/linemacro/begin_conditional_in_linemacro.pl
+++ b/tta/perl/t/results/linemacro/begin_conditional_in_linemacro.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@linemacro C3 l1
   |EXTRA
+  |formal_args:A{a}
   |macro_name:{lm}
-  |misc_args:A{a}
    *arguments_line C1
     {macro_line: lm {a}\\n}
    {raw:b \\a\\ a\\n}
diff --git a/tta/perl/t/results/linemacro/block_begin_end_in_linemacro_call.pl b/tta/perl/t/results/linemacro/block_begin_end_in_linemacro_call.pl
index 864cabc..242c7ac 100644
--- a/tta/perl/t/results/linemacro/block_begin_end_in_linemacro_call.pl
+++ b/tta/perl/t/results/linemacro/block_begin_end_in_linemacro_call.pl
@@ -9,8 +9,8 @@
  *before_node_section C19
   *@linemacro C3 l1
   |EXTRA
+  |formal_args:A{a}
   |macro_name:{lm}
-  |misc_args:A{a}
    *arguments_line C1
     {macro_line: lm {a}\\n}
    {raw:b \\a\\ a\\n}
@@ -141,8 +141,8 @@
       >{bracketed_linemacro_arg:\\n@macro mymac {e, f}\\nargs \\e\\|\\f\\|\\n@defline @lm {\\e\\} {\\f\\}\\n}
    *@macro C6 l34:@lm
    |EXTRA
+   |formal_args:A{e|f}
    |macro_name:{mymac}
-   |misc_args:A{e|f}
     *arguments_line C1
      {macro_line: mymac {e, f}\\n}
     {raw:args \\e\\|\\f\\|\\n}
diff --git a/tta/perl/t/results/linemacro/blockitem_no_item.pl b/tta/perl/t/results/linemacro/blockitem_no_item.pl
index f14185e..90f60a9 100644
--- a/tta/perl/t/results/linemacro/blockitem_no_item.pl
+++ b/tta/perl/t/results/linemacro/blockitem_no_item.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@linemacro C3 l1
   |EXTRA
+  |formal_args:A{a|b|c}
   |macro_name:{mycommand}
-  |misc_args:A{a|b|c}
    *arguments_line C1
     {macro_line: mycommand {a, b, c}\\n}
    {raw:\\a\\, \\b\\ \\c\\\\n}
diff --git a/tta/perl/t/results/linemacro/brace_command_not_closed.pl b/tta/perl/t/results/linemacro/brace_command_not_closed.pl
index e2fabc9..48d8a08 100644
--- a/tta/perl/t/results/linemacro/brace_command_not_closed.pl
+++ b/tta/perl/t/results/linemacro/brace_command_not_closed.pl
@@ -9,8 +9,8 @@
  *before_node_section C4
   *@linemacro C3 l1
   |EXTRA
+  |formal_args:A{a|b|c}
   |macro_name:{mycommand}
-  |misc_args:A{a|b|c}
    *arguments_line C1
     {macro_line: mycommand {a, b, c}\\n}
    {raw:\\a\\, \\b\\ \\c\\\\n}
diff --git a/tta/perl/t/results/linemacro/braces_after_text.pl b/tta/perl/t/results/linemacro/braces_after_text.pl
index cb303cd..7f8e8b1 100644
--- a/tta/perl/t/results/linemacro/braces_after_text.pl
+++ b/tta/perl/t/results/linemacro/braces_after_text.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@linemacro C3 l1
   |EXTRA
+  |formal_args:A{a|b|c}
   |macro_name:{mymacro}
-  |misc_args:A{a|b|c}
    *arguments_line C1
     {macro_line: mymacro {a, b, c}\\n}
    {raw:@defline \\a\\ \\b\\ \\c\\\\n}
diff --git a/tta/perl/t/results/linemacro/call_macro_in_linemacro_body.pl b/tta/perl/t/results/linemacro/call_macro_in_linemacro_body.pl
index f29c2c1..7f37a78 100644
--- a/tta/perl/t/results/linemacro/call_macro_in_linemacro_body.pl
+++ b/tta/perl/t/results/linemacro/call_macro_in_linemacro_body.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@linemacro C5 l1
   |EXTRA
+  |formal_args:A{a|b}
   |macro_name:{lm}
-  |misc_args:A{a|b}
    *arguments_line C1
     {macro_line: lm {a, b}\\n}
    {raw:@mymacro{@code{}\\n}
@@ -26,8 +26,8 @@
   {empty_line:\\n}
   *@macro C5 l7
   |EXTRA
+  |formal_args:A{c|d}
   |macro_name:{mymacro}
-  |misc_args:A{c|d}
    *arguments_line C1
     {macro_line: mymacro {c, d}\\n}
    {raw:@table \\c\\\\n}
diff --git a/tta/perl/t/results/linemacro/call_macro_in_linemacro_call.pl b/tta/perl/t/results/linemacro/call_macro_in_linemacro_call.pl
index ed2f611..2a8315a 100644
--- a/tta/perl/t/results/linemacro/call_macro_in_linemacro_call.pl
+++ b/tta/perl/t/results/linemacro/call_macro_in_linemacro_call.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@linemacro C4 l1
   |EXTRA
+  |formal_args:A{a|b}
   |macro_name:{lm}
-  |misc_args:A{a|b}
    *arguments_line C1
     {macro_line: lm {a, b}\\n}
    {raw:@quotation \\a\\\\n}
@@ -25,8 +25,8 @@
   {empty_line:\\n}
   *@macro C5 l6
   |EXTRA
+  |formal_args:A{c|d}
   |macro_name:{mymacro}
-  |misc_args:A{c|d}
    *arguments_line C1
     {macro_line: mymacro {c, d}\\n}
    {raw:@table \\c\\\\n}
diff --git a/tta/perl/t/results/linemacro/comment_at_end_of_linemacro_call.pl b/tta/perl/t/results/linemacro/comment_at_end_of_linemacro_call.pl
index 7963dd7..bc63ec1 100644
--- a/tta/perl/t/results/linemacro/comment_at_end_of_linemacro_call.pl
+++ b/tta/perl/t/results/linemacro/comment_at_end_of_linemacro_call.pl
@@ -9,8 +9,8 @@
  *before_node_section C4
   *@linemacro C4 l1
   |EXTRA
+  |formal_args:A{a|b}
   |macro_name:{lm}
-  |misc_args:A{a|b}
    *arguments_line C1
     {macro_line: lm {a, b}\\n}
    {raw:c \\a\\ d\\n}
diff --git a/tta/perl/t/results/linemacro/comment_in_linemacro_call.pl b/tta/perl/t/results/linemacro/comment_in_linemacro_call.pl
index eee8848..80340f6 100644
--- a/tta/perl/t/results/linemacro/comment_in_linemacro_call.pl
+++ b/tta/perl/t/results/linemacro/comment_in_linemacro_call.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@linemacro C4 l1
   |EXTRA
+  |formal_args:A{a|b}
   |macro_name:{lm}
-  |misc_args:A{a|b}
    *arguments_line C1
     {macro_line: lm {a, b}\\n}
    {raw:c \\a\\ d\\n}
diff --git a/tta/perl/t/results/linemacro/comment_in_one_argument_linemacro_call.pl b/tta/perl/t/results/linemacro/comment_in_one_argument_linemacro_call.pl
index eed5cde..28d9254 100644
--- a/tta/perl/t/results/linemacro/comment_in_one_argument_linemacro_call.pl
+++ b/tta/perl/t/results/linemacro/comment_in_one_argument_linemacro_call.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@linemacro C3 l1
   |EXTRA
+  |formal_args:A{a}
   |macro_name:{lm}
-  |misc_args:A{a}
    *arguments_line C1
     {macro_line: lm {a}\\n}
    {raw:c \\a\\ d\\n}
diff --git a/tta/perl/t/results/linemacro/comment_on_linemacro_call_macro_expansion.pl b/tta/perl/t/results/linemacro/comment_on_linemacro_call_macro_expansion.pl
index 5a2015d..0a3cd3e 100644
--- a/tta/perl/t/results/linemacro/comment_on_linemacro_call_macro_expansion.pl
+++ b/tta/perl/t/results/linemacro/comment_on_linemacro_call_macro_expansion.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@linemacro C4 l1
   |EXTRA
+  |formal_args:A{a|b}
   |macro_name:{lm}
-  |misc_args:A{a|b}
    *arguments_line C1
     {macro_line: lm {a, b}\\n}
    {raw:first |\\a\\|\\n}
@@ -25,8 +25,8 @@
   {empty_line:\\n}
   *@macro C4 l6
   |EXTRA
+  |formal_args:A{a}
   |macro_name:{mymacro}
-  |misc_args:A{a}
    *arguments_line C1
     {macro_line: mymacro {a}\\n}
    {raw:macro \\a\\ text\\n}
diff --git a/tta/perl/t/results/linemacro/comment_on_linemacro_call_out_of_braces.pl b/tta/perl/t/results/linemacro/comment_on_linemacro_call_out_of_braces.pl
index 293d45c..b4385e2 100644
--- a/tta/perl/t/results/linemacro/comment_on_linemacro_call_out_of_braces.pl
+++ b/tta/perl/t/results/linemacro/comment_on_linemacro_call_out_of_braces.pl
@@ -9,8 +9,8 @@
  *before_node_section C7
   *@linemacro C5 l1
   |EXTRA
+  |formal_args:A{a|b|c}
   |macro_name:{lm}
-  |misc_args:A{a|b|c}
    *arguments_line C1
     {macro_line: lm {a, b, c}\\n}
    {raw:first |\\a\\|\\n}
diff --git a/tta/perl/t/results/linemacro/empty_last_argument.pl b/tta/perl/t/results/linemacro/empty_last_argument.pl
index 5607649..6f4d0b6 100644
--- a/tta/perl/t/results/linemacro/empty_last_argument.pl
+++ b/tta/perl/t/results/linemacro/empty_last_argument.pl
@@ -16,8 +16,8 @@
     {spaces_after_argument:\\n}
   *@linemacro C4 l2
   |EXTRA
+  |formal_args:A{symbol|rest}
   |macro_name:{defbuiltin}
-  |misc_args:A{symbol|rest}
    *arguments_line C1
     {macro_line: defbuiltin {symbol, rest}\\n}
    {raw:@BIindex \\symbol\\\\n}
diff --git a/tta/perl/t/results/linemacro/end_conditional_in_linemacro.pl b/tta/perl/t/results/linemacro/end_conditional_in_linemacro.pl
index 9be3687..3a6b3db 100644
--- a/tta/perl/t/results/linemacro/end_conditional_in_linemacro.pl
+++ b/tta/perl/t/results/linemacro/end_conditional_in_linemacro.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@linemacro C3 l1
   |EXTRA
+  |formal_args:A{a}
   |macro_name:{lm}
-  |misc_args:A{a}
    *arguments_line C1
     {macro_line: lm {a}\\n}
    {raw:\\a\\\\n}
diff --git a/tta/perl/t/results/linemacro/last_argument_with_braces.pl b/tta/perl/t/results/linemacro/last_argument_with_braces.pl
index f7ac120..915dd63 100644
--- a/tta/perl/t/results/linemacro/last_argument_with_braces.pl
+++ b/tta/perl/t/results/linemacro/last_argument_with_braces.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@linemacro C4 l1
   |EXTRA
+  |formal_args:A{symbol|rest}
   |macro_name:{defbuiltin}
-  |misc_args:A{symbol|rest}
    *arguments_line C1
     {macro_line: defbuiltin {symbol, rest}\\n}
    {raw:@defline \\symbol\\ f r\\n}
diff --git a/tta/perl/t/results/linemacro/missing_formal_arg.pl b/tta/perl/t/results/linemacro/missing_formal_arg.pl
index ecc74df..7c8e5c2 100644
--- a/tta/perl/t/results/linemacro/missing_formal_arg.pl
+++ b/tta/perl/t/results/linemacro/missing_formal_arg.pl
@@ -9,9 +9,9 @@
  *before_node_section C4
   *@linemacro C3 l1
   |EXTRA
+  |formal_args:A{a||b}
   |invalid_syntax:{1}
   |macro_name:{mymacro}
-  |misc_args:A{a||b}
    *arguments_line C1
     {macro_line: mymacro {a, , b}\\n}
    {raw:\\a\\ and \\b\\.\\n}
diff --git a/tta/perl/t/results/linemacro/nested_linemacro_calls.pl b/tta/perl/t/results/linemacro/nested_linemacro_calls.pl
index b2b4e27..090cad2 100644
--- a/tta/perl/t/results/linemacro/nested_linemacro_calls.pl
+++ b/tta/perl/t/results/linemacro/nested_linemacro_calls.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@linemacro C3 l1
   |EXTRA
+  |formal_args:A{a|b}
   |macro_name:{inside}
-  |misc_args:A{a|b}
    *arguments_line C1
     {macro_line: inside {a, b}\\n}
    {raw:inside {\\a\\ operator \\b\\}\\n}
@@ -24,8 +24,8 @@
   {empty_line:\\n}
   *@linemacro C4 l5
   |EXTRA
+  |formal_args:A{one|two|three}
   |macro_name:{outside}
-  |misc_args:A{one|two|three}
    *arguments_line C1
     {macro_line: outside {one, two, three}\\n}
    {raw:@defline \\one\\ {\\two\\} \\three\\\\n}
diff --git a/tta/perl/t/results/linemacro/newline_and_continuation_in_brace.pl b/tta/perl/t/results/linemacro/newline_and_continuation_in_brace.pl
index 706feec..07bfd07 100644
--- a/tta/perl/t/results/linemacro/newline_and_continuation_in_brace.pl
+++ b/tta/perl/t/results/linemacro/newline_and_continuation_in_brace.pl
@@ -10,8 +10,8 @@
   {empty_line:\\n}
   *@linemacro C3 l2
   |EXTRA
+  |formal_args:A{first|second|rest}
   |macro_name:{mylinecommand}
-  |misc_args:A{first|second|rest}
    *arguments_line C1
     {macro_line: mylinecommand {first, second, rest}\\n}
    {raw:@defline category \\first\\ \\second\\ \\rest\\\\n}
diff --git a/tta/perl/t/results/linemacro/no_arguments.pl b/tta/perl/t/results/linemacro/no_arguments.pl
index 5ae68cd..c681a3e 100644
--- a/tta/perl/t/results/linemacro/no_arguments.pl
+++ b/tta/perl/t/results/linemacro/no_arguments.pl
@@ -9,8 +9,8 @@
  *before_node_section C7
   *@linemacro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{noarg}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: noarg\\n}
    {raw:Body.\\n}
diff --git a/tta/perl/t/results/linemacro/paragraph_no_paragraph.pl b/tta/perl/t/results/linemacro/paragraph_no_paragraph.pl
index 0d12081..4c3c69d 100644
--- a/tta/perl/t/results/linemacro/paragraph_no_paragraph.pl
+++ b/tta/perl/t/results/linemacro/paragraph_no_paragraph.pl
@@ -9,8 +9,8 @@
  *before_node_section C8
   *@linemacro C3 l1
   |EXTRA
+  |formal_args:A{a|b|c}
   |macro_name:{mycommand}
-  |misc_args:A{a|b|c}
    *arguments_line C1
     {macro_line: mycommand {a, b, c}\\n}
    {raw:\\a\\, \\b\\ \\c\\\\n}
diff --git a/tta/perl/t/results/linemacro/protected_spaces_on_line.pl b/tta/perl/t/results/linemacro/protected_spaces_on_line.pl
index cf86b16..a873494 100644
--- a/tta/perl/t/results/linemacro/protected_spaces_on_line.pl
+++ b/tta/perl/t/results/linemacro/protected_spaces_on_line.pl
@@ -9,8 +9,8 @@
  *before_node_section C10
   *@linemacro C5 l1
   |EXTRA
+  |formal_args:A{first|rest}
   |macro_name:{test}
-  |misc_args:A{first|rest}
    *arguments_line C1
     {macro_line: test {first, rest}\\n}
    {raw:@deffn Function \\first\\ \\rest\\\\n}
diff --git a/tta/perl/t/results/linemacro/protection_of_end_of_line_by_command.pl b/tta/perl/t/results/linemacro/protection_of_end_of_line_by_command.pl
index 5294812..3655a41 100644
--- a/tta/perl/t/results/linemacro/protection_of_end_of_line_by_command.pl
+++ b/tta/perl/t/results/linemacro/protection_of_end_of_line_by_command.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@linemacro C3 l1
   |EXTRA
+  |formal_args:A{one}
   |macro_name:{lm}
-  |misc_args:A{one}
    *arguments_line C1
     {macro_line: lm {one}\\n}
    {raw:\\one\\bullet{}\\n}
diff --git a/tta/perl/t/results/linemacro/recursive_linemacro_in_body.pl b/tta/perl/t/results/linemacro/recursive_linemacro_in_body.pl
index f646b1b..b28f969 100644
--- a/tta/perl/t/results/linemacro/recursive_linemacro_in_body.pl
+++ b/tta/perl/t/results/linemacro/recursive_linemacro_in_body.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@linemacro C3 l1
   |EXTRA
+  |formal_args:A{arg|other}
   |macro_name:{anorecurse}
-  |misc_args:A{arg|other}
    *arguments_line C1
     {macro_line: anorecurse {arg, other}\\n}
    {raw:@anorecurse {\\arg\\} d \\other\\\\n}
diff --git a/tta/perl/t/results/linemacro/recursive_linemacro_in_call.pl b/tta/perl/t/results/linemacro/recursive_linemacro_in_call.pl
index 6562ab0..6636585 100644
--- a/tta/perl/t/results/linemacro/recursive_linemacro_in_call.pl
+++ b/tta/perl/t/results/linemacro/recursive_linemacro_in_call.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@linemacro C3 l1
   |EXTRA
+  |formal_args:A{arg|other}
   |macro_name:{anorecurse}
-  |misc_args:A{arg|other}
    *arguments_line C1
     {macro_line: anorecurse {arg, other}\\n}
    {raw:\\arg\\ d \\other\\\\n}
diff --git a/tta/perl/t/results/linemacro/simple_nested_linemacro_calls.pl b/tta/perl/t/results/linemacro/simple_nested_linemacro_calls.pl
index 0e889bb..41cfd3a 100644
--- a/tta/perl/t/results/linemacro/simple_nested_linemacro_calls.pl
+++ b/tta/perl/t/results/linemacro/simple_nested_linemacro_calls.pl
@@ -20,8 +20,8 @@
   {empty_line:\\n}
   *@linemacro C3 l3
   |EXTRA
+  |formal_args:A{a|b|rest}
   |macro_name:{inside}
-  |misc_args:A{a|b|rest}
    *arguments_line C1
     {macro_line: inside {a, b, rest}\\n}
    {raw:inside {\\a\\ operator \\b\\} \\rest\\\\n}
@@ -35,8 +35,8 @@
   {empty_line:\\n}
   *@linemacro C4 l7
   |EXTRA
+  |formal_args:A{one|two|three}
   |macro_name:{outside}
-  |misc_args:A{one|two|three}
    *arguments_line C1
     {macro_line: outside {one, two, three}\\n}
    {raw:@defline \\one\\ {\\two\\} \\three\\\\n}
diff --git a/tta/perl/t/results/linemacro/spaces_after_command_in_call.pl b/tta/perl/t/results/linemacro/spaces_after_command_in_call.pl
index b4c817a..ba179e5 100644
--- a/tta/perl/t/results/linemacro/spaces_after_command_in_call.pl
+++ b/tta/perl/t/results/linemacro/spaces_after_command_in_call.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@linemacro C5 l1
   |EXTRA
+  |formal_args:A{first|second|rest}
   |macro_name:{mylinecommand}
-  |misc_args:A{first|second|rest}
    *arguments_line C1
     {macro_line: mylinecommand {first, second, rest}\\n}
    {raw:@defblock\\n}
diff --git a/tta/perl/t/results/linemacro/spaces_after_macro_linemacro_commands_in_call.pl b/tta/perl/t/results/linemacro/spaces_after_macro_linemacro_commands_in_call.pl
index a296584..c8022f0 100644
--- a/tta/perl/t/results/linemacro/spaces_after_macro_linemacro_commands_in_call.pl
+++ b/tta/perl/t/results/linemacro/spaces_after_macro_linemacro_commands_in_call.pl
@@ -9,8 +9,8 @@
  *before_node_section C10
   *@linemacro C5 l1
   |EXTRA
+  |formal_args:A{first|second|rest}
   |macro_name:{mylinecommand}
-  |misc_args:A{first|second|rest}
    *arguments_line C1
     {macro_line: mylinecommand {first, second, rest}\\n}
    {raw:@defblock\\n}
@@ -26,8 +26,8 @@
   {empty_line:\\n}
   *@macro C3 l7
   |EXTRA
+  |formal_args:A{arg1}
   |macro_name:{mymac}
-  |misc_args:A{arg1}
    *arguments_line C1
     {macro_line: mymac {arg1}\\n}
    {raw:@samp{arg1}\\n}
@@ -41,8 +41,8 @@
   {empty_line:\\n}
   *@linemacro C3 l11
   |EXTRA
+  |formal_args:A{name|rest}
   |macro_name:{mylinemac}
-  |misc_args:A{name|rest}
    *arguments_line C1
     {macro_line: mylinemac {name, rest}\\n}
    {raw:{\\name\\} \\rest\\\\n}
diff --git a/tta/perl/t/results/linemacro/spaces_after_unknown_command_in_call.pl b/tta/perl/t/results/linemacro/spaces_after_unknown_command_in_call.pl
index c320c93..52bebc3 100644
--- a/tta/perl/t/results/linemacro/spaces_after_unknown_command_in_call.pl
+++ b/tta/perl/t/results/linemacro/spaces_after_unknown_command_in_call.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@linemacro C5 l1
   |EXTRA
+  |formal_args:A{first|second|rest}
   |macro_name:{mylinecommand}
-  |misc_args:A{first|second|rest}
    *arguments_line C1
     {macro_line: mylinecommand {first, second, rest}\\n}
    {raw:@defblock\\n}
diff --git a/tta/perl/t/results/linemacro/spaces_in_args.pl b/tta/perl/t/results/linemacro/spaces_in_args.pl
index 5bcb2e6..06cfe20 100644
--- a/tta/perl/t/results/linemacro/spaces_in_args.pl
+++ b/tta/perl/t/results/linemacro/spaces_in_args.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@linemacro C5 l1
   |EXTRA
+  |formal_args:A{first|second|rest}
   |macro_name:{mylinecommand}
-  |misc_args:A{first|second|rest}
    *arguments_line C1
     {macro_line: mylinecommand {first, second, rest}\\n}
    {raw:@defblock\\n}
diff --git a/tta/perl/t/results/linemacro/spaces_in_call.pl b/tta/perl/t/results/linemacro/spaces_in_call.pl
index 7d1d92b..365221e 100644
--- a/tta/perl/t/results/linemacro/spaces_in_call.pl
+++ b/tta/perl/t/results/linemacro/spaces_in_call.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@linemacro C5 l1
   |EXTRA
+  |formal_args:A{first|second|rest}
   |macro_name:{mylinecommand}
-  |misc_args:A{first|second|rest}
    *arguments_line C1
     {macro_line: mylinecommand {first, second, rest}\\n}
    {raw:@defblock\\n}
diff --git a/tta/perl/t/results/linemacro/text_arguments.pl b/tta/perl/t/results/linemacro/text_arguments.pl
index 4935afe..badc421 100644
--- a/tta/perl/t/results/linemacro/text_arguments.pl
+++ b/tta/perl/t/results/linemacro/text_arguments.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@linemacro C3 l1
   |EXTRA
+  |formal_args:A{one|two|three}
   |macro_name:{nospace}
-  |misc_args:A{one|two|three}
    *arguments_line C1
     {macro_line: nospace{one, two, three}\\n}
    {raw:\\three\\@bullet{}\\two\\@minus{}\\one\\\\n}
diff --git a/tta/perl/t/results/linemacro/verb_in_linemacro_call.pl b/tta/perl/t/results/linemacro/verb_in_linemacro_call.pl
index 6229808..7c3e2df 100644
--- a/tta/perl/t/results/linemacro/verb_in_linemacro_call.pl
+++ b/tta/perl/t/results/linemacro/verb_in_linemacro_call.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@linemacro C6 l1
   |EXTRA
+  |formal_args:A{a|b|c|d}
   |macro_name:{mycommand}
-  |misc_args:A{a|b|c|d}
    *arguments_line C1
     {macro_line: mycommand {a, b, c, d}\\n}
    {raw:first \\a\\\\n}
diff --git a/tta/perl/t/results/linemacro/verb_not_closed.pl b/tta/perl/t/results/linemacro/verb_not_closed.pl
index 7e234f7..8c6bef6 100644
--- a/tta/perl/t/results/linemacro/verb_not_closed.pl
+++ b/tta/perl/t/results/linemacro/verb_not_closed.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@linemacro C3 l1
   |EXTRA
+  |formal_args:A{a|b|c}
   |macro_name:{mycommand}
-  |misc_args:A{a|b|c}
    *arguments_line C1
     {macro_line: mycommand {a, b, c}\\n}
    {raw:\\a\\, \\b\\ \\c\\\\n}
diff --git a/tta/perl/t/results/linemacro/verb_with_arobase_in_linemacro_call.pl b/tta/perl/t/results/linemacro/verb_with_arobase_in_linemacro_call.pl
index 494d94a..45b0546 100644
--- a/tta/perl/t/results/linemacro/verb_with_arobase_in_linemacro_call.pl
+++ b/tta/perl/t/results/linemacro/verb_with_arobase_in_linemacro_call.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@linemacro C3 l1
   |EXTRA
+  |formal_args:A{a|b|c}
   |macro_name:{mycommand}
-  |misc_args:A{a|b|c}
    *arguments_line C1
     {macro_line: mycommand {a, b, c}\\n}
    {raw:\\a\\, \\b\\ \\c\\\\n}
diff --git a/tta/perl/t/results/linemacro/verb_with_brace_in_linemacro_call.pl b/tta/perl/t/results/linemacro/verb_with_brace_in_linemacro_call.pl
index dd11f36..9b79df2 100644
--- a/tta/perl/t/results/linemacro/verb_with_brace_in_linemacro_call.pl
+++ b/tta/perl/t/results/linemacro/verb_with_brace_in_linemacro_call.pl
@@ -9,8 +9,8 @@
  *before_node_section C4
   *@linemacro C3 l1
   |EXTRA
+  |formal_args:A{a|b|c}
   |macro_name:{mycommand}
-  |misc_args:A{a|b|c}
    *arguments_line C1
     {macro_line: mycommand {a, b, c}\\n}
    {raw:\\a\\, \\b\\ \\c\\\\n}
diff --git a/tta/perl/t/results/macro/arg_body_expansion_order.pl b/tta/perl/t/results/macro/arg_body_expansion_order.pl
index 9c23906..c492eb7 100644
--- a/tta/perl/t/results/macro/arg_body_expansion_order.pl
+++ b/tta/perl/t/results/macro/arg_body_expansion_order.pl
@@ -10,8 +10,8 @@
   {empty_line:\\n}
   *@macro C3 l2
   |EXTRA
+  |formal_args:A{}
   |macro_name:{othermacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: othermacro\\n}
    {raw:initial\\n}
@@ -25,8 +25,8 @@
   {empty_line:\\n}
   *@macro C7 l6
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{redefineothermacro}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: redefineothermacro {arg}\\n}
    {raw:@unmacro othermacro\\n}
@@ -56,8 +56,8 @@
     {spaces_after_argument:\\n}
   *@macro C3 l14:@redefineothermacro
   |EXTRA
+  |formal_args:A{}
   |macro_name:{othermacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: othermacro\\n}
    {raw:different\\n}
diff --git a/tta/perl/t/results/macro/arg_not_closed.pl b/tta/perl/t/results/macro/arg_not_closed.pl
index 2043cd3..8ceb9be 100644
--- a/tta/perl/t/results/macro/arg_not_closed.pl
+++ b/tta/perl/t/results/macro/arg_not_closed.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{foo}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: foo {arg}\\n}
    {raw:foo\\n}
diff --git a/tta/perl/t/results/macro/arobase_brace_in_macro_call.pl b/tta/perl/t/results/macro/arobase_brace_in_macro_call.pl
index dac7c1a..343d1a8 100644
--- a/tta/perl/t/results/macro/arobase_brace_in_macro_call.pl
+++ b/tta/perl/t/results/macro/arobase_brace_in_macro_call.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C4 l1
   |EXTRA
+  |formal_args:A{arg1|arg2}
   |macro_name:{simplemac}
-  |misc_args:A{arg1|arg2}
    *arguments_line C1
     {macro_line: simplemac { arg1 , arg2 }\\n}
    {raw:first: \\arg1\\|\\n}
diff --git a/tta/perl/t/results/macro/backslash_in_arg.pl b/tta/perl/t/results/macro/backslash_in_arg.pl
index 1b9d10b..fb0c271 100644
--- a/tta/perl/t/results/macro/backslash_in_arg.pl
+++ b/tta/perl/t/results/macro/backslash_in_arg.pl
@@ -31,8 +31,8 @@
   {empty_line:\\n}
   *@macro C3 l4
   |EXTRA
+  |formal_args:A{TEXT}
   |macro_name:{funindex}
-  |misc_args:A{TEXT}
    *arguments_line C1
     {macro_line: funindex {TEXT}\\n}
    {raw:@findex \\TEXT\\\\n}
diff --git a/tta/perl/t/results/macro/bad_argument.pl b/tta/perl/t/results/macro/bad_argument.pl
index 1c8fd5b..9da27f3 100644
--- a/tta/perl/t/results/macro/bad_argument.pl
+++ b/tta/perl/t/results/macro/bad_argument.pl
@@ -23,9 +23,9 @@
   {empty_line:\\n}
   *@rmacro C3 l5
   |EXTRA
+  |formal_args:A{}
   |invalid_syntax:{1}
   |macro_name:{abar}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: abar aaa\\n}
    {raw:in\\n}
@@ -39,9 +39,9 @@
   {empty_line:\\n}
   *@macro C3 l9
   |EXTRA
+  |formal_args:A{ggg}
   |invalid_syntax:{1}
   |macro_name:{aftername}
-  |misc_args:A{ggg}
    *arguments_line C1
     {macro_line: aftername {ggg} more  \\n}
    {raw:in macro\\n}
diff --git a/tta/perl/t/results/macro/bad_formal_arg.pl b/tta/perl/t/results/macro/bad_formal_arg.pl
index da930b0..91f76ac 100644
--- a/tta/perl/t/results/macro/bad_formal_arg.pl
+++ b/tta/perl/t/results/macro/bad_formal_arg.pl
@@ -10,9 +10,9 @@
   {empty_line:\\n}
   *@macro C3 l2
   |EXTRA
+  |formal_args:A{|not_empty}
   |invalid_syntax:{1}
   |macro_name:{bad}
-  |misc_args:A{|not_empty}
    *arguments_line C1
     {macro_line: bad  { , not_empty}\\n}
    {raw:in bad macro\\n}
@@ -26,9 +26,9 @@
   {empty_line:\\n}
   *@macro C3 l6
   |EXTRA
+  |formal_args:A{first|in 2arg}
   |invalid_syntax:{1}
   |macro_name:{badspace}
-  |misc_args:A{first|in 2arg}
    *arguments_line C1
     {macro_line: badspace{first, in 2arg}\\n}
    {raw:bad space\\n}
@@ -42,9 +42,9 @@
   {empty_line:\\n}
   *@macro C6 l10
   |EXTRA
+  |formal_args:A{:::}
   |invalid_syntax:{1}
   |macro_name:{abar}
-  |misc_args:A{:::}
    *arguments_line C1
     {macro_line: abar {:::}\\n}
    {raw:in bar\\n}
diff --git a/tta/perl/t/results/macro/bad_macro_name_with_underscore.pl b/tta/perl/t/results/macro/bad_macro_name_with_underscore.pl
index c45d782..01855f4 100644
--- a/tta/perl/t/results/macro/bad_macro_name_with_underscore.pl
+++ b/tta/perl/t/results/macro/bad_macro_name_with_underscore.pl
@@ -9,8 +9,8 @@
  *before_node_section C1
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg1|arg2}
   |macro_name:{the_macro}
-  |misc_args:A{arg1|arg2}
    *arguments_line C1
     {macro_line: the_macro {arg1, arg2}\\n}
    {raw:In macro\\n}
diff --git a/tta/perl/t/results/macro/bib_example.pl b/tta/perl/t/results/macro/bib_example.pl
index 5129e97..245d193 100644
--- a/tta/perl/t/results/macro/bib_example.pl
+++ b/tta/perl/t/results/macro/bib_example.pl
@@ -797,8 +797,8 @@
    {empty_line:\\n}
    *@macro C3 my-bib-macros.texi:l162
    |EXTRA
+   |formal_args:A{node}
    |macro_name:{mybibsetrefnode}
-   |misc_args:A{node}
     *arguments_line C1
      {macro_line: mybibsetrefnode{node}\\n}
     {raw:@set mybibrefnode \\node\\\\n}
@@ -823,8 +823,8 @@
    {empty_line:\\n}
    *@macro C3 my-bib-macros.texi:l169
    |EXTRA
+   |formal_args:A{}
    |macro_name:{mybibnode}
-   |misc_args:A{}
     *arguments_line C1
      {macro_line: mybibnode{}\\n}
     {raw:@value{mybibrefnode}\\n}
@@ -849,8 +849,8 @@
    {empty_line:\\n}
    *@macro C7 my-bib-macros.texi:l176
    |EXTRA
+   |formal_args:A{node}
    |macro_name:{mybibusetable}
-   |misc_args:A{node}
     *arguments_line C1
      {macro_line: mybibusetable{node}\\n}
     {raw:@set mybibtable true\\n}
@@ -879,8 +879,8 @@
    {empty_line:\\n}
    *@macro C7 my-bib-macros.texi:l187
    |EXTRA
+   |formal_args:A{node}
    |macro_name:{mybibuselist}
-   |misc_args:A{node}
     *arguments_line C1
      {macro_line: mybibuselist{node}\\n}
     {raw:@set mybiblist true\\n}
@@ -905,8 +905,8 @@
    {empty_line:\\n}
    *@macro C10 my-bib-macros.texi:l198
    |EXTRA
+   |formal_args:A{ref}
    |macro_name:{mybibcite}
-   |misc_args:A{ref}
     *arguments_line C1
      {macro_line: mybibcite{ref}\\n}
     {raw:@ifclear mybibrefnode\\n}
@@ -927,8 +927,8 @@
    {empty_line:\\n}
    *@macro C3 my-bib-macros.texi:l209
    |EXTRA
+   |formal_args:A{node|ref}
    |macro_name:{mybibmakeref}
-   |misc_args:A{node|ref}
     *arguments_line C1
      {macro_line: mybibmakeref{node, ref}\\n}
     {raw:(See item [\\ref\\] in @ref{\\node\\, \\ref\\}.)\\n}
@@ -948,8 +948,8 @@
    {empty_line:\\n}
    *@macro C16 my-bib-macros.texi:l215
    |EXTRA
+   |formal_args:A{ref}
    |macro_name:{mybibitem}
-   |misc_args:A{ref}
     *arguments_line C1
      {macro_line: mybibitem{ref}\\n}
     {raw:@ifclear mybiblist\\n}
diff --git a/tta/perl/t/results/macro/bye_in_macro.pl b/tta/perl/t/results/macro/bye_in_macro.pl
index c27d9fc..b6f6894 100644
--- a/tta/perl/t/results/macro/bye_in_macro.pl
+++ b/tta/perl/t/results/macro/bye_in_macro.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C6 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{byeinmacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: byeinmacro\\n}
    {raw:Text\\n}
diff --git a/tta/perl/t/results/macro/closing_brace_in_macro_call_in_ignored_inline.pl b/tta/perl/t/results/macro/closing_brace_in_macro_call_in_ignored_inline.pl
index 20cf353..2bd26c7 100644
--- a/tta/perl/t/results/macro/closing_brace_in_macro_call_in_ignored_inline.pl
+++ b/tta/perl/t/results/macro/closing_brace_in_macro_call_in_ignored_inline.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{closebrace}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: closebrace\\n}
    {raw:}\\n}
diff --git a/tta/perl/t/results/macro/complete_macro_for_end.pl b/tta/perl/t/results/macro/complete_macro_for_end.pl
index 9f74803..9b471fb 100644
--- a/tta/perl/t/results/macro/complete_macro_for_end.pl
+++ b/tta/perl/t/results/macro/complete_macro_for_end.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{theend}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: theend\\n}
    {raw:@end cartouche\\n}
diff --git a/tta/perl/t/results/macro/complex_argument.pl b/tta/perl/t/results/macro/complex_argument.pl
index fd0c45c..3110b5a 100644
--- a/tta/perl/t/results/macro/complex_argument.pl
+++ b/tta/perl/t/results/macro/complex_argument.pl
@@ -9,8 +9,8 @@
  *before_node_section C16
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{macrotwo}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: macrotwo{arg}\\n}
    {raw:coucou \\arg\\ after arg\\n}
@@ -24,8 +24,8 @@
   {empty_line:\\n}
   *@macro C6 l5
   |EXTRA
+  |formal_args:A{}
   |macro_name:{macrofour}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: macrofour {}\\n}
    {raw:1\\n}
@@ -42,8 +42,8 @@
   {empty_line:\\n}
   *@macro C4 l12
   |EXTRA
+  |formal_args:A{text|arg}
   |macro_name:{macrothree}
-  |misc_args:A{text|arg}
    *arguments_line C1
     {macro_line: macrothree{text, arg}\\n}
    {raw:\\text\\\\n}
@@ -133,8 +133,8 @@
      {spaces_after_argument:\\n}
   *@macro C3 l38:@macrothree
   |EXTRA
+  |formal_args:A{truc}
   |macro_name:{macroseven}
-  |misc_args:A{truc}
    *arguments_line C1
     {macro_line: macroseven {truc}\\n}
    {raw:@emph{\\truc\\}\\n}
diff --git a/tta/perl/t/results/macro/cpp_directives_after_macros.pl b/tta/perl/t/results/macro/cpp_directives_after_macros.pl
index f4e22ad..4286d16 100644
--- a/tta/perl/t/results/macro/cpp_directives_after_macros.pl
+++ b/tta/perl/t/results/macro/cpp_directives_after_macros.pl
@@ -12,8 +12,8 @@
   *preamble_before_content C6
    *@macro C3 cpp_directives_after_macros.texi:l2
    |EXTRA
+   |formal_args:A{}
    |macro_name:{noargsspaces}
-   |misc_args:A{}
     *arguments_line C1
      {macro_line: noargsspaces\\n}
     {raw:  \\n}
@@ -27,8 +27,8 @@
    {empty_line:\\n}
    *@macro C3 cpp_directives_after_macros.texi:l6
    |EXTRA
+   |formal_args:A{}
    |macro_name:{emptyexpansion}
-   |misc_args:A{}
     *arguments_line C1
      {macro_line: emptyexpansion\\n}
     {raw:\\n}
diff --git a/tta/perl/t/results/macro/cpp_directives_in_macro.pl b/tta/perl/t/results/macro/cpp_directives_in_macro.pl
index ec63502..ba759d2 100644
--- a/tta/perl/t/results/macro/cpp_directives_in_macro.pl
+++ b/tta/perl/t/results/macro/cpp_directives_in_macro.pl
@@ -12,8 +12,8 @@
   *preamble_before_content C2
    *@macro C3 cpp_directives_in_macro.texi:l2
    |EXTRA
+   |formal_args:A{out}
    |macro_name:{simplemacro}
-   |misc_args:A{out}
     *arguments_line C1
      {macro_line: simplemacro{out}\\n}
     {raw:\\out\\\\n}
diff --git a/tta/perl/t/results/macro/cpp_directives_line_value_macro.pl b/tta/perl/t/results/macro/cpp_directives_line_value_macro.pl
index 01c3199..4849fe4 100644
--- a/tta/perl/t/results/macro/cpp_directives_line_value_macro.pl
+++ b/tta/perl/t/results/macro/cpp_directives_line_value_macro.pl
@@ -12,8 +12,8 @@
   *preamble_before_content C2
    *@macro C3 cpp_directives_line_value_macro.texi:l2
    |EXTRA
+   |formal_args:A{}
    |macro_name:{vvv}
-   |misc_args:A{}
     *arguments_line C1
      {macro_line: vvv {}\\n}
     {raw:#line 30 "toto"\\n}
@@ -35,8 +35,8 @@
   {empty_line:\\n}
   *@macro C3 cpp_directives_line_value_macro.texi:l8
   |EXTRA
+  |formal_args:A{}
   |macro_name:{machash}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: machash {}\\n}
    {raw:#\\n}
@@ -58,8 +58,8 @@
   {empty_line:\\n}
   *@macro C3 cpp_directives_line_value_macro.texi:l14
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{numberfileflag}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: numberfileflag {arg}\\n}
    {raw:\\arg\\ "titi" 3\\arg\\\\n}
diff --git a/tta/perl/t/results/macro/definfoenclose_replaced_by_macro.pl b/tta/perl/t/results/macro/definfoenclose_replaced_by_macro.pl
index 5c29098..fa60840 100644
--- a/tta/perl/t/results/macro/definfoenclose_replaced_by_macro.pl
+++ b/tta/perl/t/results/macro/definfoenclose_replaced_by_macro.pl
@@ -17,8 +17,8 @@
   {empty_line:\\n}
   *@macro C3 l3
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{phoo}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: phoo {arg}\\n}
    {raw:||\\arg\\||\\n}
diff --git a/tta/perl/t/results/macro/double_macro_definition.pl b/tta/perl/t/results/macro/double_macro_definition.pl
index e613c33..8b3081b 100644
--- a/tta/perl/t/results/macro/double_macro_definition.pl
+++ b/tta/perl/t/results/macro/double_macro_definition.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C2 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{foo}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: foo\\n}
    *@end C1 l2
@@ -23,8 +23,8 @@
   {empty_line:\\n}
   *@macro C2 l4
   |EXTRA
+  |formal_args:A{}
   |macro_name:{foo}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: foo\\n}
    *@end C1 l5
diff --git a/tta/perl/t/results/macro/double_macro_expansion_in_set_arg_comment.pl b/tta/perl/t/results/macro/double_macro_expansion_in_set_arg_comment.pl
index 37f9fb6..b606233 100644
--- a/tta/perl/t/results/macro/double_macro_expansion_in_set_arg_comment.pl
+++ b/tta/perl/t/results/macro/double_macro_expansion_in_set_arg_comment.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{a}
   |macro_name:{mymac}
-  |misc_args:A{a}
    *arguments_line C1
     {macro_line: mymac {a}\\n}
    {raw:@set \\a\\ value\\n}
@@ -24,8 +24,8 @@
   {empty_line:\\n}
   *@macro C3 l5
   |EXTRA
+  |formal_args:A{b}
   |macro_name:{callmymac}
-  |misc_args:A{b}
    *arguments_line C1
     {macro_line: callmymac {b}\\n}
    {raw:@mymac{\\b\\} alsov @comment in\\n}
diff --git a/tta/perl/t/results/macro/double_macro_expansion_in_set_comment.pl b/tta/perl/t/results/macro/double_macro_expansion_in_set_comment.pl
index 9806ff6..74fc056 100644
--- a/tta/perl/t/results/macro/double_macro_expansion_in_set_comment.pl
+++ b/tta/perl/t/results/macro/double_macro_expansion_in_set_comment.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{a}
   |macro_name:{mymac}
-  |misc_args:A{a}
    *arguments_line C1
     {macro_line: mymac {a}\\n}
    {raw:@set flag \\a\\ @comment in \\n}
@@ -24,8 +24,8 @@
   {empty_line:\\n}
   *@macro C3 l5
   |EXTRA
+  |formal_args:A{b}
   |macro_name:{callmymac}
-  |misc_args:A{b}
    *arguments_line C1
     {macro_line: callmymac {b}\\n}
    {raw:@mymac{\\b\\} here\\n}
diff --git a/tta/perl/t/results/macro/double_recursive_macro_call.pl b/tta/perl/t/results/macro/double_recursive_macro_call.pl
index 0e1f230..52a2646 100644
--- a/tta/perl/t/results/macro/double_recursive_macro_call.pl
+++ b/tta/perl/t/results/macro/double_recursive_macro_call.pl
@@ -10,8 +10,8 @@
   {empty_line:\\n}
   *@macro C3 l2
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{macone}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: macone {arg}\\n}
    {raw:@mactwo{}\\n}
@@ -25,8 +25,8 @@
   {empty_line:\\n}
   *@macro C3 l6
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{mactwo}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: mactwo{arg}\\n}
    {raw:@macone{}\\n}
diff --git a/tta/perl/t/results/macro/empty_end.pl b/tta/perl/t/results/macro/empty_end.pl
index 350550d..d6ba3ed 100644
--- a/tta/perl/t/results/macro/empty_end.pl
+++ b/tta/perl/t/results/macro/empty_end.pl
@@ -9,8 +9,8 @@
  *before_node_section C1
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{aaa}
   |macro_name:{foo}
-  |misc_args:A{aaa}
    *arguments_line C1
     {macro_line: foo {aaa, }\\n}
    {raw:in foo\\n}
diff --git a/tta/perl/t/results/macro/empty_macro_argument.pl b/tta/perl/t/results/macro/empty_macro_argument.pl
index c445018..49a5482 100644
--- a/tta/perl/t/results/macro/empty_macro_argument.pl
+++ b/tta/perl/t/results/macro/empty_macro_argument.pl
@@ -9,8 +9,8 @@
  *before_node_section C7
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{mymacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: mymacro{}\\n}
    {raw:text\\n}
@@ -48,8 +48,8 @@
   {empty_line:\\n}
   *@macro C3 l7
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{mytwo}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: mytwo{arg}\\n}
    {raw:X\\arg\\X\\n}
diff --git a/tta/perl/t/results/macro/empty_macro_in_text_no_arg.pl b/tta/perl/t/results/macro/empty_macro_in_text_no_arg.pl
index 7db6d95..fb9a5ad 100644
--- a/tta/perl/t/results/macro/empty_macro_in_text_no_arg.pl
+++ b/tta/perl/t/results/macro/empty_macro_in_text_no_arg.pl
@@ -9,8 +9,8 @@
  *before_node_section C8
   *@macro C2 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{texnl}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: texnl{}\\n}
    *@end C1 l2
@@ -31,8 +31,8 @@
   {empty_line:\\n}
   *@macro C2 l6
   |EXTRA
+  |formal_args:A{}
   |macro_name:{texnltwo}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: texnltwo\\n}
    *@end C1 l7
diff --git a/tta/perl/t/results/macro/empty_macro_no_arg.pl b/tta/perl/t/results/macro/empty_macro_no_arg.pl
index b0baa51..1de3124 100644
--- a/tta/perl/t/results/macro/empty_macro_no_arg.pl
+++ b/tta/perl/t/results/macro/empty_macro_no_arg.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C2 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{foo}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: foo\\n}
    *@end C1 l2
diff --git a/tta/perl/t/results/macro/expand_two_same.pl b/tta/perl/t/results/macro/expand_two_same.pl
index 1192cda..f25985e 100644
--- a/tta/perl/t/results/macro/expand_two_same.pl
+++ b/tta/perl/t/results/macro/expand_two_same.pl
@@ -9,8 +9,8 @@
  *before_node_section C6
   *@macro C4 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{macrotwo}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: macrotwo { arg }\\n}
    {raw:With a doubles arg \\arg\\ and re \\arg\\\\n}
diff --git a/tta/perl/t/results/macro/expansion_order.pl b/tta/perl/t/results/macro/expansion_order.pl
index b3e0f17..accf4f0 100644
--- a/tta/perl/t/results/macro/expansion_order.pl
+++ b/tta/perl/t/results/macro/expansion_order.pl
@@ -9,8 +9,8 @@
  *before_node_section C6
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{bidule}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: bidule{arg}\\n}
    {raw:@machin{}\\n}
@@ -24,8 +24,8 @@
   {empty_line:\\n}
   *@macro C4 l5
   |EXTRA
+  |formal_args:A{}
   |macro_name:{machin}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: machin\\n}
    {raw:\\\\arg\\\\\\n}
diff --git a/tta/perl/t/results/macro/form_feeds.pl b/tta/perl/t/results/macro/form_feeds.pl
index f34b3ff..26c0ba1 100644
--- a/tta/perl/t/results/macro/form_feeds.pl
+++ b/tta/perl/t/results/macro/form_feeds.pl
@@ -9,8 +9,8 @@
  *before_node_section C11
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{a|b}
   |macro_name:{mymacro}
-  |misc_args:A{a|b}
    *arguments_line C1
     {macro_line: mymacro{a, b}\\n}
    {raw:f \\a\\ n \\b\\\\n}
@@ -24,8 +24,8 @@
   {empty_line:\\n}
   *@macro C3 l5
   |EXTRA
+  |formal_args:A{c}
   |macro_name:{oneargmacro}
-  |misc_args:A{c}
    *arguments_line C1
     {macro_line: oneargmacro{c}\\n}
    {raw:g \\c\\ v\\n}
diff --git a/tta/perl/t/results/macro/glossary.pl b/tta/perl/t/results/macro/glossary.pl
index 8214d87..0e05c11 100644
--- a/tta/perl/t/results/macro/glossary.pl
+++ b/tta/perl/t/results/macro/glossary.pl
@@ -22,8 +22,8 @@
    {empty_line:\\n}
    *@macro C3 glossary.texi:l5
    |EXTRA
+   |formal_args:A{}
    |macro_name:{glossarytext}
-   |misc_args:A{}
     *arguments_line C1
      {macro_line: glossarytext\\n}
     {raw:@table @asis\\n}
@@ -37,8 +37,8 @@
    {empty_line:\\n}
    *@macro C5 glossary.texi:l9
    |EXTRA
+   |formal_args:A{}
    |macro_name:{glossary}
-   |misc_args:A{}
     *arguments_line C1
      {macro_line: glossary\\n}
     {raw:@glossarytext\\n}
@@ -54,8 +54,8 @@
    {empty_line:\\n}
    *@macro C19 glossary.texi:l15
    |EXTRA
+   |formal_args:A{id|name|text}
    |macro_name:{gentry}
-   |misc_args:A{id|name|text}
     *arguments_line C1
      {macro_line: gentry {id, name, text}\\n}
     {raw:@ifhtml\\n}
@@ -186,8 +186,8 @@
      {spaces_after_argument:\\n}
    *@macro C8 glossary.texi:l42:@gentry
    |EXTRA
+   |formal_args:A{glossary}
    |macro_name:{expandglossary}
-   |misc_args:A{glossary}
    >SOURCEMARKS
    >macro_expansion<start;2>
     >*macro_call@expandglossary C1
@@ -220,8 +220,8 @@
      {spaces_after_argument:\\n}
    *@macro C5 glossary.texi:l42:@expandglossary
    |EXTRA
+   |formal_args:A{}
    |macro_name:{glossarytext}
-   |misc_args:A{}
    >SOURCEMARKS
    >macro_expansion<end;1>
     *arguments_line C1
@@ -295,8 +295,8 @@
      {spaces_after_argument:\\n}
    *@macro C8 glossary.texi:l43:@gentry
    |EXTRA
+   |formal_args:A{glossary}
    |macro_name:{expandglossary}
-   |misc_args:A{glossary}
    >SOURCEMARKS
    >macro_expansion<start;4>
     >*macro_call@expandglossary C1
@@ -329,8 +329,8 @@
      {spaces_after_argument:\\n}
    *@macro C5 glossary.texi:l43:@expandglossary
    |EXTRA
+   |formal_args:A{}
    |macro_name:{glossarytext}
-   |misc_args:A{}
    >SOURCEMARKS
    >macro_expansion<end;3>
     *arguments_line C1
diff --git a/tta/perl/t/results/macro/ifclear_in_macro.pl b/tta/perl/t/results/macro/ifclear_in_macro.pl
index e2c3059..fcc5da6 100644
--- a/tta/perl/t/results/macro/ifclear_in_macro.pl
+++ b/tta/perl/t/results/macro/ifclear_in_macro.pl
@@ -9,8 +9,8 @@
  *before_node_section C4
   *@macro C5 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{note}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: note {arg}\\n}
    {raw:@ifclear notes \\n}
diff --git a/tta/perl/t/results/macro/ifset_and_end_isef_in_macro.pl b/tta/perl/t/results/macro/ifset_and_end_isef_in_macro.pl
index 98ae247..bde0ca2 100644
--- a/tta/perl/t/results/macro/ifset_and_end_isef_in_macro.pl
+++ b/tta/perl/t/results/macro/ifset_and_end_isef_in_macro.pl
@@ -9,8 +9,8 @@
  *before_node_section C4
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{beginifset}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: beginifset {}\\n}
    {raw:@ifset a\\n}
@@ -24,8 +24,8 @@
   {empty_line:\\n}
   *@macro C3 l5
   |EXTRA
+  |formal_args:A{}
   |macro_name:{endifset}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: endifset {}\\n}
    {raw:@end ifset\\n}
diff --git a/tta/perl/t/results/macro/ifset_in_macro.pl b/tta/perl/t/results/macro/ifset_in_macro.pl
index 36d2878..908be91 100644
--- a/tta/perl/t/results/macro/ifset_in_macro.pl
+++ b/tta/perl/t/results/macro/ifset_in_macro.pl
@@ -9,8 +9,8 @@
  *before_node_section C2
   *@macro C5 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{note}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: note {arg}\\n}
    {raw:@ifset notes \\n}
diff --git a/tta/perl/t/results/macro/ifset_in_macro_set.pl b/tta/perl/t/results/macro/ifset_in_macro_set.pl
index 2524ff3..ededd8b 100644
--- a/tta/perl/t/results/macro/ifset_in_macro_set.pl
+++ b/tta/perl/t/results/macro/ifset_in_macro_set.pl
@@ -9,8 +9,8 @@
  *before_node_section C4
   *@macro C5 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{note}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: note {arg}\\n}
    {raw:@ifset notes \\n}
diff --git a/tta/perl/t/results/macro/ignored_macro_definition.pl b/tta/perl/t/results/macro/ignored_macro_definition.pl
index 5a7caa8..196d580 100644
--- a/tta/perl/t/results/macro/ignored_macro_definition.pl
+++ b/tta/perl/t/results/macro/ignored_macro_definition.pl
@@ -9,8 +9,8 @@
  *before_node_section C6
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{mymacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: mymacro{}\\n}
    {raw:outside\\n}
diff --git a/tta/perl/t/results/macro/implicit_quoting_one_arg.pl b/tta/perl/t/results/macro/implicit_quoting_one_arg.pl
index 260e9a9..0d42b69 100644
--- a/tta/perl/t/results/macro/implicit_quoting_one_arg.pl
+++ b/tta/perl/t/results/macro/implicit_quoting_one_arg.pl
@@ -10,8 +10,8 @@
   {empty_line:\\n}
   *@macro C3 l2
   |EXTRA
+  |formal_args:A{a}
   |macro_name:{FIXAME}
-  |misc_args:A{a}
    *arguments_line C1
     {macro_line: FIXAME{a}\\n}
    {raw:@strong{FIXAME: \\a\\}\\n}
diff --git a/tta/perl/t/results/macro/implicit_quoting_recursion.pl b/tta/perl/t/results/macro/implicit_quoting_recursion.pl
index 45fa2b1..ed87d8d 100644
--- a/tta/perl/t/results/macro/implicit_quoting_recursion.pl
+++ b/tta/perl/t/results/macro/implicit_quoting_recursion.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@rmacro C3 l1
   |EXTRA
+  |formal_args:A{a|b}
   |macro_name:{cat}
-  |misc_args:A{a|b}
    *arguments_line C1
     {macro_line: cat{a,b}\\n}
    {raw:\\a\\\\b\\\\n}
diff --git a/tta/perl/t/results/macro/include_after_empty_line_arg.pl b/tta/perl/t/results/macro/include_after_empty_line_arg.pl
index 7bf49b2..f7608e2 100644
--- a/tta/perl/t/results/macro/include_after_empty_line_arg.pl
+++ b/tta/perl/t/results/macro/include_after_empty_line_arg.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{body}
   |macro_name:{mymacro}
-  |misc_args:A{body}
    *arguments_line C1
     {macro_line: mymacro{body}\\n}
    {raw:@code{\\body\\}\\n}
diff --git a/tta/perl/t/results/macro/leading_spaces_no_ignore.pl b/tta/perl/t/results/macro/leading_spaces_no_ignore.pl
index be8f360..4c047b1 100644
--- a/tta/perl/t/results/macro/leading_spaces_no_ignore.pl
+++ b/tta/perl/t/results/macro/leading_spaces_no_ignore.pl
@@ -9,8 +9,8 @@
  *before_node_section C4
   *@macro C4 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{mymacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: mymacro\\n}
    {raw:  Some  here\\n}
diff --git a/tta/perl/t/results/macro/line_after_recursive_call.pl b/tta/perl/t/results/macro/line_after_recursive_call.pl
index a1501b6..caeb4fe 100644
--- a/tta/perl/t/results/macro/line_after_recursive_call.pl
+++ b/tta/perl/t/results/macro/line_after_recursive_call.pl
@@ -9,8 +9,8 @@
  *before_node_section C2
   *@macro C5 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{mac}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: mac\\n}
    {raw:ggg\\n}
diff --git a/tta/perl/t/results/macro/line_end_accent_command_macro_call.pl b/tta/perl/t/results/macro/line_end_accent_command_macro_call.pl
index 11e2231..695219a 100644
--- a/tta/perl/t/results/macro/line_end_accent_command_macro_call.pl
+++ b/tta/perl/t/results/macro/line_end_accent_command_macro_call.pl
@@ -9,8 +9,8 @@
  *before_node_section C12
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{expand}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: expand {}\\n}
    {raw:@center A @ringaccent \\n}
@@ -43,8 +43,8 @@
   {empty_line:\\n}
   *@macro C3 l8
   |EXTRA
+  |formal_args:A{}
   |macro_name:{nospace}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: nospace {}\\n}
    {raw:@center B @ringaccent\\n}
diff --git a/tta/perl/t/results/macro/macro_after_paragraph.pl b/tta/perl/t/results/macro/macro_after_paragraph.pl
index 04d6985..f3156cd 100644
--- a/tta/perl/t/results/macro/macro_after_paragraph.pl
+++ b/tta/perl/t/results/macro/macro_after_paragraph.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C4 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{mymacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: mymacro\\n}
    {raw:\\n}
diff --git a/tta/perl/t/results/macro/macro_alias_definfoenclose_defindex.pl b/tta/perl/t/results/macro/macro_alias_definfoenclose_defindex.pl
index e7b3ff9..dae73fa 100644
--- a/tta/perl/t/results/macro/macro_alias_definfoenclose_defindex.pl
+++ b/tta/perl/t/results/macro/macro_alias_definfoenclose_defindex.pl
@@ -51,8 +51,8 @@
   {empty_line:\\n}
   *@macro C3 l7
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{phooindex}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: phooindex {arg}\\n}
    {raw:||\\arg\\||\\n}
@@ -137,8 +137,8 @@
   {empty_line:\\n}
   *@macro C3 l24
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{phooindex}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: phooindex {arg}\\n}
    {raw:!!\\arg\\!!\\n}
@@ -177,8 +177,8 @@
   {empty_line:\\n}
   *@macro C3 l32
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{phooindex}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: phooindex {arg}\\n}
    {raw:!!\\arg\\!!\\n}
@@ -263,8 +263,8 @@
   {empty_line:\\n}
   *@macro C3 l49
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{phooindex}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: phooindex {arg}\\n}
    {raw:%%\\arg\\%%\\n}
diff --git a/tta/perl/t/results/macro/macro_before_specific_line_command_args.pl b/tta/perl/t/results/macro/macro_before_specific_line_command_args.pl
index 2ba1452..ddf81a7 100644
--- a/tta/perl/t/results/macro/macro_before_specific_line_command_args.pl
+++ b/tta/perl/t/results/macro/macro_before_specific_line_command_args.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{cpfn}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: cpfn\\n}
    {raw: cp fn\\n}
diff --git a/tta/perl/t/results/macro/macro_call_empty_middle_arg.pl b/tta/perl/t/results/macro/macro_call_empty_middle_arg.pl
index 1ffc95a..5e1adc8 100644
--- a/tta/perl/t/results/macro/macro_call_empty_middle_arg.pl
+++ b/tta/perl/t/results/macro/macro_call_empty_middle_arg.pl
@@ -9,8 +9,8 @@
  *before_node_section C7
   *@macro C5 l1
   |EXTRA
+  |formal_args:A{aa|bb|cc}
   |macro_name:{threea}
-  |misc_args:A{aa|bb|cc}
    *arguments_line C1
     {macro_line: threea {aa, bb, cc}\\n}
    {raw:first \\aa\\,\\n}
diff --git a/tta/perl/t/results/macro/macro_call_empty_two_arg.pl b/tta/perl/t/results/macro/macro_call_empty_two_arg.pl
index 13c1b2f..aef8745 100644
--- a/tta/perl/t/results/macro/macro_call_empty_two_arg.pl
+++ b/tta/perl/t/results/macro/macro_call_empty_two_arg.pl
@@ -9,8 +9,8 @@
  *before_node_section C24
   *@macro C4 l1
   |EXTRA
+  |formal_args:A{aa|bb}
   |macro_name:{twoa}
-  |misc_args:A{aa|bb}
    *arguments_line C1
     {macro_line: twoa {aa, bb}\\n}
    {raw:first \\aa\\,\\n}
diff --git a/tta/perl/t/results/macro/macro_call_in_ignored_inlinefmtifelse.pl b/tta/perl/t/results/macro/macro_call_in_ignored_inlinefmtifelse.pl
index 9743212..487df99 100644
--- a/tta/perl/t/results/macro/macro_call_in_ignored_inlinefmtifelse.pl
+++ b/tta/perl/t/results/macro/macro_call_in_ignored_inlinefmtifelse.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{commafmt}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: commafmt\\n}
    {raw:before comma, after\\n}
diff --git a/tta/perl/t/results/macro/macro_call_in_inlinefmtifelse_format.pl b/tta/perl/t/results/macro/macro_call_in_inlinefmtifelse_format.pl
index f6dfef6..829bdde 100644
--- a/tta/perl/t/results/macro/macro_call_in_inlinefmtifelse_format.pl
+++ b/tta/perl/t/results/macro/macro_call_in_inlinefmtifelse_format.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{inlinefirstarg}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: inlinefirstarg\\n}
    {raw:ex, before, after\\n}
diff --git a/tta/perl/t/results/macro/macro_call_in_node_manual.pl b/tta/perl/t/results/macro/macro_call_in_node_manual.pl
index 952a50a..6ca3e4a 100644
--- a/tta/perl/t/results/macro/macro_call_in_node_manual.pl
+++ b/tta/perl/t/results/macro/macro_call_in_node_manual.pl
@@ -9,8 +9,8 @@
  *before_node_section C13
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{openbrace}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: openbrace\\n}
    {raw:(\\n}
@@ -24,8 +24,8 @@
   {empty_line:\\n}
   *@macro C3 l5
   |EXTRA
+  |formal_args:A{}
   |macro_name:{openbracetext}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: openbracetext\\n}
    {raw:(begin\\n}
@@ -39,8 +39,8 @@
   {empty_line:\\n}
   *@macro C3 l9
   |EXTRA
+  |formal_args:A{}
   |macro_name:{manualnameend}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: manualnameend\\n}
    {raw:last\\n}
@@ -54,8 +54,8 @@
   {empty_line:\\n}
   *@macro C3 l13
   |EXTRA
+  |formal_args:A{}
   |macro_name:{manualnameendbrace}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: manualnameendbrace\\n}
    {raw:last)\\n}
@@ -69,8 +69,8 @@
   {empty_line:\\n}
   *@macro C3 l17
   |EXTRA
+  |formal_args:A{}
   |macro_name:{manualnameendbracespace}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: manualnameendbracespace\\n}
    {raw:last)   \\n}
@@ -84,8 +84,8 @@
   {empty_line:\\n}
   *@macro C3 l21
   |EXTRA
+  |formal_args:A{}
   |macro_name:{manualnameendbracespacetext}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: manualnameendbracespacetext\\n}
    {raw:last)  mynode\\n}
diff --git a/tta/perl/t/results/macro/macro_end_call_in_ignored_inlinefmt.pl b/tta/perl/t/results/macro/macro_end_call_in_ignored_inlinefmt.pl
index 69d1ce7..af5ba4a 100644
--- a/tta/perl/t/results/macro/macro_end_call_in_ignored_inlinefmt.pl
+++ b/tta/perl/t/results/macro/macro_end_call_in_ignored_inlinefmt.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{startfmt}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: startfmt\\n}
    {raw:Para @inlinefmt{tex, inT\\n}
diff --git a/tta/perl/t/results/macro/macro_end_call_in_ignored_inlinefmtifelse.pl b/tta/perl/t/results/macro/macro_end_call_in_ignored_inlinefmtifelse.pl
index 4c6df3f..7501b78 100644
--- a/tta/perl/t/results/macro/macro_end_call_in_ignored_inlinefmtifelse.pl
+++ b/tta/perl/t/results/macro/macro_end_call_in_ignored_inlinefmtifelse.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{inlinefirstfmt}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: inlinefirstfmt\\n}
    {raw:Toto @inlinefmtifelse{tex, before\\n}
diff --git a/tta/perl/t/results/macro/macro_end_call_in_ignored_inlinefmtifelse_else.pl b/tta/perl/t/results/macro/macro_end_call_in_ignored_inlinefmtifelse_else.pl
index 6326771..8118056 100644
--- a/tta/perl/t/results/macro/macro_end_call_in_ignored_inlinefmtifelse_else.pl
+++ b/tta/perl/t/results/macro/macro_end_call_in_ignored_inlinefmtifelse_else.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{endcallinignoredinlineelse}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: endcallinignoredinlineelse\\n}
    {raw:own, ignored\\n}
diff --git a/tta/perl/t/results/macro/macro_end_call_in_ignored_inlineraw.pl b/tta/perl/t/results/macro/macro_end_call_in_ignored_inlineraw.pl
index f35b592..5a5d549 100644
--- a/tta/perl/t/results/macro/macro_end_call_in_ignored_inlineraw.pl
+++ b/tta/perl/t/results/macro/macro_end_call_in_ignored_inlineraw.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{startraw}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: startraw\\n}
    {raw:Para @inlineraw{tex, in@something\\n}
diff --git a/tta/perl/t/results/macro/macro_end_call_in_ignored_raw.pl b/tta/perl/t/results/macro/macro_end_call_in_ignored_raw.pl
index 2441493..0daf674 100644
--- a/tta/perl/t/results/macro/macro_end_call_in_ignored_raw.pl
+++ b/tta/perl/t/results/macro/macro_end_call_in_ignored_raw.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C4 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{startraw}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: startraw\\n}
    {raw:@tex\\n}
diff --git a/tta/perl/t/results/macro/macro_expands_to_empty.pl b/tta/perl/t/results/macro/macro_expands_to_empty.pl
index 19b5d64..51da5ee 100644
--- a/tta/perl/t/results/macro/macro_expands_to_empty.pl
+++ b/tta/perl/t/results/macro/macro_expands_to_empty.pl
@@ -9,8 +9,8 @@
  *before_node_section C4
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{foo}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: foo {arg}\\n}
    {raw:\\arg\\\\n}
diff --git a/tta/perl/t/results/macro/macro_expansion.pl b/tta/perl/t/results/macro/macro_expansion.pl
index 466cc06..1c91e1b 100644
--- a/tta/perl/t/results/macro/macro_expansion.pl
+++ b/tta/perl/t/results/macro/macro_expansion.pl
@@ -10,8 +10,8 @@
   {empty_line:\\n}
   *@macro C6 l2
   |EXTRA
+  |formal_args:A{arg1|arg2}
   |macro_name:{macroone}
-  |misc_args:A{arg1|arg2}
    *arguments_line C1
     {macro_line: macroone {arg1, arg2 }\\n}
    {raw:result of a macro with \\arg1\\ and \\n}
diff --git a/tta/perl/t/results/macro/macro_expansion_end_in_conditional_end.pl b/tta/perl/t/results/macro/macro_expansion_end_in_conditional_end.pl
index 7b79614..79cf9bd 100644
--- a/tta/perl/t/results/macro/macro_expansion_end_in_conditional_end.pl
+++ b/tta/perl/t/results/macro/macro_expansion_end_in_conditional_end.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C5 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{beginendcond}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: beginendcond\\n}
    {raw:@ifset flag\\n}
diff --git a/tta/perl/t/results/macro/macro_expansion_end_in_conditional_line.pl b/tta/perl/t/results/macro/macro_expansion_end_in_conditional_line.pl
index a4f5f46..40ca73b 100644
--- a/tta/perl/t/results/macro/macro_expansion_end_in_conditional_line.pl
+++ b/tta/perl/t/results/macro/macro_expansion_end_in_conditional_line.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{begincond}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: begincond\\n}
    {raw:@ifset fl\\n}
diff --git a/tta/perl/t/results/macro/macro_expansion_end_in_ignored_ifset_content.pl b/tta/perl/t/results/macro/macro_expansion_end_in_ignored_ifset_content.pl
index f6b415d..b74787d 100644
--- a/tta/perl/t/results/macro/macro_expansion_end_in_ignored_ifset_content.pl
+++ b/tta/perl/t/results/macro/macro_expansion_end_in_ignored_ifset_content.pl
@@ -9,8 +9,8 @@
  *before_node_section C2
   *@macro C4 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{beginifsetcontent}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: beginifsetcontent\\n}
    {raw:@ifset a\\n}
diff --git a/tta/perl/t/results/macro/macro_expansion_end_in_ignored_nested_conditional.pl b/tta/perl/t/results/macro/macro_expansion_end_in_ignored_nested_conditional.pl
index a42659c..1113be0 100644
--- a/tta/perl/t/results/macro/macro_expansion_end_in_ignored_nested_conditional.pl
+++ b/tta/perl/t/results/macro/macro_expansion_end_in_ignored_nested_conditional.pl
@@ -9,8 +9,8 @@
  *before_node_section C2
   *@macro C5 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{beginnestedcond}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: beginnestedcond\\n}
    {raw:@ifset a\\n}
diff --git a/tta/perl/t/results/macro/macro_expansion_end_in_ignored_nested_different_conditional.pl b/tta/perl/t/results/macro/macro_expansion_end_in_ignored_nested_different_conditional.pl
index 60ac8e2..82493e8 100644
--- a/tta/perl/t/results/macro/macro_expansion_end_in_ignored_nested_different_conditional.pl
+++ b/tta/perl/t/results/macro/macro_expansion_end_in_ignored_nested_different_conditional.pl
@@ -9,8 +9,8 @@
  *before_node_section C2
   *@macro C5 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{beginnestedcond}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: beginnestedcond\\n}
    {raw:@ifset a\\n}
diff --git a/tta/perl/t/results/macro/macro_expansion_in_multitable_prototype.pl b/tta/perl/t/results/macro/macro_expansion_in_multitable_prototype.pl
index 4983d00..89891c8 100644
--- a/tta/perl/t/results/macro/macro_expansion_in_multitable_prototype.pl
+++ b/tta/perl/t/results/macro/macro_expansion_in_multitable_prototype.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{simple}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: simple\\n}
    {raw:ab\\n}
@@ -24,8 +24,8 @@
   {empty_line:\\n}
   *@macro C3 l5
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{endbrace}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: endbrace {arg}\\n}
    {raw:c\\arg\\d}\\n}
diff --git a/tta/perl/t/results/macro/macro_expansion_in_raw_line_leading_spaces.pl b/tta/perl/t/results/macro/macro_expansion_in_raw_line_leading_spaces.pl
index cd45c9a..baa74f7 100644
--- a/tta/perl/t/results/macro/macro_expansion_in_raw_line_leading_spaces.pl
+++ b/tta/perl/t/results/macro/macro_expansion_in_raw_line_leading_spaces.pl
@@ -9,8 +9,8 @@
  *before_node_section C7
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{a}
   |macro_name:{mymac}
-  |misc_args:A{a}
    *arguments_line C1
     {macro_line: mymac {a}\\n}
    {raw:@set \\n}
@@ -38,8 +38,8 @@
   {empty_line:\\n}
   *@macro C3 l7
   |EXTRA
+  |formal_args:A{}
   |macro_name:{mycontents}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: mycontents {} \\n}
    {raw:@contents\\n}
diff --git a/tta/perl/t/results/macro/macro_expansion_in_set_comment.pl b/tta/perl/t/results/macro/macro_expansion_in_set_comment.pl
index a93dbf5..7150fc9 100644
--- a/tta/perl/t/results/macro/macro_expansion_in_set_comment.pl
+++ b/tta/perl/t/results/macro/macro_expansion_in_set_comment.pl
@@ -9,8 +9,8 @@
  *before_node_section C4
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{a}
   |macro_name:{mymac}
-  |misc_args:A{a}
    *arguments_line C1
     {macro_line: mymac {a}\\n}
    {raw:@set flag \\a\\ @comment in  \\n}
diff --git a/tta/perl/t/results/macro/macro_expansion_in_set_comment_command.pl b/tta/perl/t/results/macro/macro_expansion_in_set_comment_command.pl
index 39e6811..3ca77b8 100644
--- a/tta/perl/t/results/macro/macro_expansion_in_set_comment_command.pl
+++ b/tta/perl/t/results/macro/macro_expansion_in_set_comment_command.pl
@@ -9,8 +9,8 @@
  *before_node_section C4
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{a}
   |macro_name:{mymac}
-  |misc_args:A{a}
    *arguments_line C1
     {macro_line: mymac {a}\\n}
    {raw:@set flag \\a\\ @com\\n}
diff --git a/tta/perl/t/results/macro/macro_expansion_in_set_comment_leading_spaces.pl b/tta/perl/t/results/macro/macro_expansion_in_set_comment_leading_spaces.pl
index 1e54bf2..b30965e 100644
--- a/tta/perl/t/results/macro/macro_expansion_in_set_comment_leading_spaces.pl
+++ b/tta/perl/t/results/macro/macro_expansion_in_set_comment_leading_spaces.pl
@@ -9,8 +9,8 @@
  *before_node_section C4
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{a}
   |macro_name:{mymac}
-  |misc_args:A{a}
    *arguments_line C1
     {macro_line: mymac {a}\\n}
    {raw:@set flag \\a\\ @comment \\n}
diff --git a/tta/perl/t/results/macro/macro_for_dot_in_menu_not_separator.pl b/tta/perl/t/results/macro/macro_for_dot_in_menu_not_separator.pl
index 0d6007e..d9b3106 100644
--- a/tta/perl/t/results/macro/macro_for_dot_in_menu_not_separator.pl
+++ b/tta/perl/t/results/macro/macro_for_dot_in_menu_not_separator.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{macrodot}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: macrodot\\n}
    {raw:.\\n}
diff --git a/tta/perl/t/results/macro/macro_for_end.pl b/tta/perl/t/results/macro/macro_for_end.pl
index deafb78..310e106 100644
--- a/tta/perl/t/results/macro/macro_for_end.pl
+++ b/tta/perl/t/results/macro/macro_for_end.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{myend}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: myend\\n}
    {raw:@end\\n}
diff --git a/tta/perl/t/results/macro/macro_for_ignored_line_command.pl b/tta/perl/t/results/macro/macro_for_ignored_line_command.pl
index b9cf330..1409686 100644
--- a/tta/perl/t/results/macro/macro_for_ignored_line_command.pl
+++ b/tta/perl/t/results/macro/macro_for_ignored_line_command.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{pagemacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: pagemacro\\n}
    {raw:@page\\n}
diff --git a/tta/perl/t/results/macro/macro_for_verb.pl b/tta/perl/t/results/macro/macro_for_verb.pl
index dc73fd7..8b3c0be 100644
--- a/tta/perl/t/results/macro/macro_for_verb.pl
+++ b/tta/perl/t/results/macro/macro_for_verb.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{verbopen}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: verbopen {}\\n}
    {raw:@verb{\\n}
diff --git a/tta/perl/t/results/macro/macro_imbricated_with_beginning_command_name.pl b/tta/perl/t/results/macro/macro_imbricated_with_beginning_command_name.pl
index e3858ed..0e7c4f1 100644
--- a/tta/perl/t/results/macro/macro_imbricated_with_beginning_command_name.pl
+++ b/tta/perl/t/results/macro/macro_imbricated_with_beginning_command_name.pl
@@ -9,8 +9,8 @@
  *before_node_section C2
   *@macro C5 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{foo}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: foo\\n}
    {raw:\\n}
diff --git a/tta/perl/t/results/macro/macro_in_accent.pl b/tta/perl/t/results/macro/macro_in_accent.pl
index b07d7d5..a7f37a4 100644
--- a/tta/perl/t/results/macro/macro_in_accent.pl
+++ b/tta/perl/t/results/macro/macro_in_accent.pl
@@ -9,8 +9,8 @@
  *before_node_section C7
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{aletter}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: aletter\\n}
    {raw:a\\n}
@@ -24,8 +24,8 @@
   {empty_line:\\n}
   *@macro C3 l5
   |EXTRA
+  |formal_args:A{}
   |macro_name:{aspace}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: aspace\\n}
    {raw:  \\n}
diff --git a/tta/perl/t/results/macro/macro_in_brace_command.pl b/tta/perl/t/results/macro/macro_in_brace_command.pl
index b05ac5d..3b0b764 100644
--- a/tta/perl/t/results/macro/macro_in_brace_command.pl
+++ b/tta/perl/t/results/macro/macro_in_brace_command.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{foo}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: foo\\n}
    {raw:foo-expansion\\n}
@@ -24,8 +24,8 @@
   {empty_line:\\n}
   *@macro C3 l5
   |EXTRA
+  |formal_args:A{}
   |macro_name:{abar}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: abar\\n}
    {raw:bar-expansion\\n}
diff --git a/tta/perl/t/results/macro/macro_in_def_delimiters.pl b/tta/perl/t/results/macro/macro_in_def_delimiters.pl
index 09da20e..f537187 100644
--- a/tta/perl/t/results/macro/macro_in_def_delimiters.pl
+++ b/tta/perl/t/results/macro/macro_in_def_delimiters.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{string}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: string\\n}
    {raw:aa(b *c)\\n}
diff --git a/tta/perl/t/results/macro/macro_in_empty_menu_comment.pl b/tta/perl/t/results/macro/macro_in_empty_menu_comment.pl
index a45ea6c..4b1119b 100644
--- a/tta/perl/t/results/macro/macro_in_empty_menu_comment.pl
+++ b/tta/perl/t/results/macro/macro_in_empty_menu_comment.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{emptystring}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: emptystring\\n}
    {raw:\\n}
diff --git a/tta/perl/t/results/macro/macro_in_empty_multitable_empty_before_item.pl b/tta/perl/t/results/macro/macro_in_empty_multitable_empty_before_item.pl
index b8f854e..9e4db50 100644
--- a/tta/perl/t/results/macro/macro_in_empty_multitable_empty_before_item.pl
+++ b/tta/perl/t/results/macro/macro_in_empty_multitable_empty_before_item.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C2 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{emptymacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: emptymacro\\n}
    *@end C1 l2
diff --git a/tta/perl/t/results/macro/macro_in_empty_table_empty_before_item.pl b/tta/perl/t/results/macro/macro_in_empty_table_empty_before_item.pl
index 9e2ce5b..3ce23ec 100644
--- a/tta/perl/t/results/macro/macro_in_empty_table_empty_before_item.pl
+++ b/tta/perl/t/results/macro/macro_in_empty_table_empty_before_item.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C2 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{emptymacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: emptymacro\\n}
    *@end C1 l2
diff --git a/tta/perl/t/results/macro/macro_in_empty_text.pl b/tta/perl/t/results/macro/macro_in_empty_text.pl
index f4829eb..2725334 100644
--- a/tta/perl/t/results/macro/macro_in_empty_text.pl
+++ b/tta/perl/t/results/macro/macro_in_empty_text.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{emptystring}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: emptystring\\n}
    {raw:\\n}
diff --git a/tta/perl/t/results/macro/macro_in_end_argument.pl b/tta/perl/t/results/macro/macro_in_end_argument.pl
index 2618e1b..6fd1fae 100644
--- a/tta/perl/t/results/macro/macro_in_end_argument.pl
+++ b/tta/perl/t/results/macro/macro_in_end_argument.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{acartouche}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: acartouche\\n}
    {raw:cartouche\\n}
diff --git a/tta/perl/t/results/macro/macro_in_ifset.pl b/tta/perl/t/results/macro/macro_in_ifset.pl
index 3250834..4781761 100644
--- a/tta/perl/t/results/macro/macro_in_ifset.pl
+++ b/tta/perl/t/results/macro/macro_in_ifset.pl
@@ -9,8 +9,8 @@
  *before_node_section C2
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{macroone}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: macroone {arg}\\n}
    {raw:@end ifset\\n}
diff --git a/tta/perl/t/results/macro/macro_in_ifset_end_in_arg.pl b/tta/perl/t/results/macro/macro_in_ifset_end_in_arg.pl
index 2e60472..0fbb6dd 100644
--- a/tta/perl/t/results/macro/macro_in_ifset_end_in_arg.pl
+++ b/tta/perl/t/results/macro/macro_in_ifset_end_in_arg.pl
@@ -9,8 +9,8 @@
  *before_node_section C4
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{macroone}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: macroone {arg}\\n}
    {raw:@end ifset\\n}
diff --git a/tta/perl/t/results/macro/macro_in_index_commands.pl b/tta/perl/t/results/macro/macro_in_index_commands.pl
index c477dcd..9289ada 100644
--- a/tta/perl/t/results/macro/macro_in_index_commands.pl
+++ b/tta/perl/t/results/macro/macro_in_index_commands.pl
@@ -9,8 +9,8 @@
  *before_node_section C19
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{cp}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: cp\\n}
    {raw:cp\\n}
@@ -23,8 +23,8 @@
      {spaces_after_argument:\\n}
   *@macro C3 l4
   |EXTRA
+  |formal_args:A{}
   |macro_name:{fn}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: fn \\n}
    {raw:fn\\n}
@@ -37,8 +37,8 @@
      {spaces_after_argument:\\n}
   *@macro C3 l7
   |EXTRA
+  |formal_args:A{}
   |macro_name:{syncodeindexcommand}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: syncodeindexcommand \\n}
    {raw:@syncodeindex\\n}
@@ -83,8 +83,8 @@
   {empty_line:\\n}
   *@macro C3 l14
   |EXTRA
+  |formal_args:A{}
   |macro_name:{truc}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: truc \\n}
    {raw:truc\\n}
@@ -115,8 +115,8 @@
   {empty_line:\\n}
   *@macro C3 l22
   |EXTRA
+  |formal_args:A{}
   |macro_name:{trucindexcommand}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: trucindexcommand \\n}
    {raw:@trucindex\\n}
@@ -130,8 +130,8 @@
   {empty_line:\\n}
   *@macro C3 l26
   |EXTRA
+  |formal_args:A{}
   |macro_name:{codeidx}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: codeidx \\n}
    {raw:codeidx\\n}
@@ -159,8 +159,8 @@
   {empty_line:\\n}
   *@macro C3 l32
   |EXTRA
+  |formal_args:A{}
   |macro_name:{defcodeindexentry}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: defcodeindexentry \\n}
    {raw:a @var{index entry} t@\'e @^{@dotless{i}}\\n}
diff --git a/tta/perl/t/results/macro/macro_in_invalid_documentencoding.pl b/tta/perl/t/results/macro/macro_in_invalid_documentencoding.pl
index 6de9ea7..b73f19a 100644
--- a/tta/perl/t/results/macro/macro_in_invalid_documentencoding.pl
+++ b/tta/perl/t/results/macro/macro_in_invalid_documentencoding.pl
@@ -9,8 +9,8 @@
  *before_node_section C2
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{badmacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: badmacro\\n}
    {raw:badm\\n}
diff --git a/tta/perl/t/results/macro/macro_in_macro_arg.pl b/tta/perl/t/results/macro/macro_in_macro_arg.pl
index 0de1799..e3fb156 100644
--- a/tta/perl/t/results/macro/macro_in_macro_arg.pl
+++ b/tta/perl/t/results/macro/macro_in_macro_arg.pl
@@ -10,8 +10,8 @@
   {empty_line:\\n}
   *@macro C3 l2
   |EXTRA
+  |formal_args:A{}
   |macro_name:{macroone}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: macroone\\n}
    {raw:a, @macrotwo\\n}
@@ -25,8 +25,8 @@
   {empty_line:\\n}
   *@macro C3 l6
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{macrotwo}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: macrotwo{arg}\\n}
    {raw:hello \\arg\\ after arg\\n}
@@ -40,8 +40,8 @@
   {empty_line:\\n}
   *@macro C4 l10
   |EXTRA
+  |formal_args:A{text|arg}
   |macro_name:{macrothree}
-  |misc_args:A{text|arg}
    *arguments_line C1
     {macro_line: macrothree{text, arg}\\n}
    {raw:\\text\\\\n}
diff --git a/tta/perl/t/results/macro/macro_in_macro_arg_simpler.pl b/tta/perl/t/results/macro/macro_in_macro_arg_simpler.pl
index 782d255..433acf6 100644
--- a/tta/perl/t/results/macro/macro_in_macro_arg_simpler.pl
+++ b/tta/perl/t/results/macro/macro_in_macro_arg_simpler.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{macrooneone}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: macrooneone\\n}
    {raw:a, macro2\\n}
@@ -24,8 +24,8 @@
   {empty_line:\\n}
   *@macro C4 l5
   |EXTRA
+  |formal_args:A{text|arg}
   |macro_name:{macrothree}
-  |misc_args:A{text|arg}
    *arguments_line C1
     {macro_line: macrothree{text, arg}\\n}
    {raw:\\text\\\\n}
diff --git a/tta/perl/t/results/macro/macro_in_menu.pl b/tta/perl/t/results/macro/macro_in_menu.pl
index 17a5fba..2fdcd98 100644
--- a/tta/perl/t/results/macro/macro_in_menu.pl
+++ b/tta/perl/t/results/macro/macro_in_menu.pl
@@ -10,8 +10,8 @@
   {empty_line:\\n}
   *@macro C3 l2
   |EXTRA
+  |formal_args:A{}
   |macro_name:{astar}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: astar\\n}
    {raw:*\\n}
@@ -25,8 +25,8 @@
   {empty_line:\\n}
   *@macro C3 l6
   |EXTRA
+  |formal_args:A{}
   |macro_name:{starspaces}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: starspaces\\n}
    {raw:* \\n}
@@ -40,8 +40,8 @@
   {empty_line:\\n}
   *@macro C3 l10
   |EXTRA
+  |formal_args:A{}
   |macro_name:{spaces}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: spaces\\n}
    {raw:  \\n}
@@ -55,8 +55,8 @@
   {empty_line:\\n}
   *@macro C3 l14
   |EXTRA
+  |formal_args:A{}
   |macro_name:{aspace}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: aspace\\n}
    {raw: \\n}
@@ -70,8 +70,8 @@
   {empty_line:\\n}
   *@macro C3 l18
   |EXTRA
+  |formal_args:A{}
   |macro_name:{twocolon}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: twocolon\\n}
    {raw:::\\n}
@@ -85,8 +85,8 @@
   {empty_line:\\n}
   *@macro C3 l22
   |EXTRA
+  |formal_args:A{}
   |macro_name:{acolon}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: acolon\\n}
    {raw::\\n}
diff --git a/tta/perl/t/results/macro/macro_in_menu_comment_closed_by_detailmenu.pl b/tta/perl/t/results/macro/macro_in_menu_comment_closed_by_detailmenu.pl
index 059815e..1664db9 100644
--- a/tta/perl/t/results/macro/macro_in_menu_comment_closed_by_detailmenu.pl
+++ b/tta/perl/t/results/macro/macro_in_menu_comment_closed_by_detailmenu.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{emptystring}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: emptystring\\n}
    {raw:\\n}
diff --git a/tta/perl/t/results/macro/macro_in_menu_comment_like_entry.pl b/tta/perl/t/results/macro/macro_in_menu_comment_like_entry.pl
index 012f2a6..26929bf 100644
--- a/tta/perl/t/results/macro/macro_in_menu_comment_like_entry.pl
+++ b/tta/perl/t/results/macro/macro_in_menu_comment_like_entry.pl
@@ -10,8 +10,8 @@
   {empty_line:\\n}
   *@macro C3 l2
   |EXTRA
+  |formal_args:A{}
   |macro_name:{emptystring}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: emptystring\\n}
    {raw:\\n}
diff --git a/tta/perl/t/results/macro/macro_in_menu_description.pl b/tta/perl/t/results/macro/macro_in_menu_description.pl
index 115c98e..c0ec017 100644
--- a/tta/perl/t/results/macro/macro_in_menu_description.pl
+++ b/tta/perl/t/results/macro/macro_in_menu_description.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{emptystring}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: emptystring\\n}
    {raw:\\n}
diff --git a/tta/perl/t/results/macro/macro_in_misc_commands.pl b/tta/perl/t/results/macro/macro_in_misc_commands.pl
index 7f2a52a..676ddba 100644
--- a/tta/perl/t/results/macro/macro_in_misc_commands.pl
+++ b/tta/perl/t/results/macro/macro_in_misc_commands.pl
@@ -9,8 +9,8 @@
  *before_node_section C4
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{text}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: text \\n}
    {raw:atext\\n}
@@ -24,8 +24,8 @@
   {empty_line:\\n}
   *@macro C3 l5
   |EXTRA
+  |formal_args:A{}
   |macro_name:{Top}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: Top\\n}
    {raw:Top\\n}
@@ -96,8 +96,8 @@
   {empty_line:\\n}
   *@macro C3 l16
   |EXTRA
+  |formal_args:A{}
   |macro_name:{en}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: en \\n}
    {raw:en\\n}
@@ -110,8 +110,8 @@
      {spaces_after_argument:\\n}
   *@macro C3 l19
   |EXTRA
+  |formal_args:A{}
   |macro_name:{documentlanguagecommand}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: documentlanguagecommand \\n}
    {raw:@documentlanguage\\n}
@@ -160,8 +160,8 @@
   {empty_line:\\n}
   *@macro C3 l29
   |EXTRA
+  |formal_args:A{}
   |macro_name:{pagesizesarg}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: pagesizesarg\\n}
    {raw:200mm,150mm\\n}
@@ -175,8 +175,8 @@
   {empty_line:\\n}
   *@macro C3 l33
   |EXTRA
+  |formal_args:A{}
   |macro_name:{afourpapermacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: afourpapermacro \\n}
    {raw:@afourpaper\\n}
@@ -243,8 +243,8 @@
   {empty_line:\\n}
   *@macro C3 l43
   |EXTRA
+  |formal_args:A{}
   |macro_name:{needarg}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: needarg\\n}
    {raw:0.1\\n}
@@ -272,8 +272,8 @@
   {empty_line:\\n}
   *@macro C3 l49
   |EXTRA
+  |formal_args:A{}
   |macro_name:{raisesectionsmacro}
-  |misc_args:A{}
   >SOURCEMARKS
   >macro_expansion<start;12>
    >*macro_call@raisesectionsmacro C1
@@ -295,8 +295,8 @@
     >macro_expansion<end;12>
   *@macro C3 l53
   |EXTRA
+  |formal_args:A{}
   |macro_name:{lowersectionsmacro}
-  |misc_args:A{}
   >SOURCEMARKS
   >macro_expansion<start;13>
    >*macro_call@lowersectionsmacro C1
@@ -339,8 +339,8 @@
   {empty_line:\\n}
   *@macro C3 l62
   |EXTRA
+  |formal_args:A{}
   |macro_name:{definfoenclosename}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: definfoenclosename \\n}
    {raw:phi\\n}
@@ -376,8 +376,8 @@
   {empty_line:\\n}
   *@macro C3 l69
   |EXTRA
+  |formal_args:A{}
   |macro_name:{strongmacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: strongmacro \\n}
    {raw:@strong\\n}
@@ -390,8 +390,8 @@
      {spaces_after_argument:\\n}
   *@macro C3 l72
   |EXTRA
+  |formal_args:A{}
   |macro_name:{strongname}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: strongname \\n}
    {raw:strong\\n}
@@ -462,8 +462,8 @@
   {empty_line:\\n}
   *@macro C3 l84
   |EXTRA
+  |formal_args:A{}
   |macro_name:{kbdinputstylearg}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: kbdinputstylearg \\n}
    {raw:code\\n}
@@ -518,8 +518,8 @@
   {empty_line:\\n}
   *@macro C3 l95
   |EXTRA
+  |formal_args:A{}
   |macro_name:{asisarg}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: asisarg \\n}
    {raw:asis\\n}
@@ -532,8 +532,8 @@
      {spaces_after_argument:\\n}
   *@macro C3 l98
   |EXTRA
+  |formal_args:A{}
   |macro_name:{zero}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: zero \\n}
    {raw:0\\n}
@@ -546,8 +546,8 @@
      {spaces_after_argument:\\n}
   *@macro C3 l101
   |EXTRA
+  |formal_args:A{}
   |macro_name:{nonearg}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: nonearg \\n}
    {raw:none\\n}
@@ -560,8 +560,8 @@
      {spaces_after_argument:\\n}
   *@macro C3 l104
   |EXTRA
+  |formal_args:A{}
   |macro_name:{four}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: four \\n}
    {raw:4\\n}
@@ -574,8 +574,8 @@
      {spaces_after_argument:\\n}
   *@macro C3 l107
   |EXTRA
+  |formal_args:A{}
   |macro_name:{six}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: six \\n}
    {raw:6\\n}
@@ -674,8 +674,8 @@
   {empty_line:\\n}
   *@macro C3 l118
   |EXTRA
+  |formal_args:A{}
   |macro_name:{endarg}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: endarg \\n}
    {raw:end\\n}
@@ -688,8 +688,8 @@
      {spaces_after_argument:\\n}
   *@macro C3 l121
   |EXTRA
+  |formal_args:A{}
   |macro_name:{separatearg}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: separatearg \\n}
    {raw:separate \\n}
@@ -729,8 +729,8 @@
   {empty_line:\\n}
   *@macro C3 l127
   |EXTRA
+  |formal_args:A{}
   |macro_name:{onarg}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: onarg \\n}
    {raw:on\\n}
@@ -743,8 +743,8 @@
      {spaces_after_argument:\\n}
   *@macro C3 l130
   |EXTRA
+  |formal_args:A{}
   |macro_name:{offarg}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: offarg \\n}
    {raw:off\\n}
@@ -791,8 +791,8 @@
     {spaces_after_argument:\\n}
   *@macro C3 l137
   |EXTRA
+  |formal_args:A{}
   |macro_name:{ten}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: ten \\n}
    {raw:10\\n}
@@ -823,8 +823,8 @@
     {spaces_after_argument:\\n}
   *@macro C3 l142
   |EXTRA
+  |formal_args:A{}
   |macro_name:{falsearg}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: falsearg \\n}
    {raw:false\\n}
@@ -837,8 +837,8 @@
      {spaces_after_argument:\\n}
   *@macro C3 l145
   |EXTRA
+  |formal_args:A{}
   |macro_name:{truearg}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: truearg\\n}
    {raw:true\\n}
@@ -881,8 +881,8 @@
   {empty_line:\\n}
   *@macro C3 l152
   |EXTRA
+  |formal_args:A{}
   |macro_name:{pagemacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: pagemacro \\n}
    {raw:@page\\n}
@@ -895,8 +895,8 @@
      {spaces_after_argument:\\n}
   *@macro C3 l155
   |EXTRA
+  |formal_args:A{}
   |macro_name:{noindentmacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: noindentmacro \\n}
    {raw:@noindent\\n}
@@ -909,8 +909,8 @@
      {spaces_after_argument:\\n}
   *@macro C3 l158
   |EXTRA
+  |formal_args:A{}
   |macro_name:{refillmacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: refillmacro \\n}
    {raw:@refill\\n}
@@ -1049,8 +1049,8 @@
   {empty_line:\\n}
   *@macro C3 l176
   |EXTRA
+  |formal_args:A{}
   |macro_name:{contentsmacro}
-  |misc_args:A{}
   >SOURCEMARKS
   >macro_expansion<start;44>
    >*macro_call@contentsmacro C1
@@ -1081,8 +1081,8 @@
   {empty_line:\\n}
   *@macro C3 l183
   |EXTRA
+  |formal_args:A{}
   |macro_name:{exdentmacro}
-  |misc_args:A{}
   >SOURCEMARKS
   >macro_expansion<start;45>
    >*macro_call@exdentmacro C1
@@ -1107,8 +1107,8 @@
   {empty_line:\\n}
   *@macro C3 l188
   |EXTRA
+  |formal_args:A{}
   |macro_name:{two}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: two \\n}
    {raw:2\\n}
@@ -1201,8 +1201,8 @@
   {empty_line:\\n}
   *@macro C3 l202
   |EXTRA
+  |formal_args:A{}
   |macro_name:{shortcontentsmacro}
-  |misc_args:A{}
   >SOURCEMARKS
   >macro_expansion<start;50>
    >*macro_call@shortcontentsmacro C1
@@ -1227,8 +1227,8 @@
   {empty_line:\\n}
   *@macro C3 l207
   |EXTRA
+  |formal_args:A{}
   |macro_name:{byemacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: byemacro\\n}
    {raw:@bye\\n}
diff --git a/tta/perl/t/results/macro/macro_in_multitable_empty_before_item.pl b/tta/perl/t/results/macro/macro_in_multitable_empty_before_item.pl
index e3a6e91..8130577 100644
--- a/tta/perl/t/results/macro/macro_in_multitable_empty_before_item.pl
+++ b/tta/perl/t/results/macro/macro_in_multitable_empty_before_item.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C2 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{emptymacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: emptymacro\\n}
    *@end C1 l2
diff --git a/tta/perl/t/results/macro/macro_in_table_empty_before_item.pl b/tta/perl/t/results/macro/macro_in_table_empty_before_item.pl
index 993fa62..e379dfa 100644
--- a/tta/perl/t/results/macro/macro_in_table_empty_before_item.pl
+++ b/tta/perl/t/results/macro/macro_in_table_empty_before_item.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C2 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{emptymacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: emptymacro\\n}
    *@end C1 l2
diff --git a/tta/perl/t/results/macro/macro_inlineifcond_end_in_empty_ignored.pl b/tta/perl/t/results/macro/macro_inlineifcond_end_in_empty_ignored.pl
index 8978eca..e8fa0d7 100644
--- a/tta/perl/t/results/macro/macro_inlineifcond_end_in_empty_ignored.pl
+++ b/tta/perl/t/results/macro/macro_inlineifcond_end_in_empty_ignored.pl
@@ -9,8 +9,8 @@
  *before_node_section C4
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{setargendignored}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: setargendignored\\n}
    {raw:ag,\\n}
diff --git a/tta/perl/t/results/macro/macro_inlineifcond_end_in_empty_set.pl b/tta/perl/t/results/macro/macro_inlineifcond_end_in_empty_set.pl
index 2151d6a..492330e 100644
--- a/tta/perl/t/results/macro/macro_inlineifcond_end_in_empty_set.pl
+++ b/tta/perl/t/results/macro/macro_inlineifcond_end_in_empty_set.pl
@@ -9,8 +9,8 @@
  *before_node_section C4
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{clearargendignored}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: clearargendignored\\n}
    {raw:ag,\\n}
diff --git a/tta/perl/t/results/macro/macro_name_with_digit.pl b/tta/perl/t/results/macro/macro_name_with_digit.pl
index 8d292c8..d7fd6e1 100644
--- a/tta/perl/t/results/macro/macro_name_with_digit.pl
+++ b/tta/perl/t/results/macro/macro_name_with_digit.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{macro1}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: macro1\\n}
    {raw:macro1\\n}
@@ -24,8 +24,8 @@
   {empty_line:\\n}
   *@macro C3 l5
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{macro11}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: macro11 {arg}\\n}
    {raw:expand \\arg\\\\n}
diff --git a/tta/perl/t/results/macro/macro_name_with_hyphen.pl b/tta/perl/t/results/macro/macro_name_with_hyphen.pl
index 2e0a1bf..583c997 100644
--- a/tta/perl/t/results/macro/macro_name_with_hyphen.pl
+++ b/tta/perl/t/results/macro/macro_name_with_hyphen.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg-one|arg2}
   |macro_name:{macro-one}
-  |misc_args:A{arg-one|arg2}
    *arguments_line C1
     {macro_line: macro-one {arg-one, arg2}\\n}
    {raw:This \\arg-one\\ and that \\arg2\\.\\n}
diff --git a/tta/perl/t/results/macro/macro_name_zero.pl b/tta/perl/t/results/macro/macro_name_zero.pl
index 12af414..a2c6660 100644
--- a/tta/perl/t/results/macro/macro_name_zero.pl
+++ b/tta/perl/t/results/macro/macro_name_zero.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{0}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: 0\\n}
    {raw:in macro\\n}
diff --git a/tta/perl/t/results/macro/macro_no_arg_bad_expansion.pl b/tta/perl/t/results/macro/macro_no_arg_bad_expansion.pl
index a20f18a..6434d0f 100644
--- a/tta/perl/t/results/macro/macro_no_arg_bad_expansion.pl
+++ b/tta/perl/t/results/macro/macro_no_arg_bad_expansion.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{testone}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: testone\\n}
    {raw:res1\\n}
diff --git a/tta/perl/t/results/macro/macro_no_arg_expansion.pl b/tta/perl/t/results/macro/macro_no_arg_expansion.pl
index 652ee1c..dd143cf 100644
--- a/tta/perl/t/results/macro/macro_no_arg_expansion.pl
+++ b/tta/perl/t/results/macro/macro_no_arg_expansion.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{testone}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: testone\\n}
    {raw:res1\\n}
diff --git a/tta/perl/t/results/macro/macro_not_closed.pl b/tta/perl/t/results/macro/macro_not_closed.pl
index d22feda..2250068 100644
--- a/tta/perl/t/results/macro/macro_not_closed.pl
+++ b/tta/perl/t/results/macro/macro_not_closed.pl
@@ -9,8 +9,8 @@
  *before_node_section C1
   *@macro C2 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{name}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: name\\n}
    {raw:in macro\\n}
diff --git a/tta/perl/t/results/macro/macro_one_arg_end_of_file.pl b/tta/perl/t/results/macro/macro_one_arg_end_of_file.pl
index caf580b..a0c9da9 100644
--- a/tta/perl/t/results/macro/macro_one_arg_end_of_file.pl
+++ b/tta/perl/t/results/macro/macro_one_arg_end_of_file.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{onearg}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: onearg{arg}\\n}
    {raw:Arg \\arg\\.\\n}
diff --git a/tta/perl/t/results/macro/macro_replaced_by_definfoenclose.pl b/tta/perl/t/results/macro/macro_replaced_by_definfoenclose.pl
index 68d9d0b..53b93c8 100644
--- a/tta/perl/t/results/macro/macro_replaced_by_definfoenclose.pl
+++ b/tta/perl/t/results/macro/macro_replaced_by_definfoenclose.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{phoo}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: phoo {arg}\\n}
    {raw:||\\arg\\||\\n}
diff --git a/tta/perl/t/results/macro/macro_with_error_at_end_line_after_macro.pl b/tta/perl/t/results/macro/macro_with_error_at_end_line_after_macro.pl
index 2da596e..cf052c4 100644
--- a/tta/perl/t/results/macro/macro_with_error_at_end_line_after_macro.pl
+++ b/tta/perl/t/results/macro/macro_with_error_at_end_line_after_macro.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{string}
   |macro_name:{witherror}
-  |misc_args:A{string}
    *arguments_line C1
     {macro_line: witherror{string}\\n}
    {raw:@center\\n}
diff --git a/tta/perl/t/results/macro/macro_zero.pl b/tta/perl/t/results/macro/macro_zero.pl
index 434beb9..4749f54 100644
--- a/tta/perl/t/results/macro/macro_zero.pl
+++ b/tta/perl/t/results/macro/macro_zero.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{zero}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: zero\\n}
    {raw:0\\n}
diff --git a/tta/perl/t/results/macro/nested_macro_call.pl b/tta/perl/t/results/macro/nested_macro_call.pl
index e1d808d..2de5c21 100644
--- a/tta/perl/t/results/macro/nested_macro_call.pl
+++ b/tta/perl/t/results/macro/nested_macro_call.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{machin}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: machin{}\\n}
    {raw:(machin)\\n}
@@ -24,8 +24,8 @@
   {empty_line:\\n}
   *@macro C4 l5
   |EXTRA
+  |formal_args:A{}
   |macro_name:{truc}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: truc{}\\n}
    {raw:@machin{}\\n}
diff --git a/tta/perl/t/results/macro/no_macrobody.pl b/tta/perl/t/results/macro/no_macrobody.pl
index ac70953..6068375 100644
--- a/tta/perl/t/results/macro/no_macrobody.pl
+++ b/tta/perl/t/results/macro/no_macrobody.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C2 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{nomacrobody}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: nomacrobody {arg}\\n}
    *@end C1 l2
diff --git a/tta/perl/t/results/macro/paragraph_and_macro.pl b/tta/perl/t/results/macro/paragraph_and_macro.pl
index 3f6db7a..129de6f 100644
--- a/tta/perl/t/results/macro/paragraph_and_macro.pl
+++ b/tta/perl/t/results/macro/paragraph_and_macro.pl
@@ -9,8 +9,8 @@
  *before_node_section C19
   *@macro C2 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{aempty}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: aempty\\n}
    *@end C1 l2
@@ -23,8 +23,8 @@
   {empty_line:\\n}
   *@macro C3 l4
   |EXTRA
+  |formal_args:A{}
   |macro_name:{aspace}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: aspace\\n}
    {raw:   \\n}
@@ -38,8 +38,8 @@
   {empty_line:\\n}
   *@macro C3 l8
   |EXTRA
+  |formal_args:A{}
   |macro_name:{word}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: word\\n}
    {raw:a word\\n}
diff --git a/tta/perl/t/results/macro/protect_comma_macro_line.pl b/tta/perl/t/results/macro/protect_comma_macro_line.pl
index f9e2178..36a2d54 100644
--- a/tta/perl/t/results/macro/protect_comma_macro_line.pl
+++ b/tta/perl/t/results/macro/protect_comma_macro_line.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C6 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{macrotwo}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: macrotwo { arg }\\n}
    {raw:we get \\arg\\ and another \\arg\\\\n}
diff --git a/tta/perl/t/results/macro/protect_in_body.pl b/tta/perl/t/results/macro/protect_in_body.pl
index 8cfddb8..5d4ef77 100644
--- a/tta/perl/t/results/macro/protect_in_body.pl
+++ b/tta/perl/t/results/macro/protect_in_body.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg1|arg2}
   |macro_name:{macroone}
-  |misc_args:A{arg1|arg2}
    *arguments_line C1
     {macro_line: macroone { arg1 , arg2 }\\n}
    {raw:result: @emph{\\arg1\\} protected \\\\ -> \\\\arg1\\\\ @emph{\\arg2\\}\\n}
diff --git a/tta/perl/t/results/macro/protect_in_body_line_arg.pl b/tta/perl/t/results/macro/protect_in_body_line_arg.pl
index 15c267f..43d9df5 100644
--- a/tta/perl/t/results/macro/protect_in_body_line_arg.pl
+++ b/tta/perl/t/results/macro/protect_in_body_line_arg.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg1|arg2}
   |macro_name:{macroone}
-  |misc_args:A{arg1|arg2}
    *arguments_line C1
     {macro_line: macroone { arg1 , arg2 }\\n}
    {raw:result: @emph{\\arg1\\} protected \\\\ -> \\\\arg1\\\\ @emph{\\arg2\\}\\n}
diff --git a/tta/perl/t/results/macro/protect_in_body_one_arg.pl b/tta/perl/t/results/macro/protect_in_body_one_arg.pl
index 7bbe68c..5726ecd 100644
--- a/tta/perl/t/results/macro/protect_in_body_one_arg.pl
+++ b/tta/perl/t/results/macro/protect_in_body_one_arg.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg1|arg2}
   |macro_name:{macroone}
-  |misc_args:A{arg1|arg2}
    *arguments_line C1
     {macro_line: macroone { arg1 , arg2 }\\n}
    {raw:result: @emph{\\arg1\\} protected \\\\ -> \\\\arg1\\\\ @emph{\\arg2\\}\\n}
diff --git a/tta/perl/t/results/macro/recursive_call_in_argument.pl b/tta/perl/t/results/macro/recursive_call_in_argument.pl
index 98e7d13..ef7d324 100644
--- a/tta/perl/t/results/macro/recursive_call_in_argument.pl
+++ b/tta/perl/t/results/macro/recursive_call_in_argument.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{anorecurse}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: anorecurse{arg}\\n}
    {raw:a\\n}
diff --git a/tta/perl/t/results/macro/recursive_call_in_macro.pl b/tta/perl/t/results/macro/recursive_call_in_macro.pl
index af1119a..5a9b27a 100644
--- a/tta/perl/t/results/macro/recursive_call_in_macro.pl
+++ b/tta/perl/t/results/macro/recursive_call_in_macro.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{anorecurse}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: anorecurse{arg}\\n}
    {raw:@anorecurse{arg}\\n}
diff --git a/tta/perl/t/results/macro/recursive_call_in_rmacro.pl b/tta/perl/t/results/macro/recursive_call_in_rmacro.pl
index 18e680f..774e82f 100644
--- a/tta/perl/t/results/macro/recursive_call_in_rmacro.pl
+++ b/tta/perl/t/results/macro/recursive_call_in_rmacro.pl
@@ -10,8 +10,8 @@
   {empty_line:\\n}
   *@rmacro C3 l2
   |EXTRA
+  |formal_args:A{}
   |macro_name:{rec}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: rec\\n}
    {raw:@rec{}\\n}
diff --git a/tta/perl/t/results/macro/redefine_texinfo_macro.pl b/tta/perl/t/results/macro/redefine_texinfo_macro.pl
index 5a90496..da34329 100644
--- a/tta/perl/t/results/macro/redefine_texinfo_macro.pl
+++ b/tta/perl/t/results/macro/redefine_texinfo_macro.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{code}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: code{arg}\\n}
    {raw:@emph{\\arg\\}\\n}
diff --git a/tta/perl/t/results/macro/simple_imbricated_macro.pl b/tta/perl/t/results/macro/simple_imbricated_macro.pl
index 24bd00c..faf6749 100644
--- a/tta/perl/t/results/macro/simple_imbricated_macro.pl
+++ b/tta/perl/t/results/macro/simple_imbricated_macro.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C6 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{truc}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: truc {}\\n}
    {raw:truc.\\n}
@@ -33,8 +33,8 @@
      >*brace_arg
    *@macro C3 l8:@truc
    |EXTRA
+   |formal_args:A{}
    |macro_name:{bidule}
-   |misc_args:A{}
     *arguments_line C1
      {macro_line: bidule {}\\n}
     {raw:bidule.\\n}
diff --git a/tta/perl/t/results/macro/simple_imbricated_macro_rmacro.pl b/tta/perl/t/results/macro/simple_imbricated_macro_rmacro.pl
index c13fda0..cddb622 100644
--- a/tta/perl/t/results/macro/simple_imbricated_macro_rmacro.pl
+++ b/tta/perl/t/results/macro/simple_imbricated_macro_rmacro.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C6 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{truc}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: truc {}\\n}
    {raw:truc.\\n}
@@ -33,8 +33,8 @@
      >*brace_arg
    *@rmacro C3 l8:@truc
    |EXTRA
+   |formal_args:A{}
    |macro_name:{bidule}
-   |misc_args:A{}
     *arguments_line C1
      {macro_line: bidule {}\\n}
     {raw:bidule.\\n}
diff --git a/tta/perl/t/results/macro/space_macro_after_end.pl b/tta/perl/t/results/macro/space_macro_after_end.pl
index 51c5c5f..b137886 100644
--- a/tta/perl/t/results/macro/space_macro_after_end.pl
+++ b/tta/perl/t/results/macro/space_macro_after_end.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{spaces}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: spaces\\n}
    {raw:  \\n}
diff --git a/tta/perl/t/results/macro/space_macro_after_end_verbatim.pl b/tta/perl/t/results/macro/space_macro_after_end_verbatim.pl
index 9e592ec..7ffd425 100644
--- a/tta/perl/t/results/macro/space_macro_after_end_verbatim.pl
+++ b/tta/perl/t/results/macro/space_macro_after_end_verbatim.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{spaces}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: spaces\\n}
    {raw:\\n}
diff --git a/tta/perl/t/results/macro/text_before_after.pl b/tta/perl/t/results/macro/text_before_after.pl
index 68030ca..82ec65d 100644
--- a/tta/perl/t/results/macro/text_before_after.pl
+++ b/tta/perl/t/results/macro/text_before_after.pl
@@ -11,8 +11,8 @@
    {before }
    *@macro C3 l1
    |EXTRA
+   |formal_args:A{}
    |macro_name:{mymacro}
-   |misc_args:A{}
     *arguments_line C1
      {macro_line: mymacro\\n}
     {raw:in macro\\n}
diff --git a/tta/perl/t/results/macro/too_much_args.pl b/tta/perl/t/results/macro/too_much_args.pl
index 6fdb7fe..5f43b66 100644
--- a/tta/perl/t/results/macro/too_much_args.pl
+++ b/tta/perl/t/results/macro/too_much_args.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C4 l1
   |EXTRA
+  |formal_args:A{first|second}
   |macro_name:{twoargs}
-  |misc_args:A{first|second}
    *arguments_line C1
     {macro_line: twoargs {first, second}\\n}
    {raw:first arg: \\first\\\\n}
diff --git a/tta/perl/t/results/macro/two_macros_on_a_line.pl b/tta/perl/t/results/macro/two_macros_on_a_line.pl
index 66a6cba..70432ee 100644
--- a/tta/perl/t/results/macro/two_macros_on_a_line.pl
+++ b/tta/perl/t/results/macro/two_macros_on_a_line.pl
@@ -9,8 +9,8 @@
  *before_node_section C14
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{mymacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: mymacro\\n}
    {raw:in mymacro\\n}
@@ -24,8 +24,8 @@
   {empty_line:\\n}
   *@macro C5 l5
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{mymacrowithargs}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: mymacrowithargs{arg}\\n}
    {raw:in with args\\n}
diff --git a/tta/perl/t/results/macro/unpaired_backslash_in_macro_body.pl b/tta/perl/t/results/macro/unpaired_backslash_in_macro_body.pl
index 12a347e..d613c78 100644
--- a/tta/perl/t/results/macro/unpaired_backslash_in_macro_body.pl
+++ b/tta/perl/t/results/macro/unpaired_backslash_in_macro_body.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C4 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{mymacro}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: mymacro {arg}\\n}
    {raw:In macro \\not arg\\n}
diff --git a/tta/perl/t/results/macro/verb_with_arobase_in_macro_call.pl b/tta/perl/t/results/macro/verb_with_arobase_in_macro_call.pl
index 09f5062..baf4ff7 100644
--- a/tta/perl/t/results/macro/verb_with_arobase_in_macro_call.pl
+++ b/tta/perl/t/results/macro/verb_with_arobase_in_macro_call.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C4 l1
   |EXTRA
+  |formal_args:A{a|b}
   |macro_name:{showarg}
-  |misc_args:A{a|b}
    *arguments_line C1
     {macro_line: showarg {a, b}\\n}
    {raw:first: \\a\\\\n}
diff --git a/tta/perl/t/results/macro/verb_with_brace_in_macro_call.pl b/tta/perl/t/results/macro/verb_with_brace_in_macro_call.pl
index b7c9c0d..e2a2372 100644
--- a/tta/perl/t/results/macro/verb_with_brace_in_macro_call.pl
+++ b/tta/perl/t/results/macro/verb_with_brace_in_macro_call.pl
@@ -10,8 +10,8 @@
   {empty_line:\\n}
   *@macro C3 l2
   |EXTRA
+  |formal_args:A{a|b|c}
   |macro_name:{mycommand}
-  |misc_args:A{a|b|c}
    *arguments_line C1
     {macro_line: mycommand {a, b, c}\\n}
    {raw:\\a\\|\\b\\|\\c\\\\n}
diff --git a/tta/perl/t/results/macro/zero_argument.pl b/tta/perl/t/results/macro/zero_argument.pl
index 9fa73f5..92ef64e 100644
--- a/tta/perl/t/results/macro/zero_argument.pl
+++ b/tta/perl/t/results/macro/zero_argument.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{foo}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: foo {}\\n}
    {raw:in foo\\n}
@@ -24,8 +24,8 @@
   {empty_line:\\n}
   *@macro C3 l5
   |EXTRA
+  |formal_args:A{}
   |macro_name:{abar}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: abar\\n}
    {raw:in bar\\n}
diff --git a/tta/perl/t/results/macro/zero_argument_comment.pl b/tta/perl/t/results/macro/zero_argument_comment.pl
index bcda202..758e551 100644
--- a/tta/perl/t/results/macro/zero_argument_comment.pl
+++ b/tta/perl/t/results/macro/zero_argument_comment.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{foo}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: foo {}@c foo c\\n}
    {raw:in foo\\n}
@@ -24,8 +24,8 @@
   {empty_line:\\n}
   *@macro C3 l5
   |EXTRA
+  |formal_args:A{}
   |macro_name:{abar}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: abar@comment bar comment\\n}
    {raw:in bar\\n}
diff --git a/tta/perl/t/results/misc_commands/codequoteundirected_codequotebacktick.pl b/tta/perl/t/results/misc_commands/codequoteundirected_codequotebacktick.pl
index c97eef8..3e14c9c 100644
--- a/tta/perl/t/results/misc_commands/codequoteundirected_codequotebacktick.pl
+++ b/tta/perl/t/results/misc_commands/codequoteundirected_codequotebacktick.pl
@@ -10,8 +10,8 @@
   *preamble_before_content C8
    *@macro C8 l1
    |EXTRA
+   |formal_args:A{}
    |macro_name:{quotes}
-   |misc_args:A{}
     *arguments_line C1
      {macro_line: quotes\\n}
     {raw:``simple-double--three---four----\'\' `simple\' quotedblleft: @quotedblleft{} @*\\n}
@@ -30,8 +30,8 @@
    {empty_line:\\n}
    *@macro C19 l10
    |EXTRA
+   |formal_args:A{}
    |macro_name:{allquotes}
-   |misc_args:A{}
     *arguments_line C1
      {macro_line: allquotes\\n}
     {raw:@quotes{}\\n}
diff --git a/tta/perl/t/results/misc_commands/kbdinputstyle.pl b/tta/perl/t/results/misc_commands/kbdinputstyle.pl
index bb7c5c9..4ec6270 100644
--- a/tta/perl/t/results/misc_commands/kbdinputstyle.pl
+++ b/tta/perl/t/results/misc_commands/kbdinputstyle.pl
@@ -9,8 +9,8 @@
  *before_node_section C28
   *@macro C14 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{codekbdmacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: codekbdmacro\\n}
    {raw:@code{in code out of example @code{in nested code}}.\\n}
diff --git a/tta/perl/t/results/misc_commands/kbdinputstyle_in_table.pl b/tta/perl/t/results/misc_commands/kbdinputstyle_in_table.pl
index c514902..bc0f30f 100644
--- a/tta/perl/t/results/misc_commands/kbdinputstyle_in_table.pl
+++ b/tta/perl/t/results/misc_commands/kbdinputstyle_in_table.pl
@@ -9,8 +9,8 @@
  *before_node_section C34
   *@macro C19 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{codekbdmacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: codekbdmacro\\n}
    {raw:@table @kbd\\n}
diff --git a/tta/perl/t/results/misc_commands/test_allowcodebreaks.pl b/tta/perl/t/results/misc_commands/test_allowcodebreaks.pl
index 7bc7736..9c76e07 100644
--- a/tta/perl/t/results/misc_commands/test_allowcodebreaks.pl
+++ b/tta/perl/t/results/misc_commands/test_allowcodebreaks.pl
@@ -31,8 +31,8 @@
   {empty_line:\\n}
   *@macro C8 l4
   |EXTRA
+  |formal_args:A{nr}
   |macro_name:{testallowcodebreakspara}
-  |misc_args:A{nr}
    *arguments_line C1
     {macro_line: testallowcodebreakspara {nr}\\n}
    {raw:Out of code --- out-of-code.\\n}
@@ -51,8 +51,8 @@
   {empty_line:\\n}
   *@macro C6 l13
   |EXTRA
+  |formal_args:A{}
   |macro_name:{testallowcodebreaksexample}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: testallowcodebreaksexample{}\\n}
    {raw:\\n}
diff --git a/tta/perl/t/results/paragraph/indent_before_macro_definition_and_other.pl b/tta/perl/t/results/paragraph/indent_before_macro_definition_and_other.pl
index 98b4511..5142338 100644
--- a/tta/perl/t/results/paragraph/indent_before_macro_definition_and_other.pl
+++ b/tta/perl/t/results/paragraph/indent_before_macro_definition_and_other.pl
@@ -78,8 +78,8 @@
     {spaces_after_argument:\\n}
   *@macro C3 l15
   |EXTRA
+  |formal_args:A{g}
   |macro_name:{aaa}
-  |misc_args:A{g}
    *arguments_line C1
     {macro_line: aaa {g}\\n}
    {raw:ll /g/\\n}
diff --git a/tta/perl/t/results/plaintext_tests/star_at_command_formatting.pl b/tta/perl/t/results/plaintext_tests/star_at_command_formatting.pl
index e59e054..acc0098 100644
--- a/tta/perl/t/results/plaintext_tests/star_at_command_formatting.pl
+++ b/tta/perl/t/results/plaintext_tests/star_at_command_formatting.pl
@@ -9,8 +9,8 @@
  *before_node_section C10
   *@macro C14 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{mymacro}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: mymacro\\n}
    {raw:Some text @*\\n}
diff --git a/tta/perl/t/results/raw/nested_macros.pl b/tta/perl/t/results/raw/nested_macros.pl
index 0bebce9..eeb964d 100644
--- a/tta/perl/t/results/raw/nested_macros.pl
+++ b/tta/perl/t/results/raw/nested_macros.pl
@@ -9,8 +9,8 @@
  *before_node_section C1
   *@macro C8 l1
   |EXTRA
+  |formal_args:A{arg|ex}
   |macro_name:{truc}
-  |misc_args:A{arg|ex}
    *arguments_line C1
     {macro_line: truc   { arg,  ex}\\n}
    {raw:in macro \\arg\\\\n}
diff --git a/tta/perl/t/results/transformations/protect_colon_source_mark.pl b/tta/perl/t/results/transformations/protect_colon_source_mark.pl
index f033142..c399786 100644
--- a/tta/perl/t/results/transformations/protect_colon_source_mark.pl
+++ b/tta/perl/t/results/transformations/protect_colon_source_mark.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{klm}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: klm {arg}\\n}
    {raw:some text : \\arg\\ then more\\n}
diff --git a/tta/perl/t/results/transformations/protect_comma_source_mark.pl b/tta/perl/t/results/transformations/protect_comma_source_mark.pl
index 9cf52b5..4cd218a 100644
--- a/tta/perl/t/results/transformations/protect_comma_source_mark.pl
+++ b/tta/perl/t/results/transformations/protect_comma_source_mark.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{vvv}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: vvv {}\\n}
    {raw:some text ,,\\n}
diff --git a/tta/perl/t/results/transformations/protect_first_parenthesis_after_parenthesis_source_mark.pl b/tta/perl/t/results/transformations/protect_first_parenthesis_after_parenthesis_source_mark.pl
index 5734dc7..6eb5fce 100644
--- a/tta/perl/t/results/transformations/protect_first_parenthesis_after_parenthesis_source_mark.pl
+++ b/tta/perl/t/results/transformations/protect_first_parenthesis_after_parenthesis_source_mark.pl
@@ -9,8 +9,8 @@
  *before_node_section C4
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{vvv}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: vvv {}\\n}
    {raw:(\\n}
diff --git a/tta/perl/t/results/transformations/protect_first_parenthesis_source_mark.pl b/tta/perl/t/results/transformations/protect_first_parenthesis_source_mark.pl
index 576f031..e0eb103 100644
--- a/tta/perl/t/results/transformations/protect_first_parenthesis_source_mark.pl
+++ b/tta/perl/t/results/transformations/protect_first_parenthesis_source_mark.pl
@@ -9,8 +9,8 @@
  *before_node_section C4
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{vvv}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: vvv {}\\n}
    {raw:(some text) aa,,\\n}
diff --git a/tta/perl/t/results/transformations/protect_hashchar_at_line_beginning_source_mark.pl b/tta/perl/t/results/transformations/protect_hashchar_at_line_beginning_source_mark.pl
index 1933dd5..2b1b6d4 100644
--- a/tta/perl/t/results/transformations/protect_hashchar_at_line_beginning_source_mark.pl
+++ b/tta/perl/t/results/transformations/protect_hashchar_at_line_beginning_source_mark.pl
@@ -12,8 +12,8 @@
   *preamble_before_content C2
    *@macro C3 cpp_directives_line_value_macro.texi:l2
    |EXTRA
+   |formal_args:A{}
    |macro_name:{vvv}
-   |misc_args:A{}
     *arguments_line C1
      {macro_line: vvv {}\\n}
     {raw:#line 30 "toto"\\n}
@@ -39,8 +39,8 @@
   {empty_line:\\n}
   *@macro C3 cpp_directives_line_value_macro.texi:l8
   |EXTRA
+  |formal_args:A{}
   |macro_name:{machash}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: machash {}\\n}
    {raw:#\\n}
@@ -66,8 +66,8 @@
   {empty_line:\\n}
   *@macro C3 cpp_directives_line_value_macro.texi:l14
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{numberfileflag}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: numberfileflag {arg}\\n}
    {raw:\\arg\\ "titi" 3\\arg\\\\n}
diff --git a/tta/perl/t/results/transformations/protect_node_after_label_source_mark_in_protected.pl b/tta/perl/t/results/transformations/protect_node_after_label_source_mark_in_protected.pl
index f3a4585..969a106 100644
--- a/tta/perl/t/results/transformations/protect_node_after_label_source_mark_in_protected.pl
+++ b/tta/perl/t/results/transformations/protect_node_after_label_source_mark_in_protected.pl
@@ -9,8 +9,8 @@
  *before_node_section C5
   *@macro C3 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{vvv}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: vvv {}\\n}
    {raw:some text .,\\n}
diff --git a/tta/perl/t/results/value_and_macro/comma_value_in_macro_arg.pl b/tta/perl/t/results/value_and_macro/comma_value_in_macro_arg.pl
index 0c5f235..371a749 100644
--- a/tta/perl/t/results/value_and_macro/comma_value_in_macro_arg.pl
+++ b/tta/perl/t/results/value_and_macro/comma_value_in_macro_arg.pl
@@ -17,8 +17,8 @@
   {empty_line:\\n}
   *@macro C3 l3
   |EXTRA
+  |formal_args:A{arg1|arg2}
   |macro_name:{macro1}
-  |misc_args:A{arg1|arg2}
    *arguments_line C1
     {macro_line: macro1 { arg1 , arg2 }\\n}
    {raw:result: @emph{\\arg1\\} protected \\\\ -> \\\\arg1\\\\ @emph{\\arg2\\}\\n}
diff --git a/tta/perl/t/results/value_and_macro/macro_in_value.pl b/tta/perl/t/results/value_and_macro/macro_in_value.pl
index e1448ae..4f1a442 100644
--- a/tta/perl/t/results/value_and_macro/macro_in_value.pl
+++ b/tta/perl/t/results/value_and_macro/macro_in_value.pl
@@ -9,8 +9,8 @@
  *before_node_section C7
   *@macro C5 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{ab}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: ab\\n}
    {raw:a\\n}
diff --git a/tta/perl/t/results/value_and_macro/value_in_macro_body.pl b/tta/perl/t/results/value_and_macro/value_in_macro_body.pl
index 6ce29e6..ea7da1e 100644
--- a/tta/perl/t/results/value_and_macro/value_in_macro_body.pl
+++ b/tta/perl/t/results/value_and_macro/value_in_macro_body.pl
@@ -17,8 +17,8 @@
   {empty_line:\\n}
   *@macro C3 l3
   |EXTRA
+  |formal_args:A{arg}
   |macro_name:{testvaluebody}
-  |misc_args:A{arg}
    *arguments_line C1
     {macro_line: testvaluebody { arg }\\n}
    {raw:result: @emph{\\@value{bodyarg}\\  }\\n}
diff --git a/tta/perl/t/results/value_and_macro/value_in_macro_formal_arg.pl b/tta/perl/t/results/value_and_macro/value_in_macro_formal_arg.pl
index 9fdd6a8..fcfefd3 100644
--- a/tta/perl/t/results/value_and_macro/value_in_macro_formal_arg.pl
+++ b/tta/perl/t/results/value_and_macro/value_in_macro_formal_arg.pl
@@ -17,9 +17,9 @@
   {empty_line:\\n}
   *@macro C3 l3
   |EXTRA
+  |formal_args:A{arg|the@value{argument}
   |invalid_syntax:{1}
   |macro_name:{testvalue}
-  |misc_args:A{arg|the@value{argument}
    *arguments_line C1
     {macro_line: testvalue { arg , the@value{argument} }\\n}
    {raw:result: @emph{\\arg\\} the \\the\\ thearg \\thearg\\ with value \\the@value{argument}\\\\n}
diff --git a/tta/perl/t/results/xml_tests/macro_and_args.pl b/tta/perl/t/results/xml_tests/macro_and_args.pl
index 690cc39..c93b2c2 100644
--- a/tta/perl/t/results/xml_tests/macro_and_args.pl
+++ b/tta/perl/t/results/xml_tests/macro_and_args.pl
@@ -9,8 +9,8 @@
  *before_node_section C3
   *@macro C2 l1
   |EXTRA
+  |formal_args:A{aaa|2b-bb}
   |macro_name:{good}
-  |misc_args:A{aaa|2b-bb}
    *arguments_line C1
     {macro_line: good { aaa, 2b-bb}\\n}
    *@end C1 l2
@@ -23,9 +23,9 @@
   {empty_line:\\n}
   *@macro C2 l4
   |EXTRA
+  |formal_args:A{ggg"@@^_ ff|nnn_b|ccc v}
   |invalid_syntax:{1}
   |macro_name:{bad}
-  |misc_args:A{ggg"@@^_ ff|nnn_b|ccc v}
    *arguments_line C1
     {macro_line: bad { ggg"@@^_ ff, nnn_b, ccc v}\\n}
    *@end C1 l5
diff --git a/tta/perl/t/results/xtable/table_nested.pl b/tta/perl/t/results/xtable/table_nested.pl
index 3a6be4b..9b062e9 100644
--- a/tta/perl/t/results/xtable/table_nested.pl
+++ b/tta/perl/t/results/xtable/table_nested.pl
@@ -9,8 +9,8 @@
  *before_node_section C10
   *@macro C23 l1
   |EXTRA
+  |formal_args:A{}
   |macro_name:{myvtable}
-  |misc_args:A{}
    *arguments_line C1
     {macro_line: myvtable\\n}
    {raw:@vtable @asis\\n}
diff --git a/tta/swig/texinfo.i b/tta/swig/texinfo.i
index 24772d3..4cddce5 100644
--- a/tta/swig/texinfo.i
+++ b/tta/swig/texinfo.i
@@ -527,6 +527,8 @@
 %rename(element_misc_args) txi_ext_element_misc_args;
 const STRING_LIST *txi_ext_element_misc_args (ELEMENT *element);
 
+%rename(element_formal_args) txi_ext_element_formal_args;
+const STRING_LIST *txi_ext_element_formal_args (ELEMENT *element);
 
 // New element and element modification