global trees
[gcc.git] / gcc / c-family / ChangeLog
index b15630df41bf567852209fec3d5ae72b95fd825b..dc15a61ee06b1ef8db6509ef8e9564a8ce7e8578 100644 (file)
@@ -1,3 +1,820 @@
+2020-11-16  Iain Sandoe  <iain@sandoe.co.uk>
+
+       PR objc/97854
+       * stub-objc.c: Include c-common.h to declare enum rid.
+
+2020-11-13  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/63287
+       * c-cppbuiltin.c: Include configargs.h.
+       (c_cpp_builtins): For C++11 and later if THREAD_MODEL_SPEC is not
+       defined, predefine __STDCPP_THREADS__ to 1 unless thread_model is
+       "single".
+
+2020-11-13  Gergö Barany  <gergo@codesourcery.com>
+           Thomas Schwinge  <thomas@codesourcery.com>
+
+       * c.opt (fopenacc-kernels): Add.
+
+2020-11-13  Jason Merrill  <jason@redhat.com>
+
+       * c-cppbuiltin.c (c_cpp_builtins): Define __cpp_using_enum.
+
+2020-11-13  Piotr H. Dabrowski  <phd@phd.re>
+
+       PR c++/91318
+       * c-cppbuiltin.c: c_cpp_builtins_optimize_pragma(): use cpp_define_unused()
+
+2020-11-13  Martin Liska  <mliska@suse.cz>
+
+       * c-attribs.c (build_attr_access_from_parms): Format properly.
+
+2020-11-13  Iain Sandoe  <iain@sandoe.co.uk>
+
+       PR objc/90707
+       * c-common.c (c_common_reswords): null_unspecified, nullable,
+       nonnull, null_resettable: New keywords.
+       * c-common.h (enum rid): RID_NULL_UNSPECIFIED, RID_NULLABLE,
+       RID_NONNULL, RID_NULL_RESETTABLE: New.
+       (OBJC_IS_PATTR_KEYWORD): Include nullability keywords in the
+       ranges accepted for property attributes.
+       * c-attribs.c (handle_objc_nullability_attribute): New.
+       * c-objc.h (enum objc_property_attribute_group): Add
+       OBJC_PROPATTR_GROUP_NULLABLE.
+       (enum objc_property_attribute_kind):Add
+       OBJC_PROPERTY_ATTR_NULL_UNSPECIFIED, OBJC_PROPERTY_ATTR_NULLABLE,
+       OBJC_PROPERTY_ATTR_NONNULL, OBJC_PROPERTY_ATTR_NULL_RESETTABLE.
+
+2020-11-13  Iain Sandoe  <iain@sandoe.co.uk>
+
+       PR objc/77404
+       * c-attribs.c (handle_objc_root_class_attribute): New
+       * c-objc.h (objc_start_class_interface): Add a location
+       value for the position of the class name.
+       * c.opt: Add Wobjc-root-class.
+       * stub-objc.c (objc_start_class_interface): Add a location
+       value for the position of the class name.
+
+2020-11-12  Joseph Myers  <joseph@codesourcery.com>
+
+       * c-lex.c (c_common_has_attribute): Take argument std_syntax.
+       Allow scope for C.  Handle standard attributes for C.  Do not
+       accept unscoped attributes if std_syntax and not handled as
+       standard attributes.
+       * c-common.h (c_common_has_attribute): Update prototype.
+
+2020-11-12  Nicholas Guriev  <guriev-ns@ya.ru>
+
+       PR pch/86674
+       * c-pch.c (c_common_valid_pch): Use cpp_warning with CPP_W_INVALID_PCH
+       reason to fix -Werror=invalid-pch and -Wno-error=invalid-pch switches.
+
+2020-11-11  Patrick Palka  <ppalka@redhat.com>
+
+       PR c++/88115
+       * c-opts.c (c_common_post_options): Update latest_abi_version.
+
+2020-11-10  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/97748
+       * c-common.h (warn_if_unused_value): Add quiet argument defaulted
+       to false.
+       * c-warn.c (warn_if_unused_value): Likewise.  Pass it down
+       recursively and just return true instead of warning if it is true.
+       Handle COMPLEX_EXPR.
+
+2020-11-10  Chung-Lin Tang  <cltang@codesourcery.com>
+
+       * c-common.h (c_omp_adjust_map_clauses): New declaration.
+       * c-omp.c (struct map_clause): Helper type for c_omp_adjust_map_clauses.
+       (c_omp_adjust_map_clauses): New function.
+
+2020-11-09  Marek Polacek  <polacek@redhat.com>
+
+       DR 1914
+       * c-common.c (attribute_fallthrough_p): Tweak the warning
+       message.
+
+2020-11-09  Patrick Palka  <ppalka@redhat.com>
+
+       * c-pragma.c (handle_pragma_diagnostic): Split the
+       unknown-option -Wpragmas diagnostic into a warning and a
+       subsequent note containing a spelling suggestion.  Avoid
+       computing the suggestion if -Wpragmas warnings are being
+       suppressed.
+
+2020-11-09  Patrick Palka  <ppalka@redhat.com>
+
+       PR testsuite/97117
+       * c-indentation.c (get_visual_column): Remove location_t
+       parameter.  Move the column-tracking diagnostic code from here
+       to ...
+       (should_warn_for_misleading_indentation): ... here, before the
+       early exit for when the loci are not all distinct.  Don't pass a
+       location_t argument to get_visual_column.
+       (assert_get_visual_column_succeeds): Don't pass a location_t
+       argument to get_visual_column.
+       (assert_get_visual_column_fails): Likewise.
+
+2020-11-08  Iain Sandoe  <iain@sandoe.co.uk>
+
+       * c-common.h (OBJC_IS_PATTR_KEYWORD): Add class to the list
+       of keywords accepted in @property attribute contexts.
+       * c-objc.h (enum objc_property_attribute_group): Add
+       OBJC_PROPATTR_GROUP_CLASS.
+       (enum objc_property_attribute_kind): Add
+       OBJC_PROPERTY_ATTR_CLASS.
+
+2020-11-07  Iain Sandoe  <iain@sandoe.co.uk>
+
+       * c-common.c (c_common_reswords): Add 'atomic' property
+       attribute.
+       * c-common.h (enum rid): Add RID_PROPATOMIC for atomic
+       property attributes.
+
+2020-11-07  Iain Sandoe  <iain@sandoe.co.uk>
+
+       * c-attribs.c (handle_nsobject_attribute): New.
+       * c.opt: Add WNSObject-attribute.
+
+2020-11-06  Iain Sandoe  <iain@sandoe.co.uk>
+
+       * c-objc.h (enum objc_property_attribute_group): New
+       (enum objc_property_attribute_kind): New.
+       (OBJC_PROPATTR_GROUP_MASK): New.
+       (struct property_attribute_info): Small class encapsulating
+       parser output from property attributes.
+       (objc_prop_attr_kind_for_rid): New
+       (objc_add_property_declaration): Simplify interface.
+       * stub-objc.c (enum rid): Dummy type.
+       (objc_add_property_declaration): Simplify interface.
+       (objc_prop_attr_kind_for_rid): New.
+
+2020-11-06  Nathan Sidwell  <nathan@acm.org>
+
+       * c-ada-spec.c (collect_ada_nodes): Rename
+       DECL_IS_BUILTIN->DECL_IS_UNDECLARED_BUILTIN.
+       (collect_ada_node): Likewise.
+       (dump_forward_type): Likewise.
+       * c-common.c (set_underlying_type): Rename
+       DECL_IS_BUILTIN->DECL_IS_UNDECLARED_BUILTIN.
+       (user_facing_original_type, c_common_finalize_early_debug): Likewise.
+
+2020-11-06  Jakub Jelinek  <jakub@redhat.com>
+
+       * c-common.c (verify_sequence_points): Remove DEBUG_FUNCTION.
+
+2020-11-05  Marek Polacek  <polacek@redhat.com>
+
+       PR c++/97675
+       * c.opt (Wexceptions): New option.
+
+2020-11-05  Marek Polacek  <polacek@redhat.com>
+
+       PR c++/25814
+       * c.opt (Wvexing-parse): New option.
+
+2020-11-04  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/97670
+       * c-omp.c (c_omp_split_clauses): Look through array reductions to find
+       underlying decl to clear in the allocate_head bitmap.
+
+2020-11-04  Iain Sandoe  <iain@sandoe.co.uk>
+
+       * c-objc.h (objc_non_constant_expr_p): New.
+       * stub-objc.c (objc_non_constant_expr_p): New.
+
+2020-11-03  Nathan Sidwell  <nathan@acm.org>
+
+       * c.opt (MQ,MT): Reword description to be make-agnostic.
+
+2020-11-02  Nathan Sidwell  <nathan@acm.org>
+
+       * c-opts.c (c_common_post_options): Move var decl to its
+       initialization point.
+
+2020-11-01  Iain Sandoe  <iain@sandoe.co.uk>
+
+       * c-lex.c (c_lex_with_flags): When combining '@' with a
+       keyword for Objective-C, combine the location ranges too.
+
+2020-10-30  Qing Zhao  <qing.zhao@oracle.com>
+           H.J.Lu  <hjl.tools@gmail.com>
+
+       * c-attribs.c (c_common_attribute_table): Add new attribute
+       zero_call_used_regs.
+       (handle_zero_call_used_regs_attribute): New function.
+
+2020-10-28  Marek Polacek  <polacek@redhat.com>
+
+       PR c++/97573
+       * c-opts.c (c_common_post_options): In C++20, turn on
+       -Wdeprecated-enum-enum-conversion and
+       -Wdeprecated-enum-float-conversion.
+       * c.opt (Wdeprecated-enum-enum-conversion,
+       Wdeprecated-enum-float-conversion): New options.
+       (Wenum-conversion): Allow for C++ too.
+
+2020-10-28  Jakub Jelinek  <jakub@redhat.com>
+
+       * c-pragma.h (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_ALLOCATE.
+       * c-omp.c: Include bitmap.h.
+       (c_omp_split_clauses): Handle OMP_CLAUSE_ALLOCATE.
+
+2020-10-26  Ville Voutilainen  <ville.voutilainen@gmail.com>
+
+       * c-common.c (__is_nothrow_assignable): New.
+       (__is_nothrow_constructible): Likewise.
+       * c-common.h (RID_IS_NOTHROW_ASSIGNABLE): New.
+       (RID_IS_NOTHROW_CONSTRUCTIBLE): Likewise.
+
+2020-10-23  Jan Hubicka  <hubicka@ucw.cz>
+
+       * c-common.c (c_common_finalize_early_debug): Update for new thunk api.
+
+2020-10-23  Marek Polacek  <polacek@redhat.com>
+
+       PR c++/91741
+       * c-common.c (verify_tree): Handle PAREN_SIZEOF_EXPR.
+       (c_common_init_ts): Likewise.
+       * c-common.def (PAREN_SIZEOF_EXPR): New tree code.
+       * c-common.h (maybe_warn_sizeof_array_div): Declare.
+       * c-warn.c (sizeof_pointer_memaccess_warning): Unwrap NOP_EXPRs.
+       (maybe_warn_sizeof_array_div): New function.
+       * c.opt (Wsizeof-array-div): New option.
+
+2020-10-23  Martin Sebor  <msebor@redhat.com>
+
+       PR c/97463
+       * c-warn.c (warn_parm_ptrarray_mismatch): Move null test earlier.
+
+2020-10-22  Martin Liska  <mliska@suse.cz>
+
+       PR c/94722
+       * c-attribs.c (handle_no_stack_protect_function_attribute): New.
+       (handle_stack_protect_attribute): Add error message for a
+       no_stack_protector function.
+
+2020-10-22  Martin Liska  <mliska@suse.cz>
+
+       * c-cppbuiltin.c (c_cpp_builtins): Use the stack_protector enum.
+
+2020-10-22  Jan Hubicka  <hubicka@ucw.cz>
+
+       * c-gimplify.c: Include tree-nested.h
+       (c_genericize): Update for new nested function info.
+
+2020-10-14  Martin Sebor  <msebor@redhat.com>
+
+       PR c/97413
+       * c-attribs.c (build_attr_access_from_parms): Wrap chain of VLA
+       bounds in an extra list.
+
+2020-10-05  Richard Biener  <rguenther@suse.de>
+           Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/97197
+       * c-pretty-print.c: Include langhooks.h.
+       (c_pretty_printer::postfix_expression): Handle TARGET_MEM_REF as
+       expression.
+       (c_pretty_printer::expression): Handle TARGET_MEM_REF as
+       unary_expression.
+       (c_pretty_printer::unary_expression): Handle TARGET_MEM_REF.
+
+2020-09-30  Martin Sebor  <msebor@redhat.com>
+
+       PR middle-end/97189
+       * c-attribs.c (append_access_attr): Use the function declaration
+       location for a warning about an attribute access argument.
+
+2020-09-29  Marek Polacek  <polacek@redhat.com>
+
+       PR c++/94695
+       * c.opt (Wrange-loop-construct): New option.
+
+2020-09-23  Martin Sebor  <msebor@redhat.com>
+
+       PR c/97131
+       * c-warn.c (warn_parm_ptrarray_mismatch): Handle more invalid input.
+
+2020-09-23  Marek Polacek  <polacek@redhat.com>
+
+       PR c/97125
+       * c-gimplify.c (c_genericize): Only call do_warn_duplicated_branches_r
+       after loops and other structured control constructs have been lowered.
+
+2020-09-22  Jakub Jelinek  <jakub@redhat.com>
+
+       * c.opt (Wbuiltin-declaration-mismatch): Fix typo in variable name:
+       warn_builtin_declaraion_mismatch -> warn_builtin_declaration_mismatch.
+
+2020-09-21  Marek Polacek  <polacek@redhat.com>
+
+       * c.opt (Wctad-maybe-unsupported): New option.
+
+2020-09-19  Martin Sebor  <msebor@redhat.com>
+
+       PR c/50584
+       * c-common.h (warn_parm_array_mismatch): Declare new function.
+       (has_attribute): Move declaration of an existing function.
+       (build_attr_access_from_parms): Declare new function.
+       * c-warn.c (parm_array_as_string): Define new function.
+       (plus_one):  Define new function.
+       (warn_parm_ptrarray_mismatch): Define new function.
+       (warn_parm_array_mismatch):  Define new function.
+       (vla_bound_parm_decl): New function.
+       * c.opt (-Warray-parameter, -Wvla-parameter): New options.
+       * c-pretty-print.c (pp_c_type_qualifier_list): Don't print array type
+       qualifiers here...
+       (c_pretty_printer::direct_abstract_declarator): ...but instead print
+       them in brackets here.  Also print [static].  Strip extraneous
+       expressions from VLA bounds.
+
+2020-09-19  Martin Sebor  <msebor@redhat.com>
+
+       PR c/50584
+       * c-attribs.c (c_common_attribute_table): Add "arg spec" attribute.
+       (handle_argspec_attribute): New function.
+       (get_argument, get_argument_type): New functions.
+       (append_access_attrs): Add overload.  Handle internal attribute
+       representation in addition to external.
+       (handle_access_attribute): Handle internal attribute representation
+       in addition to external.
+       (build_attr_access_from_parms): New function.
+
+2020-09-19  Sandra Loosemore  <sandra@codesourcery.com>
+
+       * c-gimplify.c (genericize_c_loop): Rewrite to match
+       c_finish_loop in c-typeck.c.
+
+2020-09-19  Sandra Loosemore  <sandra@codesourcery.com>
+
+       * c-common.c (c_block_may_fallthrough): New, split from
+       cxx_block_may_fallthrough in the cp front end.
+       (c_common_init_ts): Move handling of loop and switch-related
+       statements here from the cp front end.
+       * c-common.def (FOR_STMT, WHILE_STMT, DO_STMT): Move here from
+       cp front end.
+       (BREAK_STMT, CONTINUE_STMT, SWITCH_STMT): Likewise.
+       * c-common.h (c_block_may_fallthru): Declare.
+       (bc_state_t): Move here from cp front end.
+       (save_bc_state, restore_bc_state): Declare.
+       (c_genericize_control_stmt): Declare.
+       (WHILE_COND, WHILE_BODY): Likewise.
+       (DO_COND, DO_BODY): Likewise.
+       (FOR_INIT_STMT, FOR_COND, FOR_EXPR, FOR_BODY, FOR_SCOPE): Likewise.
+       (SWITCH_STMT_COND, SWITCH_STMT_BODY): Likewise.
+       (SWITCH_STMT_TYPE, SWITCH_STMT_SCOPE): Likewise.
+       (SWITCH_STMT_ALL_CASES_P, SWITCH_STMT_NO_BREAK_P): Likewise.
+       (LABEL_DECL_BREAK, LABEL_DECL_CONTINUE): Likewise.
+       * c-dump.c (dump_stmt): Copy from cp front end.
+       (c_dump_tree): Move code to handle structured loop and switch
+       tree nodes here from cp front end.
+       * c-gimplify.c: Adjust includes.
+       (enum bc_t, bc_label, begin_bc_block, finish_bc_block): Move from
+       cp front end.
+       (save_bc_state, restore_bc_state): New functions using old code
+       from cp front end.
+       (get_bc_label, expr_loc_or_loc): Move from cp front end.
+       (genericize_c_loop): Move from cp front end.
+       (genericize_for_stmt, genericize_while_stmt): Likewise.
+       (genericize_do_stmt, genericize_switch_stmt): Likewise.
+       (genericize_continue_stmt, genericize_break_stmt): Likewise.
+       (genericize_omp_for_stmt): Likewise.
+       (c_genericize_control_stmt): New function using code split from
+       cp front end.
+       (c_genericize_control_r): New.
+       (c_genericize): Call walk_tree with c_genericize_control_r.
+       * c-pretty-print.c (c_pretty_printer::statement): Move code to handle
+       structured loop and switch tree nodes here from cp front end.
+
+2020-09-17  Patrick Palka  <ppalka@redhat.com>
+
+       PR c/80076
+       * c-indentation.c (should_warn_for_misleading_indentation): Move
+       declarations of local variables closer to their first use.
+       Handle virtual token locations by resolving them to their
+       respective macro expansion points.  If all three tokens are
+       produced from the same macro expansion, then instead use their
+       loci within the macro definition.
+
+2020-09-16  Martin Sebor  <msebor@redhat.com>
+
+       PR c/78666
+       PR c/96126
+       * c-attribs.c (validate_attr_args): New function.
+       (validate_attr_arg): Same.
+       (handle_section_attribute): Call it.  Introduce a local variable.
+       (handle_alloc_size_attribute):  Same.
+       (handle_alloc_align_attribute): Same.
+
+2020-09-14  Jakub Jelinek  <jakub@redhat.com>
+
+       * c-attribs.c (handle_optimize_attribute): Adjust
+       cl_optimization_save, cl_optimization_restore and
+       build_optimization_node callers.
+       * c-pragma.c (handle_pragma_optimize): Adjust
+       build_optimization_node caller.
+       (handle_pragma_push_options): Adjust
+       build_optimization_node and build_target_option_node callers.
+       (handle_pragma_pop_options, handle_pragma_reset_options):
+       Adjust cl_optimization_restore callers.
+
+2020-08-28  Martin Sebor  <msebor@redhat.com>
+
+       * c.opt (Wstringop-overread): New option.
+
+2020-08-11  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/96545
+       * c-common.c (get_atomic_generic_size): Require that first argument's
+       type points to a complete type and use tree_fits_uhwi_p instead of
+       just INTEGER_CST TREE_CODE check for the TYPE_SIZE_UNIT.
+
+2020-07-31  Martin Sebor  <msebor@redhat.com>
+
+       PR c++/96003
+       * c-common.c (check_function_arguments_recurse): Return early when
+       no-warning bit is set.
+
+2020-07-31  Richard Biener  <rguenther@suse.de>
+
+       PR debug/96383
+       * c-common.h (c_common_finalize_early_debug): Declare.
+       * c-common.c: Include debug.h.
+       (c_common_finalize_early_debug): finalize_early_debug langhook
+       implementation generating debug for extern declarations.
+
+2020-07-27  Nathan Sidwell  <nathan@acm.org>
+
+       * c-common.c (try_to_locate_new_include_insertion_point): Use
+       strcmp, not pointer equality.
+
+2020-07-25  Martin Sebor  <msebor@redhat.com>
+
+       PR c++/96310
+       * c-common.c (check_nonnull_arg): Print note only when warning was
+       issued.
+
+2020-07-22  Tobias Burnus  <tobias@codesourcery.com>
+
+       * c-omp.c (c_finish_omp_critical): Check for no name but
+       nonzero hint provided.
+
+2020-07-20  Jason Merrill  <jason@redhat.com>
+
+       * c-cppbuiltin.c (c_cpp_builtins): Update
+       __cpp_nontype_template_args for C++20.
+
+2020-07-20  Martin Sebor  <msebor@redhat.com>
+
+       PR c/96249
+       * c.opt: Remove stray text.
+
+2020-07-14  Lewis Hyatt  <lhyatt@gmail.com>
+
+       PR other/86904
+       * c-indentation.c (should_warn_for_misleading_indentation): Get
+       global tabstop from the new source.
+       * c-opts.c (c_common_handle_option): Remove handling of -ftabstop, which
+       is now a common option.
+       * c.opt: Likewise.
+
+2020-07-08  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * c.opt (Wscalar-storage-order): Add explicit variable.
+
+2020-07-07  Nathan Sidwell  <nathan@acm.org>
+
+       * c-opts.c (c_common_post_options): Add 'injecting' arg to
+       cpp_read_main_file.
+       (c_finish_options): Add linemap_line_start calls for builtin and cmd
+       maps.  Force token position to line_table's highest line.
+       * c-ppoutput.c (print_line_1): Refactor, print line zero.
+       (cb_define): Always increment source line.
+
+2020-07-06  Martin Sebor  <msebor@redhat.com>
+
+       PR c++/95984
+       * c-common.c (check_function_nonnull): Avoid checking syntesized calls
+       to stub lambda objects with null this pointer.
+       (check_nonnull_arg): Handle C++ nullptr.
+
+2020-07-02  Jason Merrill  <jason@redhat.com>
+           Jakub Jelinek  <jakub@redhat.com>
+
+       * c-cppbuiltin.c (c_cpp_builtins): Define __cpp_consteval.
+
+2020-06-30  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/95963
+       * c-common.c (check_function_arguments_recurse): Don't crash on
+       calls to internal functions.
+
+2020-06-28  Martin Sebor  <msebor@redhat.com>
+
+       PR c++/86568
+       * c-common.c (struct nonnull_arg_ctx): Add members.
+       (check_function_nonnull): Use nonnull_arg_ctx as argument.  Handle
+       C++ member functions specially.  Consider the this pointer implicitly
+       nonnull.
+       (check_nonnull_arg): Use location of argument when available.
+       (check_function_arguments): Use nonnull_arg_ctx as argument.
+
+2020-06-27  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/95903
+       * c-common.c (pointer_int_sum): Use TYPE_OVERFLOW_UNDEFINED instead of
+       !TYPE_UNSIGNED check to see if we can apply distributive law and handle
+       smaller precision intop operands separately.
+
+2020-06-26  Marek Polacek  <polacek@redhat.com>
+
+       * c-opts.c (c_common_init_options): Default to gnu++17.
+
+2020-06-17  Jonathan Wakely  <jwakely@redhat.com>
+
+       PR c/95378
+       * c-common.c (get_atomic_generic_size): Check cv-qualifiers in
+       pointer arguments.
+
+2020-06-16  Jakub Jelinek  <jakub@redhat.com>
+
+       * c-common.h (c_omp_check_loop_iv_exprs): Add an int argument.
+       * c-omp.c (struct c_omp_check_loop_iv_data): Add maybe_nonrect and
+       idx members.
+       (c_omp_is_loop_iterator): New function.
+       (c_omp_check_loop_iv_r): Use it.  Add support for silent scanning
+       if outer loop iterator is present.  Perform duplicate checking through
+       hash_set in the function rather than expecting caller to do that.
+       Pass NULL instead of d->ppset to walk_tree_1.
+       (c_omp_check_nonrect_loop_iv): New function.
+       (c_omp_check_loop_iv): Use it.  Fill in new members, allow
+       non-rectangular loop forms, diagnose multiple associated loops with
+       the same iterator.  Pass NULL instead of &pset to walk_tree_1.
+       (c_omp_check_loop_iv_exprs): Likewise.
+
+2020-06-10  Martin Liska  <mliska@suse.cz>
+
+       PR tree-optimization/92860
+       * c-attribs.c (handle_optimize_attribute):
+       Save global options and compare it after parsing of function
+       attribute.
+       * c-pragma.c (opt_stack::saved_global_options): New field.
+       (handle_pragma_push_options): Save global_options.
+       (handle_pragma_pop_options): Compare them after pop.
+
+2020-06-09  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/95580
+       * c-pretty-print.c (c_pretty_printer::unary_expression): Handle the
+       case when MEM_REF's first argument has type pointer to incomplete type.
+
+2020-06-05  Jason Merrill  <jason@redhat.com>
+
+       * c-pretty-print.c (pp_c_additive_expression): Handle negative
+       operand to POINTER_PLUS_EXPR.
+
+2020-06-04  Martin Sebor  <msebor@redhat.com>
+
+       PR middle-end/10138
+       PR middle-end/95136
+       * c-attribs.c (append_access_attrs): Handle attr_access::none.
+       (handle_access_attribute): Same.
+
+2020-06-03  Mark Wielaard  <mark@klomp.org>
+
+       * known-headers.cc (get_cp_stdlib_header_for_string_macro_name):
+       New function.
+       * known-headers.h (get_cp_stdlib_header_for_string_macro_name):
+       New function declaration.
+
+2020-06-03  Mark Wielaard  <mark@klomp.org>
+
+       * known-headers.cc (get_string_macro_hint): New function.
+       (get_stdlib_header_for_name): Use get_string_macro_hint.
+       (get_c_stdlib_header_for_string_macro_name): New function.
+       * known-headers.h (get_c_stdlib_header_for_string_macro_name):
+       New function declaration.
+
+2020-06-03  Tobias Burnus  <tobias@codesourcery.com>
+
+       * c-common.h (c_omp_predetermined_mapping): Declare.
+       * c-omp.c (c_omp_predetermined_mapping): New.
+
+2020-05-22  Mark Wielaard  <mark@klomp.org>
+
+       * known-headers.cc (get_stdlib_header_for_name): Add a new
+       stdlib_hint array for stdbool and stdint.
+
+2020-05-22  Mark Wielaard  <mark@klomp.org>
+
+       * known-headers.cc (get_stdlib_header_for_name): Return
+       "<stdbool.h>" for "bool", "true" or "false" when STDLIB_C and
+       flag_isoc99.
+
+2020-05-20  Nathan Sidwell  <nathan@acm.org>
+
+       * c-common.c (try_to_locate_new_include_insertion_point): Revert change.
+
+       * c-common.c (try_to_locate_new_include_insertion_point): Use
+       strcmp to compare filenames.
+       * c-lex.c (init_c_lex): Move declaration to initialization.
+       * c-opts.c (handle_deferred_opts): Move cpp_get_deps call into
+       deferred count loop.
+
+2020-05-15  Jason Merrill  <jason@redhat.com>
+
+       * c-opts.c (set_std_cxx20): Set flag_coroutines.
+
+2020-05-13  Jason Merrill  <jason@redhat.com>
+
+       * c.opt (std=c++20): Make c++2a the alias.
+       (std=gnu++20): Likewise.
+       * c-common.h (cxx_dialect): Change cxx2a to cxx20.
+       * c-opts.c: Adjust.
+       * c-cppbuiltin.c: Adjust.
+       * c-ubsan.c: Adjust.
+       * c-warn.c: Adjust.
+
+2020-05-12  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * c-ada-spec.c (dump_ads): Output pragma Warnings ("U"); on entry.
+
+2020-05-08  Nathan Sidwell  <nathan@acm.org>
+
+       Reimplement directives only processing.
+       * c-ppoutput.c (token_streamer): Ne.
+       (directives_only_cb): New.  Swallow ...
+       (print_lines_directives_only): ... this.
+       (scan_translation_unit_directives_only): Reimplment using the
+       published interface.
+
+2020-05-07  Marek Polacek  <polacek@redhat.com>
+
+       * c-format.c (badwords): Add "nonstatic".
+
+202-05-07  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/94968
+       * c-common.c (speculation_safe_value_resolve_params): Return false if
+       error_operand_p (val2).
+       (resolve_overloaded_builtin) <case BUILT_IN_SPECULATION_SAFE_VALUE_N>:
+       Remove extraneous semicolon.
+
+2020-05-06  qing zhao  <qing.zhao@oracle.com>
+
+       PR c/94230
+       * c-indentation.c (get_visual_column): Add a hint to use the new
+       -flarge-source-files option.
+
+2020-05-05  Stefan Schulze Frielinghaus  <stefansf@linux.ibm.com>
+
+       * c-attribs.c (handle_vector_size_attribute): Add attribute
+       nonnull for argument args in order to silence warning of
+       uninitialized variable usage.  Since this is local to the
+       compilation unit and thus cannot be checked at call sides by the
+       compiler, added an assert statement in order to verify this.
+
+2020-05-01  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR target/93492
+       * c-attribs.c (handle_patchable_function_entry_attribute): Limit
+       value to USHRT_MAX (65535).
+
+2020-04-29  Jakub Jelinek  <jakub@redhat.com>
+
+       * c-format.c (PP_FORMAT_CHAR_TABLE): Add %{ and %}.
+
+2020-04-27  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/94755
+       * c-common.c (resolve_overloaded_builtin): Return error_mark_node for
+       fncode == BUILT_IN_NONE before initialization of first_param.
+
+2020-04-23  Marek Polacek  <polacek@redhat.com>
+
+       PR c++/94733
+       * c-attribs.c (find_tm_attribute): Use get_attribute_name instead of
+       TREE_PURPOSE.
+
+2020-04-14  Patrick Palka  <ppalka@redhat.com>
+
+       PR c++/85278
+       * c-pretty-print.c (pp_c_pointer) <case REFERENCE_TYPE>: Print a double
+       ampersand if it's an rvalue reference type.
+
+2020-04-13  Martin Sebor  <msebor@redhat.com>
+
+       PR c/92326
+       * c-pretty-print.c (c_pretty_printer::direct_abstract_declarator): Avoid
+       printing array bound for flexible array members.
+
+2020-04-13  Iain Sandoe  <iain@sandoe.co.uk>
+
+       * c-cppbuiltin.c (c_cpp_builtins): Update coroutines builtin
+       define, per n4861.
+
+2020-04-02  Richard Biener  <rguenther@suse.de>
+
+       PR c/94392
+       * c-opts.c (c_common_post_options): Enable -ffinite-loops
+       for -O2 and C++11 or newer.
+
+2020-03-28  Patrick Palka  <ppalka@redhat.com>
+
+       * c.opt: Add -fconcepts-diagnostics-depth.
+
+2020-03-27  Martin Sebor  <msebor@redhat.com>
+
+       PR c++/94346
+       * c-attribs.c (handle_copy_attribute): Avoid passing expressions
+       to decl_attributes.  Make handling of different kinds of entities
+       more robust.
+
+2020-03-27  Martin Sebor  <msebor@redhat.com>
+
+       PR c++/94098
+       * c-attribs.c (handle_access_attribute): Avoid setting TYPE_ATTRIBUTES
+       here.
+
+2020-03-23  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/91993
+       * c-warn.c (warnings_for_convert_and_check): For expr and/or
+       result being COMPOUND_EXPRs, skip to ultimate rhs.
+
+2020-03-20  Richard Sandiford  <richard.sandiford@arm.com>
+
+       PR middle-end/94072
+       * c-common.c (c_common_type_for_mode): Before using a registered
+       built-in type, check that the vectorness of the type matches
+       the vectorness of the mode.
+
+2020-03-17  Jakub Jelinek  <jakub@redhat.com>
+
+       * c-common.c (resolve_overloaded_builtin): Fix up duplicated word
+       issue in a diagnostic message.
+
+2020-03-15  Lewis Hyatt  <lhyatt@gmail.com>
+
+       * c.opt: Avoid redundancy in the help text.
+
+2020-03-02  Marek Polacek  <polacek@redhat.com>
+
+       PR c++/93958 - add missing -std=gnu++20.
+       * c.opt: Add -std=gnu++20.
+
+2020-03-01  Martin Sebor  <msebor@redhat.com>
+
+       PR c++/92721
+       * c-attribs.c (append_access_attrs): Correctly handle attribute.
+       (handle_access_attribute): Same.
+
+2020-02-25  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/93858
+       * c-pragma.c (handle_pragma_diagnostic): Add missing ? after
+       "did you mean" hint in diagnostics.
+
+2020-02-15  Jason Merrill  <jason@redhat.com>
+
+       * c.opt: Add -std=c++20.
+
+2020-02-14  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * c-ada-spec.c: Include bitmap.h.
+       (dump_ada_double_name): Rename into...
+       (dump_anonymous_type_name): ...this.  Always use the TYPE_UID.
+       (dump_ada_array_type): Adjust to above renaming.  Robustify.
+       (dump_nested_types_1): New function copied from...  Add dumped_types
+       parameter and pass it down to dump_nested_type.
+       (dump_nested_types): ...this.  Remove parent parameter.  Just call
+       dump_nested_types_1 on an automatic bitmap.
+       (dump_nested_type): Add dumped_types parameter.
+       <ARRAY_TYPE>: Do not dump it if already present in dumped_types.
+       Adjust recursive calls and adjust to above renaming.
+       (dump_ada_declaration): Adjust call to dump_nested_types.
+       Tidy up and adjust to above renaming.
+       (dump_ada_specs): Initialize and release bitmap obstack.
+
+2020-02-10  Martin Sebor  <msebor@redhat.com>
+
+       PR c/93640
+       * c-attribs.c (handle_access_attribute): Correct off-by-one mistakes.
+
+2020-02-10  Jakub Jelinek  <jakub@redhat.com>
+
+       PR other/93641
+       * c-format.c (check_plain): Fix up last argument of strncasecmp.
+       Remove useless extra test.
+
+2020-02-03  Julian Brown  <julian@codesourcery.com>
+           Tobias Burnus  <tobias@codesourcery.com>
+
+       * c-cppbuiltin.c (c_cpp_builtins): Update _OPENACC define to 201711.
+
 2020-01-29  Jason Merrill  <jason@redhat.com>
 
        PR c++/89357