diff options
author | GCC Administrator <gccadmin@gcc.gnu.org> | 2024-05-19 18:15:28 +0000 |
---|---|---|
committer | GCC Administrator <gccadmin@gcc.gnu.org> | 2024-05-19 18:15:28 +0000 |
commit | 8713d5eec23864e6ddd879191276d67fdd79b9bc (patch) | |
tree | 54000d9bfe158c04ea652b0e87cee27f8bbe01c7 | |
parent | e1ce9c37ed68136a99d44c8301990c184ba41849 (diff) | |
download | gcc-8713d5eec23864e6ddd879191276d67fdd79b9bc.zip gcc-8713d5eec23864e6ddd879191276d67fdd79b9bc.tar.gz gcc-8713d5eec23864e6ddd879191276d67fdd79b9bc.tar.bz2 |
Daily bump.
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | gcc/ChangeLog | 483 | ||||
-rw-r--r-- | gcc/DATESTAMP | 2 | ||||
-rw-r--r-- | gcc/ada/ChangeLog | 606 | ||||
-rw-r--r-- | gcc/analyzer/ChangeLog | 10 | ||||
-rw-r--r-- | gcc/c-family/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/fortran/ChangeLog | 15 | ||||
-rw-r--r-- | gcc/po/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 191 | ||||
-rw-r--r-- | libcpp/ChangeLog | 5 | ||||
-rw-r--r-- | libgcc/ChangeLog | 5 | ||||
-rw-r--r-- | libstdc++-v3/ChangeLog | 15 |
13 files changed, 1350 insertions, 1 deletions
@@ -1,3 +1,7 @@ +2024-05-17 Levy Hsu <admin@levyhsu.com> + + * MAINTAINERS: Add myself. + 2024-05-14 Filip Kastl <fkastl@suse.cz> * MAINTAINERS: Use tabs between name and email. diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c929fdd..bfd2d42 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,486 @@ +2024-05-19 Jeff Law <jlaw@ventanamicro.com> + + PR target/115142 + * config/riscv/riscv.cc (mem_shadd_or_shadd_rtx_p): Make sure + shifted argument is a register. + +2024-05-19 Eric Botcazou <ebotcazou@adacore.com> + + * optabs-query.cc (can_mult_highpart_p): Test for the existence of + a wider mode instead of requiring it. + +2024-05-19 Roger Sayle <roger@nextmovesoftware.com> + + * config/nvptx/nvptx.md (popcount<mode>2): Split into... + (popcountsi2): define_insn handling SImode popcount. + (popcountdi2): define_insn handling DImode popcount, with an + explicit truncate:SI to produce an SImode result. + +2024-05-18 Palmer Dabbelt <palmer@rivosinc.com> + + * config/riscv/riscv.opt: Add -mno-fence-tso. + * config/riscv/sync-rvwmo.md (mem_thread_fence_rvwmo): Respect + -mno-fence-tso. + * doc/invoke.texi (RISC-V): Document -mno-fence-tso. + +2024-05-18 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv.md: Add new patterns to allow selection + between (x << C1) + C2 vs (x + C2') << C1 depending on the + cost C2 vs C2'. + +2024-05-18 Xiao Zeng <zengxiao@eswincomputing.com> + + * config/riscv/riscv.cc (riscv_legitimize_move): Optimize movbf + with Nan-boxing value. + * config/riscv/riscv.md (*movhf_softfloat_boxing): Expand movbf + with Nan-boxing value. + (*mov<HFBF:mode>_softfloat_boxing): Ditto. + with Nan-boxing value. + (*movbf_softfloat_boxing): Delete abandon pattern. + +2024-05-18 Xiao Zeng <zengxiao@eswincomputing.com> + + * config/riscv/riscv-builtins.cc (riscv_init_builtin_types): + Modify _Bfloat16 to __bf16. + * config/riscv/riscv.cc (riscv_mangle_type): Ditto. + +2024-05-18 Pan Li <pan2.li@intel.com> + + PR target/51492 + PR target/112600 + * config/riscv/autovec.md (usadd<mode>3): New pattern expand for + the unsigned SAT_ADD in vector mode. + * config/riscv/riscv-protos.h (riscv_expand_usadd): New func decl + to expand usadd<mode>3 pattern. + (expand_vec_usadd): Ditto but for vector. + * config/riscv/riscv-v.cc (emit_vec_saddu): New func impl to emit + the vsadd insn. + (expand_vec_usadd): New func impl to expand usadd<mode>3 for vector. + * config/riscv/riscv.cc (riscv_expand_usadd): New func impl to + expand usadd<mode>3 for scalar. + * config/riscv/riscv.md (usadd<mode>3): New pattern expand for + the unsigned SAT_ADD in scalar mode. + * config/riscv/vector.md: Allow VLS mode for vsaddu. + +2024-05-17 David Malcolm <dmalcolm@redhat.com> + + * common.opt.urls: Regenerate to add + fdiagnostics-show-event-links. + +2024-05-17 Robin Dapp <rdapp@ventanamicro.com> + + * config/riscv/riscv-protos.h (struct common_vector_cost): Add + segment_permute cost. + * config/riscv/riscv-vector-costs.cc (costs::adjust_stmt_cost): + Handle segment loads/stores. + * config/riscv/riscv.cc: Initialize segment_permute_[2-8] to 1. + +2024-05-17 Robin Dapp <rdapp@ventanamicro.com> + + PR middle-end/113474 + * internal-fn.cc (expand_vec_cond_mask_optab_fn): Remove + force_regs. + +2024-05-17 Tom Tromey <tromey@adacore.com> + + * dwarf2out.cc (gen_namespace_die): Use DW_TAG_module for Ada. + +2024-05-17 David Malcolm <dmalcolm@redhat.com> + + * common.opt (fdiagnostics-show-event-links): New option. + * diagnostic-label-effects.h: New file. + * diagnostic-path.h (diagnostic_event::connect_to_next_event_p): + New pure virtual function. + (simple_diagnostic_event::connect_to_next_event_p): Implement it. + (simple_diagnostic_event::connect_to_next_event): New. + (simple_diagnostic_event::m_connected_to_next_event): New field. + (simple_diagnostic_path::connect_to_next_event): New decl. + * diagnostic-show-locus.cc: Include "text-art/theme.h" and + "diagnostic-label-effects.h". + (colorizer::set_cfg_edge): New. + (layout::m_fallback_theme): New field. + (layout::m_theme): New field. + (layout::m_effect_info): New field. + (layout::m_link_lhs_state): New enum and field. + (layout::m_link_rhs_column): New field. + (layout_range::has_in_edge): New. + (layout_range::has_out_edge): New. + (layout::layout): Add "effect_info" optional param. Initialize + m_theme, m_link_lhs_state, and m_link_rhs_column. + (layout::maybe_add_location_range): Remove stray "FIXME" from + leading comment. + (layout::print_source_line): Replace space after margin with a + call to print_leftmost_column. + (layout::print_leftmost_column): New. + (layout::start_annotation_line): Make non-const. Gain + responsibility for printing the leftmost column after the margin. + (layout::print_annotation_line): Drop pp_space, as this is now + added by start_annotation_line. + (line_label::line_label): Add "has_in_edge" and "has_out_edge" + params and initialize... + (line_label::m_has_in_edge): New field. + (line_label::m_has_out_edge): New field. + (layout::print_any_labels): Pass edge information to line_label + ctor. Keep track of in-edges and out-edges, adding visualizations + of these links between labels. + (layout::print_leading_fixits): Drop pp_character, as this is now + added by start_annotation_line. + (layout::print_trailing_fixits): Fix off-by-one errors in column + calculation. + (layout::move_to_column): Add comment about debugging. + (layout::show_ruler): Make non-const. Drop pp_space calls, as + this is now added by start_annotation_line. + (layout::print_line): Call print_any_right_to_left_edge_lines. + (layout::print_any_right_to_left_edge_lines): New. + (layout::update_any_effects): New. + (gcc_rich_location::add_location_if_nearby): Initialize + loc_range.m_label. + (diagnostic_context::maybe_show_locus): Add "effects" param and + pass it to diagnostic_context::show_locus. + (diagnostic_context::show_locus): Add "effects" param, passing it + to layout's ctor. Call update_any_effects on the layout after + printing the lines. + (selftest::test_layout_x_offset_display_utf8): Update expected + result for eliminated trailing newline. + (selftest::test_layout_x_offset_display_utf8): Likewise. + (selftest::test_layout_x_offset_display_tab): Likewise. + * diagnostic.cc (diagnostic_context::initialize): Initialize + m_source_printing.show_event_links_p. + (simple_diagnostic_path::connect_to_next_event): New. + (simple_diagnostic_event::simple_diagnostic_event): Initialize + m_connected_to_next_event. + * diagnostic.h (class diagnostic_source_effect_info): New forward + decl. + (diagnostic_source_printing_options::show_event_links_p): New + field. + (diagnostic_context::maybe_show_locus): Add optional "effect_info" + param. + (diagnostic_context::show_locus): Add "effect_info" param. + (diagnostic_show_locus): Add optional "effect_info" param. + * doc/invoke.texi: Add -fno-diagnostics-show-event-links. + * lto-wrapper.cc (merge_and_complain): Add + OPT_fdiagnostics_show_event_links to switch. + (append_compiler_options): Likewise. + (append_diag_options): Likewise. + * opts-common.cc (decode_cmdline_options_to_array): Add + "-fno-diagnostics-show-event-links" to -fdiagnostics-plain-output. + * opts.cc (common_handle_option): Add case for + OPT_fdiagnostics_show_event_links. + * text-art/theme.cc (ascii_theme::get_cppchar): Handle + cell_kind::CFG_*. + (unicode_theme::get_cppchar): Likewise. + * text-art/theme.h (theme::cell_kind): Add CFG_*. + * toplev.cc (general_init): Initialize + global_dc->m_source_printing.show_event_links_p. + * tree-diagnostic-path.cc: Define INCLUDE_ALGORITHM, + INCLUDE_MEMORY, and INCLUDE_STRING. Include + "diagnostic-label-effects.h". + (path_label::path_label): Initialize m_effects. + (path_label::get_effects): New. + (class path_label::path_label_effects): New. + (path_label::m_effects): New field. + (class per_thread_summary): Add "friend struct event_range;". + (per_thread_summary::per_thread_summary): Initialize m_last_event. + (per_thread_summary::m_last_event): New field. + (struct event_range::per_source_line_info): New. + (event_range::event_range): Make "t" non-const. Add + "show_event_links" param and use it to initialize + m_show_event_links. Add info for initial event. + (event_range::get_per_source_line_info): New. + (event_range::maybe_add_event): Verify compatibility of the new + label and existing labels with respect to the link-printing code. + Update per-source-line info when an event is added. + (event_range::print): Add"effect_info" param and pass to + diagnostic_show_locus. + (event_range::m_per_thread_summary): Make non-const. + (event_range::m_source_line_info_map): New field. + (event_range::m_show_event_links): New field. + (path_summary::path_summary): Add "show_event_links" optional + param, passing it to event_range ctor calls. Update + pts.m_last_event. + (thread_event_printer::print_swimlane_for_event_range): Add + "effect_info" param and pass it to range->print. + (print_path_summary_as_text): Keep track of the column for any + out-edges at the end of printing each event_range and use as + the leading in-edge for the next event_range. + (default_tree_diagnostic_path_printer): Pass in show_event_links_p + to path_summary ctor. + (selftest::path_events_have_column_data_p): New. + (class selftest::control_flow_test): New. + (selftest::test_control_flow_1): New. + (selftest::test_control_flow_2): New. + (selftest::test_control_flow_3): New. + (selftest::assert_cfg_edge_path_streq): New. + (ASSERT_CFG_EDGE_PATH_STREQ): New macro. + (selftest::test_control_flow_4): New. + (selftest::test_control_flow_5): New. + (selftest::test_control_flow_6): New. + (selftest::control_flow_tests): New. + (selftest::tree_diagnostic_path_cc_tests): Disable colorization on + global_dc's printer. Convert event_pp to a std::unique_ptr. Call + control_flow_tests via for_each_line_table_case. + (gen_command_line_string): Likewise. + +2024-05-17 Uros Bizjak <ubizjak@gmail.com> + + PR middle-end/112600 + * config/i386/mmx.md (<insn><mode>3): New expander. + * config/i386/sse.md + (<sse2_avx2>_<sat_plusminus:insn><mode>3<mask_name>): + Rename expander to <sat_plusminus:insn><mode>3<mask_name>. + (<umaxmin:code><mode>3): Update for rename. + * config/i386/i386-builtin.def: Update for rename. + +2024-05-17 Aldy Hernandez <aldyh@redhat.com> + + PR middle-end/115131 + * value-range.cc (prange::intersect): Set VARYING if intersection + of bitmasks made the range span the entire domain. + (range_tests_misc): New test. + +2024-05-17 Alexander Monakov <amonakov@ispras.ru> + + PR c++/114480 + * tree-into-ssa.cc (prune_unused_phi_nodes): Add dfs_out entries + to the 'defs' array in the reverse order. + +2024-05-17 Aldy Hernandez <aldyh@redhat.com> + + PR middle-end/115128 + * ipa-cp.cc (ipa_value_range_from_jfunc): Check for undefined_p + before looking at type. + (propagate_vr_across_jump_function): Same. + +2024-05-17 Richard Biener <rguenther@suse.de> + + PR middle-end/115110 + * tree-ssa-alias.cc (view_converted_memref_p): Fix. + +2024-05-17 Eric Botcazou <ebotcazou@adacore.com> + + * expmed.h (expmed_mult_highpart_optab): Declare. + * expmed.cc (expmed_mult_highpart_optab): Remove static keyword. + Do not assume that OP1 is a constant integer. Fix pasto. + (expmed_mult_highpart): Pass OP1 narrowed to MODE in all the calls + to expmed_mult_highpart_optab. + * optabs-query.cc (can_mult_highpart_p): Use 2 for integer widening + and shift subsequent values accordingly. + * optabs.cc (expand_mult_highpart): Call expmed_mult_highpart_optab + when can_mult_highpart_p returns 2 and adjust to above change. + +2024-05-17 Richard Biener <rguenther@suse.de> + + * tree-ssa-alias.h (pt_solution_includes_const_pool): Declare. + * tree-ssa-alias.cc (ptrs_compare_unequal): Use + pt_solution_includes_const_pool. + * tree-ssa-structalias.cc (pt_solution_includes_const_pool): New. + +2024-05-17 Alexandre Oliva <oliva@adacore.com> + + * common.opt (freg-struct-return): Make it explicitly + fpcc-struct-return's NegativeAlias. Copy Optimization... + (freg-struct-return): ... here. + +2024-05-17 Pan Li <pan2.li@intel.com> + + * config/riscv/.riscv.cc.swo: Removed. + * config/riscv/j: Removed. + +2024-05-16 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec-opt.md(*vcond_mask_len_popcount_<VB_VLS:mode><P:mode>): + New pattern of vcond_mask_len_popcount for vector bool mode. + * config/riscv/autovec.md (vcond_mask_len_<mode>): New pattern of + vcond_mask_len for vector bool mode. + (cbranch<mode>4): New pattern for vector bool mode. + * config/riscv/vector-iterators.md: Add new unspec UNSPEC_SELECT_MASK. + * config/riscv/vector.md (@pred_popcount<VB:mode><P:mode>): Add VLS mode + to popcount pattern. + (@pred_popcount<VB_VLS:mode><P:mode>): Ditto. + +2024-05-16 Jan Hubicka <jh@suse.cz> + + PR ipa/113787 + * ipa-fnsummary.cc (points_to_local_or_readonly_memory_p): Do not + look into TARGET_MEM_REFS with constant opreand 0. + +2024-05-16 Richard Biener <rguenther@suse.de> + + PR tree-optimization/13962 + PR tree-optimization/96564 + * tree-ssa-alias.h (pt_solution::const_pool): New flag. + * tree-ssa-alias.cc (ptrs_compare_unequal): Handle pointer-pointer + compares. + (dump_points_to_solution): Dump the const_pool flag, fix guard + of flag dumping. + * gimple-pretty-print.cc (pp_points_to_solution): Likewise. + * tree-ssa-structalias.cc (find_what_var_points_to): Set + the const_pool flag for STRING. + (pt_solution_ior_into): Handle the const_pool flag. + (ipa_escaped_pt): Initialize it. + +2024-05-16 Richard Biener <rguenther@suse.de> + + * tree-ssa-structalias.cc (get_constraint_for_1): For + volatile referenced or decls use ANYTHING. + +2024-05-16 Pan Li <pan2.li@intel.com> + + * tree-vect-loop.cc (vect_gen_loop_len_mask): New func to gen + the loop len mask. + * tree-vect-stmts.cc (vectorizable_early_exit): Invoke the + vect_gen_loop_len_mask for 1 or more stmt(s). + * tree-vectorizer.h (vect_gen_loop_len_mask): New func decl + for vect_gen_loop_len_mask. + +2024-05-16 Pan Li <pan2.li@intel.com> + + PR target/51492 + PR target/112600 + * tree-vect-patterns.cc (gimple_unsigned_integer_sat_add): New + func decl generated by match.pd match. + (vect_recog_sat_add_pattern): New func impl to recog the pattern + for unsigned SAT_ADD. + +2024-05-16 Pan Li <pan2.li@intel.com> + + PR target/51492 + PR target/112600 + * internal-fn.cc (commutative_binary_fn_p): Add type IFN_SAT_ADD + to the return true switch case(s). + * internal-fn.def (SAT_ADD): Add new signed optab SAT_ADD. + * match.pd: Add unsigned SAT_ADD match(es). + * optabs.def (OPTAB_NL): Remove fixed-point limitation for + us/ssadd. + * tree-ssa-math-opts.cc (gimple_unsigned_integer_sat_add): New + extern func decl generated in match.pd match. + (match_saturation_arith): New func impl to match the saturation arith. + (math_opts_dom_walker::after_dom_children): Try match saturation + arith when IOR expr. + +2024-05-16 Aldy Hernandez <aldyh@redhat.com> + + PR tree-optimization/114985 + * gimple-range-op.cc: Remove pointers_handled_p. + * ipa-cp.cc (ipa_value_range_from_jfunc): Skip range folding if + operands don't match. + (propagate_vr_across_jump_function): Same. + * range-op-mixed.h: Remove pointers_handled_p and tweak + operand_check_p. + * range-op-ptr.cc (range_operator::pointers_handled_p): Remove. + (pointer_plus_operator::pointers_handled_p): Remove. + (class operator_pointer_diff): Remove pointers_handled_p. + (operator_pointer_diff::pointers_handled_p): Remove. + (operator_identity::pointers_handled_p): Remove. + (operator_cst::pointers_handled_p): Remove. + (operator_cast::pointers_handled_p): Remove. + (operator_min::pointers_handled_p): Remove. + (operator_max::pointers_handled_p): Remove. + (operator_addr_expr::pointers_handled_p): Remove. + (operator_bitwise_and::pointers_handled_p): Remove. + (operator_bitwise_or::pointers_handled_p): Remove. + (operator_equal::pointers_handled_p): Remove. + (operator_not_equal::pointers_handled_p): Remove. + (operator_lt::pointers_handled_p): Remove. + (operator_le::pointers_handled_p): Remove. + (operator_gt::pointers_handled_p): Remove. + (operator_ge::pointers_handled_p): Remove. + * range-op.cc (TRAP_ON_UNHANDLED_POINTER_OPERATORS): Remove. + (range_op_handler::lhs_op1_relation): Remove pointers_handled_p checks. + (range_op_handler::lhs_op2_relation): Same. + (range_op_handler::op1_op2_relation): Same. + * range-op.h: Remove RO_* declarations. + +2024-05-16 Aldy Hernandez <aldyh@redhat.com> + + PR tree-optimization/114985 + * vr-values.cc (simplify_using_ranges::fold_cond_with_ops): Use + boolean type when folding conditionals. + +2024-05-16 Richard Biener <rguenther@suse.de> + + PR tree-optimization/79958 + PR tree-optimization/109087 + PR tree-optimization/100314 + PR tree-optimization/114774 + * tree-ssa-dse.cc (dse_classify_store): New forwarder. + (dse_classify_store): Add arguments cnt and visited, recurse + to track multiple paths when we end up with multiple defs. + +2024-05-16 David Malcolm <dmalcolm@redhat.com> + + * text-art/theme.cc (ascii_theme::get_cppchar): Add + cell_kind::INTERPROCEDURAL_*. + (unicode_theme::get_cppchar): Likewise. + * text-art/theme.h (theme::cell_kind): Likewise. + * tree-diagnostic-path.cc: + (thread_event_printer::print_swimlane_for_event_range): Use the + above to get characters for indicating interprocedural stack + depth activity, falling back to ascii. + (selftest::test_interprocedural_path_1): Test with both ascii + and unicode themes. + (selftest::test_interprocedural_path_2): Likewise. + (selftest::test_recursion): Likewise. + +2024-05-16 David Malcolm <dmalcolm@redhat.com> + + * tree-diagnostic-path.cc: Include "text-art/theme.h". + (path_label::get_text): If the event has + diagnostic_event::VERB_danger, and the theme enables emojis, then + add a warning emoji between the event number and the event text. + +2024-05-16 David Malcolm <dmalcolm@redhat.com> + + * tree-diagnostic-path.cc (per_thread_summary::interprocedural_p): + New. + (thread_event_printer::print_swimlane_for_event_range): Don't + indent and print the stack depth line if this thread's events are + purely intraprocedural. + (selftest::test_intraprocedural_path): Update expected output. + +2024-05-16 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-path.h: Update leading comment to reflect + intraprocedural cases. Fix typo in comment. + * doc/invoke.texi: Update intraprocedural example. + +2024-05-16 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-show-locus.cc: Define INCLUDE_VECTOR and include + "text-art/types.h". + (line_label::line_label): Drop "policy" argument. Use + styled_string::calc_canvas_width when computing m_display_width, + as this skips SGR codes. + (layout::print_any_labels): Update for line_label ctor change. + (selftest::test_one_liner_labels_utf8): Update expected text to + reflect that the labels can fit on one line if we don't get + confused by SGR colorization codes. + +2024-05-16 Xiao Zeng <zengxiao@eswincomputing.com> + + * common/config/riscv/riscv-common.cc: + (riscv_implied_info): Add zvfbfwma item. + (riscv_ext_version_table): Ditto. + (riscv_ext_flag_table): Ditto. + * config/riscv/riscv.opt: + (MASK_ZVFBFWMA): New macro. + (TARGET_ZVFBFWMA): Ditto. + +2024-05-16 liuhongt <hongtao.liu@intel.com> + + PR target/114514 + * config/i386/i386-expand.cc (ix86_expand_vecop_qihi_partial): + Set d.one_operand_p to true when TARGET_SSSE3. + +2024-05-16 liuhongt <hongtao.liu@intel.com> + + PR target/114514 + * config/i386/i386-expand.cc + (ix86_expand_vec_shift_qihi_constant): Optimize ashift >> 7 to + vpcmpgtb. + (ix86_expand_vecop_qihi_partial): Ditto. + 2024-05-15 Jeff Law <jlaw@ventanamicro.com> * config/riscv/riscv-string.cc: Add missing hunk from last change. diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 009b2a2..563336a 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20240516 +20240519 diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index f0ec83e..15712e9 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,609 @@ +2024-05-17 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/115133 + * libgnarl/s-osinte__solaris.ads (mutex_t): Fix typo. + * libgnarl/s-taprop__solaris.adb (Record_Lock): Add conversion. + (Check_Sleep): Likewise. + (Record_Wakeup): Likewise. + (Check_Unlock): Likewise. + * libgnarl/s-tasini.adb (Initialize_RTS_Lock): Add pragma Import + on the overlaid variable. + (Finalize_RTS_Lock): Likewise. + (Acquire_RTS_Lock): Likewise. + (Release_RTS_Lock): Likewise. + * libgnarl/s-taspri__solaris.ads (To_RTS_Lock_Ptr): New instance + of Ada.Unchecked_Conversion. + * libgnat/s-oslock__solaris.ads: Add with clause for + Ada.Unchecked_Conversion. + (array_type_9): Add missing name qualification. + (record_type_3): Likewise. + (mutex_t): Fix formatting. + +2024-05-17 Viljar Indus <indus@adacore.com> + + * exp_aggr.adb (Expand_Container_Aggregate): + Derive the size for iterable aggregates in the case of + one-dimensional array objects. + +2024-05-17 Ronan Desplanques <desplanques@adacore.com> + + * exp_aggr.adb (Aggr_Size_OK): Remove workaround and extend + comment. + +2024-05-17 Eric Botcazou <ebotcazou@adacore.com> + + * bindgen.adb (Gen_Adainit): Generate declaration and call to the + imported procedure __gnat_tasking_runtime_initialize if need be. + * libgnat/s-soflin.ads (Locking Soft-Links): Add commentary. + * libgnarl/s-tasini.adb (Tasking_Runtime_Initialize): New procedure + exported as __gnat_tasking_runtime_initialize. Initialize RTS_Lock + manipulation routines here instead of... + (Init_RTS): ...here. + +2024-05-17 Steve Baird <baird@adacore.com> + + * scng.adb (scan): When checking for an unprocessed preprocessor + directive, take into account the preprocessor's rules about case + insensitivity and about white space between the '#' and the + keyword. + +2024-05-17 Eric Botcazou <ebotcazou@adacore.com> + + * libgnarl/s-taspri__mingw.ads: Add clause for System.OS_Interface. + (Private_Data): Change type of Thread component. + +2024-05-17 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/g-alvevi.ads: Add pragma Universal_Aliasing for all the + view types. + * libgnat/s-stratt.ads: Likewise for Fat_Pointer type. + +2024-05-17 Eric Botcazou <ebotcazou@adacore.com> + + * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add s-oslock$(objext). + (LIBGNAT_TARGET_PAIRS): Use s-oslock__dummy.ads by default. + Set specific s-oslock.ads source file for all the platforms. + * exp_ch7.ads (Preload_Finalization_Collection): New procedure. + * exp_ch7.adb (Allows_Finalization_Collection): Return False if + System.Finalization_Primitives has not been preloaded. + (Preload_Finalization_Collection): New procedure. + * opt.ads (Interface_Seen): New boolean variable. + * s-oscons-tmplt.c: Use "N" string for pragma Style_Checks. + * scng.adb (Scan): Set Interface_Seen upon seeing "interface". + * sem_ch10.adb: Add clause for Exp_Ch7. + (Analyze_Compilation_Unit): Call Preload_Finalization_Collection + after the context of the unit is analyzed. + * libgnarl/a-rttiev.adb: Add with clause for System.OS_Locks and + alphabetize others. + (Event_Queue_Lock): Adjust qualified name of subtype. + * libgnarl/s-osinte__aix.ads: Add with clause for System.OS_Locks + and change pthread_mutex_t into a local subtype. + * libgnarl/s-osinte__android.ads: Likewise. + * libgnarl/s-osinte__darwin.ads: Likewise. + * libgnarl/s-osinte__dragonfly.ads: Likewise. + * libgnarl/s-osinte__freebsd.ads: Likewise. + * libgnarl/s-osinte__gnu.ads: Likewise. + * libgnarl/s-osinte__hpux-dce.ads: Likewise. + * libgnarl/s-osinte__hpux.ads: Add Likewise. + * libgnarl/s-osinte__kfreebsd-gnu.ads: Likewise. + * libgnarl/s-osinte__linux.ads: Likewise. + * libgnarl/s-osinte__lynxos178e.ads: Likewise. + * libgnarl/s-osinte__qnx.ads: Likewise. + * libgnarl/s-osinte__rtems.ads: Likewise. + * libgnarl/s-osinte__mingw.ads: Add with clause for System.OS_Locks + and change CRITICAL_SECTION into a local subtype. Add declarations + for imported procedures dealing with CRITICAL_SECTION. + * libgnarl/s-osinte__solaris.ads: Add with clause for System.OS_Locks + and change mutex_t into a local subtype. + * libgnarl/s-osinte__vxworks.ads: Add missing blank line. + * libgnarl/s-taprop.ads: Alphabetize clauses and package renamings. + Use qualified name for RTS_Lock throughout. + * libgnarl/s-taprop__dummy.adb: Add use clause for System.OS_Locks + and alphabetize others. + * libgnarl/s-taprop__hpux-dce.adb: Likewise. + * libgnarl/s-taprop__linux.adb: Likewise. + * libgnarl/s-taprop__posix.adb: Likewise. + * libgnarl/s-taprop__qnx.adb: Likewise. + * libgnarl/s-taprop__rtems.adb: Likewise. + * libgnarl/s-taprop__solaris.adb: Likewise. + * libgnarl/s-taprop__vxworks.adb: Likewise. + * libgnarl/s-taprop__mingw.adb: Likewise. Remove declarations for + imported procedures dealing with CRITICAL_SECTION. + * libgnarl/s-tarest.adb: Add with clause for System.OS_Locks and + alphabetize others. + (Global_Task_Lock): Adjust qualified name of subtype. + * libgnarl/s-tasini.adb: Add clause for System.OS_Locks. + (Initialize_RTS_Lock): New procedure. + (Finalize_RTS_Lock): Likewise. + (Acquire_RTS_Lock): Likewise. + (Release_RTS_Lock): Likewise. + (Init_RTS): Add compile-time assertions for RTS_Lock types. + Set the soft links for the RTS lock manipulation routines. + * libgnarl/s-taspri__dummy.ads: Add with clause for System.OS_Locks. + (RTS_Lock): Delete and adjust throughout accordingly. + * libgnarl/s-taspri__hpux-dce.ads: Likewise. + * libgnarl/s-taspri__lynxos.ads: Likewise. + * libgnarl/s-taspri__mingw.ads: Likewise. + * libgnarl/s-taspri__posix-noaltstack.ads: Likewise. + * libgnarl/s-taspri__posix.ads: Likewise. + * libgnarl/s-taspri__solaris.ads: Likewise. + * libgnarl/s-taspri__vxworks.ads: Likewise. + * libgnat/s-finpri.ads: Add clause for System.OS_Locks. + (Finalization_Collection): Change type of Lock. + * libgnat/s-finpri.adb (Initialize): Call Initialize_RTS_Lock. + (Lock_Collection): Call Acquire_RTS_Lock. + (Unlock_Collection): Call Release_RTS_Lock. + * libgnat/s-oslock__dummy.ads: New file. + * libgnat/s-oslock__hpux-dce.ads: Likewise. + * libgnat/s-oslock__mingw.ads: Likewise. + * libgnat/s-oslock__posix.ads: Likewise. + * libgnat/s-oslock__solaris.ads: Likewise. + * libgnat/s-oslock__vxworks.ads: Likewise. + * libgnat/s-soflin.ads (Null_Set_Address): New null procedure. + (Initialize_RTS_Lock): New soft link. + (Finalize_RTS_Lock): Likewise. + (Acquire_RTS_Lock): Likewise. + (Release_RTS_Lock): Likewise. + * exp_ch4.adb (Expand_N_Allocator): In the subtype indication case, + call Apply_Predicate_Check on the resulting access value if need be. + +2024-05-17 Eric Botcazou <ebotcazou@adacore.com> + + * einfo.ads (Materialize_Entity): Document secondary usage. + +2024-05-17 Steve Baird <baird@adacore.com> + + * local_restrict.adb (Active_Restriction): When traversing scopes, + do not skip over a subprogram body. + +2024-05-17 Eric Botcazou <ebotcazou@adacore.com> + + * libgnarl/s-taprop__dummy.adb (Initialize_Lock): Fix formatting. + * libgnarl/s-taprop__linux.adb (RTS_Lock_Ptr): Delete. + (Init_Mutex): Rename into... + (Initialize_Lock): ...this. + (Initialize_Lock [Lock]): Call above procedure. + (Initialize_Lock [RTS_Lock]): Likewise. + (Initialize_TCB): Likewise. + * libgnarl/s-taprop__posix.adb (Initialize_Lock): New procedure + factored out from the other two homonyms. + (Initialize_Lock [Lock]): Call above procedure. + (Initialize_Lock [RTS_Lock]): Likewise. + * libgnarl/s-taprop__qnx.adb (RTS_Lock_Ptr): Delete. + (Init_Mutex): Rename into... + (Initialize_Lock): ...this. + (Initialize_Lock [Lock]): Call above procedure. + (Initialize_Lock [RTS_Lock]): Likewise. + (Initialize_TCB): Likewise. + * libgnarl/s-taprop__rtems.adb (Initialize_Lock): New procedure + factored out from the other two homonyms. + (Initialize_Lock [Lock]): Call above procedure. + (Initialize_Lock [RTS_Lock]): Likewise. + +2024-05-17 Piotr Trojanek <trojanek@adacore.com> + + * sem_util.adb (Is_Known_On_Entry): Handle constants introduced + by validity checks. + +2024-05-17 Steve Baird <baird@adacore.com> + + * libgnat/a-direct.adb (Start_Search_Internal): Do not call + Modification_Time for a special file; declare a Calendar.Time + constant No_Time and use that instead. + +2024-05-17 Steve Baird <baird@adacore.com> + + * exp_ch3.adb (Build_Equivalent_Record_Aggregate): Add + Has_Predicates test for a scalar component to match what is + already done for other kinds of components. + +2024-05-17 Ronan Desplanques <desplanques@adacore.com> + + * sem_aggr.adb (Resolve_Array_Aggregate): Improve comments + and condition. + +2024-05-17 Ronan Desplanques <desplanques@adacore.com> + + * sem_aggr.adb (Resolve_Array_Aggregate): Fix location of error + message. + +2024-05-17 Piotr Trojanek <trojanek@adacore.com> + + * sem_prag.adb (Is_Unconstrained_Or_Tagged_Item): Move to + Sem_Util, so it can be used from GNATprove. + * sem_util.ads (Is_Unconstrained_Or_Tagged_Item): Move from + Sem_Prag; spec. + * sem_util.adb (Is_Unconstrained_Or_Tagged_Item): Move from + Sem_Prag; body. + +2024-05-17 Eric Botcazou <ebotcazou@adacore.com> + + * exp_pakd.adb (Create_Packed_Array_Impl_Type): For non-bit-packed + array types, propagate the aliased property of the component. + (Install_PAT): Set fields on the implicit base type of an array. + * libgnat/a-stream.ads (private part): Add pragma Universal_Aliasing + for Stream_Element. + * libgnat/g-alleve.ads: Add pragma Universal_Aliasing for all the + vector types. + * libgnat/g-alleve__hard.ads: Likewise. + +2024-05-17 Bob Duff <duff@adacore.com> + + * bcheck.adb (Check_Consistency_Of_Sdep): Split out new procedure. + Add check for special case of subprogram spec that no longer + exists. + (Check_Consistency): Call Check_Consistency_Of_Sdep, except when + Reified_Child_Spec is True. No need for "goto Continue" or "exit + Sdep_Loop". + * ali.ads (Subunit_Name, Unit_Name): Change the type to + Unit_Name_Type. Add a comment pointing to the ALI file + documentation, because it's in a somewhat-surprising place. + * ali.adb (Scan_ALI): Subunit_Name and Unit_Name are now + Unit_Name_Type. Remove comment explaining why Name_Find is used; + Name_Find is the usual case. Do not remove the "%s" or "%b" from + the Unit_Name. We need to be able to distinguish specs and bodies. + This is also necessary to obey the invariant of Unit_Name_Type. + * binde.adb (Write_Closure): Subunit_Name is now Unit_Name_Type. + * clean.adb (Clean_Executables): Likewise. + +2024-05-17 Ronan Desplanques <desplanques@adacore.com> + + * sem_aggr.adb (Resolve_Null_Array_Aggregate): Update + documentation comments. + +2024-05-17 Steve Baird <baird@adacore.com> + + * sem_util.adb (Has_Some_Controlled_Component): Fix a bug which + causes (in some cases involving a Disable_Controlled aspect + specification) Needs_Finalization to return different answers for + one type depending on whether the function is called before or + after the type is frozen. + * libgnat/a-coorse.ads: Type Control_Reference_Type gets an Adjust + procedure. + * libgnat/a-cborse.ads: Likewise. + * libgnat/a-ciorse.ads: Likewise + * libgnat/a-coorse.adb: + (Finalize): Reclaim allocated Key_Type object. + (Adjust): New procedure; prevent sharing of non-null Key_Access + values by allocating a copy. + * libgnat/a-cborse.adb: Likewise. + * libgnat/a-ciorse.adb: Likewise. + +2024-05-17 Bob Duff <duff@adacore.com> + + * uname.adb (Get_Unit_Name_String): Move Asserts after + Buf is initialized. + +2024-05-17 Bob Duff <duff@adacore.com> + + * ali-util.adb (Read_Withed_ALIs): Minor reformatting. + * bindo-units.adb (Corresponding_Body): Add assert. + (Corresponding_Spec): Likewise. + * uname.adb: Clean up assertions, use available functions. + Get_Spec_Name/Get_Body_Name can assert that N obeys the + conventions for Unit_Name_Type (end in "%s" or "%b"). + +2024-05-17 Sebastian Poeplau <poeplau@adacore.com> + + * raise-gcc.c: Work around __builtin_code_address_from_pointer + if it is unavailable. + +2024-05-17 Marc Poulhiès <poulhies@adacore.com> + + * exp_aggr.adb (Build_Array_Aggr_Code) <Gen_Loop>: Copy the + initialization expression when unrolling the loop. + +2024-05-17 Bob Duff <duff@adacore.com> + + * sem_disp.adb (Check_Dispatching_Operation): Call + Create_Extra_Formals, so that the caller will have an extra + "constrained" parameter, which will be checked on assignment in + the callee, and will be passed in by the caller. + +2024-05-17 Piotr Trojanek <trojanek@adacore.com> + + * sem_prag.adb (Is_Unconstrained_Or_Tagged_Item): Remove call + to Has_Discriminants; combine ELSIF branches. + +2024-05-17 Piotr Trojanek <trojanek@adacore.com> + + * sem_ch7.adb (New_Private_Type): Simplify setting of + Is_Constrained flag. + * sem_prag.adb (Is_Unconstrained_Or_Tagged_Item): Simplify + detection of private types with no discriminant. + +2024-05-17 Piotr Trojanek <trojanek@adacore.com> + + * sem_prag.adb (Is_Unconstrained_Or_Tagged_Item): Allow objects + of private types with unknown discriminants. + +2024-05-17 Piotr Trojanek <trojanek@adacore.com> + + * sem_prag.adb (Is_Unconstrained_Or_Tagged_Item): Tune repeated + testing of type kinds. + +2024-05-17 Marc Poulhiès <poulhies@adacore.com> + + * doc/gnat_rm/implementation_defined_attributes.rst: Fix + copy/paste. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2024-05-17 Viljar Indus <indus@adacore.com> + + * sem_ch3.adb (Analyze_Component_Declaration): + Apply range checks only for Scalar_Types to + ensure that they have the Scalar_Range attribute. + +2024-05-17 Viljar Indus <indus@adacore.com> + + * sem_ch3.adb (Analyze_Component_Declaration): + Add Range_Checks for Subtype_Indications + +2024-05-17 Ronan Desplanques <desplanques@adacore.com> + + * exp_ch4.adb (Expand_N_Case_Expression): Remove call to + Relocate_Node. + * sem_attr.adb (Analyze_Attribute): Likewise. + +2024-05-17 Ronan Desplanques <desplanques@adacore.com> + + * exp_aggr.adb (Flatten): Small cleanup. + +2024-05-17 Eric Botcazou <ebotcazou@adacore.com> + + * sem_attr.adb (Analyze_Attribute) <Attribute_Size>: Remove special + processing for pragma Compile_Time_{Warning,Error}. + (Eval_Attribute.Compile_Time_Known_Attribute): Set Is_Static on the + resulting value if In_Compile_Time_Warning_Or_Error is set. + (Eval_Attribute.Full_Type): New helper function. + (Eval_Attribute): Call Full_Type for type attributes. Add handling + of Object_Size and adjust that of Max_Size_In_Storage_Elements in + the non-static case. + +2024-05-16 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch7.adb (Attach_Object_To_Master_Node): Remove reference to a + transient object in comment. + +2024-05-16 Marc Poulhiès <poulhies@adacore.com> + + * exp_ch7.adb (Reset_Scopes_To_Block_Elab_Proc): also reset scope + for object declarations. + +2024-05-16 Steve Baird <baird@adacore.com> + + * checks.adb (Expr_Known_Valid): Return True for a static expression. + * exp_util.adb (Adjust_Condition): No validity check needed for a + condition if it is an expression for which a validity check has + already been generated. + +2024-05-16 Gary Dismukes <dismukes@adacore.com> + + * libgnat/a-coinve.ads (type Vector): In the Aggregate aspect for + this type, the Empty operation is changed to denote the Empty + function, rather than the Empty_Vector constant. + * exp_aggr.adb (Expand_Container_Aggregate): Remove code for + handling the case where the Empty_Subp denotes a constant object, + which should never happen (and add an assertion that Empty_Subp + must denote a function). + * sem_ch13.adb (Valid_Empty): No longer allow the entity to be an + E_Constant, and require the (optional) parameter of an Empty + function to be of a signed integer type (rather than any integer + type). + +2024-05-16 Justin Squirek <squirek@adacore.com> + + * doc/gnat_rm/implementation_defined_attributes.rst: Add entry for + Super attribute. + * accessibility.adb (Accessibility_Level): Add handling for Super. + * exp_attr.adb (Expand_N_Attribute_Reference): Add entry for + Super. + * sem_attr.adb (Analyze_Attribute): Create a case to handle the + semantic checking and expansion for Super. + (Eval_Attribute): Add entry for Super. + * sem_attr.ads: Add entry for Super. + * sem_util.adb (Is_Aliased_View, Is_Variable): Add case to handle + references to 'Super. + * snames.ads-tmpl: Register Name_Super and Attribute_Super. + * gnat_rm.texi: Regenerate. + +2024-05-16 Ronan Desplanques <desplanques@adacore.com> + + * sem_util.ads (Check_Function_Writable_Actuals): Fix comment. + +2024-05-16 Ronan Desplanques <desplanques@adacore.com> + + * sem_res.adb (Resolve_Case_Expression): Add length check + insertion. + * exp_ch4.adb (Expand_N_Case_Expression): Add handling of nodes + known to raise Constraint_Error. + +2024-05-16 Sebastian Poeplau <poeplau@adacore.com> + + * adaint.c: New defines for STANDALONE mode. + +2024-05-16 Viljar Indus <indus@adacore.com> + + * sem_ch6.adb (Analyze_Subprogram_Body_Helper): + If the spec is not present for a subprogram body then + check if the body definiton was created for a protected + procedure. + +2024-05-16 Piotr Trojanek <trojanek@adacore.com> + + * exp_cg.adb (Generate_CG_Output): Remove code for ignored ghost + entities that applied to subprogram calls. + (Register_CG_Node): Skip ignored ghost entities, both calls + and tagged types, when they are registered. + +2024-05-16 Ronan Desplanques <desplanques@adacore.com> + + * checks.adb (Apply_Selected_Length_Checks): Fix reason code. + +2024-05-16 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-finpri.adb (Raise_From_Controlled_Operation): New + declaration of imported procedure moved from... + (Finalize_Master): ...there. + (Finalize): Call Raise_From_Controlled_Operation instead of + Reraise_Occurrence to propagate the exception, if any. + +2024-05-16 Piotr Trojanek <trojanek@adacore.com> + + * sem_ch4.adb (Analyze_If_Expression): Add guard for + if_expression without an ELSE part. + +2024-05-16 Piotr Trojanek <trojanek@adacore.com> + + * exp_ch13.adb (Expand_N_Free_Statement): After analysis, the + new temporary has the type of its Object_Definition and the new + occurrence of this temporary has this type as well; simplify. + * sem_util.adb + (Indirect_Temp_Value): Remove redundant call to Set_Etype; + simplify. + (Is_Access_Type_For_Indirect_Temp): Add missing body header. + +2024-05-16 Piotr Trojanek <trojanek@adacore.com> + + * sem_util.adb (Is_Known_On_Entry): Check whether condition and + dependent expressions of an if_expression are known on entry. + +2024-05-16 Ronan Desplanques <desplanques@adacore.com> + + * checks.ads: Fix comments. + * checks.adb: Likewise. + +2024-05-16 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-finpri.ads: Add use type clause for Storage_Offset. + (Header_Alignment): Turn into an expression function. + (Header_Size): Likewise. + * libgnat/s-finpri.adb: Remove use type clause for Storage_Offset. + (Header_Alignment): Delete. + (Header_Size): Likewise. + +2024-05-16 Marc Poulhiès <poulhies@adacore.com> + + * exp_ch7.adb (Unnest_Loop::Fixup_Inner_Scopes): detect a new + problematic pattern and fixup the scope accordingly. + +2024-05-16 Piotr Trojanek <trojanek@adacore.com> + + * gnat_cuda.adb (Remove_CUDA_Device_Entities): Fix typo. + +2024-05-16 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-finpri.ads (Header_Alignment): New function. + (Header_Size): Adjust description. + (Master_Node): Put Finalize_Address as first component. + (Collection_Node): Likewise. + * libgnat/s-finpri.adb (Header_Alignment): New function. + (Header_Size): Return the object size in storage units. + * libgnat/s-stposu.ads (Adjust_Controlled_Dereference): Replace + collection node with header in description. + * libgnat/s-stposu.adb (Adjust_Controlled_Dereference): Likewise. + (Allocate_Any_Controlled): Likewise. Pass the maximum of the + specified alignment and that of the header to the allocator. + (Deallocate_Any_Controlled): Likewise to the deallocator. + +2024-05-16 Viljar Indus <indus@adacore.com> + + * exp_aggr.adb (Two_Pass_Aggregate_Expansion): + Explicitly create new Defining_Iterators for both + of the loops. + +2024-05-16 Eric Botcazou <ebotcazou@adacore.com> + + * sem_ch6.adb (Check_Private_Overriding): Implement the second part + of RM 3.9.3(10) consistently in both cases. + +2024-05-16 Piotr Trojanek <trojanek@adacore.com> + + * erroutc.adb (Set_Msg_Insertion_Reserved_Word): Fix casing for + CUDA appearing in error message strings. + (Set_Msg_Str): Likewise for CUDA being a part of a Name_Id. + +2024-05-16 Ronan Desplanques <desplanques@adacore.com> + + * exp_ch4.adb (Expand_Composite_Equality): Call Error_Msg_N + instead of Error_Msg. + +2024-05-16 Steve Baird <baird@adacore.com> + + * exp_attr.adb (Build_And_Insert_Type_Attr_Subp): Further tweaking + of the point where a compiler-generated Put_Image or streaming + subprogram is to be inserted in the tree. If one such subprogram + calls another (as is often the case with, for example, Put_Image + procedures for composite type and for a component type thereof), + then we want to avoid use-before-definition problems that can + result from inserting the caller ahead of the callee. + +2024-05-16 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-finpri.ads (Lock_Type): New modular type. + (Collection_Node): Add Enclosing_Collection component. + (Finalization_Collection): Add Lock component. + * libgnat/s-finpri.adb: Add clauses for System.Atomic_Primitives. + (Attach_Object_To_Collection): Lock and unlock the collection. + Save a pointer to the enclosing collection in the node. + (Detach_Object_From_Collection): Lock and unlock the collection. + (Finalize): Likewise. + (Initialize): Initialize the lock. + (Lock_Collection): New procedure. + (Unlock_Collection): Likewise. + +2024-05-16 Steve Baird <baird@adacore.com> + + * sem_attr.adb (Eval_Attribute): Expand existing checks for + generic formal types for which Is_Generic_Type returns False. In + that case, mark the attribute reference as nonstatic. + +2024-05-16 Steve Baird <baird@adacore.com> + + * sem_util.adb (Copy_Node_With_Replacement): Add call to + Copy_Dimensions so that any dimension information associated with + the copied node is also associated with the resulting copy. + +2024-05-16 Piotr Trojanek <trojanek@adacore.com> + + * gen_il-gen-gen_nodes.adb (N_Procedure_Specification): Remove + Aspect_Specifications field. + +2024-05-16 Piotr Trojanek <trojanek@adacore.com> + + * sem_ch13.adb (Analyze_Aspect_Specification): Consistently + reuse existing constant where possible. + +2024-05-16 Piotr Trojanek <trojanek@adacore.com> + + * sem_ch13.adb (Analyze_Aspect_Specification): Consistently + reuse existing constant where possible. + +2024-05-16 Piotr Trojanek <trojanek@adacore.com> + + * aspects.ads (Aspect_Id): Fix ordering. + +2024-05-16 Piotr Trojanek <trojanek@adacore.com> + + * sem_prag.adb (Analyze_Pragma): Move case alternative to match + to alphabetic order. + +2024-05-16 Piotr Trojanek <trojanek@adacore.com> + + * gnat_cuda.adb (Remove_CUDA_Device_Entities): Fix casing + (this primarily fixes a style, because the capitalization will + not be preserved by the error-reporting machinery anyway). + * sem_ch13.adb (Analyze_User_Aspect_Aspect_Specification): Fix + casing in error message. + +2024-05-16 Piotr Trojanek <trojanek@adacore.com> + + * doc/gnat_rm/implementation_defined_pragmas.rst: Fix + documentation. + * sem_prag.adb: Fix comments. + * gnat_rm.texi: Regenerate. + 2024-05-14 Piotr Trojanek <trojanek@adacore.com> * aspects.ads (Aspect_Id, Boolean_Aspect): Change categorization diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog index e44f496..31dfcbc 100644 --- a/gcc/analyzer/ChangeLog +++ b/gcc/analyzer/ChangeLog @@ -1,3 +1,13 @@ +2024-05-17 David Malcolm <dmalcolm@redhat.com> + + * checker-event.h (checker_event::connect_to_next_event_p): + Implement new diagnostic_event::connect_to_next_event_p vfunc. + (start_cfg_edge_event::connect_to_next_event_p): Likewise. + (start_consolidated_cfg_edges_event::connect_to_next_event_p): + Likewise. + * infinite-loop.cc (class looping_back_event): New subclass. + (infinite_loop_diagnostic::add_final_event): Use it. + 2024-05-15 David Malcolm <dmalcolm@redhat.com> PR analyzer/114899 diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index fb09551..c2c28ff 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,9 @@ +2024-05-17 Eric Botcazou <ebotcazou@adacore.com> + + * c-ada-spec.cc (bitfield_used): Move around. + (packed_layout): Likewise. + (dump_ada_array_type): Do not put "aliased" for a packed layout. + 2024-05-15 Marek Polacek <polacek@redhat.com> DR 1693 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 7177fdb..41cccad 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2024-05-17 Patrick Palka <ppalka@redhat.com> + + PR c++/115114 + * pt.cc (maybe_aggr_guide): Consider bases in the paren init case. + 2024-05-15 Marek Polacek <polacek@redhat.com> PR c++/114854 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 3a27c18..efbeea6 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,18 @@ +2024-05-17 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/114874 + * gfortran.h: Add 'assoc_name_inferred' to gfc_namespace. + * match.cc (gfc_match_select_type): Set 'assoc_name_inferred' + in select type namespace if the selector has inferred type. + * primary.cc (gfc_match_varspec): If a select type temporary + is apparently scalar and a left parenthesis has been detected, + check the current namespace has 'assoc_name_inferred' set. If + so, set inferred_type. + * resolve.cc (resolve_variable): If the namespace of a select + type temporary is marked with 'assoc_name_inferred' call + gfc_fixup_inferred_type_refs to ensure references are OK. + (gfc_fixup_inferred_type_refs): Catch invalid array refs.. + 2024-05-15 Jakub Jelinek <jakub@redhat.com> PR c/115103 diff --git a/gcc/po/ChangeLog b/gcc/po/ChangeLog index 2b1fc6e..3207c169 100644 --- a/gcc/po/ChangeLog +++ b/gcc/po/ChangeLog @@ -1,3 +1,7 @@ +2024-05-16 Joseph Myers <josmyers@redhat.com> + + * sv.po: Update. + 2024-05-13 Joseph Myers <josmyers@redhat.com> * be.po, da.po, de.po, el.po, es.po, fi.po, fr.po, hr.po, id.po, diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index d8d4609..5efa506 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,194 @@ +2024-05-19 Jeff Law <jlaw@ventanamicro.com> + + PR target/115142 + * gcc.target/riscv/pr115142.c: New test. + +2024-05-19 Iain Sandoe <iain@sandoe.co.uk> + + PR testsuite/114982 + * g++.dg/tree-ssa/cxa_atexit-6.C: Skip for Darwin. + +2024-05-19 Iain Sandoe <iain@sandoe.co.uk> + + * gcc.dg/darwin-weakimport-3.c: Suppress unwind frames. + +2024-05-18 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/shift-add-1.c: New test. + +2024-05-18 Xiao Zeng <zengxiao@eswincomputing.com> + + * gcc.target/riscv/_Bfloat16-nanboxing.c: Move to... + * gcc.target/riscv/__bf16-nanboxing.c: ...here. + * gcc.target/riscv/bf16_arithmetic.c: Modify _Bfloat16 to __bf16. + * gcc.target/riscv/bf16_call.c: Ditto. + * gcc.target/riscv/bf16_comparison.c: Ditto. + * gcc.target/riscv/bf16_float_libcall_convert.c: Ditto. + * gcc.target/riscv/bf16_integer_libcall_convert.c: Ditto. + +2024-05-18 Pan Li <pan2.li@intel.com> + + PR target/51492 + PR target/112600 + * gcc.target/riscv/rvv/autovec/binop/vec_sat_binary.h: New test. + * gcc.target/riscv/rvv/autovec/binop/vec_sat_u_add-1.c: New test. + * gcc.target/riscv/rvv/autovec/binop/vec_sat_u_add-2.c: New test. + * gcc.target/riscv/rvv/autovec/binop/vec_sat_u_add-3.c: New test. + * gcc.target/riscv/rvv/autovec/binop/vec_sat_u_add-4.c: New test. + * gcc.target/riscv/rvv/autovec/binop/vec_sat_u_add-run-1.c: New test. + * gcc.target/riscv/rvv/autovec/binop/vec_sat_u_add-run-2.c: New test. + * gcc.target/riscv/rvv/autovec/binop/vec_sat_u_add-run-3.c: New test. + * gcc.target/riscv/rvv/autovec/binop/vec_sat_u_add-run-4.c: New test. + * gcc.target/riscv/sat_arith.h: New test. + * gcc.target/riscv/sat_u_add-1.c: New test. + * gcc.target/riscv/sat_u_add-2.c: New test. + * gcc.target/riscv/sat_u_add-3.c: New test. + * gcc.target/riscv/sat_u_add-4.c: New test. + * gcc.target/riscv/sat_u_add-run-1.c: New test. + * gcc.target/riscv/sat_u_add-run-2.c: New test. + * gcc.target/riscv/sat_u_add-run-3.c: New test. + * gcc.target/riscv/sat_u_add-run-4.c: New test. + * gcc.target/riscv/scalar_sat_binary.h: New test. + +2024-05-17 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.dg/vect/costmodel/riscv/rvv/pr113112-4.c: Adjust test. + +2024-05-17 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/riscv/rvv/autovec/pr113474.c: New test. + +2024-05-17 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/analyzer/event-links-ascii.c: New test. + * gcc.dg/analyzer/event-links-color.c: New test. + * gcc.dg/analyzer/event-links-disabled.c: New test. + * gcc.dg/analyzer/event-links-unicode.c: New test. + +2024-05-17 Uros Bizjak <ubizjak@gmail.com> + + PR middle-end/112600 + * gcc.target/i386/pr112600-1a.c: New test. + * gcc.target/i386/pr112600-1b.c: New test. + +2024-05-17 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/114874 + * gfortran.dg/pr114874_1.f90: New test for valid code. + * gfortran.dg/pr114874_2.f90: New test for invalid code. + +2024-05-17 Patrick Palka <ppalka@redhat.com> + + PR c++/115114 + * g++.dg/cpp2a/class-deduction-aggr15.C: New test. + +2024-05-17 Aldy Hernandez <aldyh@redhat.com> + + * gcc.dg/tree-ssa/pr115128.c: New test. + +2024-05-17 Richard Biener <rguenther@suse.de> + + * gcc.dg/torture/20240517-1.c: New testcase. + +2024-05-16 Pan Li <pan2.li@intel.com> + + * gcc.dg/vect/slp-mask-store-1.c: Add pragma novector as it will + have 2 times LOOP VECTORIZED in RISC-V. + * gcc.dg/vect/vect-early-break_124-pr114403.c: Xfail for the + riscv backend. + * lib/target-supports.exp: Add RISC-V backend. + +2024-05-16 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/early-break-1.c: New test. + * gcc.target/riscv/rvv/autovec/early-break-2.c: New test. + +2024-05-16 Jan Hubicka <jh@suse.cz> + + * gcc.c-torture/execute/pr113787.c: New test. + +2024-05-16 Richard Biener <rguenther@suse.de> + + PR tree-optimization/13962 + PR tree-optimization/96564 + * gcc.dg/tree-ssa/alias-39.c: New testcase. + * g++.dg/vect/pr68145.cc: Use -fno-tree-pta to avoid UB + to manifest in transforms no longer vectorizing this testcase + for an ICE. + +2024-05-16 Richard Biener <rguenther@suse.de> + + * gcc.dg/tree-ssa/alias-38.c: New testcase. + +2024-05-16 Christoph Müllner <christoph.muellner@vrull.eu> + + * gcc.target/riscv/cmpmemsi-1.c: Drop options. + * gcc.target/riscv/cpymemsi-1.c: Likewise. + +2024-05-16 Richard Biener <rguenther@suse.de> + + PR tree-optimization/79958 + PR tree-optimization/109087 + PR tree-optimization/100314 + PR tree-optimization/114774 + * gcc.dg/tree-ssa/ssa-dse-48.c: New testcase. + * gcc.dg/tree-ssa/ssa-dse-49.c: Likewise. + * gcc.dg/tree-ssa/ssa-dse-50.c: Likewise. + * gcc.dg/tree-ssa/ssa-dse-51.c: Likewise. + * gcc.dg/graphite/pr80906.c: Avoid DSE of last data reference + in loop. + * g++.dg/ipa/devirt-24.C: Adjust for extra DSE. + * g++.dg/warn/Wuninitialized-pr107919-1.C: Use more important + -O2 optimization level, -O1 regresses. + +2024-05-16 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/analyzer/out-of-bounds-diagram-1-emoji.c: Update expected + output to use unicode for depth indication. + * gcc.dg/analyzer/out-of-bounds-diagram-1-unicode.c: Likewise. + +2024-05-16 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/analyzer/out-of-bounds-diagram-1-emoji.c: Update expected + output to include warning emoji. + * gcc.dg/analyzer/warning-emoji.c: New test. + +2024-05-16 David Malcolm <dmalcolm@redhat.com> + + * c-c++-common/analyzer/allocation-size-multiline-1.c: Update + expected results for purely intraprocedural path. + * c-c++-common/analyzer/allocation-size-multiline-2.c: Likewise. + * c-c++-common/analyzer/allocation-size-multiline-3.c: Likewise. + * c-c++-common/analyzer/analyzer-verbosity-0.c: Likewise. + * c-c++-common/analyzer/analyzer-verbosity-1.c: Likewise. + * c-c++-common/analyzer/analyzer-verbosity-2.c: Likewise. + * c-c++-common/analyzer/analyzer-verbosity-3.c: Likewise. + * c-c++-common/analyzer/malloc-macro-inline-events.c: Likewise. + Doing so for this file requires a rewrite since the paths + prefixing the "in expansion of macro" lines become the only thing + on their line and so are no longer pruned by multiline.exp logic + for pruning extra content on non-blank lines. + * c-c++-common/analyzer/malloc-paths-9-noexcept.c: Likewise. + * c-c++-common/analyzer/setjmp-2.c: Likewise. + * gcc.dg/analyzer/malloc-paths-9.c: Likewise. + * gcc.dg/analyzer/out-of-bounds-multiline-2.c: Likewise. + * gcc.dg/plugin/diagnostic-test-paths-2.c: Likewise. + +2024-05-16 Xiao Zeng <zengxiao@eswincomputing.com> + + * gcc.target/riscv/arch-37.c: New test. + * gcc.target/riscv/arch-38.c: New test. + * gcc.target/riscv/predef-36.c: New test. + * gcc.target/riscv/predef-37.c: New test. + +2024-05-16 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/pr114514-shufb.c: New test. + +2024-05-16 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/pr114514-shift.c: New test. + 2024-05-15 David Malcolm <dmalcolm@redhat.com> PR analyzer/114899 diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index 2beee7f..52eaeb4 100644 --- a/libcpp/ChangeLog +++ b/libcpp/ChangeLog @@ -1,3 +1,8 @@ +2024-05-17 David Malcolm <dmalcolm@redhat.com> + + * include/rich-location.h (class label_effects): New forward decl. + (range_label::get_effects): New vfunc. + 2024-04-30 Jakub Jelinek <jakub@redhat.com> * init.cc (cpp_init_builtins): Change __STDC_VERSION__ diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index 0897d7f..f50159d 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,8 @@ +2024-05-18 Wolfgang Hospital <Wolfgang.Hospital@arcor.de> + + PR target/115065 + * config/avr/lib1funcs.S (__clzhi2): Tweak. + 2024-05-10 Georg-Johann Lay <avr@gjlay.de> PR target/114981 diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index b3e02cd..42eddd4 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,18 @@ +2024-05-17 Björn Schäpers <bjoern@hazardy.de> + + * acinclude.m4 (GLIBCXX_ENABLE_BACKTACE): Add check for + tlhelp32.h, matching libbacktrace. + * config.h.in: Regenerate. + * configure: Regenerate. + +2024-05-17 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/115119 + * include/bits/unicode.h (_Iterator::operator++(int)): Fix typo + in increment expression. + * testsuite/ext/unicode/grapheme_view.cc: Check post-increment + on view's iterator. + 2024-05-15 Jonathan Wakely <jwakely@redhat.com> PR libstdc++/77704 |