diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4267279b60f..0f291f9f7aa 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,13 @@ +2022-07-06 Thomas Schwinge + + * config/gcn/mkoffload.cc (process_obj): Clarify 'target_data' -> + '[...]_data'. + * config/nvptx/mkoffload.cc (process): Likewise. + +2022-07-06 Thomas Schwinge + + * omp-general.h (enum omp_requires): Use 'GOMP_REQUIRES_[...]'. + 2022-07-05 Andrew MacLeod * value-relation.cc (relation_to_code): New vector. diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index ebfebbb1842..56ceb7f4c69 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20220706 +20220707 diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 3b6906482f0..02490f09052 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,174 @@ +2022-07-06 Piotr Trojanek + + * gcc-interface/Make-lang.in (ada/generated/gnatvsn.ads): + Simplify regular expression. The "interval expression", + i.e. \{8\} is part of the POSIX regular expressions, so it + should not be a problem for modern implementations of sed. + +2022-07-06 Eric Botcazou + + * gcc-interface/trans.cc (gnat_to_gnu): Update comment. + +2022-07-06 Eric Botcazou + + * gcc-interface/gigi.h (simple_constant_p): Declare. + * gcc-interface/decl.cc (gnat_to_gnu_entity) : Strip + the qualifiers from the type of a simple constant. + (simple_constant_p): New predicate. + * gcc-interface/trans.cc (node_is_atomic): Return true for objects + with atomic type except for simple constants. + (node_is_volatile_full_access): Return false for simple constants + with VFA type. + +2022-07-06 Eric Botcazou + + * gcc-interface/decl.cc (gnat_to_gnu_entity) : Create a + local constant holding the underlying GNAT type of the object. Do + not fiddle with the object size for an unconstrained array. + +2022-07-06 Eric Botcazou + + * gcc-interface/decl.cc (gnat_to_gnu_subprog_type): Constify a + local variable and move a couple of others around. + +2022-07-06 Eric Botcazou + + * gcc-interface/trans.cc (gnat_gimplify_expr) : New case. + +2022-07-06 Eric Botcazou + + * exp_ch6.adb (Function return mechanisms): New paragraph. + +2022-07-06 Yannick Moy + + * sem_util.adb (Is_Non_Preelaborable_Construct): Fix for + deferred constants. + +2022-07-06 Justin Squirek + + * libgnat/s-regpat.adb, libgnat/s-regpat.ads (Compile): Add a + new defaulted parameter Error_When_Too_Small to trigger an + error, if specified true, when Matcher is too small to hold the + compiled regex program. + +2022-07-06 Justin Squirek + + * sem_ch4.adb (Analyze_Selected_Component): Add condition to + avoid interpreting derived type components as candidates for + selected components in preanalysis of inherited class + conditions. + +2022-07-06 Yannick Moy + + * ghost.adb (Check_Ghost_Context): Delay checking for generic + associations. + (Check_Ghost_Context_In_Generic_Association): Perform ghost + checking in analyzed generic associations. + (Check_Ghost_Formal_Procedure_Or_Package): Check SPARK RM + 6.9(13-14) for formal procedures and packages. + (Check_Ghost_Formal_Variable): Check SPARK RM 6.9(13-14) for + variables. + * ghost.ads: Declarations for the above. + * sem_ch12.adb (Analyze_Associations): Apply delayed checking + for generic associations. + (Analyze_Formal_Object_Declaration): Same. + (Analyze_Formal_Subprogram_Declaration): Same. + (Instantiate_Formal_Package): Same. + (Instantiate_Formal_Subprogram): Same. + (Instantiate_Object): Same. Copy ghost aspect to newly declared + object for actual for IN formal object. Use new function + Get_Enclosing_Deep_Object to retrieve root object. + (Instantiate_Type): Copy ghost aspect to declared subtype for + actual for formal type. + * sem_prag.adb (Analyze_Pragma): Recognize new allowed + declarations. + * sem_util.adb (Copy_Ghost_Aspect): Copy the ghost aspect + between nodes. + (Get_Enclosing_Deep_Object): New function to return enclosing + deep object (or root for reachable part). + * sem_util.ads (Copy_Ghost_Aspect): Same. + (Get_Enclosing_Deep_Object): Same. + * libgnat/s-imageu.ads: Declare formal subprograms as ghost. + * libgnat/s-valuei.ads: Same. + * libgnat/s-valuti.ads: Same. + +2022-07-06 Javier Miranda + + * sem_res.adb (Resolve_Type_Conversion): Code cleanup since the + previous static check has been moved to Valid_Tagged_Conversion. + (Valid_Tagged_Conversion): Fix the code checking conversion + to/from interface types since incorrectly returns True when the + parent type of the operand type (or the target type) is an + interface type; add missing static checks on interface type + conversions. + +2022-07-06 Marc Poulhiès + + * libgnat/s-secsta.ads (SS_Allocate): Add new Alignment + parameter. + (Memory_Alignment): Remove. + * libgnat/s-secsta.adb (Align_Addr): New. + (SS_Allocate): Add new Alignment parameter. Realign pointer if + needed. Don't allocate anything for 0-sized allocations. + * gcc-interface/utils2.cc (build_call_alloc_dealloc_proc): Add + allocated object's alignment as last parameter to allocation + invocation. + +2022-07-06 Piotr Trojanek + + * libgnat/g-socket.adb (Get_Address_Info): Reduce scope of the + Found variable; avoid repeated assignment inside the loop. + +2022-07-06 Doug Rupp + + * Makefile.rtl [arm,aarch64 vxworks7]: Remove rtp and kernel + build macros and set an error variable if needed. + [x86,x86_vxworks7]: Likewise. + [ppc,ppc64]: Set an error variable if needed. + (rts-err): New phony Makefile target. + (setup-rts): Depend on rts-err. + +2022-07-06 Eric Botcazou + + * exp_ch3.adb (Make_Allocator_For_BIP_Return): New local function. + (Expand_N_Object_Declaration): Use it to build the three allocators + for a Build-In-Place return with an unconstrained type. Update the + head comment after other recent changes. + +2022-07-06 Doug Rupp + + * libgnat/system-vxworks7-e500-kernel.ads: Remove. + * libgnat/system-vxworks7-e500-rtp-smp.ads: Likewise. + * libgnat/system-vxworks7-e500-rtp.ads: Likewise. + +2022-07-06 Justin Squirek + + * gnat_cuda.adb (Empty_CUDA_Global_Subprogram): Set + Specification and Corresponding_Spec to match the original + Kernel_Body. + +2022-07-06 Piotr Trojanek + + * exp_ch6.adb (Build_Static_Check_Helper_Call): Replace explicit + call to Make_Unchecked_Type_Conversion with a call to + Unchecked_Convert_To. + * tbuild.adb (Unchecked_Convert_To): Fix whitespace. + +2022-07-06 Piotr Trojanek + + * sem_res.adb (Resolve_Actuals): Restore first sentence of a + comment. + +2022-07-06 Eric Botcazou + + * exp_aggr.adb (Expand_Record_Aggregate): Do not call + Is_Full_Access_Aggregate here. + * freeze.ads (Is_Full_Access_Aggregate): Delete. + * freeze.adb (Is_Full_Access_Aggregate): Move to... + (Freeze_Entity): Do not call Is_Full_Access_Aggregate here. + * sem_aggr.adb (Is_Full_Access_Aggregate): ...here + (Resolve_Aggregate): Call Is_Full_Access_Aggregate here. + 2022-07-05 Piotr Trojanek * doc/gnat_ugn/building_executable_programs_with_gnat.rst diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog index fa732abcf73..03918704e9c 100644 --- a/gcc/analyzer/ChangeLog +++ b/gcc/analyzer/ChangeLog @@ -1,3 +1,25 @@ +2022-07-06 Immad Mir + + PR analyzer/106184 + * sm-fd.cc (fd_state_machine): Change ordering of initialization + of state m_invalid so that the order of initializers is same as + the ordering of the fields in the class decl. + +2022-07-06 Immad Mir + + * sm-fd.cc (use_after_close): save the "close" event and + show it where possible. + +2022-07-06 David Malcolm + + PR analyzer/106204 + * region-model.cc (within_short_circuited_stmt_p): Move extraction + of assign_stmt to caller. + (due_to_ifn_deferred_init_p): New. + (region_model::check_for_poison): Move extraction of assign_stmt + from within_short_circuited_stmt_p to here. Share logic with + call to due_to_ifn_deferred_init_p. + 2022-07-02 Tim Lange PR analyzer/105900 diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index 402484bee23..2853661a720 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,43 @@ +2022-07-06 Lewis Hyatt + + PR preprocessor/53920 + PR c++/53431 + * c-common.cc (c_option_is_from_cpp_diagnostics): New function. + * c-common.h (c_option_is_from_cpp_diagnostics): Declare. + (c_pp_stream_token): Declare. + * c-ppoutput.cc (init_pp_output): Refactor logic about skipping + pragmas to... + (should_output_pragmas): ...here. New function. + (token_streamer::stream): Support handling early pragmas. + (do_line_change): Likewise. + (c_pp_stream_token): New function. + * c-pragma.cc (struct pragma_diagnostic_data): New helper class. + (pragma_diagnostic_lex_normal): New function. Moved logic for + interpreting GCC diagnostic pragmas here. + (pragma_diagnostic_lex_pp): New function for parsing diagnostic pragmas + directly from libcpp. + (handle_pragma_diagnostic): Refactor into helper function... + (handle_pragma_diagnostic_impl): ...here. New function. + (handle_pragma_diagnostic_early): New function. + (handle_pragma_diagnostic_early_pp): New function. + (struct pragma_ns_name): Renamed to... + (struct pragma_pp_data): ...this. Add new "early_handler" member. + (c_register_pragma_1): Support early pragmas in the preprocessor. + (c_register_pragma_with_early_handler): New function. + (c_register_pragma): Support the new early handlers in struct + internal_pragma_handler. + (c_register_pragma_with_data): Likewise. + (c_register_pragma_with_expansion): Likewise. + (c_register_pragma_with_expansion_and_data): Likewise. + (c_invoke_early_pragma_handler): New function. + (c_pp_invoke_early_pragma_handler): New function. + (init_pragma): Add early pragma support for diagnostic pragmas. + * c-pragma.h (struct internal_pragma_handler): Add new early handler + members. + (c_register_pragma_with_early_handler): Declare. + (c_invoke_early_pragma_handler): Declare. + (c_pp_invoke_early_pragma_handler): Declare. + 2022-07-05 Marek Polacek PR c++/105626 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index ba13cdd6aae..32ff5c07df0 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,18 @@ +2022-07-06 Lewis Hyatt + + PR c++/53431 + * parser.cc (cp_parser_pragma_kind): Move earlier in the file. + (cp_lexer_handle_early_pragma): New function. + (cp_lexer_new_main): Support parsing and handling early pragmas. + (c_parse_file): Adapt to changes in cp_lexer_new_main. + +2022-07-06 Jason Merrill + + PR c++/106179 + PR c++/106024 + * parser.cc (cp_parser_lookup_name): Remove :: requirement + for using unqualified lookup result. + 2022-07-05 Nathan Sidwell * module.cc diff --git a/gcc/d/ChangeLog b/gcc/d/ChangeLog index 81531a4e358..f1d1f001e4a 100644 --- a/gcc/d/ChangeLog +++ b/gcc/d/ChangeLog @@ -1,3 +1,12 @@ +2022-07-06 Iain Buclaw + + * dmd/MERGE: Merge upstream dmd 56589f0f4. + +2022-07-06 Iain Buclaw + + * Make-lang.in (NOEXCEPTION_DFLAGS): Define. + (ALL_DFLAGS): Add NO_EXCEPTION_DFLAGS. + 2022-06-29 Iain Buclaw PR d/106139 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 208590bc41f..d5a391e72b6 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,35 @@ +2022-07-06 Lewis Hyatt + + PR preprocessor/53920 + PR c++/53431 + * c-c++-common/pragma-diag-11.c: New test. + * c-c++-common/pragma-diag-12.c: New test. + * c-c++-common/pragma-diag-13.c: New test. + +2022-07-06 Immad Mir + + * gcc.dg/analyzer/fd-4.c: Add a new testcase to demonstrate + passsing of a closed file descriptor to a function that does + not emit any warning. + +2022-07-06 Immad Mir + + * gcc.dg/analyzer/fd-4.c (test_3): change the message note to conform to the + changes in analyzer/sm-fd.cc + (test_4): Likewise. + +2022-07-06 David Malcolm + + PR analyzer/106204 + * gcc.dg/analyzer/torture/uninit-pr106204.c: New test. + * gcc.dg/analyzer/uninit-pr106204.c: New test. + +2022-07-06 Jason Merrill + + PR c++/106179 + PR c++/106024 + * g++.dg/template/operator16.C: New test. + 2022-07-05 Marek Polacek PR c++/105626 diff --git a/include/ChangeLog b/include/ChangeLog index 7bad0900780..07f2b7c8804 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,7 @@ +2022-07-06 Thomas Schwinge + + * gomp-constants.h (OMP_REQUIRES_[...]): Update comment. + 2022-07-04 Tobias Burnus Chung-Lin Tang Thomas Schwinge diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog index 83d200fa153..7d1ee616256 100644 --- a/libgomp/ChangeLog +++ b/libgomp/ChangeLog @@ -1,3 +1,9 @@ +2022-07-06 Thomas Schwinge + + * target.c (GOMP_offload_register_ver): Clarify 'target_data' -> + 'data'. + (GOMP_offload_unregister_ver): Likewise. Fix up 'target_data'. + 2022-07-04 Tobias Burnus Jakub Jelinek diff --git a/libphobos/ChangeLog b/libphobos/ChangeLog index 8b2cc4b5041..2d4abbb0d66 100644 --- a/libphobos/ChangeLog +++ b/libphobos/ChangeLog @@ -1,3 +1,8 @@ +2022-07-06 Iain Buclaw + + * libdruntime/MERGE: Merge upstream druntime 651389b5. + * src/MERGE: Merge upstream phobos 1516ecad9. + 2022-06-29 Iain Buclaw * libdruntime/Makefile.am (DRUNTIME_DSOURCES): Add gcc/simd.d.