Commit Graph

226812 Commits

Author SHA1 Message Date
Marek Polacek
375d86bcff Amend SPLICE_EXPR_EXPRESSION_P comment 2026-01-14 11:00:58 -05:00
Marek Polacek
34c776e0be Handle type/scope splice-specs in tsubst
Also introduce tsubst_splice_expr.
2026-01-14 11:00:58 -05:00
Jakub Jelinek
9a5fc40ed7 Remove unneeded OVL_P checks. 2026-01-14 11:00:57 -05:00
Jakub Jelinek
68a0b63f41 Some fixes for member access splice-specialization-specifiers.
Fixes 12 out of 32 TODOs in member18.C.
2026-01-14 11:00:57 -05:00
Jakub Jelinek
6d78072b4f Wrap DECL_FUNCTION_TEMPLATE_P into OVERLOAD in splice. 2026-01-14 11:00:57 -05:00
Jakub Jelinek
02d4c422b8 Temporarily save/restore parser->context->object_type. 2026-01-14 11:00:57 -05:00
Marek Polacek
e7fa5fe3ec Handle NAMESPACE_DECL in tsubst_decl 2026-01-14 11:00:57 -05:00
Marek Polacek
e7167f7f51 Move static_cast into REFLECT_EXPR_KIND
And add SET_REFLECT_EXPR_KIND
2026-01-14 11:00:56 -05:00
Marek Polacek
3e01b932e3 Fix -Wformat-extra-args 2026-01-14 11:00:56 -05:00
Marek Polacek
e7c6ea3414 Skip consteval-only vars in c_parse_final_cleanups [PR123081] 2026-01-14 11:00:56 -05:00
Marek Polacek
3ff5712733 Remove two checks in fold_builtin_is_string_literal 2026-01-14 11:00:56 -05:00
Marek Polacek
17ef4e66d2 Add TODO comment 2026-01-14 11:00:56 -05:00
Marek Polacek
202c22ade3 Defer diagnostic in cp_parser_base_clause 2026-01-14 11:00:55 -05:00
Jakub Jelinek
166cc9f082 Diagnose annotations with non-copy-constructible types. 2026-01-14 11:00:55 -05:00
Marek Polacek
ea87b28cce Adjust formatting in cp_parser_type_specifier 2026-01-14 11:00:55 -05:00
Marek Polacek
5742ecfc19 Add annotations7.C 2026-01-14 11:00:55 -05:00
Marek Polacek
95e3343867 Move types v. type aliases handling to _type_id 2026-01-14 11:00:55 -05:00
Marek Polacek
38a1a0e4d6 Use cp_parser_error 2026-01-14 11:00:54 -05:00
Marek Polacek
7f8feb73f3 Simplify checking for access_context::current 2026-01-14 11:00:54 -05:00
Marek Polacek
6872a141c7 Use BASELINK_ACCESS_BINFO 2026-01-14 11:00:54 -05:00
Jakub Jelinek
c2de0ab24a 2 further tests for metafn caching. 2026-01-14 11:00:54 -05:00
Jakub Jelinek
0f02b5a29d Get rid of meta_type_die, handle C++ specific TYPE_P trees like unspecified type. 2026-01-14 11:00:54 -05:00
Marek Polacek
40df270f24 Mark annotation_p as pure 2026-01-14 11:00:53 -05:00
Marek Polacek
44f75bb235 check_splice_expr cleanups 2026-01-14 11:00:53 -05:00
Marek Polacek
4aabf0fa65 Get rid of cp_parser_skip_to_closing_token
...for now.  Use cp_parser_skip_balanced_tokens instead.
2026-01-14 11:00:53 -05:00
Marek Polacek
546059da36 Detect missing template for scope splices 2026-01-14 11:00:53 -05:00
Jakub Jelinek
96ce0001e0 Add 2 new tests which fail without the metafns_called causing not caching calls. 2026-01-14 11:00:52 -05:00
Marek Polacek
cb086ca8c0 Print the reflection when emitting errors 2026-01-14 11:00:52 -05:00
Marek Polacek
4b4810e77e Set cp_preserve_using_decl in cp_parser_reflection_name
As per Jason's request.
2026-01-14 11:00:52 -05:00
Marek Polacek
f492ccb01e Small parser tweaks
Introduce cp_parser_nth_token_starts_splice_without_nns_p.
2026-01-14 11:00:52 -05:00
Marek Polacek
5383387057 Test using-declarator with typename
This grammar production wasn't tested.
2026-01-14 11:00:52 -05:00
Marek Polacek
7cd1018769 Remove compile_only_p langhook
Use DECL_EXTERNAL instead.
2026-01-14 11:00:51 -05:00
Marek Polacek
c4ffa609e5 Introduce decl_in_std_meta_p
...and remove DECL_NAMESPACE_STD_META_P.
2026-01-14 11:00:51 -05:00
Marek Polacek
147c51faef Remove redundant check in cxx_eval_outermost_constant_expr 2026-01-14 11:00:51 -05:00
Marek Polacek
7592a80870 Share more code in min_vis_expr_r 2026-01-14 11:00:51 -05:00
Jakub Jelinek
b2e54e4c3c Fix up handling of implcitily-declared equality operator.
Additionally try to synthesize defaulted comparison operators if
they still have undeduced return type instead of not returning
them from members_of.  And similarly try to synthesize DECL_MAYBE_DELETED
methods for is_deleted.
2026-01-14 11:00:51 -05:00
Marek Polacek
38a296dc63 Use void_node instead of NOP_EXPR 2026-01-14 11:00:51 -05:00
Jakub Jelinek
0099666ea3 Spell check of g++.dg/reflect/*.C comments. 2026-01-14 11:00:50 -05:00
Marek Polacek
24c5d86782 Treate SPLICE_EXPR as potentially-constant 2026-01-14 11:00:50 -05:00
Marek Polacek
660032c4e0 Remove obsolete error case in build_new_op 2026-01-14 11:00:50 -05:00
Marek Polacek
2ce95c478b Handle metafns normally in build_call_a
The ICEs I saw are gone.
2026-01-14 11:00:50 -05:00
Tomasz Kamiński
bab56275da Add clear example of reflect_constant with local pointer 2026-01-14 11:00:50 -05:00
Tomasz Kamiński
93a8267832 Tests for noexcept on implict object function 2026-01-14 11:00:50 -05:00
Tomasz Kamiński
f248ab27da Enhanced is_deleted comments, to reflect my findings 2026-01-14 11:00:49 -05:00
Tomasz Kamiński
174623375a Force defintion of operator and fix is_deleted 2026-01-14 11:00:49 -05:00
Tomasz Kamiński
8479667a41 Members_of test for implicitly generated member functions 2026-01-14 11:00:49 -05:00
Tomasz Kamiński
3f62bf3b8c Expanded tests for defaulted relational opertors 2026-01-14 11:00:49 -05:00
Tomasz Kamiński
56eade1e9f Source location of implicitly defined operators 2026-01-14 11:00:49 -05:00
Tomasz Kamiński
5896a36aca Range tests for define_aggregate 2026-01-14 11:00:49 -05:00
Tomasz Kamiński
c30ded95ff Test unnamed enumerator in enumerators_of 2026-01-14 11:00:48 -05:00