[gcc r15-2657] Daily bump.

GCC Administrator gccadmin@gcc.gnu.org
Fri Aug 2 00:19:26 GMT 2024


https://gcc.gnu.org/g:02e83ff378ee71049b83f84792e7fd1e22f51790

commit r15-2657-g02e83ff378ee71049b83f84792e7fd1e22f51790
Author: GCC Administrator <gccadmin@gcc.gnu.org>
Date:   Fri Aug 2 00:18:55 2024 +0000

    Daily bump.

Diff:
---
 contrib/ChangeLog       |    5 +
 gcc/ChangeLog           |  172 +++++++
 gcc/DATESTAMP           |    2 +-
 gcc/ada/ChangeLog       |  298 ++++++++++++
 gcc/cp/ChangeLog        |   35 ++
 gcc/fortran/ChangeLog   |    6 +
 gcc/rust/ChangeLog      | 1153 +++++++++++++++++++++++++++++++++++++++++++++++
 gcc/testsuite/ChangeLog |  171 +++++++
 libgomp/ChangeLog       |    7 +
 libgrust/ChangeLog      |  344 ++++++++++++++
 libstdc++-v3/ChangeLog  |   53 +++
 11 files changed, 2245 insertions(+), 1 deletion(-)

diff --git a/contrib/ChangeLog b/contrib/ChangeLog
index 4d3a99a7091d..9b36caf02bb1 100644
--- a/contrib/ChangeLog
+++ b/contrib/ChangeLog
@@ -1,3 +1,8 @@
+2024-08-01  Thomas Schwinge  <tschwinge@baylibre.com>
+
+	* gcc_update (files_and_dependencies): Update for
+	'libformat_parser' in libgrust.
+
 2024-07-19  Richard Biener  <rguenther@suse.de>
 
 	* gcc-changelog/git_update_version.py: Remove gcc-11 branch.
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3d75a128708f..b4f56beddadb 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,175 @@
+2024-08-01  Robin Dapp  <rdapp@ventanamicro.com>
+
+	PR target/116149
+	* config/riscv/vector.md: Fix mode_idx attribute of scalar
+	widen add/sub variants.
+
+2024-08-01  Patrick O'Neill  <patrick@rivosinc.com>
+
+	PR target/116111
+	* config/riscv/riscv.cc (riscv_option_override): Add error.
+
+2024-08-01  Tamar Christina  <tamar.christina@arm.com>
+
+	* config/aarch64/aarch64-cores.def (cortex-x925): New.
+	* config/aarch64/aarch64-tune.md: Regenerate.
+	* config/aarch64/tuning_models/cortexx925.h: New file.
+	* config/aarch64/aarch64.cc: Use it.
+	* doc/invoke.texi: Document it.
+
+2024-08-01  Tamar Christina  <tamar.christina@arm.com>
+
+	* config/aarch64/tuning_models/neoversen2.h: Update costs.
+
+2024-08-01  Tamar Christina  <tamar.christina@arm.com>
+
+	* config/aarch64/tuning_models/generic_armv9_a.h: Update costs.
+
+2024-08-01  Tamar Christina  <tamar.christina@arm.com>
+
+	* config/aarch64/aarch64-cores.def (neoverse-n3, cortex-a725): New.
+	* config/aarch64/aarch64-tune.md: Regenerate.
+	* config/aarch64/tuning_models/neoversen3.h: New file.
+	* config/aarch64/aarch64.cc: Use it.
+	* doc/invoke.texi: Document it.
+
+2024-08-01  Tamar Christina  <tamar.christina@arm.com>
+
+	* config/aarch64/aarch64-cores.def (neoverse-v3ae): New.
+	* config/aarch64/aarch64-tune.md: Regenerate.
+	* config/aarch64/tuning_models/neoversev3ae.h: New file.
+	* config/aarch64/aarch64.cc: Use it.
+	* doc/invoke.texi: Document it.
+
+2024-08-01  Tamar Christina  <tamar.christina@arm.com>
+
+	* config/aarch64/aarch64-cores.def (cortex-x4): Update.
+	(neoverse-v3): New.
+	* config/aarch64/aarch64-tune.md: Regenerate.
+	* config/aarch64/tuning_models/neoversev3.h: New file.
+	* config/aarch64/aarch64.cc: Use it.
+	* doc/invoke.texi: Document it.
+
+2024-08-01  Tamar Christina  <tamar.christina@arm.com>
+
+	* config/aarch64/aarch64-cores.def (cortex-x3): Use Neoverse-V2 costs.
+	* config/aarch64/tuning_models/neoversev2.h: Update costs.
+
+2024-08-01  Andrew Pinski  <quic_apinski@quicinc.com>
+
+	PR tree-optimization/116120
+	* match.pd (`(a ? x : y) eq/ne (b ? x : y)`): Add test for `x != y`
+	in result.
+	(`(a ? x : y) eq/ne (b ? y : x)`): Add test for `x == y` in result.
+
+2024-08-01  liuhongt  <hongtao.liu@intel.com>
+
+	PR target/116096
+	* config/i386/constraints.md (Wc): New constraint for integer
+	1 or -1.
+	* config/i386/i386.md (ashl<mode>3_doubleword): Refine
+	constraint with Wc.
+
+2024-08-01  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/114659
+	* tree-ssa-sccvn.cc (visit_reference_op_load): Do not
+	prevent punning from modes with padding here, but ...
+	(vn_reference_eq): ... ensure this here, also honoring
+	types with modes that cannot act as bit container.
+
+2024-08-01  Richard Biener  <rguenther@suse.de>
+
+	* config/i386/i386.cc (TARGET_MODE_CAN_TRANSFER_BITS): Define.
+	(ix86_mode_can_transfer_bits): New function.
+
+2024-08-01  Richard Biener  <rguenther@suse.de>
+
+	* target.def (mode_can_transfer_bits): New target hook.
+	* target.h (mode_can_transfer_bits): New function wrapping the
+	hook and providing default behavior.
+	* doc/tm.texi.in: Update.
+	* doc/tm.texi: Re-generate.
+
+2024-08-01  Georg-Johann Lay  <avr@gjlay.de>
+
+	* config/avr/avr.md (cbranch<mode>4_insn): Split to a test of the
+	high part against 0 if possible.
+
+2024-08-01  Georg-Johann Lay  <avr@gjlay.de>
+
+	* config/avr/constraints.md (YMM): New constraint.
+	* config/avr/avr.md (cmp<mode>3, *cmp<mode>3)
+	(cbranch<mode>4_insn): Allow YMM where M is allowed.
+
+2024-08-01  Jakub Jelinek  <jakub@redhat.com>
+
+	PR target/115981
+	* config/i386/sse.md
+	(*<extract_type>_vinsert<shuffletype><extract_suf>_0): Swap the
+	first two VEC_MERGE operands, renumber match_operands and test
+	for 0xF or 0x3 rather than 0xFFF0 or 0xFC immediate.
+
+2024-08-01  Tobias Burnus  <tburnus@baylibre.com>
+	    Richard Biener  <rguenther@suse.de
+
+	PR middle-end/115637
+	* gimplify.cc (gimplify_body): Fix macro name in the comment.
+	* omp-offload.cc (find_link_var_op): Rename to ...
+	(process_link_var_op): ... this. Replace value expr.
+	(pass_omp_target_link::execute): Update walk_gimple_stmt call.
+
+2024-08-01  Lingling Kong  <lingling.kong@intel.com>
+	    Hu, Lin1  <lin1.hu@intel.com>
+
+	PR target/113744
+	* config/i386/i386.md (*add<mode>_4): Remove ndd support.
+	(*adddi_4): Ditto.
+
+2024-08-01  Mark Harmstone  <mark@harmstone.com>
+
+	* dwarf2codeview.cc (get_type_num_struct): Fix NULL pointer dereference.
+
+2024-08-01  David Malcolm  <dmalcolm@redhat.com>
+
+	* diagnostic-path.cc
+	(thread_event_printer::print_swimlane_for_event_range): Gracefully
+	handle logical_location::get_name_for_path_output returning null.
+
+2024-08-01  David Malcolm  <dmalcolm@redhat.com>
+
+	* diagnostic-format-sarif.cc
+	(sarif_location_manager::worklist_item::unlabelled_secondary_location):
+	New enum value.
+	(sarif_location_manager::m_unlabelled_secondary_locations): New
+	field.
+	(sarif_location_manager::process_worklist_item): Handle unlabelled
+	secondary locations.
+	(sarif_builder::make_location_object): Generalize code to handle
+	ranges within a rich_location so as well as using annotations for
+	those with labels, we now add related locations for those without
+	labels.
+
+2024-08-01  David Malcolm  <dmalcolm@redhat.com>
+
+	* diagnostic-format-sarif.cc (sarif_builder::sarif_builder): Assert
+	that m_line_maps is nonnull.
+	(diagnostic_output_format_init_sarif_stderr): Add "line_maps"
+	param and pass to format ctor.
+	(diagnostic_output_format_init_sarif_file): Likewise.
+	(diagnostic_output_format_init_sarif_stream): Likewise.
+	* diagnostic.cc (diagnostic_output_format_init): Pass "line_table"
+	as line_maps param to the above.
+	* diagnostic.h (diagnostic_output_format_init_sarif_stderr): Add
+	"line_maps" param.
+	(diagnostic_output_format_init_sarif_file): Likewise.
+	(diagnostic_output_format_init_sarif_stream): Likewise.
+
+2024-08-01  David Malcolm  <dmalcolm@redhat.com>
+
+	* diagnostic-format-sarif.cc: Tweak ASCII art in comment
+	to show edges for both directions in the digraph.
+
 2024-07-31  Andrew Pinski  <quic_apinski@quicinc.com>
 
 	PR middle-end/116134
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index 5b64322fc602..ba6415cbd757 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20240801
+20240802
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 6d4e4abf85b6..524d324092cc 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,301 @@
+2024-08-01  Yannick Moy  <moy@adacore.com>
+
+	* libgnat/a-strunb.adb (Realloc_For_Chunk): Fix computation of new
+	size.
+
+2024-08-01  Yannick Moy  <moy@adacore.com>
+
+	* libgnat/a-strbou.ads (To_String): Add a postcondition to state
+	the value of bounds of the returned string, which helps with proof
+	of callers.
+	* libgnat/a-strfix.adb (Delete): Fix implementation to produce
+	correct result in all cases. For example, returned string should
+	always have a lower bound of 1, which was not respected in one
+	case. This was not detected by proof, since this code was dead
+	according to the too strict precondition.
+	* libgnat/a-strfix.ads (Delete): State the correct precondition
+	from standard which allows a value of Through beyond the last
+	valid index, and also restricts values of From from below. Update
+	the Contract_Cases accordingly to allow new values of parameters.
+
+2024-08-01  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sem_prag.adb (Analyze_Pragma): Don't check for duplicate
+	SPARK_Mode pragmas in configuration files.
+
+2024-08-01  Gary Dismukes  <dismukes@adacore.com>
+
+	* sem_attr.adb (Resolve_Attribute, Attribute_*Access): Resolve
+	overloaded prefixes that denote objects of reference types,
+	determining whether to use the prefix object directly, or expand
+	it as an explicit dereference.
+
+2024-08-01  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* sinfo.ads (N_Block_Statement): Move At_End_Proc to the end of
+	slot list and alphabetize flag list.
+	(N_Subprogram_Body): Add At_End_Proc.
+	(N_Package_Body): Move At_End_Proc to the end of slot list.
+	(N_Subprogram_Body_Stub): Remove At_End_Proc.
+
+2024-08-01  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sem_ch5.adb (Analyze_Loop_Parameter_Specification):
+	Unconditionally set the type of loop parameter.
+
+2024-08-01  Ghjuvan Lacambre  <lacambre@adacore.com>
+
+	* backend_utils.adb (Scan_Common_Back_End_Switch): Remove blank
+	line.
+	* errout.adb (Output_JSON_Message): Likewise.
+	* erroutc.adb (Set_Msg_Char): Likewise.
+	* exp_aggr.adb (Two_Dim_Packed_Array_Handled): Likewise.
+	* exp_pakd.adb (Expand_Packed_Address_Reference): Likewise.
+	(Expand_Packed_Bit_Reference): Likewise.
+	(Expand_Packed_Boolean_Operator): Likewise.
+	(Expand_Packed_Element_Reference): Likewise.
+	(Expand_Packed_Eq): Likewise.
+	(Expand_Packed_Not): Likewise.
+	* exp_prag.adb (Build_Dim3_Declaration): Likewise.
+	* exp_strm.adb (Build_Elementary_Input_Call): Likewise.
+	* freeze.adb (Find_Aspect_No_Parts): Likewise.
+	(Get_Aspect_No_Parts_Value): Likewise.
+	* gen_il-gen.adb (Compile): Likewise.
+	* gnat1drv.adb (Adjust_Global_Switches): Likewise.
+	* gnat_cuda.adb (Expand_CUDA_Package): Likewise.
+	* gnatchop.adb (Read_File): Likewise.
+	* gnatls.adb (Get_Runtime_Path): Likewise.
+	* make.adb (Binding_Phase): Likewise.
+	* par-ch11.adb (P_Exception_Choice): Likewise.
+	* par-ch5.adb (P_Loop_Parameter_Specification): Likewise.
+	* par-ch6.adb (Is_Extended): Likewise.
+	* sem_attr.adb (Check_Dereference): Likewise.
+	* sem_ch12.adb (Build_Subprogram_Decl_Wrapper): Likewise.
+	* sem_ch3.adb (Build_Itype_Reference): Likewise.
+	* sem_prag.adb (Validate_Compile_Time_Warning_Errors): Likewise.
+	* sem_res.adb (Resolve_Declare_Expression): Likewise.
+	* sem_util.adb (Build_Default_Subtype): Likewise.
+	* sprint.adb (Sprint_Paren_Comma_List): Likewise.
+
+2024-08-01  Javier Miranda  <miranda@adacore.com>
+
+	* par-ch2.adb (P_Interpolated_String_Literal): remove support of
+	multi-line string literals.
+	* doc/gnat_rm/gnat_language_extensions.rst: Update documentation.
+	* gnat_rm.texi: Regenerate.
+
+2024-08-01  Viljar Indus  <indus@adacore.com>
+
+	* sem_warn.adb (Output_Obsolescent_Entity_Warnings): use the ?j?
+	in warning messages.
+
+2024-08-01  Ronan Desplanques  <desplanques@adacore.com>
+
+	* sem_ch5.adb (Analyze_Loop_Parameter_Specification): Fix test for
+	expanded quantified expression context.
+	(Is_Expanded_Quantified_Expr): New function.
+
+2024-08-01  Bob Duff  <duff@adacore.com>
+
+	* sem_ch13.adb (Add_Predicate): Remove the premature "return;".
+	Ghost code needs to be processed by later code in this procedure
+	even when ignored; otherwise the second pass of name resolution
+	fails much later. However, protect Set_SCO_Pragma_Enabled and
+	Add_Condition with "if not Is_Ignored_Ghost_Pragma"; these parts
+	should not happen if the ghost code is Ignored.
+	* libgnat/interfac__2020.ads (Unsigned_8): Minor reformatting.
+	* libgnat/interfac.ads (IEEE_Extended_Float): Minor comment
+	improvement.
+
+2024-08-01  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* einfo.ads (No_Return): Change description and adjust
+	accordingly.
+	* gen_il-gen-gen_entities.adb (Entity_Kind): Remove No_Return.
+	(Subprogram_Kind): Add No_Return.
+	(Generic_Subprogram_Kind): Likewise.
+	* sem_ch6.adb (Analyze_Return_Statement): Adjust No_Return test.
+
+2024-08-01  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* doc/gnat_rm/gnat_language_extensions.rst (Generalized
+	Finalization): Update status.
+	* einfo.ads (Has_Relaxed_Finalization): Add more details.
+	* exp_ch4.adb (Process_Transients_In_Expression): Invoke
+	Make_Finalize_Call_For_Node instead of building the call.
+	* exp_ch5.adb (Expand_N_Assignment_Statement): Do not set up an
+	exception handler around the assignment for a controlled type with
+	relaxed finalization semantics. Streamline the code implementing
+	the protection against aborts and do not use an At_End handler for
+	a controlled type with relaxed finalization semantics.
+	* exp_ch7.ads (Make_Finalize_Call_For_Node): New function.
+	* exp_ch7.adb (Finalize_Address_For_Node): New function renaming.
+	(Set_Finalize_Address_For_Node): New procedure renaming.
+	(Attach_Object_To_Master_Node): Also attach the Finalize_Address
+	primitive to the Master_Node statically.
+	(Build_Finalizer): Add Has_Strict_Ctrl_Objs local variable. Insert
+	back the body of the finalizer at the end of the statement list in
+	the non-package case and restore the associated support code to
+	that effect. When all the controlled objects have the relaxed
+	finalization semantics, do not create a Finalization_Master and
+	finalize the objects directly instead.
+	(Processing_Actions): Add Strict parameter and use it to set the
+	Has_Strict_Ctrl_Objs variable.
+	(Process_Declarations): Make main loop more robust and adjust
+	calls to Processing_Actions.
+	(Make_Finalize_Address_Body): Mark the primitive as inlined if the
+	type has relaxed finalization semantics.
+	(Make_Finalize_Call_For_Node): New function.
+	* sem_ch6.adb (Check_Statement_Sequence): Skip subprogram bodies.
+	* libgnat/s-finpri.ads (Finalize_Object): Add Finalize_Address
+	parameter.
+	(Master_Node): Remove superfluous qualification.
+	* libgnat/s-finpri.adb (Attach_Object_To_Node): Likewise.
+	(Finalize_Master): Adjust calls to Finalize_Object.
+	(Finalize_Object): Add Finalize_Address parameter and assert that
+	it is equal to the component of the node. Use the Object_Address
+	component as guard.
+	(Suppress_Object_Finalize_At_End): Clear Object_Address component.
+	* gnat_rm.texi: Regenerate.
+	* gnat_ugn.texi: Regenerate.
+
+2024-08-01  Arnaud Charlet  <charlet@adacore.com>
+
+	* bindgen.adb (Gen_Main): Put back support for -G
+	* bindusg.adb (Display): Put back line for -G
+	* opt.ads (CCG_Mode): Update doc
+	* switch-b.adb (Scan_Binder_Switches): Put back support for -G
+
+2024-08-01  Ghjuvan Lacambre  <lacambre@adacore.com>
+
+	* exp_pakd.adb (Expand_Bit_Packed_Element_Set): Disable expansion
+	in CodePeerMode.
+	(Expand_Packed_Address_Reference): Likewise.
+	(Expand_Packed_Bit_Reference): Likewise.
+	(Expand_Packed_Boolean_Operator): Likewise.
+	(Expand_Packed_Element_Reference): Likewise.
+	(Expand_Packed_Eq): Likewise.
+	(Expand_Packed_Not): Likewise.
+
+2024-08-01  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sem_ch13.adb (Check_Aspect_Too_Late): Move routine to top-level.
+	(Resolve_Aspect_Expressions): Check aspects Default_Value and
+	Default_Component_Value before resolving their expressions.
+
+2024-08-01  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sem_ch13.adb (Check_Aspect_Too_Late): Prevent freezing during
+	preanalysis.
+
+2024-08-01  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sem_ch13.adb (Resolve_Aspect_Expression): Don't set
+	Must_Not_Freeze before preanalyzing spec expressions.
+
+2024-08-01  Steve Baird  <baird@adacore.com>
+
+	* sem_disp.adb (Check_Dispatching_Operation): When calling
+	Error_Msg_NE to generate a "missing overriding indicator" message,
+	generate a warning message instead of an error message (and update
+	comment to describe this new behavior).
+
+2024-08-01  Javier Miranda  <miranda@adacore.com>
+
+	* sem_aggr.adb (Collect_Aggr_Bounds): Adjust previous patch to
+	store the bounds of inner null aggregates in the itype; required
+	generate the runtime check of ARM 4.3.3(30).
+
+2024-08-01  Arnaud Charlet  <charlet@adacore.com>
+
+	* osint-c.ads, osint-c.adb (Create_C_File, Close_C_File,
+	Delete_C_File): Put back, needed by LLVM based CCG.
+	* exp_unst.adb (Unnest_Subprogram): Complete previous change by
+	removing now dead code and corresponding ??? comment.
+
+2024-08-01  Gary Dismukes  <dismukes@adacore.com>
+
+	* exp_ch3.adb (Build_Record_Init_Proc.Build_Assignment): Do the
+	component adjustment in the case of initialization by a container
+	aggregate.
+
+2024-08-01  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* exp_aggr.adb (Convert_To_Assignments): Set Expansion_Delayed on
+	intermediate conditional expressions for BIP aggregate returns
+	too.
+	* exp_ch4.adb (Expand_N_Case_Expression): Also deal with delayed
+	expansion in the return case.
+	(Expand_N_If_Expression): Likewise.
+
+2024-08-01  Steve Baird  <baird@adacore.com>
+
+	* sem_ch4.adb (Is_Effectively_Visible_Opertor): Return True if
+	Checking_Potentially_Static_Expression is True. The accompanying
+	comment says True is returned "if there is a reason it is ok for
+	Is_Visible_Operator to return False"; if
+	Checking_Potentially_Static_Expression is true, that is such a
+	reason.
+
+2024-08-01  Ghjuvan Lacambre  <lacambre@adacore.com>
+
+	* sem_ch13.adb (Analyze_Attribute_Definition_Clause): Stop
+	ignoring Component_Size attribute in CodePeer_Mode.
+
+2024-08-01  Ronan Desplanques  <desplanques@adacore.com>
+
+	* sem_ch5.adb (Prepare_Param_Spec_Loop): Fix criterion for
+	wrapping loop statements into blocks.
+
+2024-08-01  Arnaud Charlet  <charlet@adacore.com>
+
+	* bindgen.adb, bindusg.adb, debug.adb, einfo.ads,
+	exp_aggr.adb, exp_attr.adb, exp_ch11.adb, exp_ch3.adb,
+	exp_ch4.adb, exp_ch6.adb, exp_ch7.adb, exp_ch8.adb, exp_dbug.adb,
+	exp_dbug.ads, exp_intr.adb, exp_unst.adb, exp_util.adb,
+	exp_util.ads, freeze.adb, gen_il-fields.ads,
+	gen_il-gen-gen_entities.adb, gnat1drv.adb, inline.adb, opt.ads,
+	osint-c.adb, osint-c.ads, sem_attr.adb, sem_ch12.adb, sem_ch3.adb,
+	sem_ch4.adb, sem_ch6.adb, sem_elab.adb, sem_res.adb, sinfo.ads,
+	snames.ads-tmpl, switch-b.adb, switch-c.adb: Major
+	clean up to remove C code generation for bodies.
+
+2024-08-01  Ronan Desplanques  <desplanques@adacore.com>
+
+	* exp_aggr.adb (Flatten): Do not reject empty aggregates. Adjust
+	criterion for emitting warning about ineffective others clause.
+	* sem_aggr.adb (Array_Aggr_Subtype): Fix typo. Add handling of
+	aggregates that were converted to positional form.
+	(Resolve_Aggregate): Tweak criterion for transforming into a
+	string literal.
+	(Resolve_Array_Aggregate): Tweak criterion for reusing existing
+	bounds of aggregate.
+	(Retrieve_Aggregate_Bounds): New procedure.
+	* sem_util.adb (Has_Static_Empty_Array_Bounds): New function.
+	* sem_util.ads (Has_Static_Empty_Array_Bounds): Likewise.
+
+2024-08-01  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* exp_ch7.ads (Build_Finalizer): Remove Top_Decls parameter.
+	* exp_ch7.adb (Build_Finalizer): Likewise. Rename Counter_Val into
+	Count, replace Has_Ctrl_Objs local variable by expression
+	function, remove Spec_Decls local variable and do not reset
+	Finalizer_Decls.
+	(Expand_Cleanup_Actions): Adjust call to Build_Finalizer.
+	(Expand_N_Package_Body): Likewise.
+	(Expand_N_Package_Declaration): Likewise.
+	* inline.adb (Cleanup_Scopes): Likewise.
+
+2024-08-01  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* exp_ch7.adb (Make_Address_For_Finalize): Generate a direct call
+	to the "+" operator of System.Storage_Elements.
+	(Make_Finalize_Address_Stmts): Likewise.
+	* rtsfind.ads (RE_Id): Remove RE_Add_Offset_To_Address.
+	(RE_Unit_Table): Remove entry for RE_Add_Offset_To_Address.
+	* libgnat/s-finpri.ads (Add_Offset_To_Address): Delete.
+	* libgnat/s-finpri.adb (Add_Offset_To_Address): Likewise.
+
 2024-07-07  Maciej W. Rozycki  <macro@orcam.me.uk>
 
 	* gcc-interface/Make-lang.in (ada.all.cross): Move recipe to...
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index eff18919deb5..70406b6f3739 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,38 @@
+2024-08-01  Jakub Jelinek  <jakub@redhat.com>
+
+	PR c++/116113
+	* semantics.cc (maybe_convert_cond): Check DECL_DECOMP_BASE
+	is non-NULL before dereferencing it.
+	(finish_switch_cond): Likewise.
+
+2024-08-01  Arsen Arsenović  <arsen@aarsen.me>
+
+	PR c++/112341
+	* coroutines.cc (struct coroutine_info): Also cache the
+	traits type.
+	(ensure_coro_initialized): New function.  Makes sure we have
+	initialized the coroutine state successfully, or informs the
+	caller should it fail to do so.  Extracted from
+	coro_promise_type_found_p.
+	(coro_get_traits_class): New function.  Gets the (cached)
+	coroutine traits type for a given coroutine.  Extracted from
+	coro_promise_type_found_p and refactored to cache the result.
+	(coro_promise_type_found_p): Use the two functions above.
+	(build_template_co_await_expr): New function.  Builds a
+	CO_AWAIT_EXPR representing a CO_AWAIT_EXPR in a template
+	declaration.
+	(build_co_await): Use the above if processing_template_decl, and
+	give it a proper type.
+	(coro_dependent_p): New function.  Returns true iff its
+	argument is a type-dependent expression OR the current functions
+	traits class is type dependent.
+	(finish_co_await_expr): Defer expansion only in the case
+	coro_dependent_p returns true.
+	(finish_co_yield_expr): Ditto.
+	(finish_co_return_stmt): Ditto.
+	* pt.cc (type_dependent_expression_p): Do not treat
+	CO_AWAIT/CO_YIELD specially.
+
 2024-07-31  Marek Polacek  <polacek@redhat.com>
 
 	PR c++/115645
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index e3e0d9b98d93..f45c89f3b6ca 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,9 @@
+2024-08-01  Jakub Jelinek  <jakub@redhat.com>
+
+	* trans-types.cc (gfc_get_array_descr_info): Don't test if
+	!integer_zerop (dtype_off), use fold_build_pointer_plus
+	unconditionally.
+
 2024-07-29  Tobias Burnus  <tburnus@baylibre.com>
 
 	PR fortran/115559
diff --git a/gcc/rust/ChangeLog b/gcc/rust/ChangeLog
index ef602b919bed..d6cd1f924ec2 100644
--- a/gcc/rust/ChangeLog
+++ b/gcc/rust/ChangeLog
@@ -1,3 +1,1156 @@
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-default-resolver.cc (DefaultResolver::visit): Visit
+	inherent impl type.
+
+2024-08-01  Jakub Dupak  <dev@jakubdupak.com>
+
+	* checks/errors/borrowck/ffi-polonius/src/gccrs_ffi.rs: Bump copyright.
+	* checks/errors/borrowck/ffi-polonius/src/lib.rs: Bump copyright.
+	* checks/errors/borrowck/polonius/rust-polonius-ffi.h: Bump copyright.
+	* checks/errors/borrowck/polonius/rust-polonius.h: Bump copyright.
+	* checks/errors/borrowck/rust-bir-dump.cc: Bump copyright.
+	* checks/errors/borrowck/rust-bir-fact-collector.h: Bump copyright.
+	* checks/errors/borrowck/rust-bir-free-region.h: Bump copyright.
+
+2024-08-01  Jakub Dupak  <dev@jakubdupak.com>
+
+	* checks/errors/borrowck/rust-bir-dump.cc (renumber_places):
+	Remove unecessary braces.
+	(Dump::go): Remove unecessary braces.
+	(Dump::visit): Remove unecessary braces.
+	(Dump::visit_scope): Remove unecessary braces.
+	* checks/errors/borrowck/rust-bir-fact-collector.h (class FactCollector):
+	Remove unecessary braces.
+	(points): Remove unecessary braces.
+	* checks/errors/borrowck/rust-bir-free-region.h: Remove unecessary braces.
+	* checks/errors/borrowck/rust-bir-place.h: Remove unecessary braces.
+	* checks/errors/borrowck/rust-borrow-checker.cc (BorrowChecker::go):
+	Remove unecessary braces.
+	* checks/errors/borrowck/rust-function-collector.h: Remove unecessary braces.
+
+2024-08-01  Jakub Dupak  <dev@jakubdupak.com>
+
+	* checks/errors/borrowck/rust-bir-fact-collector.h: New file.
+	* checks/errors/borrowck/rust-borrow-checker.cc (BorrowChecker::go):
+	Enable fact collection.
+
+2024-08-01  Jakub Dupak  <dev@jakubdupak.com>
+
+	* checks/errors/borrowck/rust-bir-place.h (struct Lifetime):
+	Extended regions and loans.
+	(struct Loan): Representation of loan (result of borrowing)
+	* checks/errors/borrowck/rust-bir-builder-expr-stmt.cc (ExprStmtBuilder::visit):
+	Fix let stmt handling.
+	* checks/errors/borrowck/rust-bir-builder-pattern.h: improved
+	pattern translation
+	* checks/errors/borrowck/rust-bir-builder-internal.h: region binding
+	* checks/errors/borrowck/rust-bir-builder-expr-stmt.h (class ExprStmtBuilder):
+	Region support.
+	(class RenumberCtx): Region support.
+	* checks/errors/borrowck/rust-bir-builder.h (class Builder): Region support.
+	* checks/errors/borrowck/rust-bir-dump.cc (get_lifetime_name): Region support.
+	(renumber_places): Region support.
+	(Dump::go): Region support.
+	(Dump::visit): Region support.
+	(Dump::visit_lifetime): Region support.
+	(Dump::visit_scope): Region support.
+	* checks/errors/borrowck/rust-bir.h (class AbstractExpr): Region support.
+	(struct Function): Region support.
+	(class BorrowExpr): Region support.
+	(class CallExpr): Region support.
+
+2024-08-01  Jakub Dupak  <dev@jakubdupak.com>
+
+	* typecheck/rust-tyty-variance-analysis-private.h (class FieldVisitorCtx):
+	Region extraction.
+	* typecheck/rust-tyty-variance-analysis.cc (query_field_regions): Region extraction.
+	(FieldVisitorCtx::collect_regions): Region extraction.
+	(FieldVisitorCtx::add_constraints_from_ty): Region extraction.
+	(FieldVisitorCtx::add_constraints_from_region): Region
+	extraction.
+	(FieldVisitorCtx::add_constrints_from_param): Region extraction.
+	* typecheck/rust-tyty-variance-analysis.h (query_field_regions):
+	Region extraction.
+
+2024-08-01  Jakub Dupak  <dev@jakubdupak.com>
+
+	* checks/errors/borrowck/rust-bir-free-region.h: New file.
+
+2024-08-01  Jakub Dupak  <dev@jakubdupak.com>
+
+	* checks/errors/borrowck/ffi-polonius/Cargo.toml: New file.
+	* checks/errors/borrowck/ffi-polonius/src/gccrs_ffi.rs: New file.
+	* checks/errors/borrowck/ffi-polonius/src/gccrs_ffi_generated.rs: New file.
+	* checks/errors/borrowck/ffi-polonius/src/lib.rs: New file.
+	* checks/errors/borrowck/polonius/rust-polonius-ffi.h: New file.
+	* checks/errors/borrowck/polonius/rust-polonius.h: New file.
+
+2024-08-01  Jakub Dupak  <dev@jakubdupak.com>
+
+	* checks/errors/borrowck/rust-bir-dump.cc (Dump::visit): const
+	visitor
+	* checks/errors/borrowck/rust-bir-dump.h: const visitor
+	* checks/errors/borrowck/rust-bir-visitor.h: const visitor
+	* checks/errors/borrowck/rust-bir.h: const getter
+
+2024-08-01  Jakub Dupak  <dev@jakubdupak.com>
+
+	* checks/errors/borrowck/rust-bir-builder-expr-stmt.cc (ExprStmtBuilder::visit): Emit moves.
+	* checks/errors/borrowck/rust-bir-builder-internal.h: Emit moves.
+	* checks/errors/borrowck/rust-bir-builder-lazyboolexpr.h: Emit moves.
+	* checks/errors/borrowck/rust-bir-dump.cc (Dump::visit_move_place): Emit moves.
+	(Dump::visit): Emit moves.
+	* checks/errors/borrowck/rust-bir-place.h (struct Place): Emit moves.
+	* checks/errors/borrowck/rust-bir-visitor.h: Emit moves.
+	* checks/errors/borrowck/rust-bir.h (enum class): Emit moves.
+	(class AbstractExpr): Emit moves.
+	(BasicBlock::is_terminated): Emit moves.
+
+2024-08-01  Jakub Dupak  <dev@jakubdupak.com>
+
+	* checks/errors/borrowck/rust-bir-builder-expr-stmt.cc (ExprStmtBuilder::setup_loop):
+	Loop handling.
+	(ExprStmtBuilder::visit): Handle scopes.
+	* checks/errors/borrowck/rust-bir-builder-internal.h (struct BuilderContext):
+	Handle scopes.
+	* checks/errors/borrowck/rust-bir-dump.cc (Dump::go): Dump scopes.
+	(Dump::visit): Add scopes dump.
+	(Dump::indent): Add indentation logic.
+	(Dump::visit_scope): Dump scope.
+	* checks/errors/borrowck/rust-bir-dump.h: Dump methods.
+	* checks/errors/borrowck/rust-bir-place.h (std::numeric_limits::max): Scope constants.
+	(struct Scope): Scope representation.
+	(class PlaceDB): Scope tracking.
+
+2024-08-01  Jakub Dupak  <dev@jakubdupak.com>
+
+	* checks/errors/borrowck/rust-bir-place.h:
+	Create place tree traverse API.
+
+2024-08-01  Jakub Dupak  <dev@jakubdupak.com>
+
+	* checks/errors/borrowck/rust-bir-builder-expr-stmt.cc (ExprStmtBuilder::visit):
+	Use callable API
+
+2024-08-01  Jakub Dupak  <dev@jakubdupak.com>
+
+	* checks/errors/borrowck/bir-design-notes.md (nodes): Rename node to statement.
+	(Nodes): Rename node to statement.
+	* checks/errors/borrowck/rust-bir-builder-expr-stmt.cc (ExprStmtBuilder::visit):
+	Rename node to statement.
+	* checks/errors/borrowck/rust-bir-builder-internal.h: Rename node to statement.
+	* checks/errors/borrowck/rust-bir-builder.h: Rename node to statement.
+	* checks/errors/borrowck/rust-bir-dump.cc (Dump::go): Rename node to statement.
+	(Dump::visit): Rename node to statement.
+	* checks/errors/borrowck/rust-bir-dump.h (class Dump): Rename node to statement.
+	* checks/errors/borrowck/rust-bir-visitor.h (class Node): Rename node to statement.
+	(class Statement): Rename node to statement.
+	* checks/errors/borrowck/rust-bir.h (class Node): Rename node to statement.
+	(class Statement): Rename node to statement.
+	(class AbstractExpr): Rename node to statement.
+	(struct Function): Rename node to statement.
+	(struct BasicBlock): Rename node to statement.
+
+2024-08-01  Jakub Dupak  <dev@jakubdupak.com>
+
+	* checks/errors/borrowck/rust-bir-dump.cc: Use rust-system.h
+	* checks/errors/borrowck/rust-bir-dump.h (RUST_BIR_DUMP_H): Use rust-system.h
+	* checks/errors/borrowck/rust-bir-place.h (RUST_BIR_PLACE_H): Use rust-system.h
+	* checks/errors/borrowck/rust-function-collector.h: Use rust-system.h
+	* rust-system.h: Use rust-system.h
+	* typecheck/rust-hir-type-check.h: Use rust-system.h
+	* typecheck/rust-tyty-subst.cc: Use rust-system.h
+	* typecheck/rust-tyty-subst.h: Use rust-system.h
+	* typecheck/rust-tyty.h: Use rust-system.h
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* typecheck/rust-unify.cc (UnifyRules::go): Always unify to `ltype` if
+	we are matching against a `Never` in `rtype`.
+	(UnifyRules::expect_never): Always unify to the expected type.
+
+2024-08-01  Owen Avery  <powerboat9.gamer@gmail.com>
+
+	* lex/rust-lex.cc
+	(Lexer::parse_raw_string):
+	Bring handling of edge cases to par with parse_raw_byte_string.
+
+2024-08-01  Owen Avery  <powerboat9.gamer@gmail.com>
+
+	* parse/rust-parse-impl.h
+	(Parser::parse_vis_item):
+	Call parse_function instead of parse_async_item when finding
+	UNSAFE or EXTERN_KW during lookahead.
+
+2024-08-01  Owen Avery  <powerboat9.gamer@gmail.com>
+
+	* util/rust-attribute-values.h
+	(Attributes::UNSTABLE): New.
+	* util/rust-attributes.cc
+	(__definitions): Add Attributes::UNSTABLE.
+
+2024-08-01  Owen Avery  <powerboat9.gamer@gmail.com>
+
+	* util/rust-attribute-values.h
+	(Attributes::RUSTC_DEPRECATED): New.
+	* util/rust-attributes.cc
+	(__definitions): Add Attributes::RUSTC_DEPRECATED.
+
+2024-08-01  Owen Avery  <powerboat9.gamer@gmail.com>
+
+	* lex/rust-lex.cc
+	(Lexer::parse_raw_byte_string):
+	Bring handling of edge cases to par with parse_byte_string.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-forever-stack.h: Change dfs function prototype and
+	declare dfs return type structure.
+	* resolve/rust-forever-stack.hxx: Adapt dfs function to the new return
+	type.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* backend/rust-compile-resolve-path.cc: Attempt to resolve names
+	also using new name resolution context.
+	* backend/rust-compile-resolve-path.h: Add new declaration.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-toplevel-name-resolver-2.0.cc (TopLevel::handle_use_glob):
+	Change function prototype to use a reference instead.
+	(TopLevel::handle_use_dec): Likewise.
+	(TopLevel::handle_rebind): Add name resolution on rebind use
+	declarations.
+	(flatten_rebind): Change prototype to accept a pair of path/alias.
+	(flatten_list): Adapt call to flatten_rebind.
+	(flatten): Adapt call to flatten_rebind.
+	(flatten_glob): Remove unused part.
+	(TopLevel::visit): Add rebind resolution.
+	* resolve/rust-toplevel-name-resolver-2.0.h: Adapt function prototypes.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-late-name-resolver-2.0.cc (Late::visit): Add mapping
+	implementation.
+	* resolve/rust-late-name-resolver-2.0.h: Add function visitor prototype
+	override.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-toplevel-name-resolver-2.0.cc (TopLevel::handle_use_dec):
+	Replace the string format %<%s%> with the proper %qs format.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* typecheck/rust-hir-type-check-path.cc (TypeCheckExpr::resolve_root_path):
+	Only get immutable name resolution context when name resolution 2.0 is
+	used.
+	* typecheck/rust-hir-type-check-type.cc (TypeCheckType::resolve_root_path):
+	Likewise.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* util/rust-canonical-path.h: Also assign crate number.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-toplevel-name-resolver-2.0.cc (TopLevel::visit): Add
+	Self generic parameter injection and a warning.
+	* resolve/rust-toplevel-name-resolver-2.0.h: Add function prototype.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* backend/rust-compile-item.cc (CompileItem::visit): Check the resolver
+	flag and use the new one when required.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-default-resolver.cc (DefaultResolver::visit): Remove
+	empty visit function.
+	* resolve/rust-default-resolver.h: Remove function prototype.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-default-resolver.cc (DefaultResolver::visit): Remove
+	visitor implementation and scoping.
+	* resolve/rust-default-resolver.h: Remove function prototype.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-toplevel-name-resolver-2.0.cc (TopLevel::visit): Add
+	constant identifiers to the resolver.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* typecheck/rust-hir-type-check-item.cc (TypeCheckItem::visit): Change
+	search location for struct types.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-toplevel-name-resolver-2.0.cc (GlobbingVisitor::visit):
+	Change enum type namespace.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-toplevel-name-resolver-2.0.cc (GlobbingVisitor::visit):
+	Add tuple struct type to the resolver's context.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-toplevel-name-resolver-2.0.cc (GlobbingVisitor::visit):
+	Add the struct constructor when the struct is a unit.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-late-name-resolver-2.0.cc (Late::visit): Change the
+	namespace for values from "label" to "values".
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-default-resolver.cc (DefaultResolver::visit): Remove
+	function implementation.
+	* resolve/rust-default-resolver.h: Remove function prototype.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-default-resolver.cc (DefaultResolver::visit): Visit
+	constant item's types.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-default-resolver.cc (DefaultResolver::visit): Visit
+	function return type.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* typecheck/rust-hir-type-check-path.cc (TypeCheckExpr::resolve_root_path):
+	Change error message to match old resolver and test case.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-toplevel-name-resolver-2.0.cc (TopLevel::visit): Add
+	the struct constructor to the value namespace.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-early-name-resolver-2.0.cc (Early::visit): Adapt
+	resolved type to the new API.
+	(Early::visit_attributes): Retrieve the node id from the definition.
+	* resolve/rust-forever-stack.h: Change the return type of getter
+	functions. Those functions now return a definition type instead of a
+	node id.
+	* resolve/rust-forever-stack.hxx: Change member function implementation
+	in the forever stack to accomodate it's API changes.
+	* resolve/rust-late-name-resolver-2.0.cc (Late::visit): Use internal
+	node id. Emit an error when resolving multiple ambiguous values.
+	* resolve/rust-rib.cc (Rib::Definition::Definition): Add a default
+	constructor.
+	(Rib::Definition::is_ambiguous): Add a new function to determine
+	whether a function definition is ambiguous or not.
+	(Rib::Definition::to_string): Add a member function to convert a given
+	definition to a string.
+	(Rib::insert): Add new rules for value insertion in a rib. Insertion
+	order does not impact the result anymore: inserting a shadowable value
+	after a non shadowable one does not trigger an error anymore. All
+	shadowable values inserted in a rib are kepts until being replaced by a
+	non shadowable one.
+	(Rib::get): Return a definition instead of a node id.
+	* resolve/rust-rib.h: Update function prototypes.
+	* resolve/rust-toplevel-name-resolver-2.0.cc (TopLevel::handle_use_glob):
+	Update return value container to match the new function's prototype.
+	(TopLevel::handle_use_dec): Likewise.
+	(flatten_glob): Likewise.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-forever-stack.h: Add a new function prototype to insert
+	a shadowable definition.
+	* resolve/rust-forever-stack.hxx: Add the new insert_shadowable
+	function to insert shadowable definition into the forever stack.
+	* resolve/rust-name-resolution-context.cc (NameResolutionContext::insert_shadowable):
+	Likewise with the name resolution context.
+	* resolve/rust-name-resolution-context.h: Add name resolution context
+	insert_shadowable member function prototype.
+	* resolve/rust-toplevel-name-resolver-2.0.cc (GlobbingVisitor::visit):
+	Insert shadowable definition into the forever stack for glob use
+	declaration.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-late-name-resolver-2.0.cc (Late::visit): Add a check
+	for missing item.
+	* resolve/rust-toplevel-name-resolver-2.0.cc (GlobbingVisitor::go):
+	Add a new function in the visitor to dispatch the visitor to items in
+	the given module.
+	(TopLevel::handle_use_glob): Change call to visitor to use the pointer.
+	* resolve/rust-toplevel-name-resolver-2.0.h: Add prototype for new
+	member function.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* checks/lints/rust-lint-marklive.cc (MarkLive::find_ref_node_id):
+	Add code path for the resolver 2.0
+	* resolve/rust-late-name-resolver-2.0.cc (Late::visit): Remove failing
+	label context resolve call.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-toplevel-name-resolver-2.0.cc (GlobbingVisitor::visit):
+	Insert names into their namespace.
+	(TopLevel::visit): Insert ast module.
+	(TopLevel::handle_use_dec): Resolve use declaration.
+	(TopLevel::handle_use_glob): Use globbing visitor.
+	(flatten_list): Use globbing path vector.
+	(flatten_glob): Likewise.
+	(flatten): Likewise.
+	(prefix_subpaths): Add a function to prefix subpath.
+	* resolve/rust-toplevel-name-resolver-2.0.h (class GlobbingVisitor):
+	Add globbing visitor.
+	* util/rust-hir-map.cc (Mappings::insert_ast_module): Add function to
+	insert module in module hashmap.
+	(Mappings::lookup_ast_module): Add function to retrieve ast module.
+	* util/rust-hir-map.h: Add module map and getter/setter prototypes.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-toplevel-name-resolver-2.0.cc (TopLevel::visit): Module
+	should be added to the type namespace in order to be retrieved later.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* resolve/rust-late-name-resolver-2.0.cc (Late::setup_builtin_types):
+	Setup bool as builtin type.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-toplevel-name-resolver-2.0.cc (insert_macros): Add
+	constraint over the ast node id.
+	(TopLevel::visit): Likewise.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-toplevel-name-resolver-2.0.cc (TopLevel::visit): Change
+	error message.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-toplevel-name-resolver-2.0.cc (TopLevel::handle_use_dec):
+	Use the new dict to track down already resolved use declarations.
+	* resolve/rust-toplevel-name-resolver-2.0.h: Add new dict to store
+	previous use declarations.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* resolve/rust-toplevel-name-resolver-2.0.cc (TopLevel::insert_or_error_out):
+	Add new constraint to duplicate errors.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* resolve/rust-forever-stack.hxx: Start using Rib::Definition for
+	shadowable information.
+	* resolve/rust-late-name-resolver-2.0.cc (next_node_id): New.
+	(next_hir_id): New.
+	(Late::setup_builtin_types): Improve builtin type setup.
+	* resolve/rust-rib.cc (Rib::Definition::Definition): New constructor.
+	(Rib::Definition::Shadowable): Likewise.
+	(Rib::Definition::NonShadowable): Likewise.
+	(Rib::Rib): Fix general constructor.
+	(Rib::insert): Use Definition class.
+	(Rib::get): Likewise.
+	* resolve/rust-rib.h: New Definition class, new prototypes.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* resolve/rust-name-resolution-context.cc (NameResolutionContext::map_usage):
+	Use newtype pattern.
+	(NameResolutionContext::lookup): Likewise.
+	* resolve/rust-name-resolution-context.h (class Usage): New class.
+	(class Definition): Likewise.
+	* resolve/rust-late-name-resolver-2.0.cc (Late::visit): Create instances
+	of Usage and Definition.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* backend/rust-compile-base.cc: Use new ImmutableNrCtx.
+	* backend/rust-compile-context.h: Likewise.
+	* backend/rust-compile-expr.cc: Likewise.
+	* backend/rust-compile-item.cc: Likewise.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* typecheck/rust-hir-type-check-item.cc (TypeCheckItem::visit): Start
+	fetching name resolution information in the typechecker.
+	* typecheck/rust-hir-type-check-type.cc (TypeCheckType::resolve_root_path):
+	Likewise.
+	* typecheck/rust-hir-type-check-path.cc: Use nr 2.0.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* resolve/rust-name-resolution-context.cc (NameResolutionContext::lookup):
+	Add lookup function.
+	* resolve/rust-name-resolution-context.h: Include mappings and optional.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* rust-session-manager.cc (Session::compile_crate): Create an immutable
+	view of the name resolution context.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* rust-session-manager.cc: Add files for dumping name resolution, call
+	name resolution dump function.
+	(Session::dump_name_resolution): New.
+	* rust-session-manager.h: New declaration.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* rust-session-manager.cc (Session::compile_crate): Create name resolution
+	context for Session::expansion and subsequent name resolution passes.
+	(Session::expansion): Take name resolution context as a parameter
+	instead.
+	* rust-session-manager.h (Session::expansion): Fix declaration.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* Make-lang.in: Compile it.
+	* resolve/rust-immutable-name-resolution-context.cc: New file.
+	* resolve/rust-immutable-name-resolution-context.h: New file.
+
+2024-08-01  Thomas Schwinge  <tschwinge@baylibre.com>
+
+	* lex/rust-lex.cc (is_identifier_start): Placate clang-format.
+
+2024-08-01  jjasmine  <tanghocle456@gmail.com>
+
+	* Make-lang.in: add new .o builds for new .cc files
+	* expand/rust-cfg-strip.h (RUST_CFG_STRIP_H): Add include guards
+	for rust-cfg-strip
+	* expand/rust-macro-builtins.cc (make_macro_path_str): moved to new respective files
+	(make_token): moved to new respective files
+	(make_string): moved to new respective files
+	(macro_end_token): moved to new respective files
+	(try_extract_string_literal_from_fragment): moved to new respective files
+	(try_expand_many_expr): moved to new respective files
+	(parse_single_string_literal): moved to new respective files
+	(source_relative_path): moved to new respective files
+	(load_file_bytes): moved to new respective files
+	(MacroBuiltin::assert_handler): moved to new respective files
+	(MacroBuiltin::file_handler): moved to new respective files
+	(MacroBuiltin::column_handler): moved to new respective files
+	(MacroBuiltin::include_bytes_handler): moved to new respective files
+	(MacroBuiltin::include_str_handler): moved to new respective files
+	(MacroBuiltin::compile_error_handler): moved to new respective files
+	(MacroBuiltin::concat_handler): moved to new respective files
+	(MacroBuiltin::env_handler): moved to new respective files
+	(MacroBuiltin::cfg_handler): moved to new respective files
+	(MacroBuiltin::include_handler): moved to new respective files
+	(MacroBuiltin::line_handler): moved to new respective files
+	(MacroBuiltin::stringify_handler): moved to new respective files
+	(struct FormatArgsInput): moved to new respective files
+	(struct FormatArgsParseError): moved to new respective files
+	(format_args_parse_arguments): moved to new respective files
+	(MacroBuiltin::format_args_handler): moved to new respective files
+	* expand/rust-macro-builtins.h (builtin_macro_from_string):
+	merge tl::optional from master
+	* expand/rust-macro-builtins-asm.cc: New file.
+	* expand/rust-macro-builtins-format-args.cc: New file.
+	* expand/rust-macro-builtins-helpers.cc: New file.
+	* expand/rust-macro-builtins-helpers.h: New file.
+	* expand/rust-macro-builtins-include.cc: New file.
+	* expand/rust-macro-builtins-location.cc: New file.
+	* expand/rust-macro-builtins-log-debug.cc: New file.
+	* expand/rust-macro-builtins-test-bench.cc: New file.
+	* expand/rust-macro-builtins-trait.cc: New file.
+	* expand/rust-macro-builtins-utility.cc: New file.
+
+2024-08-01  Guillaume Gomez  <guillaume1.gomez@gmail.com>
+
+	* expand/rust-derive.cc (DeriveVisitor::derive): Fix typo
+
+2024-08-01  jjasmine  <tanghocle456@gmail.com>
+
+	* hir/rust-ast-lower-extern.h: Add translate_visiblity
+	* hir/tree/rust-hir-item.h: Fix constructor of ExternalTypeItem
+
+2024-08-01  Jakub Dupak  <dev@jakubdupak.com>
+
+	* typecheck/rust-hir-type-check-item.cc (TypeCheckItem::visit):
+	Collect variance info from types.
+
+2024-08-01  Jakub Dupak  <dev@jakubdupak.com>
+
+	* Make-lang.in: Add new .cc file.
+	* rust-session-manager.cc (Session::compile_crate): Run
+	analysis.
+	* typecheck/rust-tyty-variance-analysis-private.h: New file.
+	* typecheck/rust-tyty-variance-analysis.cc: New file.
+	* typecheck/rust-tyty-variance-analysis.h: New file.
+	* typecheck/rust-typecheck-context.cc
+	(TypeCheckContext::get_variance_analysis_ctx):
+	Variance analysis context.
+	* typecheck/rust-hir-type-check.h (TypeCheckItem::visit):
+	Variance analysis context.
+
+2024-08-01  Jakub Dupak  <dev@jakubdupak.com>
+
+	* typecheck/rust-tyty-subst.cc (SubstitutionRef::get_arg_at):
+	Add unified API.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* expand/rust-macro-builtins.cc (struct FormatArgsInput): Store the format_str
+	as a string instead of an AST::Expr.
+	(format_args_parse_arguments): Transform format_expr into a format string
+	properly - add note for handling eager macro invocations later on.
+	(MacroBuiltin::format_args_handler): Parse the correct input, append
+	newline to format_str if necessary.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* ast/rust-ast-builder.h: Rename AST::AstBuilder -> AST::Builder
+	* ast/rust-ast-builder.cc: Likewise.
+	* expand/rust-derive.cc: Use new AST::Builder name.
+	* expand/rust-derive.h: Likewise.
+	* ast/rust-builtin-ast-nodes.h: Add required getters.
+	* expand/rust-expand-format-args.cc (format_arg): New.
+	(get_trait_name): New.
+	(expand_format_args): Properly expand basic format_args!() invocations.
+	* expand/rust-expand-format-args.h (expand_format_args): Fix signature.
+	* expand/rust-macro-builtins.cc (MacroBuiltin::format_args_handler):
+	Call into expand_format_args().
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* ast/rust-fmt.cc (ffi::RustHamster::to_string): New.
+	(Pieces::collect): Adapt to use new handle API.
+	(Pieces::~Pieces): Likewise.
+	(Pieces::Pieces): Likewise.
+	(Pieces::operator=): Likewise.
+	* ast/rust-fmt.h (struct RustString): Add members.
+	(struct FormatArgsHandle): New.
+	(clone_pieces): Adapt for new FFI API.
+	(destroy_pieces): Likewise.
+	(struct Pieces): Store new FormatArgsHandle type.
+	* expand/rust-expand-format-args.cc (expand_format_args): Use proper
+	namespace.
+	* resolve/rust-ast-resolve-base.cc (ResolverBase::visit): FormatArgs
+	nodes are already resolved, so do nothing.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* Make-lang.in: Add new object.
+	* hir/rust-ast-lower-expr.cc (ASTLoweringExpr::visit): Remove calls to
+	FormatArgsLowering.
+	* expand/rust-expand-format-args.cc: New file.
+	* expand/rust-expand-format-args.h: New file.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* ast/rust-macro.h: Use proper node id instead of the one in the base
+	Expr class - which is uninitialized.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* ast/rust-ast-collector.cc (TokenCollector::visit): Remove reference
+	to unique pointer and replace it with a direct reference to the wrapped
+	data.
+	* ast/rust-ast.cc (VariadicParam::as_string): Likewise.
+	(BlockExpr::normalize_tail_expr): Likewise.
+	* ast/rust-expr.h: Likewise and add pointer getter in order to allow
+	pointer reseat.
+	* ast/rust-item.h: Likewise and add pointer getter for reseat.
+	* ast/rust-path.h: Likewise.
+	* ast/rust-pattern.h: Likewise.
+	* ast/rust-stmt.h: Likewise.
+	* ast/rust-type.h: Likewise.
+	* expand/rust-cfg-strip.cc (CfgStrip::maybe_strip_struct_fields):
+	Remove references to unique pointers and replace it with direct
+	references to the wrapped object.
+	(CfgStrip::maybe_strip_tuple_fields): Likewise.
+	(CfgStrip::maybe_strip_generic_args): Likewise.
+	(CfgStrip::maybe_strip_qualified_path_type): Likewise.
+	(CfgStrip::visit): Likewise.
+	* expand/rust-expand-visitor.cc (ExpandVisitor::maybe_expand_expr):
+	Likewise.
+	(ExpandVisitor::maybe_expand_type): Likewise.
+	(ExpandVisitor::visit): Likewise.
+	* expand/rust-expand-visitor.h: Likewise.
+	* hir/rust-ast-lower-base.cc (ASTLoweringBase::lower_binding):
+	Likewise.
+	(ASTLoweringBase::lower_generic_args): Likewise.
+	(ASTLoweringBase::lower_self): Likewise.
+	(ASTLoweringBase::lower_type_no_bounds): Likewise.
+	(ASTLoweringBase::lower_bound): Likewise.
+	(ASTLoweringBase::lower_range_pattern_bound): Likewise.
+	* hir/rust-ast-lower-base.h: Likewise.
+	* hir/rust-ast-lower-block.h: Likewise.
+	* hir/rust-ast-lower-enumitem.h: Likewise.
+	* hir/rust-ast-lower-expr.cc (ASTLoweringExpr::translate): Likewise.
+	(ASTLoweringExpr::visit): Likewise.
+	* hir/rust-ast-lower-expr.h: Likewise.
+	* hir/rust-ast-lower-extern.h: Likewise.
+	* hir/rust-ast-lower-implitem.cc (ASTLowerImplItem::translate):
+	Likewise.
+	(ASTLowerImplItem::visit): Likewise.
+	(ASTLowerTraitItem::translate): Likewise.
+	(ASTLowerTraitItem::visit): Likewise.
+	* hir/rust-ast-lower-implitem.h: Likewise.
+	* hir/rust-ast-lower-item.cc (ASTLoweringItem::translate): Likewise.
+	(ASTLoweringItem::visit): Likewise.
+	* hir/rust-ast-lower-item.h: Likewise.
+	* hir/rust-ast-lower-pattern.cc (ASTLoweringPattern::translate):
+	Likewise.
+	(ASTLoweringPattern::visit): Likewise.
+	* hir/rust-ast-lower-pattern.h: Likewise.
+	* hir/rust-ast-lower-stmt.cc (ASTLoweringStmt::visit): Likewise.
+	* hir/rust-ast-lower-struct-field-expr.h: Likewise.
+	* hir/rust-ast-lower-type.cc (ASTLowerTypePath::visit): Likewise.
+	(ASTLowerQualifiedPathInType::visit): Likewise.
+	(ASTLoweringType::translate): Likewise.
+	(ASTLoweringType::visit): Likewise.
+	(ASTLowerGenericParam::translate): Likewise.
+	(ASTLowerGenericParam::visit): Likewise.
+	(ASTLoweringTypeBounds::translate): Likewise.
+	(ASTLoweringTypeBounds::visit): Likewise.
+	(ASTLowerWhereClauseItem::visit): Likewise.
+	* hir/rust-ast-lower-type.h: Likewise.
+	* hir/rust-ast-lower.cc (ASTLowering::go): Likewise.
+	(ASTLoweringBlock::visit): Likewise.
+	(ASTLoweringIfBlock::visit): Likewise.
+	(ASTLoweringIfLetBlock::visit): Likewise.
+	(ASTLowerStructExprField::visit): Likewise.
+	(ASTLoweringExprWithBlock::visit): Likewise.
+	(ASTLoweringBase::lower_qual_path_type): Likewise.
+	(ASTLoweringBase::lower_closure_param): Likewise.
+	* resolve/rust-ast-resolve-base.cc (ResolverBase::resolve_visibility):
+	Likewise.
+	* resolve/rust-ast-resolve-expr.cc (ResolveExpr::go): Likewise.
+	(ResolveExpr::visit): Likewise.
+	(ResolveExpr::resolve_closure_param): Likewise.
+	* resolve/rust-ast-resolve-expr.h: Likewise.
+	* resolve/rust-ast-resolve-implitem.h: Likewise.
+	* resolve/rust-ast-resolve-item.cc (ResolveTraitItems::visit):
+	Likewise.
+	(ResolveItem::go): Likewise.
+	(ResolveItem::visit): Likewise.
+	(ResolveItem::resolve_impl_item): Likewise.
+	(ResolveItem::resolve_extern_item): Likewise.
+	(ResolveImplItems::go): Likewise.
+	(ResolveExternItem::go): Likewise.
+	(ResolveExternItem::visit): Likewise.
+	* resolve/rust-ast-resolve-item.h: Likewise.
+	* resolve/rust-ast-resolve-path.cc (ResolvePath::go): Likewise.
+	(ResolvePath::resolve_path): Likewise.
+	* resolve/rust-ast-resolve-path.h: Likewise.
+	* resolve/rust-ast-resolve-pattern.cc (PatternDeclaration::go):
+	Likewise.
+	(PatternDeclaration::visit): Likewise.
+	(resolve_range_pattern_bound): Likewise.
+	* resolve/rust-ast-resolve-pattern.h: Likewise.
+	* resolve/rust-ast-resolve-stmt.cc (ResolveStmt::visit): Likewise.
+	* resolve/rust-ast-resolve-stmt.h: Likewise.
+	* resolve/rust-ast-resolve-struct-expr-field.cc (ResolveStructExprField::go):
+	Likewise.
+	(ResolveStructExprField::visit): Likewise.
+	* resolve/rust-ast-resolve-struct-expr-field.h: Likewise.
+	* resolve/rust-ast-resolve-toplevel.h: Likewise.
+	* resolve/rust-ast-resolve-type.cc (ResolveType::visit): Likewise.
+	(ResolveRelativeTypePath::go): Likewise.
+	(ResolveRelativeQualTypePath::resolve_qual_seg): Likewise.
+	(ResolveTypeToCanonicalPath::go): Likewise.
+	(ResolveTypeToCanonicalPath::visit): Likewise.
+	(ResolveGenericArgs::resolve_disambiguated_generic): Likewise.
+	(ResolveGenericArgs::go): Likewise.
+	* resolve/rust-ast-resolve-type.h: Likewise.
+	* resolve/rust-ast-resolve.cc (NameResolution::go): Likewise.
+	* resolve/rust-default-resolver.cc (DefaultResolver::visit): Likewise.
+	* resolve/rust-early-name-resolver.cc (EarlyNameResolver::resolve_qualified_path_type):
+	Likewise.
+	(EarlyNameResolver::visit): Likewise.
+	* resolve/rust-toplevel-name-resolver-2.0.cc (TopLevel::visit):
+	Likewise.
+	* checks/errors/rust-ast-validation.cc: Likewise.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* ast/rust-item.h: Change getter function prototype to return a
+	reference directly instead of a reference to the wrapper type.
+	* checks/errors/rust-ast-validation.cc (ASTValidation::visit): Fix
+	the code to accept references instead.
+	* hir/rust-ast-lower-base.cc (ASTLoweringBase::lower_self): Change
+	function implementation to return a reference.
+	* hir/rust-ast-lower-base.h: Accept a reference instead of a unique
+	pointer reference.
+	* resolve/rust-ast-resolve-item.cc (ResolveItem::visit): Adapt the code
+	to a reference instead of a unique pointer.
+
+2024-08-01  Thomas Schwinge  <tschwinge@baylibre.com>
+
+	* backend/rust-tree.cc (c_common_type_for_mode): Placate clang-format.
+
+2024-08-01  0xn4utilus  <gyanendrabanjare8@gmail.com>
+
+	* ast/rust-ast-collector.cc (TokenCollector::visit):
+	Remove dead code.
+	* ast/rust-ast-collector.h: Likewise.
+	* ast/rust-ast-full-decls.h (class ExternalFunctionItem):
+	Likewise.
+	* ast/rust-ast-visitor.cc (DefaultASTVisitor::visit):
+	Likewise.
+	* ast/rust-ast-visitor.h: Likewise.
+	* ast/rust-ast.cc (ExternalFunctionItem::as_string): Likewise.
+	(ExternalFunctionItem::accept_vis): Likewise.
+	* checks/errors/rust-ast-validation.cc (ASTValidation::visit):
+	Likewise.
+	* checks/errors/rust-ast-validation.h: Likewise.
+	* checks/errors/rust-feature-gate.h: Likewise.
+	* expand/rust-cfg-strip.cc (CfgStrip::visit):
+	Likewise.
+	* expand/rust-cfg-strip.h: Likewise.
+	* expand/rust-derive.h: Likewise.
+	* expand/rust-expand-visitor.cc (ExpandVisitor::visit):
+	Likewise.
+	* expand/rust-expand-visitor.h: Likewise.
+	* hir/rust-ast-lower-base.cc (ASTLoweringBase::visit):
+	Likewise.
+	* hir/rust-ast-lower-base.h: Likewise.
+	* metadata/rust-export-metadata.cc (ExportContext::emit_function):
+	Likewise.
+	* parse/rust-parse-impl.h: Likewise.
+	* parse/rust-parse.h: Likewise.
+	* resolve/rust-ast-resolve-base.cc (ResolverBase::visit):
+	Likewise.
+	* resolve/rust-ast-resolve-base.h: Likewise.
+	* resolve/rust-default-resolver.cc (DefaultResolver::visit):
+	Likewise.
+	* resolve/rust-default-resolver.h: Likewise.
+	* util/rust-attributes.cc (AttributeChecker::visit): Likewise.
+	* util/rust-attributes.h: Likewise.
+
+2024-08-01  0xn4utilus  <gyanendrabanjare8@gmail.com>
+
+	* checks/errors/rust-feature-gate.cc (FeatureGate::visit):
+	Check if function is_external or not.
+	* hir/rust-ast-lower-extern.h: Use AST::Function
+	instead of AST::ExternalFunctionItem.
+	* parse/rust-parse-impl.h (Parser::parse_external_item):
+	Likewise.
+	(Parser::parse_pattern): Fix clang format.
+	* resolve/rust-ast-resolve-implitem.h: Likewise.
+	* resolve/rust-ast-resolve-item.cc (ResolveExternItem::visit):
+	Likewise.
+	* resolve/rust-ast-resolve-item.h: Likewise.
+	* resolve/rust-default-resolver.cc (DefaultResolver::visit):
+	Check if param has_pattern before using get_pattern.
+
+2024-08-01  0xn4utilus  <gyanendrabanjare8@gmail.com>
+
+	* checks/errors/rust-ast-validation.cc (ASTValidation::visit):
+	Add external function validation support. Add ErrorCode::E0130.
+	* parse/rust-parse-impl.h (Parser::parse_function): Parse
+	external functions from `parse_function`.
+	(Parser::parse_external_item): Clang format.
+	(Parser::parse_pattern): Clang format.
+	* parse/rust-parse.h: Add default parameter
+	`is_external` in `parse_function`.
+
+2024-08-01  0xn4utilus  <gyanendrabanjare8@gmail.com>
+
+	* ast/rust-ast.h: Add Kind Enum to
+	Pattern.
+	* ast/rust-macro.h: Add get_pattern_kind().
+	* ast/rust-path.h: Likewise.
+	* ast/rust-pattern.h: Likewise.
+
+2024-08-01  0xn4utilus  <gyanendrabanjare8@gmail.com>
+
+	* ast/rust-ast.cc (Function::Function): Add `is_external_function` field.
+	(Function::operator=): Likewise.
+	* ast/rust-ast.h: New constructor for ExternalItem.
+	* ast/rust-item.h (class Function): Add `is_external_function`
+	field. Update `get_node_id`.
+	* ast/rust-macro.h: Update copy constructor.
+
+2024-08-01  Sourabh Jaiswal  <sourabhrj31@gmail.com>
+
+	* expand/rust-expand-visitor.cc
+	(ExpandVisitor::expand_inner_items): Adjust to use has_value ()
+	(ExpandVisitor::expand_inner_stmts): Likewise
+	* expand/rust-macro-builtins.cc (builtin_macro_from_string): Likewise
+	(make_macro_path_str): Likewise
+	* util/rust-hir-map.cc (Mappings::insert_macro_def): Likewise
+	* util/rust-lang-item.cc (LangItem::Parse): Adjust to return tl::optional
+	(LangItem::toString) Likewise
+	* util/rust-token-converter.cc (handle_suffix): Adjust to use value.or ()
+	(from_literal) Likewise
+	* util/bi-map.h (BiMap::lookup): Adjust to use tl::optional for
+	lookups
+
+2024-08-01  Owen Avery  <powerboat9.gamer@gmail.com>
+
+	* ast/rust-pattern.h
+	(class TupleStructPattern): Assert that items != nullptr.
+	(class TuplePattern): Likewise.
+	(TupleStructPattern::has_items): Remove.
+	(TuplePattern::has_tuple_pattern_items): Likewise.
+	* parse/rust-parse-impl.h
+	(Parser::parse_ident_leading_pattern):
+	Prevent construction of TupleStructPattern with
+	(items == nullptr).
+	(Parser::parse_pattern_no_alt): Likewise.
+	* ast/rust-ast-collector.cc
+	(TokenCollector::visit): Remove usage of
+	TupleStructPattern::has_items.
+	* ast/rust-ast-visitor.cc
+	(DefaultASTVisitor::visit): Likewise.
+	* resolve/rust-early-name-resolver.cc
+	(EarlyNameResolver::visit): Likewise.
+
+2024-08-01  jjasmine  <tanghocle456@gmail.com>
+
+	* resolve/rust-late-name-resolver-2.0.cc (Late::visit): Add error emitting
+
+2024-08-01  jjasmine  <tanghocle456@gmail.com>
+
+	* resolve/rust-late-name-resolver-2.0.cc (Late::visit): Add error emitting
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* expand/rust-macro-builtins.cc (MacroBuiltin::format_args_handler): Add
+	documentation regarding future tasks.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* Make-lang.in: Compile the new source file.
+	* ast/rust-ast-collector.cc (TokenCollector::visit): Error out when
+	visiting FormatArgs nodes.
+	* resolve/rust-ast-resolve-base.cc (ResolverBase::visit): Likewise.
+	* hir/rust-ast-lower-expr.cc (ASTLoweringExpr::visit): Likewise.
+	* ast/rust-ast.cc (FormatArgs::get_locus): New.
+	* ast/rust-builtin-ast-nodes.h: Improve FormatArgs API.
+	* ast/rust-fmt.cc (Pieces::~Pieces): Cleanup.
+	(Pieces::Pieces): Likewise.
+	* ast/rust-fmt.h (struct Pieces): Add pieces_vector member.
+	* hir/rust-ast-lower-format-args.cc: New file.
+	* hir/rust-ast-lower-format-args.h: New file.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* ast/rust-ast.cc: Make FormatArgs inherit from AST::Expr
+	* ast/rust-builtin-ast-nodes.h: Improve FormatArg* nodes and helpers.
+	* ast/rust-fmt.cc (Pieces::collect): Fix interface to match FFI function.
+	* ast/rust-fmt.h (collect_pieces): Likewise.
+	(struct Pieces): Add append_newline parameter.
+	* expand/rust-macro-builtins.cc: Add proper parsing of format_args
+	input.
+	* hir/rust-ast-lower-base.cc: Include diagnostics header.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* parse/rust-parse.h: New method.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* expand/rust-macro-builtins.cc (format_args_maker): New function.
+	(try_expand_many_expr): Add comment about reworking function.
+	(MacroBuiltin::format_args_handler): Add newline parameter.
+	* expand/rust-macro-builtins.h: Likewise.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* ast/rust-builtin-ast-nodes.h: New file.
+	* ast/rust-ast-full-decls.h (class FormatArgs): Declare new class.
+	* ast/rust-ast-collector.cc: Handle FormatArgs nodes properly.
+	* ast/rust-ast-collector.h: Likewise.
+	* ast/rust-ast-full.h: Likewise.
+	* ast/rust-ast-visitor.cc: Likewise.
+	* ast/rust-ast-visitor.h: Likewise.
+	* ast/rust-ast.cc: Likewise.
+	* ast/rust-ast.h: Likewise.
+	* expand/rust-derive.h: Likewise.
+	* hir/rust-ast-lower-base.cc: Likewise.
+	* hir/rust-ast-lower-base.h: Likewise.
+	* hir/rust-ast-lower-expr.cc: Likewise.
+	* hir/rust-ast-lower-expr.h: Likewise.
+	* resolve/rust-ast-resolve-base.cc: Likewise.
+	* resolve/rust-ast-resolve-base.h: Likewise.
+
+2024-08-01  Owen Avery  <powerboat9.gamer@gmail.com>
+
+	* resolve/rust-default-resolver.cc
+	(DefaultResolver::visit): Visit inner AST nodes of ClosureExprInner,
+	ClosureExprInnerTyped, IfExpr, IfExprConseqElse, MatchExpr,
+	PathInExpression, EnumItemTuple, EnumItemStruct, and
+	EnumItemDiscriminant.
+	* ast/rust-item.h
+	(EnumItemDiscriminant::has_expr): New function.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* hir/rust-ast-lower-extern.h: Lower to HIR::ExternalTypeItem nodes.
+	* hir/tree/rust-hir-item.h (class ExternalTypeItem): Create private
+	visibility by default as extern types have no visibility - add a comment
+	about the correctness of this.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* hir/tree/rust-hir-item.h (class ExternalTypeItem): New class.
+	* hir/tree/rust-hir.cc (ExternalTypeItem::as_string): Likewise.
+	* backend/rust-compile-extern.h: Add base for handling HIR::ExternalTypeItem
+	node.
+	* checks/errors/borrowck/rust-bir-builder-struct.h: Likewise.
+	* checks/errors/borrowck/rust-function-collector.h: Likewise.
+	* checks/errors/rust-const-checker.cc (ConstChecker::visit): Likewise.
+	* checks/errors/rust-const-checker.h: Likewise.
+	* checks/errors/rust-unsafe-checker.cc (UnsafeChecker::visit): Likewise.
+	* checks/errors/rust-unsafe-checker.h: Likewise.
+	* hir/rust-ast-lower-extern.h: Likewise.
+	* hir/rust-hir-dump.cc (Dump::visit): Likewise.
+	* hir/rust-hir-dump.h: Likewise.
+	* hir/tree/rust-hir-full-decls.h (class ExternalTypeItem): Likewise.
+	* hir/tree/rust-hir-visitor.h: Likewise.
+	(ExternalTypeItem::accept_vis): Likewise.
+	* typecheck/rust-hir-type-check-implitem.cc (TypeCheckTopLevelExternItem::visit): Likewise.
+	* typecheck/rust-hir-type-check-implitem.h: Likewise.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* resolve/rust-ast-resolve-implitem.h: Declare external types as new
+	types.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* util/rust-lang-item.h (class RustLangItem): Renamed to...
+	(class LangItem): ...this. Rename ItemType enum to Kind
+	* util/rust-lang-item.cc: Rename methods to use new class name.
+	* backend/rust-compile-expr.cc (CompileExpr::visit): Use new lang-item API.
+	(CompileExpr::resolve_operator_overload): Likewise.
+	* backend/rust-compile-expr.h: Likewise.
+	* hir/rust-ast-lower-base.cc (ASTLoweringBase::handle_lang_item_attribute): Likewise.
+	* typecheck/rust-autoderef.cc (Adjuster::try_deref_type): Likewise.
+	(AutoderefCycle::cycle): Likewise.
+	* typecheck/rust-autoderef.h: Likewise.
+	* typecheck/rust-hir-type-bounds.h: Likewise.
+	* typecheck/rust-hir-type-check-base.cc (TypeCheckBase::get_marker_predicate): Likewise.
+	* typecheck/rust-hir-type-check-base.h: Likewise.
+	* typecheck/rust-hir-type-check-expr.cc (TypeCheckExpr::visit): Likewise.
+	* typecheck/rust-hir-type-check-expr.h: Likewise.
+	* typecheck/rust-hir-type-check-type.cc (TypeResolveGenericParam::visit): Likewise.
+	* typecheck/rust-tyty-bounds.cc (TypeBoundsProbe::assemble_sized_builtin): Likewise.
+	(TypeBoundsProbe::assemble_builtin_candidate): Likewise.
+	(TypeCheckBase::get_predicate_from_bound): Likewise.
+	* typecheck/rust-tyty.cc (ClosureType::setup_fn_once_output): Likewise.
+	* util/rust-hir-map.cc (Mappings::get_lang_item): Likewise.
+	(Mappings::lookup_trait_item_lang_item): Likewise.
+	* util/rust-hir-map.h: Likewise.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* Make-lang.in: Compile new rust-lang-item.o.
+	* util/rust-lang-item.h: Split into header and source.
+	* util/rust-lang-item.cc: Cleanup parsing of lang items by using a hashmap
+	and returning optional values, cleanup handling of exhaustive lang item
+	lookups.
+	* hir/rust-ast-lower-base.cc (ASTLoweringBase::handle_lang_item_attribute): Use
+	new optional API.
+
+2024-08-01  jjasmine  <tanghocle456@gmail.com>
+
+	* expand/rust-macro-builtins.cc: Change BuiltinMacro in
+	builtin_macro_from_string to tl::optional<>
+	* expand/rust-macro-builtins.h (enum class): Change BuiltinMacro
+	in builtin_macro_from_string to tl::optional<>
+	* resolve/rust-early-name-resolver.cc (EarlyNameResolver::visit):
+	Resolved wrong type dependency of builtin_macro_from_string
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* ast/rust-fmt.cc (Pieces::collect): Fix signature to take ownership
+	of the given string.
+	* ast/rust-fmt.h (struct Pieces): Store parsed string in the struct.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* expand/rust-macro-builtins.cc (MacroBuiltin::format_args_handler):
+	Transform entire invocation token stream into string for the parser.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* expand/rust-macro-builtins.cc (MacroBuiltin::format_args_handler):
+	Construct string to parser properly.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* ast/rust-fmt.cc (Pieces::~Pieces): Call libformat_parser's release
+	function in destructor.
+	* ast/rust-fmt.h (struct PieceSlice): Add capacity.
+	(destroy_pieces): New.
+	(struct Pieces): Add destructor.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* ast/rust-fmt.cc (Pieces::collect): Use new Pieces API.
+	* ast/rust-fmt.h: Update interface with new FFI bindings.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* ast/rust-fmt.h: Add remaining FFI types.
+
+2024-08-01  Thomas Schwinge  <tschwinge@baylibre.com>
+
+	* Make-lang.in (LIBFORMAT_PARSER): Point to 'libformat_parser'
+	build in libgrust.
+	(%.toml:, $(LIBFORMAT_PARSER):): Remove.
+
+2024-08-01  Thomas Schwinge  <tschwinge@baylibre.com>
+
+	* Make-lang.in (LIBFORMAT_PARSER): Point to the GCC build
+	directory.
+	* ($(LIBFORMAT_PARSER)): Build in the GCC build directory.
+
+2024-08-01  Thomas Schwinge  <tschwinge@baylibre.com>
+
+	* Make-lang.in (LIBFORMAT_PARSER): Point to the actual build artifact.
+	($(LIBFORMAT_PARSER)): Don't cache it.
+
+2024-08-01  Thomas Schwinge  <tschwinge@baylibre.com>
+
+	* Make-lang.in (LIBPROC_MACRO_INTERNAL): New.
+	(RUST_LIBDEPS, crab1$(exeext), rust/libformat_parser.a): Use it.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* Make-lang.in: Compile libformat_parser.
+	* ast/rust-fmt.cc: New FFI definitions.
+	* ast/rust-fmt.h: Likewise.
+	* expand/rust-macro-builtins.cc (MacroBuiltin::format_args_handler): Call
+	into libformat_parser.
+	* expand/rust-macro-builtins.h: Define format_args!() handler proper.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* Make-lang.in: Compile rust-fmt object
+	* ast/rust-fmt.cc: New file.
+	* ast/rust-fmt.h: New file.
+
+2024-08-01  Marc Poulhiès  <dkm@kataplop.net>
+
+	* rust-lang.cc (grs_langhook_type_for_mode): simplify code for
+	xImode. Add missing long_double_type_node.
+
+2024-08-01  Owen Avery  <powerboat9.gamer@gmail.com>
+
+	* hir/rust-ast-lower-pattern.cc
+	(ASTLoweringPattern::visit):
+	Reset is_let_top_level while visiting GroupedPattern.
+
+2024-08-01  Thomas Schwinge  <thomas@codesourcery.com>
+
+	* backend/rust-compile-base.cc (HIRCompileBase::compile_function):
+	For 'main', initialize 'main_identifier_node'.
+
 2024-07-12  Daniel Bertalan  <dani@danielbertalan.dev>
 
 	* metadata/rust-imports.cc (Import::try_package_in_directory):
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 458651b6adc0..1518681948a9 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,174 @@
+2024-08-01  Robin Dapp  <rdapp@ventanamicro.com>
+
+	* gcc.target/riscv/rvv/autovec/pr116149.c: New test.
+
+2024-08-01  Patrick O'Neill  <patrick@rivosinc.com>
+
+	* gcc.target/riscv/arch-41.c: New test.
+	* gcc.target/riscv/pr116111.c: New test.
+
+2024-08-01  Jakub Jelinek  <jakub@redhat.com>
+
+	PR c++/116113
+	* g++.dg/cpp26/decomp11.C: New test.
+
+2024-08-01  Andrew Pinski  <quic_apinski@quicinc.com>
+
+	PR tree-optimization/116120
+	* g++.dg/tree-ssa/pr111150.C: Add extra checks on the test.
+	* gcc.dg/tree-ssa/pr111150-1.c: Likewise.
+	* gcc.dg/tree-ssa/pr111150.c: Likewise.
+	* g++.dg/torture/pr116120-1.C: New test.
+	* g++.dg/torture/pr116120-2.C: New test.
+
+2024-08-01  Dimitar Dimitrov  <dimitar@dinux.eu>
+
+	PR testsuite/116155
+	* g++.dg/abi/nsdmi-aggr1a.C: Disable test for effective
+	default_packed targets.
+	* g++.dg/abi/nullptr-align2.C: Ignore warning for default_packed
+	targets.
+	* g++.dg/cpp1z/aligned-new9.C: Disable test for effective
+	default_packed targets.
+	* g++.dg/cpp2a/bit-cast5.C: Ignore dg-error for default_packed
+	targets.
+	* g++.dg/pr53037-1.C: Match any default packing value.
+	* g++.dg/warn/Wpadded-1.C: Ignore warning for default_packed
+	targets.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* rust/compile/name_resolution25.rs: New test.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* rust/compile/match-never-ltype.rs: New test.
+	* rust/compile/match-never-rtype.rs: New test.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* rust/compile/raw-byte-string-loc.rs: Use dg-error instead of
+	dg-excess-error.
+	* rust/compile/raw-string-loc.rs: Likewise.
+
+2024-08-01  Owen Avery  <powerboat9.gamer@gmail.com>
+
+	* rust/compile/raw-string-loc.rs: New test.
+
+2024-08-01  Owen Avery  <powerboat9.gamer@gmail.com>
+
+	* rust/compile/func-const-unsafe.rs: New test.
+
+2024-08-01  Owen Avery  <powerboat9.gamer@gmail.com>
+
+	* rust/compile/unstable-fn.rs: New test.
+
+2024-08-01  Owen Avery  <powerboat9.gamer@gmail.com>
+
+	* rust/compile/deprecated-fn.rs: New test.
+
+2024-08-01  Owen Avery  <powerboat9.gamer@gmail.com>
+
+	* rust/compile/raw-byte-string-loc.rs: New test.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* rust/compile/name_resolution23.rs: New test.
+	* rust/compile/name_resolution24.rs: New test.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* rust/compile/name_resolution13.rs: Add new module and remove compile
+	step.
+	* rust/compile/name_resolution14.rs: New test.
+	* rust/compile/name_resolution15.rs: New test.
+	* rust/compile/name_resolution16.rs: New test.
+	* rust/compile/name_resolution17.rs: New test.
+	* rust/compile/name_resolution18.rs: New test.
+	* rust/compile/name_resolution19.rs: New test.
+	* rust/compile/name_resolution20.rs: New test.
+	* rust/compile/name_resolution21.rs: New test.
+
+2024-08-01  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
+
+	* rust/compile/name_resolution22.rs: New test.
+
+2024-08-01  Arsen Arsenović  <arsen@aarsen.me>
+
+	PR c++/112341
+	* g++.dg/coroutines/pr112341-2.C: New test.
+	* g++.dg/coroutines/pr112341-3.C: New test.
+	* g++.dg/coroutines/torture/co-yield-03-tmpl-nondependent.C: New
+	test.
+	* g++.dg/coroutines/pr112341.C: New test.
+
+2024-08-01  liuhongt  <hongtao.liu@intel.com>
+
+	* gcc.target/i386/pr116096.c: New test.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* rust/compile/format_args_basic_expansion.rs: New test.
+
+2024-08-01  0xn4utilus  <gyanendrabanjare8@gmail.com>
+
+	* rust/compile/extern_func_with_body.rs: New test.
+
+2024-08-01  Owen Avery  <powerboat9.gamer@gmail.com>
+
+	* rust/compile/pattern-struct.rs: Fix test.
+
+2024-08-01  Owen Avery  <powerboat9.gamer@gmail.com>
+
+	* rust/compile/bad_stmt_enums.rs: Adjust redefinition error.
+	* rust/compile/bad_toplevel_enums.rs: Likewise.
+	* rust/compile/redef_error1.rs: Likewise.
+	* rust/compile/redef_error3.rs: Likewise.
+	* rust/compile/redef_error4.rs: Likewise.
+	* rust/compile/redef_error6.rs: Likewise.
+
+2024-08-01  Owen Avery  <powerboat9.gamer@gmail.com>
+
+	* rust/compile/let_alt.rs: Check for false positive.
+
+2024-08-01  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/114659
+	* gcc.target/i386/pr114659.c: New testcase.
+
+2024-08-01  Jakub Jelinek  <jakub@redhat.com>
+
+	PR target/115981
+	* gcc.target/i386/avx512dq-pr90991-1.c: Add tests for no separate
+	zero extension instructions.
+	* gcc.target/i386/avx512dq-pr90991-2.c: Likewise.
+
+2024-08-01  Xiao Zeng  <zengxiao@eswincomputing.com>
+
+	* gcc.target/riscv/pr105314-rtl.c: Skip zicond.
+	* gcc.target/riscv/pr105314-rtl32.c: Ditto.
+	* gcc.target/riscv/pr105314.c: Ditto.
+
+2024-08-01  David Malcolm  <dmalcolm@redhat.com>
+
+	* jit.dg/jit.exp: Add load_lib valgrind.exp.
+	(proc report_leak): Move to valgrind.exp, and add argument
+	leak_report_function rather than hardcoding xfail.
+	(parse_valgrind_logfile): Likewise.
+	(fixed_host_execute): Pass xfail to parse_valgrind_logfile.
+	* lib/valgrind.exp: New file, based on the above.
+
+2024-08-01  David Malcolm  <dmalcolm@redhat.com>
+
+	* gcc.dg/sarif-output/sarif.py: Drop unused import of gzip.
+
+2024-08-01  David Malcolm  <dmalcolm@redhat.com>
+
+	* gcc.dg/sarif-output/missing-semicolon.c: New test.
+	* gcc.dg/sarif-output/sarif.py (get_location_physical_region): New.
+	(get_location_snippet_text): New.
+	* gcc.dg/sarif-output/test-missing-semicolon.py: New test.
+
 2024-07-31  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
 
 	PR libfortran/105361
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index 11dd34efc7d6..c4815a991ef7 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -1,3 +1,10 @@
+2024-08-01  Tobias Burnus  <tburnus@baylibre.com>
+	    Richard Biener  <rguenther@suse.de
+
+	PR middle-end/115637
+	* testsuite/libgomp.fortran/declare-target-link.f90: Uncomment
+	now working code.
+
 2024-07-31  Sam James  <sam@gentoo.org>
 
 	* testsuite/libgomp.c++/pr24455.C: Fix dg-require-effective-target directive order.
diff --git a/libgrust/ChangeLog b/libgrust/ChangeLog
index 06974682ae7a..63f76eb0631d 100644
--- a/libgrust/ChangeLog
+++ b/libgrust/ChangeLog
@@ -1,3 +1,347 @@
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* libformat_parser/src/lib.rs: Use new Handle struct and expose it.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* libformat_parser/src/lib.rs: Switch interface to use more parser
+	parameters.
+	* libformat_parser/src/bin.rs: Use new interface.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* libformat_parser/generic_format_parser/src/lib.rs: Add IsSomeAnd<T>
+	trait, impl it for Option<T>.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* libformat_parser/generic_format_parser/src/lib.rs: Remove
+	unused deprecated attribute and unused import.
+	* libformat_parser/src/lib.rs: Remove unused import.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* libformat_parser/src/lib.rs: Add debug prompt.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* libformat_parser/src/lib.rs: Leak Boxes properly for C++ to
+	see them, add memory release function.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* libformat_parser/src/lib.rs: Add IntoFFI trait.
+	* libformat_parser/libformat-parser.h: Removed.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* libformat_parser/cbindgen.toml: New file.
+	* libformat_parser/libformat-parser.h: New file.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* libformat_parser/generic_format_parser/src/lib.rs: Add generic
+	library.
+	* libformat_parser/src/lib.rs: Add base for FFI interface.
+
+2024-08-01  Thomas Schwinge  <tschwinge@baylibre.com>
+
+	* libformat_parser/Makefile.am: New.
+	* Makefile.am [!TARGET_LIBRARY] (SUBDIRS): Add 'libformat_parser'.
+	* configure.ac: Handle it.
+	(TARGET_LIBRARY): New 'AM_CONDITIONAL'.
+	* libformat_parser/Makefile.in: Generate.
+	* Makefile.in: Regenerate.
+	* configure: Likewise.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* libformat_parser/.cargo/config: New file.
+	* libformat_parser/vendor.NOTES: New file.
+	* libformat_parser/vendor/libc/.cargo-checksum.json: New file.
+	* libformat_parser/vendor/libc/CONTRIBUTING.md: New file.
+	* libformat_parser/vendor/libc/Cargo.toml: New file.
+	* libformat_parser/vendor/libc/LICENSE-APACHE: New file.
+	* libformat_parser/vendor/libc/LICENSE-MIT: New file.
+	* libformat_parser/vendor/libc/README.md: New file.
+	* libformat_parser/vendor/libc/build.rs: New file.
+	* libformat_parser/vendor/libc/rustfmt.toml: New file.
+	* libformat_parser/vendor/libc/src/fixed_width_ints.rs: New file.
+	* libformat_parser/vendor/libc/src/fuchsia/aarch64.rs: New file.
+	* libformat_parser/vendor/libc/src/fuchsia/align.rs: New file.
+	* libformat_parser/vendor/libc/src/fuchsia/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/fuchsia/no_align.rs: New file.
+	* libformat_parser/vendor/libc/src/fuchsia/riscv64.rs: New file.
+	* libformat_parser/vendor/libc/src/fuchsia/x86_64.rs: New file.
+	* libformat_parser/vendor/libc/src/hermit/aarch64.rs: New file.
+	* libformat_parser/vendor/libc/src/hermit/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/hermit/x86_64.rs: New file.
+	* libformat_parser/vendor/libc/src/lib.rs: New file.
+	* libformat_parser/vendor/libc/src/macros.rs: New file.
+	* libformat_parser/vendor/libc/src/psp.rs: New file.
+	* libformat_parser/vendor/libc/src/sgx.rs: New file.
+	* libformat_parser/vendor/libc/src/solid/aarch64.rs: New file.
+	* libformat_parser/vendor/libc/src/solid/arm.rs: New file.
+	* libformat_parser/vendor/libc/src/solid/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/switch.rs: New file.
+	* libformat_parser/vendor/libc/src/teeos/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/aix/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/aix/powerpc64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/apple/b32/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/apple/b32/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/apple/b64/aarch64/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/apple/b64/aarch64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/apple/b64/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/apple/b64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/apple/b64/x86_64/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/apple/b64/x86_64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/apple/long_array.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/apple/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/dragonfly/errno.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/dragonfly/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/aarch64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/arm.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd11/b64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd12/b64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd12/x86_64.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd13/b64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd13/x86_64.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd14/b64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd14/x86_64.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd15/b64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd15/x86_64.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/powerpc.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/riscv64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/x86.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/x86_64/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/freebsd/x86_64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/freebsdlike/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/netbsd/aarch64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/netbsd/arm.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/netbsd/mips.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/netbsd/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/netbsd/powerpc.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/netbsd/riscv64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/netbsd/sparc64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/netbsd/x86.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/netbsd/x86_64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/openbsd/aarch64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/openbsd/arm.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/openbsd/mips64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/openbsd/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/openbsd/powerpc.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/openbsd/powerpc64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/openbsd/riscv64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/openbsd/sparc64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/openbsd/x86.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/bsd/netbsdlike/openbsd/x86_64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/haiku/b32.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/haiku/b64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/haiku/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/haiku/native.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/haiku/x86_64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/hurd/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/hurd/b32.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/hurd/b64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/hurd/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/hurd/no_align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/android/b32/arm.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/android/b32/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/android/b32/x86/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/android/b32/x86/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/android/b64/aarch64/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/android/b64/aarch64/int128.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/android/b64/aarch64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/android/b64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/android/b64/riscv64/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/android/b64/riscv64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/android/b64/x86_64/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/android/b64/x86_64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/android/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/emscripten/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/emscripten/lfs64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/emscripten/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/emscripten/no_align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/arch/generic/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/arch/mips/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/arch/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/arch/powerpc/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/arch/sparc/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b32/arm/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b32/arm/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b32/csky/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b32/csky/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b32/m68k/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b32/m68k/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b32/mips/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b32/mips/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b32/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b32/powerpc.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b32/riscv32/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b32/riscv32/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b32/sparc/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b32/sparc/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b32/x86/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b32/x86/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/aarch64/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/aarch64/fallback.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/aarch64/ilp32.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/aarch64/int128.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/aarch64/lp64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/loongarch64/align.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/loongarch64/mod.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/mips64/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/mips64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/powerpc64/align.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/powerpc64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/riscv64/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/riscv64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/s390x.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/sparc64/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/sparc64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/x86_64/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/x86_64/not_x32.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/b64/x86_64/x32.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/gnu/no_align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b32/arm/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b32/arm/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b32/hexagon.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b32/mips/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b32/mips/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b32/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b32/powerpc.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b32/riscv32/align.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b32/riscv32/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b32/x86/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b32/x86/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b64/aarch64/align.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b64/aarch64/int128.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b64/aarch64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b64/mips64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b64/powerpc64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b64/riscv64/align.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b64/s390x.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b64/x86_64/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/b64/x86_64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/lfs64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/musl/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/no_align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/non_exhaustive.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/uclibc/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/uclibc/arm/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/uclibc/arm/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/uclibc/arm/no_align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/uclibc/mips/mips32/align.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/uclibc/mips/mips32/mod.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/uclibc/mips/mips32/no_align.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/uclibc/mips/mips64/align.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/uclibc/mips/mips64/mod.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/uclibc/mips/mips64/no_align.rs:
+	New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/uclibc/mips/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/uclibc/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/uclibc/no_align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/uclibc/x86_64/l4re.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/uclibc/x86_64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/linux/uclibc/x86_64/other.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/linux_like/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/newlib/aarch64/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/newlib/align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/newlib/arm/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/newlib/espidf/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/newlib/generic.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/newlib/horizon/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/newlib/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/newlib/no_align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/newlib/powerpc/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/newlib/vita/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/no_align.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/nto/aarch64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/nto/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/nto/neutrino.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/nto/x86_64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/redox/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/solarish/compat.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/solarish/illumos.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/solarish/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/solarish/solaris.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/solarish/x86.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/solarish/x86_64.rs: New file.
+	* libformat_parser/vendor/libc/src/unix/solarish/x86_common.rs: New file.
+	* libformat_parser/vendor/libc/src/vxworks/aarch64.rs: New file.
+	* libformat_parser/vendor/libc/src/vxworks/arm.rs: New file.
+	* libformat_parser/vendor/libc/src/vxworks/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/vxworks/powerpc.rs: New file.
+	* libformat_parser/vendor/libc/src/vxworks/powerpc64.rs: New file.
+	* libformat_parser/vendor/libc/src/vxworks/x86.rs: New file.
+	* libformat_parser/vendor/libc/src/vxworks/x86_64.rs: New file.
+	* libformat_parser/vendor/libc/src/wasi.rs: New file.
+	* libformat_parser/vendor/libc/src/windows/gnu/align.rs: New file.
+	* libformat_parser/vendor/libc/src/windows/gnu/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/windows/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/windows/msvc/mod.rs: New file.
+	* libformat_parser/vendor/libc/src/xous.rs: New file.
+	* libformat_parser/vendor/libc/tests/const_fn.rs: New file.
+	* libformat_parser/vendor/unicode-xid/.cargo-checksum.json: New file.
+	* libformat_parser/vendor/unicode-xid/COPYRIGHT: New file.
+	* libformat_parser/vendor/unicode-xid/Cargo.toml: New file.
+	* libformat_parser/vendor/unicode-xid/LICENSE-APACHE: New file.
+	* libformat_parser/vendor/unicode-xid/LICENSE-MIT: New file.
+	* libformat_parser/vendor/unicode-xid/README.md: New file.
+	* libformat_parser/vendor/unicode-xid/benches/xid.rs: New file.
+	* libformat_parser/vendor/unicode-xid/src/lib.rs: New file.
+	* libformat_parser/vendor/unicode-xid/src/tables.rs: New file.
+	* libformat_parser/vendor/unicode-xid/src/tests.rs: New file.
+	* libformat_parser/vendor/unicode-xid/tests/exhaustive_tests.rs: New file.
+
+2024-08-01  Arthur Cohen  <arthur.cohen@embecosm.com>
+
+	* libformat_parser/Cargo.lock: New file.
+	* libformat_parser/Cargo.toml: New file.
+	* libformat_parser/generic_format_parser/Cargo.toml: New file.
+	* libformat_parser/generic_format_parser/src/lib.rs: New file.
+	* libformat_parser/src/bin.rs: New file.
+	* libformat_parser/src/lib.rs: New file.
+
 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
 
 	* libproc_macro_internal/proc_macro.h (enum ProcmacroTag): Add
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 44c496b8e74a..a563233197c6 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,56 @@
+2024-08-01  Jonathan Wakely  <jwakely@redhat.com>
+
+	* include/bits/utility.h (__is_in_place_type): Remove.
+	* include/std/variant (__is_in_place_tag): Remove.
+
+2024-08-01  Jonathan Wakely  <jwakely@redhat.com>
+
+	* include/bits/align.h (align, assume_aligned): Use
+	__UINTPTR_TYPE__ instead of uintptr_t. Do not include
+	<stdint.h>.
+	* include/bits/atomic_base.h (__atomic_ref): Likewise.
+	* include/bits/atomic_wait.h (__waiter_pool_base::_S_for):
+	Likewise.
+	* include/std/atomic: Include <cstdint>.
+
+2024-08-01  Jonathan Wakely  <jwakely@redhat.com>
+
+	* include/bits/atomic_base.h (__atomic_impl::compare_exchange_weak):
+	Remove unused parameter.
+	(__atomic_impl::compare_exchange_strong): Likewise.
+
+2024-08-01  Jonathan Wakely  <jwakely@redhat.com>
+
+	PR libstdc++/113807
+	* include/std/bitset (bitset::_M_is_equal()): Use memcmp to
+	optimize operator==.
+
+2024-08-01  Jonathan Wakely  <jwakely@redhat.com>
+
+	* testsuite/26_numerics/random/discrete_distribution/operators/values.cc:
+	Use ARGS to limit number of iterations for simulators.
+
+2024-08-01  Jonathan Wakely  <jwakely@redhat.com>
+
+	PR libstdc++/113841
+	* include/bits/basic_string.h (basic_string::basic_string()):
+	Constrain so that it's only present if the allocator is default
+	constructible.
+	* include/bits/cow_string.h (basic_string::basic_string()):
+	Likewise.
+	* testsuite/21_strings/basic_string/cons/113841.cc: New test.
+
+2024-08-01  Jonathan Wakely  <jwakely@redhat.com>
+
+	PR libstdc++/99942
+	* include/bits/cow_string.h (data()): Change to noexcept(false).
+
+2024-08-01  Jonathan Wakely  <jwakely@redhat.com>
+
+	* testsuite/23_containers/map/operators/1_neg.cc (test01): Remove test variable
+	and use 'no match' dg-error patter.
+	* testsuite/23_containers/set/operators/1_neg.cc (test01): Likewise.
+
 2024-07-31  François Dumont  <frs.dumont@gmail.com>
 
 	* testsuite/23_containers/map/operators/1_neg.cc (test01): Add test variable


More information about the Libstdc++-cvs mailing list