49 param_list->
accept (*
this);
63 while (p != lst.
end ())
89 os <<
" " << expr.
oper () <<
" ";
158 init_list->
accept (*
this);
196 while (p != lst.
end ())
359 int len = ret_list->
length ();
361 if (len > 1 || takes_var_return)
369 if (takes_var_return)
377 if (len > 1 || takes_var_return)
386 std::string fcn_name = fcn.
name ();
388 os << (fcn_name.empty () ? std::string (
"(empty)") : fcn_name) <<
" ";
396 int len = param_list->length ();
398 if (len > 0 || takes_varargs)
404 param_list->accept (*
this);
414 if (len > 0 || takes_varargs)
456 std::string nm =
id.name ();
457 os << (nm.empty () ? std::string (
"(empty)") : nm);
510 bool first_elt =
true;
512 while (p != lst.
end ())
549 std::list<tree_argument_list *> arg_lists = expr.
arg_lists ();
550 std::string type_tags = expr.
type_tags ();
551 std::list<string_vector> arg_names = expr.
arg_names ();
553 int n = type_tags.length ();
555 std::list<tree_argument_list *>::iterator p_arg_lists = arg_lists.begin ();
556 std::list<string_vector>::iterator p_arg_names = arg_names.begin ();
558 for (
int i = 0; i < n; i++)
560 switch (type_tags[i])
565 if ((nc ==
'[' || nc ==
'{') && expr.
paren_count () == 0)
583 if ((nc ==
'[' || nc ==
'{') && expr.
paren_count () == 0)
603 assert (nm.
length () == 1);
631 while (p != lst.
end ())
662 while (p != lst.
end ())
709 os <<
" " << expr.
oper () <<
" ";
756 while (p != lst.
end ())
817 while (p != lst.
end ())
843 os <<
" " << expr.
oper () <<
" ";
941 while (p != lst.
end ())
1002 try_code->
accept (*
this);
1027 catch_code->
accept (*
this);
1036 os <<
"end_try_catch";
1046 os <<
"unwind_protect";
1052 if (unwind_protect_code)
1056 unwind_protect_code->
accept (*
this);
1065 os <<
"unwind_protect_cleanup";
1075 cleanup_code->
accept (*
this);
1084 os <<
"end_unwind_protect";
1162 assert (b->
length () == 1);
1168 if (s->is_expression ())
1243 for (
int i = 0; i < n; i++)
1250 bool printed_something =
false;
1252 bool prev_char_was_newline =
false;
1254 std::string comment = elt.
text ();
1256 size_t len = comment.length ();
1260 while (i < len && comment[i++] ==
'\n')
1266 char c = comment[i++];
1270 if (prev_char_was_newline)
1275 prev_char_was_newline =
true;
1281 printed_something =
true;
1287 if (! (isspace (c) || c ==
'!'))
1291 os << static_cast<char> (c);
1293 prev_char_was_newline =
false;
1308 while (p != comment_list->
end ())
1314 if (p != comment_list->
end ())