diff options
-rw-r--r-- | ChangeLog | 11 | ||||
-rw-r--r-- | contrib/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/ChangeLog | 199 | ||||
-rw-r--r-- | gcc/DATESTAMP | 2 | ||||
-rw-r--r-- | gcc/ada/ChangeLog | 201 | ||||
-rw-r--r-- | gcc/c-family/ChangeLog | 25 | ||||
-rw-r--r-- | gcc/c/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/ChangeLog | 189 | ||||
-rw-r--r-- | gcc/m2/ChangeLog | 52 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 203 | ||||
-rw-r--r-- | include/ChangeLog | 5 | ||||
-rw-r--r-- | libcc1/ChangeLog | 7 | ||||
-rw-r--r-- | libgomp/ChangeLog | 23 | ||||
-rw-r--r-- | libstdc++-v3/ChangeLog | 26 |
14 files changed, 952 insertions, 1 deletions
@@ -1,3 +1,14 @@ +2024-01-09 Siddhesh Poyarekar <siddhesh@gotplt.org> + + * SECURITY.txt: Drop "exploitable" in the hardening section. + +2024-01-09 Tom Tromey <tom@tromey.com> + + * Makefile.in: Rebuild. + * Makefile.tpl (BASE_EXPORTS): Add GUILE. + (GUILE): New variable. + * Makefile.def (flags_to_pass): Add GUILE. + 2024-01-08 Joseph Myers <josmyers@redhat.com> * MAINTAINERS: Update my email address. diff --git a/contrib/ChangeLog b/contrib/ChangeLog index 569b889..04bde02 100644 --- a/contrib/ChangeLog +++ b/contrib/ChangeLog @@ -1,3 +1,8 @@ +2024-01-09 Jonathan Wakely <jwakely@redhat.com> + + * unicode/gen_libstdcxx_unicode_data.py: Print out Gcb_property + enumerators in the order they're seen, not alphabetical order. + 2024-01-08 Jonathan Wakely <jwakely@redhat.com> * unicode/README: Add notes about generating libstdc++ tables. diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5d5cf71..55754ed 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,202 @@ +2024-01-09 Jeff Law <jlaw@ventanamicro.com> + + * config/epiphany/constraints.md (Car): Allow -1024..1023, no more, + no less. + +2024-01-09 Richard Sandiford <richard.sandiford@arm.com> + + * config/mn10300/mn10300.md (subdi3_degenerate): Add isa attribute. + +2024-01-09 Tamar Christina <tamar.christina@arm.com> + + * tree-vect-loop.cc (vectorizable_live_operation_1): Drop unused + restart_loop. + (vectorizable_live_operation): Likewise. + +2024-01-09 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/113199 + * tree-vect-loop.cc (vectorizable_live_operation_1): Use + BIT_FIELD_REF. + +2024-01-09 Jakub Jelinek <jakub@redhat.com> + + PR target/113270 + * config.gcc (aarch64*-*-*): Add aarch64-builtins.h to target_gtfiles. + * config/aarch64/aarch64-builtins.cc (aarch64_simd_types): Add extern + GTY(()) declaration before the definition, drop GTY(()) drom the + definition. + +2024-01-09 Richard Biener <rguenther@suse.de> + + PR tree-optimization/113026 + * tree-vect-loop-manip.cc (vect_do_peeling): Remove + redundant and wrong niter bound setting. Move niter + bound adjustment down. + +2024-01-09 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/113163 + * tree-vect-loop-manip.cc (vect_can_peel_nonlinear_iv_p): + Reject non-linear inductions that aren't supported. + +2024-01-09 Roger Sayle <roger@nextmovesoftware.com> + + * config/arc/arc.cc (arc_shift_alg): New enumerated type for + left shift implementation strategies. + (arc_shift_info): Type for each entry of the shift strategy table. + (arc_shift_context_idx): Return a integer value for each code + generation context, used as an index + (arc_ashl_alg): Table indexed by context and shifted bit count. + (arc_split_ashl): Use the arc_ashl_alg table to select SImode + left shift implementation. + (arc_rtx_costs) <case ASHIFT>: Use the arc_ashl_alg table to + provide accurate costs, when optimizing for speed or size. + +2024-01-09 Juzhe-Zhong <juzhe.zhong@rivai.ai> + + * config/riscv/riscv-vector-costs.cc (loop_invariant_op_p): Fix loop invariant check. + +2024-01-09 Julian Brown <julian@codesourcery.com> + + * gimplify.cc (gimplify_expr): Ensure OMP_ARRAY_SECTION has been + processed out before gimplification. + * tree-pretty-print.cc (dump_generic_node): Support OMP_ARRAY_SECTION. + * tree.def (OMP_ARRAY_SECTION): New tree code. + +2024-01-09 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/113210 + * tree-vect-loop.cc (vect_get_loop_niters): If non-INTEGER_CST + value in *number_of_iterationsm1 PLUS_EXPR 1 is folded into + INTEGER_CST, recompute *number_of_iterationsm1 as the INTEGER_CST + minus 1. + +2024-01-09 Eric Botcazou <ebotcazou@adacore.com> + + PR rtl-optimization/113140 + * reorg.cc (fill_slots_from_thread): If we are to branch after the + last instruction of the function, create an end label. + +2024-01-09 Roger Sayle <roger@nextmovesoftware.com> + Hongtao Liu <hongtao.liu@intel.com> + + PR target/112992 + * config/i386/i386-expand.cc + (ix86_convert_const_wide_int_to_broadcast): Allow call to + ix86_expand_vector_init_duplicate to fail, and return NULL_RTX. + (ix86_broadcast_from_constant): Revert recent change; Return a + suitable MEMREF independently of mode/target combinations. + (ix86_expand_vector_move): Allow ix86_expand_vector_init_duplicate + to decide whether expansion is possible/preferrable. Only try + forcing DImode constants to memory (and trying again) if calling + ix86_expand_vector_init_duplicate fails with an DImode immediate + constant. + (ix86_expand_vector_init_duplicate) <case E_V2DImode>: Try using + V4SImode for suitable immediate constants. + <case E_V4DImode>: Try using V8SImode for suitable constants. + <case E_V4HImode>: Fail for CONST_INT_P, i.e. use constant pool. + <case E_V2HImode>: Likewise. + <case E_V8HImode>: For CONST_INT_P try using V4SImode via widen. + <case E_V16QImode>: For CONT_INT_P try using V8HImode via widen. + <label widen>: Handle CONT_INTs via simplify_binary_operation. + Allow recursive calls to ix86_expand_vector_init_duplicate to fail. + <case E_V16HImode>: For CONST_INT_P try V8SImode via widen. + <case E_V32QImode>: For CONST_INT_P try V16HImode via widen. + (ix86_expand_vector_init): Move try using a broadcast for all_same + with ix86_expand_vector_init_duplicate before using constant pool. + +2024-01-09 Chung-Ju Wu <jasonwucj@gmail.com> + + * doc/invoke.texi (Arm Options): Document Cortex-M52 options. + +2024-01-09 Chung-Ju Wu <jasonwucj@gmail.com> + + * config/arm/arm-cpus.in (cortex-m52): New cpu. + * config/arm/arm-tables.opt: Regenerate. + * config/arm/arm-tune.md: Regenerate. + +2024-01-09 Jiahao Xu <xujiahao@loongson.cn> + + * config/loongarch/lasx.md (vec_initv32qiv16qi): Rename to .. + (vec_init<mode><lasxhalf>): .. this, and extend to mode. + (@vec_concatz<mode>): New insn pattern. + * config/loongarch/loongarch.cc (loongarch_expand_vector_group_init): + Handle VALS containing two vectors. + +2024-01-09 Juzhe-Zhong <juzhe.zhong@rivai.ai> + + * config/riscv/riscv-vector-builtins-functions.def (vleff): Move comments. + (vundefined): Ditto. + +2024-01-09 Feng Wang <wangfeng@eswincomputing.com> + + * config/riscv/riscv-vector-builtins-bases.cc (class vandn): + Add new function_base for crypto vector. + (class bitmanip): Ditto. + (class b_reverse):Ditto. + (class vwsll): Ditto. + (class clmul): Ditto. + (class vg_nhab): Ditto. + (class crypto_vv):Ditto. + (class crypto_vi):Ditto. + (class vaeskf2_vsm3c):Ditto. + (class vsm3me): Ditto. + (BASE): Add BASE declaration for crypto vector. + * config/riscv/riscv-vector-builtins-bases.h: Ditto. + * config/riscv/riscv-vector-builtins-functions.def (REQUIRED_EXTENSIONS): + Add crypto vector intrinsic definition. + (vbrev): Ditto. + (vclz): Ditto. + (vctz): Ditto. + (vwsll): Ditto. + (vandn): Ditto. + (vbrev8): Ditto. + (vrev8): Ditto. + (vrol): Ditto. + (vror): Ditto. + (vclmul): Ditto. + (vclmulh): Ditto. + (vghsh): Ditto. + (vgmul): Ditto. + (vaesef): Ditto. + (vaesem): Ditto. + (vaesdf): Ditto. + (vaesdm): Ditto. + (vaesz): Ditto. + (vaeskf1): Ditto. + (vaeskf2): Ditto. + (vsha2ms): Ditto. + (vsha2ch): Ditto. + (vsha2cl): Ditto. + (vsm4k): Ditto. + (vsm4r): Ditto. + (vsm3me): Ditto. + (vsm3c): Ditto. + * config/riscv/riscv-vector-builtins-shapes.cc (struct crypto_vv_def): + Add new function_shape for crypto vector. + (struct crypto_vi_def): Ditto. + (struct crypto_vv_no_op_type_def): Ditto. + (SHAPE): Add SHAPE declaration of crypto vector. + * config/riscv/riscv-vector-builtins-shapes.h: Ditto. + * config/riscv/riscv-vector-builtins-types.def (DEF_RVV_CRYPTO_SEW32_OPS): + Add new data type for crypto vector. + (DEF_RVV_CRYPTO_SEW64_OPS): Ditto. + (vuint32mf2_t): Ditto. + (vuint32m1_t): Ditto. + (vuint32m2_t): Ditto. + (vuint32m4_t): Ditto. + (vuint32m8_t): Ditto. + (vuint64m1_t): Ditto. + (vuint64m2_t): Ditto. + (vuint64m4_t): Ditto. + (vuint64m8_t): Ditto. + * config/riscv/riscv-vector-builtins.cc (DEF_RVV_CRYPTO_SEW32_OPS): + Add new data struct for crypto vector. + (DEF_RVV_CRYPTO_SEW64_OPS): Ditto. + (registered_function::overloaded_hash): Processing size_t uimm for C overloaded func. + * config/riscv/riscv-vector-builtins.def (vi): Add vi OP_TYPE. + 2024-01-08 Ilya Leoshkevich <iii@linux.ibm.com> PR sanitizer/113251 diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index e55f042..4748a81 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20240109 +20240110 diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 9d96560..3ca92dc 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,204 @@ +2024-01-09 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Array_Type>: Use the + TYPE_CANONICAL of types when it comes to aliasing. + * gcc-interface/utils.cc (relate_alias_sets): Likewise. + +2024-01-09 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Array_Type>: Use a + separate FLD local variable to hold the first field of the fat + pointer type being built. + * gcc-interface/gigi.h (relate_alias_sets): Remove GNU_ prefix on + the first two parameters. + * gcc-interface/utils.cc (relate_alias_sets): Likewise and adjust. + +2024-01-09 Viljar Indus <indus@adacore.com> + + * sem_attr.adb: avoid marking a use of the Address attribute + as a modification of its prefix. + +2024-01-09 Gary Dismukes <dismukes@adacore.com> + + * exp_aggr.adb (Expand_Container_Aggregate): Change "not Present" + tests to tests using "No" (in two places). + +2024-01-09 Bob Duff <duff@adacore.com> + + * sem_ch12.adb (Instantiate_Type): Make the relevant error message + conditional upon "Ekind (A_Gen_T) /= E_Incomplete_Type". Misc + cleanup. + +2024-01-09 Gary Dismukes <dismukes@adacore.com> + + * exp_aggr.adb (Expand_Container_Aggregate): Add code to determine + whether the aggregate is an indexed aggregate, setting a flag + (Is_Indexed_Aggregate), which is tested to have proper separation + of treatment for the Add_Unnamed + (for positional aggregates) and New_Indexed (for indexed + aggregates) cases. In the code generating associations for indexed + aggregates, remove the code for Expressions cases entirely, since + the code for indexed aggregates is governed by the presence of + Component_Associations, and add an assertion that Expressions must + be Empty. Also, exclude empty aggregates from entering that code. + +2024-01-09 Eric Botcazou <ebotcazou@adacore.com> + + * rtsfind.ads (RE_Id): Remove RE_Attach. + (RE_Unit_Table): Likewise. + * libgnat/s-finmas.ads (Attach): Delete. + * libgnat/s-finmas.adb (Attach): Likewise. + +2024-01-09 Tucker Taft <taft@adacore.com> + + * pprint.adb (List_Name): Check for "Box_Present" when displaying + a list, and emit "<>" if returns True. + * sem_scil.adb (Check_SCIL_Node): Handle case when the type of a + parameter is from a package that was mentioned in a limited with + clause, and make no further checks, since this check routine does + not have all the logic to check such a usage. + +2024-01-09 Eric Botcazou <ebotcazou@adacore.com> + + * freeze.adb (Freeze_Expression.Has_Decl_In_List): Deal specifically + with itypes that are class-wide subtypes. + +2024-01-09 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-atopri.ads (Atomic_Store): New generic procedure. + (Atomic_Store_8): New instantiated procedure. + (Atomic_Store_16): Likewise. + (Atomic_Store_32): Likewise. + (Atomic_Store_64): Likewise. + * libgnat/s-atopri__32.ads (Atomic_Store): New generic procedure. + (Atomic_Store_8): New instantiated procedure. + (Atomic_Store_16): Likewise. + (Atomic_Store_32): Likewise. + * gcc-interface/decl.cc (gnat_to_gnu_subprog_type): Implement the + support for __atomic_store_n and __sync_bool_compare_and_swap_n. + * gcc-interface/gigi.h (list_second): New inline function. + +2024-01-09 Javier Miranda <miranda@adacore.com> + + * sem_ch6.adb (Analyze_Subprogram_Specification): Do not replace + the type of the formals with its corresponding record in + init-procs. + * sem_ch9.adb (Analyze_Requeue): Add missing support to requeue to + a procedure that denotes a renaming of an entry. + +2024-01-09 Piotr Trojanek <trojanek@adacore.com> + + * exp_util.adb (Possible_Side_Effect_In_SPARK): Refine handling of + itype declarations. + +2024-01-09 Piotr Trojanek <trojanek@adacore.com> + + * sem_ch6.adb (Analyze_Subprogram_Specification): Set Is_Inlined + flag by default in GNATprove mode. + * sem_res.adb (Resolve_Call): Only look at flag which is cleared + when inlined subprogram is detected to be recursive. + +2024-01-09 Piotr Trojanek <trojanek@adacore.com> + + * inline.adb (Establish_Actual_Mapping_For_Inlined_Call): + Remove detection of recursive calls. + +2024-01-09 Piotr Trojanek <trojanek@adacore.com> + + * inline.adb (Cannot_Inline): Cleanup use of 'Length; remove + dead code. + +2024-01-09 Piotr Trojanek <trojanek@adacore.com> + + * sem_aggr.adb (Resolve_Container_Aggregate): Use "No". + * sem_ch8.adb (Find_Direct_Name): Likewise. + +2024-01-09 Steve Baird <baird@adacore.com> + + * sem_util.adb (Enclosing_Declaration): Instead of returning a + subprogram specification node, return its parent (which is + presumably a subprogram declaration). + * contracts.adb (Insert_Stable_Property_Check): Remove code + formerly needed to compensate for incorrect behavior of + Sem_Util.Enclosing_Declaration. + * exp_attr.adb (In_Available_Context): Remove code formerly needed + to compensate for incorrect behavior of + Sem_Util.Enclosing_Declaration. + * sem_ch8.adb (Is_Actual_Subp_Of_Inst): Remove code formerly + needed to compensate for incorrect behavior of + Sem_Util.Enclosing_Declaration. + +2024-01-09 Steve Baird <baird@adacore.com> + + * sem_ch8.adb (Check_Constrained_Object): Before updating the + subtype mark of an object renaming declaration by calling Rewrite, + first check whether the destination of the Rewrite call exists. + * atree.adb (Copy_Slots): Return without performing any updates if + Destination equals Empty or Error, or if Source equals Empty. Any + of those conditions indicates an error case. + * sem_ch12.adb (Analyze_Formal_Derived_Type): Avoid cascading + errors. + * sem_ch3.adb (Analyze_Number_Declaration): In an error case, do + not pass Error as destination in a call to Rewrite. + (Find_Type_Of_Subtype_Indic): In an error case, do not pass Error + or Empty as destination in a call to Rewrite. + +2024-01-09 Joffrey Huguet <huguet@adacore.com> + + * libgnat/i-cstrin.ads (Update): Fix precondition. + +2024-01-09 Eric Botcazou <ebotcazou@adacore.com> + + * sem_aggr.adb (Resolve_Extension_Aggregate): Remove the unreachable + call to Transform_BIP_Assignment as well as the procedure. + +2024-01-09 Bob Duff <duff@adacore.com> + + * lib-xref.adb (Generate_Reference): Do not count it as a read + reference if we're calling a TSS. + +2024-01-09 Piotr Trojanek <trojanek@adacore.com> + + * doc/gnat_rm/implementation_defined_aspects.rst, + doc/gnat_rm/implementation_defined_pragmas.rst: Add sections for + Always_Terminates. + * gnat-style.texi: Regenerate. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2024-01-09 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/78207 + * libgnat/g-regexp.ads: Fix outdated comment. + +2024-01-09 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/112781 + * exp_ch6.ads (Is_Build_In_Place_Function): Adjust description. + * exp_ch6.adb (Is_True_Build_In_Place_Function_Call): Delete. + (Is_Function_Call_With_BIP_Formals): New predicate. + (Is_Build_In_Place_Function_Call): Restore original semantics. + (Expand_Call_Helper): Adjust conditions guarding the calls to + Add_Dummy_Build_In_Place_Actuals to above renaming. + (Expand_N_Extended_Return_Statement): Adjust to above renaming. + (Expand_Simple_Function_Return): Likewise. Move the assertion + to after the transformation into an extended return statement. + (Make_Build_In_Place_Call_In_Allocator): Remove unreachable code. + (Make_Build_In_Place_Call_In_Assignment): Likewise. + +2024-01-09 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/112781 + * sem_ch12.adb (Instantiate_Type): Use Etype instead of Base_Type + consistently to retrieve the ancestor for a derived type. + * sem_ch4.adb (Analyze_Explicit_Dereference): Test Is_Access_Type + consistently before accessing Designated_Type. + +2024-01-09 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/utils2.cc (build_binary_op) <EQ_EXPR>: Relax + assertion for regular pointer types. + 2024-01-04 David Malcolm <dmalcolm@redhat.com> * gcc-interface/lang.opt.urls: New file, autogenerated by diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index 3f8c3d6..5c62920 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,28 @@ +2024-01-09 waffl3x <waffl3x@protonmail.com> + + PR c++/102609 + PR c++/102609 + C++23 P0847R7 (deducing this) - diagnostics. + * c-cppbuiltin.cc (c_cpp_builtins): Define + __cpp_explicit_this_parameter=202110L feature test macro. + +2024-01-09 Jakub Jelinek <jakub@redhat.com> + + PR c/113262 + * c-attribs.cc (handle_copy_attribute): Don't use + DECL_SOURCE_LOCATION (decl) if decl is not DECL_P, use input_location + instead. Formatting fixes. + +2024-01-09 Julian Brown <julian@codesourcery.com> + + * c-common.h (c_omp_address_inspector): Remove static from get_origin + and maybe_unconvert_ref methods. + * c-omp.cc (c_omp_split_clauses): Support OMP_ARRAY_SECTION. + (c_omp_address_inspector::map_supported_p): Handle OMP_ARRAY_SECTION. + (c_omp_address_inspector::get_origin): Avoid dereferencing possibly + NULL type when processing template decls. + (c_omp_address_inspector::maybe_unconvert_ref): Likewise. + 2024-01-04 David Malcolm <dmalcolm@redhat.com> * c.opt.urls: New file, autogenerated by regenerate-opt-urls.py. diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog index 3e2b5b2..683964dd9 100644 --- a/gcc/c/ChangeLog +++ b/gcc/c/ChangeLog @@ -1,3 +1,8 @@ +2024-01-09 Tamar Christina <tamar.christina@arm.com> + + PR c/113267 + * c-parser.cc (c_parser_for_statement): Skip the pragma is no cond. + 2024-01-03 Kwok Cheung Yeung <kcy@codesourcery.com> * c-parser.cc (c_parser_omp_clause_name): Move handling of indirect diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 945ac62..a666b3b 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,192 @@ +2024-01-09 Jason Merrill <jason@redhat.com> + + * semantics.cc (is_object_parameter): New. + * cp-tree.h (is_object_parameter): Declare. + * call.cc (maybe_warn_class_memaccess): Use it. + * search.cc (field_access_p): Use it. + (class_of_object_parm): New. + (field_accessor_p): Adjust for explicit object parms. + +2024-01-09 Jason Merrill <jason@redhat.com> + + * call.cc (build_over_call): Refactor handle_arg lambda. + * class.cc (xobj_iobj_parameters_correspond): Fix FIXME. + * method.cc (defaulted_late_check): Adjust comments. + +2024-01-09 waffl3x <waffl3x@protonmail.com> + + PR c++/102609 + PR c++/102609 + C++23 P0847R7 (deducing this) - CWG2586. + * decl.cc (copy_fn_p): Accept xobj copy assignment functions. + (move_signature_fn_p): Accept xobj move assignment functions. + * method.cc (do_build_copy_assign): Handle defaulted xobj member + functions. + (defaulted_late_check): Comment. + (defaultable_fn_check): Comment. + +2024-01-09 waffl3x <waffl3x@protonmail.com> + + PR c++/102609 + PR c++/102609 + C++23 P0847R7 (deducing this) - xobj lambdas. + * lambda.cc (build_capture_proxy): Don't fold direct object types. + * parser.cc (cp_parser_lambda_declarator_opt): Handle xobj lambdas, + diagnostics. Comments also updated. + * pt.cc (tsubst_function_decl): Handle xobj lambdas. Check object + type of xobj lambda call operator, diagnose incorrect types. + (tsubst_lambda_expr): Update comment. + * semantics.cc (finish_decltype_type): Also consider by-value object + parameter qualifications. + +2024-01-09 waffl3x <waffl3x@protonmail.com> + + PR c++/102609 + PR c++/102609 + C++23 P0847R7 (deducing this) - diagnostics. + * class.cc (resolve_address_of_overloaded_function): Diagnostics. + * cp-tree.h (TFF_XOBJ_FUNC): Define. + * decl.cc (grokfndecl): Diagnostics. + (grokdeclarator): Diagnostics. + * error.cc (dump_aggr_type): Pass TFF_XOBJ_FUNC. + (dump_lambda_function): Formatting for xobj lambda. + (dump_function_decl): Pass TFF_XOBJ_FUNC. + (dump_parameters): Formatting for xobj member functions. + (function_category): Formatting for xobj member functions. + * parser.cc (cp_parser_decl_specifier_seq): Diagnostics. + (cp_parser_parameter_declaration): Diagnostics. + * search.cc (look_for_overrides_here): Make xobj member functions + override. + (look_for_overrides_r): Reject an overriding xobj member function + and diagnose it. + * semantics.cc (finish_this_expr): Diagnostics. + * typeck.cc (cp_build_addr_expr_1): Diagnostics. + +2024-01-09 waffl3x <waffl3x@protonmail.com> + + PR c++/102609 + PR c++/102609 + C++23 P0847R7 (deducing this) - initial functionality. + * class.cc (xobj_iobj_parameters_correspond): New function, checks + for corresponding object parameters between xobj and iobj member + functions. + (add_method): Handle object parameters of xobj member functions, use + xobj_iobj_parameters_correspond. + * call.cc (build_over_call): Refactor, handle xobj member functions. + (cand_parms_match): Handle object parameters of xobj and iobj member + functions, use xobj_iobj_parameters_correspond. + * cp-tree.h (enum cp_decl_spec): Add ds_this, add comments. + * decl.cc (grokfndecl): Add xobj_func_p parameter. For xobj member + functions, Set xobj_flag, don't set static_function flag. + (grokdeclarator): Handle xobj member functions, tell grokfndecl. + (grok_op_properties): Don't error for xobj operators. + * parser.cc (cp_parser_decl_specifier_seq): Handle this specifier. + (cp_parser_parameter_declaration): Set default argument to + "this_identifier" for xobj parameters. + (set_and_check_decl_spec_loc): Add "this", add comments. + * tree.cc (build_min_non_dep_op_overload): Handle xobj operators. + * typeck.cc (cp_build_addr_expr_1): Handle address-of xobj member + functions. + +2024-01-09 waffl3x <waffl3x@protonmail.com> + Jason Merrill <jason@redhat.com> + + PR c++/102609 + * cp-tree.h (struct lang_decl_fn): New data member. + (DECL_NONSTATIC_MEMBER_FUNCTION_P): Poison. + (DECL_IOBJ_MEMBER_FUNCTION_P): Define. + (DECL_FUNCTION_XOBJ_FLAG): Define. + (DECL_XOBJ_MEMBER_FUNCTION_P): Define. + (DECL_OBJECT_MEMBER_FUNCTION_P): Define. + (DECL_FUNCTION_MEMBER_P): Don't use + DECL_NONSTATIC_MEMBER_FUNCTION_P. + (DECL_CONST_MEMFUNC_P): Likewise. + (DECL_VOLATILE_MEMFUNC_P): Likewise. + (DECL_NONSTATIC_MEMBER_P): Likewise. + * module.cc (trees_out::lang_decl_bools): Handle xobj_flag. + (trees_in::lang_decl_bools): Handle xobj_flag. + * call.cc (build_this_conversion) + (add_function_candidate) + (add_template_candidate_real) + (add_candidates) + (maybe_warn_class_memaccess) + (cand_parms_match) + (joust) + (do_warn_dangling_reference) + * class.cc (finalize_literal_type_property) + (finish_struct) + (resolve_address_of_overloaded_function) + * constexpr.cc (is_valid_constexpr_fn) + (cxx_bind_parameters_in_call) + * contracts.cc (build_contract_condition_function) + * cp-objcp-common.cc (cp_decl_dwarf_attribute) + * cxx-pretty-print.cc (cxx_pretty_printer::postfix_expression) + (cxx_pretty_printer::declaration_specifiers) + (cxx_pretty_printer::direct_declarator) + * decl.cc (cp_finish_decl) + (grok_special_member_properties) + (start_preparsed_function) + (record_key_method_defined) + * decl2.cc (cp_handle_deprecated_or_unavailable) + * init.cc (find_uninit_fields_r) + (build_offset_ref) + * lambda.cc (lambda_expr_this_capture) + (maybe_generic_this_capture) + (nonlambda_method_basetype) + * mangle.cc (write_nested_name) + * method.cc (early_check_defaulted_comparison) + (skip_artificial_parms_for) + (num_artificial_parms_for) + * pt.cc (is_specialization_of_friend) + (determine_specialization) + (copy_default_args_to_explicit_spec) + (check_explicit_specialization) + (tsubst_contract_attribute) + (check_non_deducible_conversions) + (more_specialized_fn) + (maybe_instantiate_noexcept) + (register_parameter_specializations) + (value_dependent_expression_p) + * search.cc (shared_member_p) + (lookup_member) + (field_access_p) + * semantics.cc (finish_omp_declare_simd_methods) + * tree.cc (lvalue_kind) + * typeck.cc (invalid_nonstatic_memfn_p): Don't use + DECL_NONSTATIC_MEMBER_FUNCTION_P. + +2024-01-09 Julian Brown <julian@codesourcery.com> + + * constexpr.cc (potential_consant_expression_1): Handle + OMP_ARRAY_SECTION. + * cp-tree.h (grok_omp_array_section, build_omp_array_section): Add + prototypes. + * decl2.cc (grok_omp_array_section): New function. + * error.cc (dump_expr): Handle OMP_ARRAY_SECTION. + * parser.cc (cp_parser_new): Initialize parser->omp_array_section_p. + (cp_parser_statement_expr): Disallow array sections. + (cp_parser_postfix_open_square_expression): Support OMP_ARRAY_SECTION + parsing. + (cp_parser_parenthesized_expression_list, cp_parser_lambda_expression, + cp_parser_braced_list): Disallow array sections. + (cp_parser_omp_var_list_no_open): Remove ALLOW_DEREF parameter, add + MAP_LVALUE in its place. Support generalised lvalue parsing for + OpenMP map, to and from clauses. Use OMP_ARRAY_SECTION + code instead of TREE_LIST to represent OpenMP array sections. + (cp_parser_omp_var_list): Remove ALLOW_DEREF parameter, add MAP_LVALUE. + Pass to cp_parser_omp_var_list_no_open. + (cp_parser_oacc_data_clause): Update call to cp_parser_omp_var_list. + (cp_parser_omp_clause_map): Add sk_omp scope around + cp_parser_omp_var_list_no_open call. + * parser.h (cp_parser): Add omp_array_section_p field. + * pt.cc (tsubst, tsubst_copy, tsubst_omp_clause_decl, + tsubst_copy_and_build): Add OMP_ARRAY_SECTION support. + * semantics.cc (handle_omp_array_sections_1, handle_omp_array_sections, + cp_oacc_check_attachments, finish_omp_clauses): Use OMP_ARRAY_SECTION + instead of TREE_LIST where appropriate. Handle more types of map + expression. + * typeck.cc (build_omp_array_section): New function. + 2024-01-07 Nathaniel Shead <nathanieloshead@gmail.com> * module.cc (trees_out::write_var_def): Only write initializers diff --git a/gcc/m2/ChangeLog b/gcc/m2/ChangeLog index 938f530..ca4a134 100644 --- a/gcc/m2/ChangeLog +++ b/gcc/m2/ChangeLog @@ -1,3 +1,55 @@ +2024-01-09 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/112920 + * gm2-compiler/M2GCCDeclare.mod (Group): New declaration. + Import MakeSubrange, MakeConstVar, MakeConstLit and DivTrunc. + (FreeGroup): New declaration. + (GlobalGroup): New declaration. + (ToBeSolvedByQuads): Remove. + (NilTypedArrays): Remove. + (PartiallyDeclared): Remove. + (HeldByAlignment): Remove. + (FinishedAlignment): Remove. + (ToDoList): Remove. + (DebugSet): Re-format. + (DebugNumber): Re-format. + (DebugSetNumbers): Reference sets using GlobalGroup. + (AddSymToWatch): Re-format. + (WatchIncludeList): Reference sets using GlobalGroup. + (WatchRemoveList): Reference sets using GlobalGroup. + (NewGroup): New procedure. + (DisposeGroup): New procedure. + (InitGroup): New procedure. + (KillGroup): New procedure. + (DupGroup): New procedure. + (EqualGroup): New procedure. + (LookupSet): New procedure. + (CanDeclareTypePartially): Reference sets using GlobalGroup. + (CompletelyResolved): Reference sets using GlobalGroup. + (IsNilTypedArrays): Reference sets using GlobalGroup. + (IsFullyDeclared): Reference sets using GlobalGroup. + (IsPartiallyDeclared): Reference sets using GlobalGroup. + (IsPartiallyOrFullyDeclared): Reference sets using GlobalGroup. + (DeclareTypeConstFully): Reference sets using GlobalGroup. + (bodyl): Remove. + (Body): Use bodyt and to lookup the required set. + (ForeachTryDeclare): Remove parameter l. Lookup set instead. + (DeclareOutstandingTypes): Add new rules setarraynul and setfully. + Reference sets using GlobalGroup. + (ActivateWatch): New procedure. + (DeclareTypesConstantsProceduresInRange): Re-written to check + group change. + (DeclareTypesConstantsProcedures): Re-written to check + group change. + (DeclareBoolean): Reference sets using GlobalGroup. + (DeclarePackedBoolean): Ditto. + (DeclareDefaultConstants): Ditto. + (FreeGroup): Initialized. + (GlobalGroup): Ditto. + * gm2-compiler/Sets.def (EqualSet): New procedure function. + Remove export qualified list of identifiers. + * gm2-compiler/Sets.mod (EqualSet): New procedure function. + 2024-01-04 David Malcolm <dmalcolm@redhat.com> * lang.opt.urls: New file, autogenerated by diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index a8437be..7ed6f30 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,206 @@ +2024-01-09 Jason Merrill <jason@redhat.com> + + * g++.dg/torture/accessor-fixits-9-xobj.C: New test. + +2024-01-09 waffl3x <waffl3x@protonmail.com> + + PR c++/102609 + PR c++/102609 + C++23 P0847R7 (deducing this) - CWG2586. + * g++.dg/cpp23/explicit-obj-basic6.C: New test. + * g++.dg/cpp23/explicit-obj-default1.C: New test. + * g++.dg/cpp23/explicit-obj-default2.C: New test. + +2024-01-09 waffl3x <waffl3x@protonmail.com> + + PR c++/102609 + PR c++/102609 + C++23 P0847R7 (deducing this) - xobj lambdas. + * g++.dg/cpp23/explicit-obj-diagnostics8.C: New test. + * g++.dg/cpp23/explicit-obj-lambda1.C: New test. + * g++.dg/cpp23/explicit-obj-lambda10.C: New test. + * g++.dg/cpp23/explicit-obj-lambda11.C: New test. + * g++.dg/cpp23/explicit-obj-lambda12.C: New test. + * g++.dg/cpp23/explicit-obj-lambda13.C: New test. + * g++.dg/cpp23/explicit-obj-lambda2.C: New test. + * g++.dg/cpp23/explicit-obj-lambda3.C: New test. + * g++.dg/cpp23/explicit-obj-lambda4.C: New test. + * g++.dg/cpp23/explicit-obj-lambda5.C: New test. + * g++.dg/cpp23/explicit-obj-lambda6.C: New test. + * g++.dg/cpp23/explicit-obj-lambda7.C: New test. + * g++.dg/cpp23/explicit-obj-lambda8.C: New test. + * g++.dg/cpp23/explicit-obj-lambda9.C: New test. + +2024-01-09 waffl3x <waffl3x@protonmail.com> + + PR c++/102609 + PR c++/102609 + C++23 P0847R7 (deducing this) - diagnostics. + * g++.dg/cpp23/feat-cxx2b.C: Test existance and value of + __cpp_explicit_this_parameter feature test macro. + * g++.dg/cpp26/feat-cxx26.C: Likewise. + * g++.dg/cpp23/explicit-obj-cxx-dialect-A.C: New test. + * g++.dg/cpp23/explicit-obj-cxx-dialect-B.C: New test. + * g++.dg/cpp23/explicit-obj-cxx-dialect-C.C: New test. + * g++.dg/cpp23/explicit-obj-cxx-dialect-D.C: New test. + * g++.dg/cpp23/explicit-obj-cxx-dialect-E.C: New test. + * g++.dg/cpp23/explicit-obj-diagnostics1.C: New test. + * g++.dg/cpp23/explicit-obj-diagnostics2.C: New test. + * g++.dg/cpp23/explicit-obj-diagnostics3.C: New test. + * g++.dg/cpp23/explicit-obj-diagnostics4.C: New test. + * g++.dg/cpp23/explicit-obj-diagnostics5.C: New test. + * g++.dg/cpp23/explicit-obj-diagnostics6.C: New test. + * g++.dg/cpp23/explicit-obj-diagnostics7.C: New test. + +2024-01-09 waffl3x <waffl3x@protonmail.com> + + PR c++/102609 + PR c++/102609 + C++23 P0847R7 (deducing this) - initial functionality. + * g++.dg/cpp23/explicit-obj-basic1.C: New test. + * g++.dg/cpp23/explicit-obj-basic2.C: New test. + * g++.dg/cpp23/explicit-obj-basic3.C: New test. + * g++.dg/cpp23/explicit-obj-basic4.C: New test. + * g++.dg/cpp23/explicit-obj-basic5.C: New test. + * g++.dg/cpp23/explicit-obj-by-value1.C: New test. + * g++.dg/cpp23/explicit-obj-by-value2.C: New test. + * g++.dg/cpp23/explicit-obj-by-value3.C: New test. + * g++.dg/cpp23/explicit-obj-by-value4.C: New test. + * g++.dg/cpp23/explicit-obj-constraints.C: New test. + * g++.dg/cpp23/explicit-obj-constraints2.C: New test. + * g++.dg/cpp23/explicit-obj-ops-mem-arrow.C: New test. + * g++.dg/cpp23/explicit-obj-ops-mem-assignment.C: New test. + * g++.dg/cpp23/explicit-obj-ops-mem-call.C: New test. + * g++.dg/cpp23/explicit-obj-ops-mem-subscript.C: New test. + * g++.dg/cpp23/explicit-obj-ops-non-mem-dep.C: New test. + * g++.dg/cpp23/explicit-obj-ops-non-mem-non-dep.C: New test. + * g++.dg/cpp23/explicit-obj-ops-non-mem.h: New test. + * g++.dg/cpp23/explicit-obj-ops-requires-mem.C: New test. + * g++.dg/cpp23/explicit-obj-ops-requires-non-mem.C: New test. + * g++.dg/cpp23/explicit-obj-redecl.C: New test. + * g++.dg/cpp23/explicit-obj-redecl2.C: New test. + * g++.dg/cpp23/explicit-obj-redecl3.C: New test. + * g++.dg/cpp23/explicit-obj-redecl4.C: New test. + +2024-01-09 Jakub Jelinek <jakub@redhat.com> + + PR c/113262 + * gcc.dg/pr113262.c: New test. + +2024-01-09 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/113199 + * gcc.target/gcn/pr113199.c: New test. + +2024-01-09 Tamar Christina <tamar.christina@arm.com> + + * gcc.target/arm/vect-early-break-cbranch.c: Accept thumb output. + +2024-01-09 Tamar Christina <tamar.christina@arm.com> + + PR c/113267 + * gcc.dg/pr113267.c: New test. + +2024-01-09 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/113163 + * gcc.target/gcn/pr113163.c: New test. + +2024-01-09 Julian Brown <julian@codesourcery.com> + + * c-c++-common/gomp/map-6.c: Update expected output. + * c-c++-common/gomp/target-enter-data-1.c: Update scan test. + * g++.dg/gomp/array-section-1.C: New test. + * g++.dg/gomp/array-section-2.C: New test. + * g++.dg/gomp/bad-array-section-1.C: New test. + * g++.dg/gomp/bad-array-section-2.C: New test. + * g++.dg/gomp/bad-array-section-3.C: New test. + * g++.dg/gomp/bad-array-section-4.C: New test. + * g++.dg/gomp/bad-array-section-5.C: New test. + * g++.dg/gomp/bad-array-section-6.C: New test. + * g++.dg/gomp/bad-array-section-7.C: New test. + * g++.dg/gomp/bad-array-section-8.C: New test. + * g++.dg/gomp/bad-array-section-9.C: New test. + * g++.dg/gomp/bad-array-section-10.C: New test. + * g++.dg/gomp/bad-array-section-11.C: New test. + * g++.dg/gomp/has_device_addr-non-lvalue-1.C: New test. + * g++.dg/gomp/pr67522.C: Update expected output. + * g++.dg/gomp/ind-base-3.C: New test. + * g++.dg/gomp/map-assignment-1.C: New test. + * g++.dg/gomp/map-inc-1.C: New test. + * g++.dg/gomp/map-lvalue-ref-1.C: New test. + * g++.dg/gomp/map-ptrmem-1.C: New test. + * g++.dg/gomp/map-ptrmem-2.C: New test. + * g++.dg/gomp/map-static-cast-lvalue-1.C: New test. + * g++.dg/gomp/map-ternary-1.C: New test. + * g++.dg/gomp/member-array-2.C: New test. + +2024-01-09 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/bip_prim_func2.adb: New test. + * gnat.dg/bip_prim_func2_pkg.ads, gnat.dg/bip_prim_func2_pkg.adb: + New helper package. + +2024-01-09 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/113210 + * gcc.c-torture/compile/pr113210.c: New test. + +2024-01-09 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/anon4.ads: New test. + +2024-01-09 Eric Botcazou <ebotcazou@adacore.com> + + * g++.dg/opt/delay-slot-2.C: New test. + +2024-01-09 Roger Sayle <roger@nextmovesoftware.com> + Hongtao Liu <hongtao.liu@intel.com> + + * gcc.target/i386/auto-init-8.c: Update test case. + * gcc.target/i386/avx512f-broadcast-pr87767-1.c: Likewise. + * gcc.target/i386/avx512f-broadcast-pr87767-5.c: Likewise. + * gcc.target/i386/avx512fp16-13.c: Likewise. + * gcc.target/i386/avx512vl-broadcast-pr87767-1.c: Likewise. + * gcc.target/i386/avx512vl-broadcast-pr87767-5.c: Likewise. + * gcc.target/i386/pr100865-1.c: Likewise. + * gcc.target/i386/pr100865-10a.c: Likewise. + * gcc.target/i386/pr100865-10b.c: Likewise. + * gcc.target/i386/pr100865-2.c: Likewise. + * gcc.target/i386/pr100865-3.c: Likewise. + * gcc.target/i386/pr100865-4a.c: Likewise. + * gcc.target/i386/pr100865-4b.c: Likewise. + * gcc.target/i386/pr100865-5a.c: Likewise. + * gcc.target/i386/pr100865-5b.c: Likewise. + * gcc.target/i386/pr100865-9a.c: Likewise. + * gcc.target/i386/pr100865-9b.c: Likewise. + * gcc.target/i386/pr102021.c: Likewise. + * gcc.target/i386/pr90773-17.c: Likewise. + +2024-01-09 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/avx512fp16-xorsign-1.c: Fix testcase. + * gcc.target/i386/part-vect-absneghf.c: Ditto. + +2024-01-09 Jiahao Xu <xujiahao@loongson.cn> + + * gcc.target/loongarch/vector/lasx/lasx-vec-init-2.c: New test. + +2024-01-09 Feng Wang <wangfeng@eswincomputing.com> + + * gcc.target/riscv/rvv/base/zvbb-intrinsic.c: New test. + * gcc.target/riscv/rvv/base/zvbb_vandn_vx_constraint.c: New test. + * gcc.target/riscv/rvv/base/zvbc-intrinsic.c: New test. + * gcc.target/riscv/rvv/base/zvbc_vx_constraint-1.c: New test. + * gcc.target/riscv/rvv/base/zvbc_vx_constraint-2.c: New test. + * gcc.target/riscv/rvv/base/zvkg-intrinsic.c: New test. + * gcc.target/riscv/rvv/base/zvkned-intrinsic.c: New test. + * gcc.target/riscv/rvv/base/zvknha-intrinsic.c: New test. + * gcc.target/riscv/rvv/base/zvknhb-intrinsic.c: New test. + * gcc.target/riscv/rvv/base/zvksed-intrinsic.c: New test. + * gcc.target/riscv/rvv/base/zvksh-intrinsic.c: New test. + * gcc.target/riscv/zvkb.c: New test. + 2024-01-08 John David Anglin <danglin@gcc.gnu.org> * gcc.dg/tree-ssa/ssa-sink-18.c: xfail dg-final "Sunk statements: 5" diff --git a/include/ChangeLog b/include/ChangeLog index b6afbd0..eb71bbb 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,8 @@ +2024-01-09 Jeff Law <jlaw@ventanamicro.com> + + * longlong.h (__stormy16_count_leading_zeros): Add prototype for + __clzhi2. + 2023-12-15 Julian Brown <julian@codesourcery.com> * gomp-constants.h (gomp_map_kind): Add GOMP_MAP_STRUCT_UNORD. diff --git a/libcc1/ChangeLog b/libcc1/ChangeLog index 6cdab11..746e3c4 100644 --- a/libcc1/ChangeLog +++ b/libcc1/ChangeLog @@ -1,3 +1,10 @@ +2024-01-09 waffl3x <waffl3x@protonmail.com> + Jason Merrill <jason@redhat.com> + + PR c++/102609 + * libcp1plugin.cc (plugin_pragma_push_user_expression): Don't use + DECL_NONSTATIC_MEMBER_FUNCTION_P. + 2023-12-06 David Malcolm <dmalcolm@redhat.com> * context.cc (plugin_print_error_function): Make diagnostic_info diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog index 63bc54f..1ff3378 100644 --- a/libgomp/ChangeLog +++ b/libgomp/ChangeLog @@ -1,3 +1,26 @@ +2024-01-09 Julian Brown <julian@codesourcery.com> + + * testsuite/libgomp.c++/baseptrs-4.C: Remove commented-out cases that + now work. + * testsuite/libgomp.c++/baseptrs-6.C: New test. + * testsuite/libgomp.c++/ind-base-1.C: New test. + * testsuite/libgomp.c++/ind-base-2.C: New test. + * testsuite/libgomp.c++/lvalue-tofrom-1.C: New test. + * testsuite/libgomp.c++/lvalue-tofrom-2.C: New test. + * testsuite/libgomp.c++/map-comma-1.C: New test. + * testsuite/libgomp.c++/map-rvalue-ref-1.C: New test. + * testsuite/libgomp.c++/struct-ref-1.C: New test. + * testsuite/libgomp.c-c++-common/array-field-1.c: New test. + * testsuite/libgomp.c-c++-common/array-of-struct-1.c: New test. + * testsuite/libgomp.c-c++-common/array-of-struct-2.c: New test. + +2024-01-09 Jakub Jelinek <jakub@redhat.com> + + PR libgomp/113192 + * configure.ac (FLOCK): Use \$(abs_top_srcdir)/testsuite/flock + rather than $srcdir/testsuite/flock. + * configure: Regenerated. + 2024-01-08 Thomas Schwinge <thomas@codesourcery.com> * plugin/plugin-gcn.c (EF_AMDGPU_MACH): Add diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 056174c..5628341 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,29 @@ +2024-01-09 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/unicode-data.h: Regenerate. + * include/bits/unicode.h (_Utf_iterator::operator++()): Fix off + by one error. + (__incb_property): Add missing check for values before the + first edge. + (__is_extended_pictographic): Invert return values to fix + copy&pasted logic. + (_Grapheme_cluster_view::_Iterator): Remove second iterator + member and find end of cluster lazily. + * testsuite/ext/unicode/grapheme_view.cc: New test. + * testsuite/ext/unicode/properties.cc: New test. + * testsuite/ext/unicode/view.cc: New test. + +2024-01-09 Andreas Schwab <schwab@linux-m68k.org> + + * scripts/extract_symvers.in: Require final colon to only match + .dsynsym in the header of the dynamic symtab. + +2024-01-09 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/chrono_io.h (__formatter_chrono::_M_F): Simplify + handling of string returned from std::format. + (__formatter_chrono::_M_R_T): Likewise. + 2024-01-08 Jonathan Wakely <jwakely@redhat.com> * include/bits/unicode.h (__null_sentinel): Remove. |