Commit Graph

226909 Commits

Author SHA1 Message Date
Marek Polacek
79f1e91cc9 Tweak compare_reflections 2026-01-14 11:01:15 -05:00
Marek Polacek
637f41dbb3 check_out_of_consteval_use: add comments 2026-01-14 11:01:15 -05:00
Marek Polacek
d8140cda31 Remove code in check_out_of_consteval_use 2026-01-14 11:01:15 -05:00
Marek Polacek
6575c09895 Use walk_subtrees = 2 instead of separate walk 2026-01-14 11:01:15 -05:00
Marek Polacek
5ecb10598d Use cp_build_addr_expr instead of build_address 2026-01-14 11:01:15 -05:00
Marek Polacek
8abe9fca3c Print expressions in error messages 2026-01-14 11:01:15 -05:00
Marek Polacek
e3016c2b34 Introduce complain_flags 2026-01-14 11:01:14 -05:00
Marek Polacek
9f22a26663 Resolve mangling TODO 2026-01-14 11:01:14 -05:00
Marek Polacek
51654bc016 Enable more testing 2026-01-14 11:01:14 -05:00
Marek Polacek
1b3541ac50 Use annotation_p 2026-01-14 11:01:14 -05:00
Marek Polacek
c34da1bfe4 Remove early return in consteval_only_p 2026-01-14 11:01:14 -05:00
Marek Polacek
6dea0e4779 Remove comment 2026-01-14 11:01:14 -05:00
Marek Polacek
557648cd1b extract* comment fixes 2026-01-14 11:01:13 -05:00
Marek Polacek
38397145f2 Use DECL_MAYBE_DELETED 2026-01-14 11:01:13 -05:00
Marek Polacek
3bf5ff8da1 Use DECL_CLONED_FUNCTION_P 2026-01-14 11:01:13 -05:00
Marek Polacek
72fadb13da Remove a few strip_typedefs
In general this shouldn't be necessary with finish_library_value_trait,
coerce_template_parms will canonicalize template args.
2026-01-14 11:01:13 -05:00
Marek Polacek
0fb6ece9fa Use type_of in eval_bit_size_of even for FIELD_DECLs 2026-01-14 11:01:13 -05:00
Marek Polacek
e1768101d0 Tweak what() for return_type_of 2026-01-14 11:01:13 -05:00
Marek Polacek
1921bd08d7 Uncomment tests in return_type_of1.C 2026-01-14 11:01:12 -05:00
Marek Polacek
ac5556df0e Add comment to eval_variable_of 2026-01-14 11:01:12 -05:00
Marek Polacek
a8635547d2 Use alias_template_specialization_p in eval_has_template_arguments 2026-01-14 11:01:12 -05:00
Marek Polacek
7982d483b5 Don't check DECL_CONV_FN_P in eval_is_override 2026-01-14 11:01:12 -05:00
Marek Polacek
bf331fd22a Remove unneeded check in eval_constant_of 2026-01-14 11:01:12 -05:00
Marek Polacek
e4aa93def3 Fix TODO in eval_object_of 2026-01-14 11:01:12 -05:00
Marek Polacek
3862920c26 Uncomment tests in storage_duration2.C 2026-01-14 11:01:11 -05:00
Marek Polacek
56e2c236d1 Introduce type_linkage_name 2026-01-14 11:01:11 -05:00
Marek Polacek
cca09641c0 Improve eval_is_enumerator comment 2026-01-14 11:01:11 -05:00
Marek Polacek
b3ee2b522e Use DECL_VIRTUAL_P in eval_is_override 2026-01-14 11:01:11 -05:00
Marek Polacek
a8a62bf3fc Resolve all TEMPLATE_ID_EXPRs in get_reflection
resolve_nondeduced_ is still needed in compare_reflections
otherwise g++.dg/reflect/substitute1.C FAILs.
2026-01-14 11:01:11 -05:00
Jakub Jelinek
5a54827502 Change int kind arguments to enum metafn_code kind and pass the METAFN_* codes. 2026-01-14 11:01:10 -05:00
Marek Polacek
9ddfa2559a Adjust error message 2026-01-14 11:01:10 -05:00
Marek Polacek
cd9243f298 Check is_capture_proxy sooner
...and don't check !normal.
2026-01-14 11:01:10 -05:00
Jakub Jelinek
b6bd6249bd Rewrite eval_exception__S_exception_cvt_{to,from}_utf8 into a single
eval_exception__S_exception_cvt_tofrom_utf8 with extra to_utf8 argument.
2026-01-14 11:01:10 -05:00
Jakub Jelinek
967b4e8235 Introduce METAFN_KIND_SHIFT and METAFN_KIND_MASK, use it and rewrite
process_metafunction start to use a loop for all 3 arguments.
Update copyright years.
2026-01-14 11:01:10 -05:00
Jakub Jelinek
f6a3ac7218 Fix a typo: manling -> mangling. 2026-01-14 11:01:10 -05:00
Jakub Jelinek
9f8f38bd57 Tweak comment in namespace_members_of. 2026-01-14 11:01:09 -05:00
Jakub Jelinek
b01d0d7189 Merge VAR_DECL and FUNCTION_DECL cases in members_of_representable_p. 2026-01-14 11:01:09 -05:00
Jakub Jelinek
1cc58bbd7f Add extra comment to eval_access_context_current for inherited ctor handling. 2026-01-14 11:01:09 -05:00
Jakub Jelinek
91a2ab239d Move eval_is_implicit_lifetime_type earlier. 2026-01-14 11:01:09 -05:00
Jakub Jelinek
3e796d828e Swap TYPE_MAIN_VARIANT and strip_typedefs in eval_define_aggregate. 2026-01-14 11:01:09 -05:00
Jakub Jelinek
dc0c617e97 Change diagnostics for cv-qualified first define_aggregate argument. 2026-01-14 11:01:08 -05:00
Jakub Jelinek
98cbbd7b53 Merge 2 separate throw_exception calls in can_substitute. 2026-01-14 11:01:08 -05:00
Jakub Jelinek
a5c94b4653 Combine 2 ifs in eval_is_lrvalue_reference_qualified. 2026-01-14 11:01:08 -05:00
Jakub Jelinek
ade2d7ca8b Move some strip_typedefs calls earlier. 2026-01-14 11:01:08 -05:00
Jakub Jelinek
29c610e1df Drop eval_is_type checks before calling eval_is_function_type.
This isn't needed after https://forge.sourceware.org/marek/gcc/commit/34293549c7c3
because it is process_metafunction which throws for is_function_type,
not eval_is_function_type, and the latter just returns boolean_false_node
if the argument is not a type.
2026-01-14 11:01:08 -05:00
Jakub Jelinek
16a7a7dd28 Remove annotations with erroneous types earlier. 2026-01-14 11:01:08 -05:00
Jakub Jelinek
97fb60db19 Change *display_string_of for direct base class relationships. 2026-01-14 11:01:07 -05:00
Jakub Jelinek
bc94613edd Assorted tweaks to eval_alignment_of. 2026-01-14 11:01:07 -05:00
Jakub Jelinek
1cc3dae768 Use the same throw_exception calls for the !complete_type_or_maybe_complain
and c_sizeof_or_alignof_type == error_mark_node cases, add metafn name.
2026-01-14 11:01:07 -05:00
Jakub Jelinek
d8e45233dd Add comments explaining why no special casing of references is needed for *size_of. 2026-01-14 11:01:07 -05:00