Home | History | Annotate | Download | only in cp

Lines Matching refs:pp

46 pp_cxx_nonconsecutive_character (cxx_pretty_printer *pp, int c)
48 const char *p = pp_last_position_in_text (pp);
51 pp_cxx_whitespace (pp);
52 pp_character (pp, c);
53 pp->padding = pp_none;
56 #define pp_cxx_expression_list(PP, T) \
57 pp_c_expression_list (PP, T)
58 #define pp_cxx_space_for_pointer_operator(PP, T) \
59 pp_c_space_for_pointer_operator (PP, T)
60 #define pp_cxx_init_declarator(PP, T) \
61 pp_c_init_declarator (PP, T)
62 #define pp_cxx_call_argument_list(PP, T) \
63 pp_c_call_argument_list (PP, T)
66 pp_cxx_colon_colon (cxx_pretty_printer *pp)
68 pp_colon_colon (pp);
69 pp->padding = pp_none;
73 pp_cxx_begin_template_argument_list (cxx_pretty_printer *pp)
75 pp_cxx_nonconsecutive_character (pp, '<');
79 pp_cxx_end_template_argument_list (cxx_pretty_printer *pp)
81 pp_cxx_nonconsecutive_character (pp, '>');
85 pp_cxx_separate_with (cxx_pretty_printer *pp, int c)
87 pp_separate_with (pp, c);
88 pp->padding = pp_none;
103 pp_cxx_conversion_function_id (cxx_pretty_printer *pp, tree t)
105 pp_cxx_ws_string (pp, "operator");
106 pp_cxx_type_specifier_seq (pp, TREE_TYPE (t));
110 pp_cxx_template_id (cxx_pretty_printer *pp, tree t)
112 pp_cxx_unqualified_id (pp, TREE_OPERAND (t, 0));
113 pp_cxx_begin_template_argument_list (pp);
114 pp_cxx_template_argument_list (pp, TREE_OPERAND (t, 1));
115 pp_cxx_end_template_argument_list (pp);
128 pp_cxx_unqualified_id (cxx_pretty_printer *pp, tree t)
134 pp->translate_string ("<return-value>");
155 pp->translate_string ("<unnamed>");
157 pp_cxx_conversion_function_id (pp, t);
159 pp_cxx_tree_identifier (pp, t);
163 pp_cxx_template_id (pp, t);
167 pp_cxx_unqualified_id (pp, BASELINK_FUNCTIONS (t));
175 pp_cxx_unqualified_id (pp, TYPE_NAME (t));
179 pp_cxx_begin_template_argument_list (pp);
181 pp_cxx_template_argument_list (pp, args);
182 pp_cxx_end_template_argument_list (pp);
187 pp_cxx_complement (pp);
188 pp_cxx_unqualified_id (pp, TREE_OPERAND (t, 0));
196 pp_cxx_unqualified_id (pp, TYPE_IDENTIFIER (t));
197 pp_string (pp, "<...auto...>");
200 pp_cxx_unqualified_id (pp, TYPE_IDENTIFIER (t));
202 pp_cxx_canonical_template_parameter (pp, t);
206 pp_cxx_unqualified_id (pp, TEMPLATE_PARM_DECL (t));
210 pp_cxx_cv_qualifier_seq (pp, t);
211 pp_cxx_unqualified_id (pp, TYPE_IDENTIFIER (t));
212 pp_cxx_begin_template_argument_list (pp);
213 pp_cxx_template_argument_list (pp, TYPE_TI_ARGS (t));
214 pp_cxx_end_template_argument_list (pp);
218 pp_unsupported_tree (pp, t);
229 pp_cxx_template_keyword_if_needed (cxx_pretty_printer *pp, tree scope, tree t)
233 pp_cxx_ws_string (pp, "template");
241 pp_cxx_nested_name_specifier (cxx_pretty_printer *pp, tree t)
245 to the fact that pp->enclosing_namespace is null. */
248 pp_cxx_colon_colon (pp);
250 else if (!SCOPE_FILE_SCOPE_P (t) && t != pp->enclosing_scope)
253 pp_cxx_nested_name_specifier (pp, scope);
254 pp_cxx_template_keyword_if_needed (pp, scope, t);
255 pp_cxx_unqualified_id (pp, t);
256 pp_cxx_colon_colon (pp);
264 pp_cxx_qualified_id (cxx_pretty_printer *pp, tree t)
270 pp_cxx_nested_name_specifier (pp, PTRMEM_CST_CLASS (t));
271 pp_cxx_unqualified_id (pp, PTRMEM_CST_MEMBER (t));
287 pp_cxx_nested_name_specifier (pp, DECL_CONTEXT (t));
289 (pp, DECL_CONSTRUCTOR_P (t) ? DECL_CONTEXT (t) : t);
290 pp_cxx_parameter_declaration_clause (pp, TREE_TYPE (t));
295 pp_cxx_nested_name_specifier (pp, TREE_OPERAND (t, 0));
296 pp_cxx_unqualified_id (pp, TREE_OPERAND (t, 1));
302 if (scope != pp->enclosing_scope)
304 pp_cxx_nested_name_specifier (pp, scope);
305 pp_cxx_template_keyword_if_needed (pp, scope, t);
307 pp_cxx_unqualified_id (pp, t);
319 pp_cxx_enumeration_constant (cxx_pretty_printer *pp, tree e)
325 if ((pp->flags & pp_c_flag_gnu_v3) == 0)
335 pp_cxx_nested_name_specifier (pp, type);
336 pp->id_expression (TREE_PURPOSE (value));
341 pp_c_type_cast (pp, type);
342 pp_c_integer_constant (pp, e);
401 pp_cxx_userdef_literal (cxx_pretty_printer *pp, tree t)
403 pp->constant (USERDEF_LITERAL_VALUE (t));
404 pp->id_expression (USERDEF_LITERAL_SUFFIX_ID (t));
723 pp_cxx_new_expression (cxx_pretty_printer *pp, tree t)
733 pp_cxx_colon_colon (pp);
734 pp_cxx_ws_string (pp, "new");
737 pp_cxx_call_argument_list (pp, TREE_OPERAND (t, 0));
738 pp_space (pp);
747 pp->type_id (type);
750 pp_left_paren (pp);
752 pp_c_expression_list (pp, init);
756 pp->expression (init);
757 pp_right_paren (pp);
762 pp_unsupported_tree (pp, t);
771 pp_cxx_delete_expression (cxx_pretty_printer *pp, tree t)
779 pp_cxx_colon_colon (pp);
780 pp_cxx_ws_string (pp, "delete");
781 pp_space (pp);
785 pp_left_bracket (pp);
786 pp_right_bracket (pp);
787 pp_space (pp);
789 pp_c_cast_expression (pp, TREE_OPERAND (t, 0));
793 pp_unsupported_tree (pp, t);
898 pp_cxx_cast_expression (cxx_pretty_printer *pp, tree t)
904 pp->type_id (TREE_TYPE (t));
905 pp_cxx_call_argument_list (pp, TREE_OPERAND (t, 0));
909 pp_c_cast_expression (pp, t);
920 pp_cxx_pm_expression (cxx_pretty_printer *pp, tree t)
928 pp_cxx_qualified_id (pp, t);
934 pp_cxx_pm_expression (pp, TREE_OPERAND (t, 0));
936 pp_cxx_arrow (pp);
938 pp_cxx_dot (pp);
939 pp_star(pp);
940 pp_cxx_cast_expression (pp, TREE_OPERAND (t, 1));
945 pp_cxx_cast_expression (pp, t);
1009 pp_cxx_assignment_operator (cxx_pretty_printer *pp, tree t)
1040 pp_cxx_ws_string (pp, op);
1406 pp_cxx_type_specifier_seq (cxx_pretty_printer *pp, tree t)
1417 pp_cxx_cv_qualifier_seq (pp, t);
1418 pp->simple_type_specifier (t);
1422 pp_cxx_type_specifier_seq (pp, TREE_TYPE (t));
1423 pp_cxx_space_for_pointer_operator (pp, TREE_TYPE (t));
1424 pp_cxx_nested_name_specifier (pp, TYPE_METHOD_BASETYPE (t));
1431 pp->declaration_specifiers (TREE_TYPE (TREE_TYPE (pfm)));
1432 pp_cxx_whitespace (pp);
1433 pp_cxx_ptr_operator (pp, t);
1441 pp_cxx_type_specifier_seq (pp, TREE_TYPE (t));
1442 pp_cxx_whitespace (pp);
1443 pp_cxx_ptr_operator (pp, t);
1450 pp_c_specifier_qualifier_list (pp, t);
1460 pp_cxx_ptr_operator (cxx_pretty_printer *pp, tree t)
1469 pp_cxx_ptr_operator (pp, TREE_TYPE (t));
1470 pp_c_attributes_display (pp, TYPE_ATTRIBUTES (TREE_TYPE (t)));
1473 pp_star (pp);
1474 pp_cxx_cv_qualifier_seq (pp, t);
1477 pp_ampersand (pp);
1483 pp_cxx_left_paren (pp);
1484 pp_cxx_nested_name_specifier (pp, TYPE_PTRMEMFUNC_OBJECT_TYPE (t));
1485 pp_star (pp);
1493 pp_cxx_left_paren (pp);
1494 pp_cxx_nested_name_specifier (pp, TYPE_PTRMEM_CLASS_TYPE (t));
1495 pp_star (pp);
1496 pp_cxx_cv_qualifier_seq (pp, t);
1502 pp_unsupported_tree (pp, t);
1521 pp_cxx_parameter_declaration (cxx_pretty_printer *pp, tree t)
1523 pp->declaration_specifiers (t);
1525 pp->abstract_declarator (t);
1527 pp->declarator (t);
1539 pp_cxx_parameter_declaration_clause (cxx_pretty_printer *pp, tree t)
1553 bool abstract = !args || (pp->flags & pp_c_flag_abstract);
1560 pp_cxx_left_paren (pp);
1564 pp_cxx_separate_with (pp, ',');
1568 pp_cxx_ws_string (pp, "...");
1571 pp_cxx_parameter_declaration (pp, abstract ? TREE_VALUE (types) : args);
1572 if (!abstract && pp->flags & pp_cxx_flag_default_argument)
1574 pp_cxx_whitespace (pp);
1575 pp_equal (pp);
1576 pp_cxx_whitespace (pp);
1577 pp->assignment_expression (TREE_PURPOSE (types));
1582 pp_cxx_right_paren (pp);
1593 pp_cxx_exception_specification (cxx_pretty_printer *pp, tree t)
1602 pp_cxx_ws_string (pp, "noexcept");
1603 pp_cxx_whitespace (pp);
1604 pp_cxx_left_paren (pp);
1606 pp_cxx_ws_string (pp, "<uninstantiated>");
1608 pp->expression (TREE_PURPOSE (ex_spec));
1609 pp_cxx_right_paren (pp);
1612 pp_cxx_ws_string (pp, "throw");
1613 pp_cxx_left_paren (pp);
1632 pp_cxx_separate_with (pp, ',');
1636 pp->type_id (type);
1639 pp_cxx_right_paren (pp);
1731 pp_cxx_ctor_initializer (cxx_pretty_printer *pp, tree t)
1734 pp_cxx_whitespace (pp);
1735 pp_colon (pp);
1736 pp_cxx_whitespace (pp);
1743 pp->primary_expression (PACK_EXPANSION_PATTERN (purpose));
1745 pp->primary_expression (purpose);
1746 pp_cxx_call_argument_list (pp, TREE_VALUE (t));
1748 pp_cxx_ws_string (pp, "...");
1750 pp_cxx_separate_with (pp, ',');
1759 pp_cxx_function_definition (cxx_pretty_printer *pp, tree t)
1761 tree saved_scope = pp->enclosing_scope;
1762 pp->declaration_specifiers (t);
1763 pp->declarator (t);
1764 pp_needs_newline (pp) = true;
1765 pp->enclosing_scope = DECL_CONTEXT (t);
1767 pp->statement (DECL_SAVED_TREE (t));
1769 pp_cxx_semicolon (pp);
1770 pp_newline_and_flush (pp);
1771 pp->enclosing_scope = saved_scope;
1928 pp_cxx_template_argument_list (cxx_pretty_printer *pp, tree t)
1953 pp_cxx_separate_with (pp, ',');
1959 pp->type_id (arg);
1961 pp->expression (DECL_INITIAL (arg));
1963 pp->expression (arg);
1970 pp_cxx_exception_declaration (cxx_pretty_printer *pp, tree t)
1973 pp_cxx_type_specifier_seq (pp, t);
1975 pp->abstract_declarator (t);
1977 pp->declarator (t);
2165 pp_cxx_original_namespace_definition (cxx_pretty_printer *pp, tree t)
2167 pp_cxx_ws_string (pp, "namespace");
2169 pp_cxx_nested_name_specifier (pp, DECL_CONTEXT (t));
2171 pp_cxx_unqualified_id (pp, t);
2172 pp_cxx_whitespace (pp);
2173 pp_cxx_left_brace (pp);
2175 pp_cxx_whitespace (pp);
2176 pp_cxx_right_brace (pp);
2189 pp_cxx_namespace_alias_definition (cxx_pretty_printer *pp, tree t)
2191 pp_cxx_ws_string (pp, "namespace");
2193 pp_cxx_nested_name_specifier (pp, DECL_CONTEXT (t));
2194 pp_cxx_unqualified_id (pp, t);
2195 pp_cxx_whitespace (pp);
2196 pp_equal (pp);
2197 pp_cxx_whitespace (pp);
2199 pp_cxx_nested_name_specifier (pp,
2201 pp_cxx_qualified_id (pp, DECL_NAMESPACE_ALIAS (t));
2202 pp_cxx_semicolon (pp);
2209 pp_cxx_simple_declaration (cxx_pretty_printer *pp, tree t)
2211 pp->declaration_specifiers (t);
2212 pp_cxx_init_declarator (pp, t);
2213 pp_cxx_semicolon (pp);
2214 pp_needs_newline (pp) = true;
2223 pp_cxx_template_parameter_list (cxx_pretty_printer *pp, tree t)
2230 pp_cxx_separate_with (pp, ',');
2231 pp_cxx_template_parameter (pp, TREE_VEC_ELT (t, i));
2248 pp_cxx_template_parameter (cxx_pretty_printer *pp, tree t)
2254 pp_cxx_ws_string (pp, "class");
2256 pp_cxx_ws_string (pp, "...");
2258 pp_cxx_tree_identifier (pp, DECL_NAME (parameter));
2263 pp_cxx_parameter_declaration (pp, parameter);
2270 pp_unsupported_tree (pp, t);
2279 pp_cxx_canonical_template_parameter (cxx_pretty_printer *pp, tree parm)
2288 pp_cxx_begin_template_argument_list (pp);
2289 pp->translate_string ("template-parameter-");
2290 pp_wide_integer (pp, TEMPLATE_PARM_LEVEL (parm));
2291 pp_minus (pp);
2292 pp_wide_integer (pp, TEMPLATE_PARM_IDX (parm) + 1);
2293 pp_cxx_end_template_argument_list (pp);
2299 pp_cxx_constrained_type_spec (cxx_pretty_printer *pp, tree c)
2301 pp_cxx_whitespace (pp);
2302 pp_cxx_left_bracket (pp);
2303 pp->translate_string ("requires");
2304 pp_cxx_whitespace (pp);
2307 pp_cxx_ws_string(pp, "<unsatisfied-type-constraint>");
2312 pp->id_expression (t);
2313 pp_cxx_begin_template_argument_list (pp);
2314 pp_cxx_ws_string (pp, "<placeholder>");
2315 pp_cxx_separate_with (pp, ',');
2319 pp_cxx_template_argument_list (pp, args);
2321 pp_cxx_end_template_argument_list (pp);
2322 pp_cxx_right_bracket (pp);
2336 pp_cxx_template_declaration (cxx_pretty_printer *pp, tree t)
2341 pp_maybe_newline_and_indent (pp, 0);
2344 pp_cxx_ws_string (pp, "template");
2345 pp_cxx_begin_template_argument_list (pp);
2346 pp_cxx_template_parameter_list (pp, TREE_VALUE (level));
2347 pp_cxx_end_template_argument_list (pp);
2348 pp_newline_and_indent (pp, 3);
2355 pp_cxx_requires_clause (pp, reqs);
2356 pp_newline_and_indent (pp, 6);
2360 pp_cxx_function_definition (pp, t);
2362 pp_cxx_concept_definition (pp, t);
2364 pp_cxx_simple_declaration (pp, t);
2368 pp_cxx_explicit_specialization (cxx_pretty_printer *pp, tree t)
2370 pp_unsupported_tree (pp, t);
2374 pp_cxx_explicit_instantiation (cxx_pretty_printer *pp, tree t)
2376 pp_unsupported_tree (pp, t);
2380 pp_cxx_concept_definition (cxx_pretty_printer *pp, tree t)
2382 pp_cxx_unqualified_id (pp, DECL_NAME (t));
2383 pp_cxx_whitespace (pp);
2384 pp_cxx_ws_string (pp, "=");
2385 pp_cxx_whitespace (pp);
2386 pp->expression (DECL_INITIAL (t));
2387 pp_cxx_semicolon (pp);
2467 pp_cxx_typeid_expression (cxx_pretty_printer *pp, tree t)
2470 pp_cxx_ws_string (pp, "typeid");
2471 pp_cxx_left_paren (pp);
2473 pp->type_id (t);
2475 pp->expression (t);
2476 pp_cxx_right_paren (pp);
2480 pp_cxx_va_arg_expression (cxx_pretty_printer *pp, tree t)
2482 pp_cxx_ws_string (pp, "va_arg");
2483 pp_cxx_left_paren (pp);
2484 pp->assignment_expression (TREE_OPERAND (t, 0));
2485 pp_cxx_separate_with (pp, ',');
2486 pp->type_id (TREE_TYPE (t));
2487 pp_cxx_right_paren (pp);
2491 pp_cxx_offsetof_expression_1 (cxx_pretty_printer *pp, tree t)
2499 pp->type_id (TREE_TYPE (TREE_TYPE (TREE_OPERAND (t, 0))));
2500 pp_cxx_separate_with (pp, ',');
2505 if (!pp_cxx_offsetof_expression_1 (pp, TREE_OPERAND (t, 0)))
2508 pp_cxx_dot (pp);
2509 pp->expression (TREE_OPERAND (t, 1));
2512 if (!pp_cxx_offsetof_expression_1 (pp, TREE_OPERAND (t, 0)))
2514 pp_left_bracket (pp);
2515 pp->expression (TREE_OPERAND (t, 1));
2516 pp_right_bracket (pp);
2524 pp_cxx_offsetof_expression (cxx_pretty_printer *pp, tree t)
2526 pp_cxx_ws_string (pp, "offsetof");
2527 pp_cxx_left_paren (pp);
2528 if (!pp_cxx_offsetof_expression_1 (pp, TREE_OPERAND (t, 0)))
2529 pp->expression (TREE_OPERAND (t, 0));
2530 pp_cxx_right_paren (pp);
2534 pp_cxx_addressof_expression (cxx_pretty_printer *pp, tree t)
2536 pp_cxx_ws_string (pp, "__builtin_addressof");
2537 pp_cxx_left_paren (pp);
2538 pp->expression (TREE_OPERAND (t, 0));
2539 pp_cxx_right_paren (pp);
2551 pp_cxx_unary_left_fold_expression (cxx_pretty_printer *pp, tree t)
2555 pp_cxx_left_paren (pp);
2556 pp_cxx_ws_string (pp, "...");
2557 pp_cxx_ws_string (pp, op);
2558 pp->expression (expr);
2559 pp_cxx_right_paren (pp);
2563 pp_cxx_unary_right_fold_expression (cxx_pretty_printer *pp, tree t)
2567 pp_cxx_left_paren (pp);
2568 pp->expression (expr);
2569 pp_space (pp);
2570 pp_cxx_ws_string (pp, op);
2571 pp_cxx_ws_string (pp, "...");
2572 pp_cxx_right_paren (pp);
2576 pp_cxx_binary_fold_expression (cxx_pretty_printer *pp, tree t)
2585 pp_cxx_left_paren (pp);
2586 pp->expression (t1);
2587 pp_cxx_ws_string (pp, op);
2588 pp_cxx_ws_string (pp, "...");
2589 pp_cxx_ws_string (pp, op);
2590 pp->expression (t2);
2591 pp_cxx_right_paren (pp);
2595 pp_cxx_trait_expression (cxx_pretty_printer *pp, tree t)
2602 pp_cxx_ws_string (pp, "__has_nothrow_assign");
2605 pp_cxx_ws_string (pp, "__has_trivial_assign");
2608 pp_cxx_ws_string (pp, "__has_nothrow_constructor");
2611 pp_cxx_ws_string (pp, "__has_trivial_constructor");
2614 pp_cxx_ws_string (pp, "__has_nothrow_copy");
2617 pp_cxx_ws_string (pp, "__has_trivial_copy");
2620 pp_cxx_ws_string (pp, "__has_trivial_destructor");
2623 pp_cxx_ws_string (pp, "__has_unique_object_representations");
2626 pp_cxx_ws_string (pp, "__has_virtual_destructor");
2629 pp_cxx_ws_string (pp, "__is_abstract");
2632 pp_cxx_ws_string (pp, "__is_aggregate");
2635 pp_cxx_ws_string (pp, "__is_base_of");
2638 pp_cxx_ws_string (pp, "__is_class");
2641 pp_cxx_ws_string (pp, "__is_empty");
2644 pp_cxx_ws_string (pp, "__is_enum");
2647 pp_cxx_ws_string (pp, "__is_final");
2650 pp_cxx_ws_string (pp, "__is_layout_compatible");
2653 pp_cxx_ws_string (pp, "__is_pointer_interconvertible_base_of");
2656 pp_cxx_ws_string (pp, "__is_pod");
2659 pp_cxx_ws_string (pp, "__is_polymorphic");
2662 pp_cxx_ws_string (pp, "__is_same");
2665 pp_cxx_ws_string (pp, "__is_std_layout");
2668 pp_cxx_ws_string (pp, "__is_trivial");
2671 pp_cxx_ws_string (pp, "__is_trivially_assignable");
2674 pp_cxx_ws_string (pp, "__is_trivially_constructible");
2677 pp_cxx_ws_string (pp, "__is_trivially_copyable");
2680 pp_cxx_ws_string (pp, "__is_union");
2683 pp_cxx_ws_string (pp, "__is_literal_type");
2686 pp_cxx_ws_string (pp, "__is_assignable");
2689 pp_cxx_ws_string (pp, "__is_constructible");
2692 pp_cxx_ws_string (pp, "__is_nothrow_assignable");
2695 pp_cxx_ws_string (pp, "__is_nothrow_constructible");
2702 pp_cxx_left_paren (pp);
2703 pp->type_id (TRAIT_EXPR_TYPE1 (t));
2710 pp_cxx_separate_with (pp, ',');
2711 pp->type_id (TRAIT_EXPR_TYPE2 (t));
2714 pp_cxx_right_paren (pp);
2720 pp_cxx_requires_clause (cxx_pretty_printer *pp, tree t)
2724 pp->padding = pp_before;
2725 pp_cxx_ws_string (pp, "requires");
2726 pp_space (pp);
2727 pp->expression (t);
2736 pp_cxx_requirement (cxx_pretty_printer *pp, tree t)
2741 pp_cxx_simple_requirement (pp, t);
2745 pp_cxx_type_requirement (pp, t);
2749 pp_cxx_compound_requirement (pp, t);
2753 pp_cxx_nested_requirement (pp, t);
2766 pp_cxx_requirement_list (cxx_pretty_printer *pp, tree t)
2769 pp_cxx_requirement (pp, TREE_VALUE (t));
2775 pp_cxx_requirement_body (cxx_pretty_printer *pp, tree t)
2777 pp_cxx_left_brace (pp);
2778 pp_cxx_requirement_list (pp, t);
2779 pp_cxx_right_brace (pp);
2785 pp_cxx_requires_expr (cxx_pretty_printer *pp, tree t)
2787 pp_string (pp, "requires");
2791 pp_cxx_left_paren (pp);
2795 pp_cxx_separate_with (pp, ',' );
2797 pp_cxx_parameter_declaration (pp, parms);
2799 pp_cxx_right_paren (pp);
2800 pp_cxx_whitespace (pp);
2802 pp_cxx_requirement_body (pp, TREE_OPERAND (t, 1));
2808 pp_cxx_simple_requirement (cxx_pretty_printer *pp, tree t)
2810 pp->expression (TREE_OPERAND (t, 0));
2811 pp_cxx_semicolon (pp);
2817 pp_cxx_type_requirement (cxx_pretty_printer *pp, tree t)
2819 pp->type_id (TREE_OPERAND (t, 0));
2820 pp_cxx_semicolon (pp);
2826 pp_cxx_compound_requirement (cxx_pretty_printer *pp, tree t)
2828 pp_cxx_left_brace (pp);
2829 pp->expression (TREE_OPERAND (t, 0));
2830 pp_cxx_right_brace (pp);
2833 pp_cxx_ws_string (pp, "noexcept");
2837 pp_cxx_whitespace (pp);
2838 pp_cxx_ws_string (pp, "->");
2839 pp->type_id (type);
2841 pp_cxx_semicolon (pp);
2847 pp_cxx_nested_requirement (cxx_pretty_printer *pp, tree t)
2849 pp_cxx_ws_string (pp, "requires");
2850 pp->expression (TREE_OPERAND (t, 0));
2851 pp_cxx_semicolon (pp);
2855 pp_cxx_check_constraint (cxx_pretty_printer *pp, tree t)
2863 pp->expression (id);
2865 pp->expression (id);
2871 pp->expression (call);
2881 pp_cxx_parameter_mapping (cxx_pretty_printer *pp, tree map)
2883 pp_cxx_whitespace (pp);
2884 pp_cxx_left_bracket (pp);
2885 pp->translate_string ("with");
2886 pp_cxx_whitespace (pp);
2894 pp->type_id (parm);
2896 pp_cxx_tree_identifier (pp, name);
2898 pp->translate_string ("<unnamed>");
2900 pp_cxx_whitespace (pp);
2901 pp_equal (pp);
2902 pp_cxx_whitespace (pp);
2905 pp->type_id (arg);
2907 pp->expression (arg);
2910 pp_cxx_separate_with (pp, ';');
2913 pp_cxx_right_bracket (pp);
2917 pp_cxx_atomic_constraint (cxx_pretty_printer *pp, tree t)
2920 pp->expression (ATOMIC_CONSTR_EXPR (t));
2925 pp_cxx_parameter_mapping (pp, map);
2929 pp_cxx_conjunction (cxx_pretty_printer *pp, tree t)
2931 pp_cxx_constraint (pp, TREE_OPERAND (t, 0));
2932 pp_string (pp, " /\\ ");
2933 pp_cxx_constraint (pp, TREE_OPERAND (t, 1));
2937 pp_cxx_disjunction (cxx_pretty_printer *pp, tree t)
2939 pp_cxx_constraint (pp, TREE_OPERAND (t, 0));
2940 pp_string (pp, " \\/ ");
2941 pp_cxx_constraint (pp, TREE_OPERAND (t, 1));
2945 pp_cxx_constraint (cxx_pretty_printer *pp, tree t)
2948 return pp->expression (t);
2953 pp_cxx_atomic_constraint (pp, t);
2957 pp_cxx_check_constraint (pp, t);
2961 pp_cxx_conjunction (pp, t);
2965 pp_cxx_disjunction (pp, t);
2969 pp->expression (TREE_OPERAND (t, 0));