Home | History | Annotate | Line # | Download | only in c-family
      1 2025-05-23  Release Manager
      2 
      3 	* GCC 14.3.0 released.
      4 
      5 2025-05-15  Jakub Jelinek  <jakub (a] redhat.com>
      6 
      7 	Backported from master:
      8 	2025-02-13  Jakub Jelinek  <jakub (a] redhat.com>
      9 
     10 	PR c++/118822
     11 	* c-common.h (WHILE_COND_CLEANUP): Change description in comment.
     12 	(FOR_COND_CLEANUP): Likewise.
     13 	* c-gimplify.cc (genericize_c_loop): Adjust for COND_CLEANUP
     14 	being CLEANUP_STMT/TRY_FINALLY_EXPR trailing nesting depth
     15 	instead of actual cleanup.
     16 
     17 2025-05-15  Jakub Jelinek  <jakub (a] redhat.com>
     18 
     19 	Backported from master:
     20 	2025-02-07  Jakub Jelinek  <jakub (a] redhat.com>
     21 		    Jason Merrill  <jason (a] redhat.com>
     22 
     23 	PR c++/86769
     24 	* c-common.def (FOR_STMT): Add 2 operands and document them.
     25 	(WHILE_STMT): Likewise.
     26 	* c-common.h (WHILE_COND_PREP, WHILE_COND_CLEANUP): Define.
     27 	(FOR_COND_PREP, FOR_COND_CLEANUP): Define.
     28 	* c-gimplify.cc (genericize_c_loop): Add COND_PREP and COND_CLEANUP
     29 	arguments, handle them if they are non-NULL.
     30 	(genericize_for_stmt, genericize_while_stmt, genericize_do_stmt):
     31 	Adjust callers.
     32 
     33 2025-03-22  Martin Uecker  <uecker (a] tugraz.at>
     34 
     35 	Backported from master:
     36 	2024-10-31  Martin Uecker  <uecker (a] tugraz.at>
     37 
     38 	PR c/117145
     39 	PR c/117245
     40 	PR c/100420
     41 	* c-pretty-print.cc (c_pretty_printer::direct_abstract_declarator):
     42 	Detect arrays of unspecified size.
     43 
     44 2025-03-13  Eric Botcazou  <ebotcazou (a] adacore.com>
     45 
     46 	PR ada/119265
     47 	* c-ada-spec.cc (dump_ada_node) <INTEGER_TYPE>: Deal with typedefs
     48 	of unsigned __int128.
     49 
     50 2025-03-05  Marek Polacek  <polacek (a] redhat.com>
     51 
     52 	Backported from master:
     53 	2025-03-05  Marek Polacek  <polacek (a] redhat.com>
     54 
     55 	PR c++/115580
     56 	* c-common.cc (check_function_arguments): Return early if
     57 	c_inhibit_evaluation_warnings.
     58 
     59 2025-01-09  Jakub Jelinek  <jakub (a] redhat.com>
     60 
     61 	Backported from master:
     62 	2024-11-26  Jakub Jelinek  <jakub (a] redhat.com>
     63 
     64 	PR middle-end/43374
     65 	* c-cppbuiltin.cc (builtin_define_decimal_float_constants): Use
     66 	get_max_float.
     67 
     68 2025-01-09  Jakub Jelinek  <jakub (a] redhat.com>
     69 
     70 	Backported from master:
     71 	2024-11-22  Jakub Jelinek  <jakub (a] redhat.com>
     72 
     73 	PR c/117641
     74 	* c-common.cc (sync_resolve_size): For size 16 with _BitInt
     75 	on targets where TImode isn't supported, use goto incompatible if
     76 	!fetch.
     77 
     78 2025-01-09  Jakub Jelinek  <jakub (a] redhat.com>
     79 
     80 	Backported from master:
     81 	2024-11-19  Jakub Jelinek  <jakub (a] redhat.com>
     82 
     83 	PR c/117641
     84 	* c-common.cc (sync_resolve_size): For size == 16 fetch of
     85 	BITINT_TYPE if TImode isn't supported scalar mode diagnose
     86 	and return 0 if orig_format instead of returning 16.
     87 
     88 2024-10-23  Jakub Jelinek  <jakub (a] redhat.com>
     89 
     90 	Backported from master:
     91 	2024-10-22  Jakub Jelinek  <jakub (a] redhat.com>
     92 
     93 	PR c/117230
     94 	* c-warn.cc (sizeof_pointer_memaccess_warning): Only compare
     95 	TYPE_PRECISION of TREE_TYPE (type) to precision of char if
     96 	TREE_TYPE (type) is integral type.
     97 
     98 2024-10-01  Jason Merrill  <jason (a] redhat.com>
     99 
    100 	* c-cppbuiltin.cc (c_cpp_builtins): Don't define __cpp_concepts
    101 	before C++17.
    102 
    103 2024-08-01  Release Manager
    104 
    105 	* GCC 14.2.0 released.
    106 
    107 2024-07-03  Lewis Hyatt  <lhyatt (a] gmail.com>
    108 
    109 	PR pch/115312
    110 	* c-opts.cc (c_common_init): Call c_init_preprocess() before
    111 	c_finish_options() so that a parser is available to process any
    112 	includes specified on the command line.
    113 
    114 2024-06-25  Andrew Pinski  <quic_apinski (a] quicinc.com>
    115 
    116 	Backported from master:
    117 	2024-06-25  Andrew Pinski  <quic_apinski (a] quicinc.com>
    118 
    119 	PR c++/115624
    120 	* c.opt (Wnrvo): Add Warning property.
    121 
    122 2024-06-17  Jakub Jelinek  <jakub (a] redhat.com>
    123 
    124 	Backported from master:
    125 	2024-06-17  Jakub Jelinek  <jakub (a] redhat.com>
    126 
    127 	PR c/115290
    128 	* c-warn.cc (do_warn_array_compare): Use %E rather than %D for
    129 	printing op0 and op1; if those operands aren't decls, also print
    130 	parens around them.
    131 
    132 2024-05-15  Richard Biener  <rguenther (a] suse.de>
    133 
    134 	Backported from master:
    135 	2024-05-07  Richard Biener  <rguenther (a] suse.de>
    136 
    137 	PR middle-end/114931
    138 	* c-common.cc (complete_array_type): Set TYPE_STRUCTURAL_EQUALITY_P
    139 	before probing with type_hash_canon.
    140 
    141 2024-05-07  Andrew Pinski  <quic_apinski (a] quicinc.com>
    142 
    143 	Backported from master:
    144 	2024-05-07  Andrew Pinski  <quic_apinski (a] quicinc.com>
    145 
    146 	PR c++/89224
    147 	* c-common.cc (convert_vector_to_array_for_subscript): Call build_qualified_type
    148 	for the inner type.
    149 
    150 2024-05-07  Release Manager
    151 
    152 	* GCC 14.1.0 released.
    153 
    154 2024-04-23  Jakub Jelinek  <jakub (a] redhat.com>
    155 
    156 	* c-attribs.cc (handle_objc_nullability_attribute): Spelling fix:
    157 	recognised -> recognized.
    158 
    159 2024-04-23  Jakub Jelinek  <jakub (a] redhat.com>
    160 
    161 	* c.opt (Wstrict-flex-arrays): Spelling fix: inproper -> improper.
    162 
    163 2024-04-19  Jakub Jelinek  <jakub (a] redhat.com>
    164 
    165 	PR c/114780
    166 	* c-common.cc (check_function_sentinel): Allow as sentinel any
    167 	argument of NULLPTR_TYPE.
    168 
    169 2024-04-13  Mark Wielaard  <mark (a] klomp.org>
    170 
    171 	* c.opt.urls: Regenerate.
    172 
    173 2024-04-12  Jason Merrill  <jason (a] redhat.com>
    174 	    Patrick Palka  <ppalka (a] redhat.com>
    175 
    176 	PR c++/113141
    177 	* c.opt: Add -Wcast-user-defined.
    178 
    179 2024-04-05  Marek Polacek  <polacek (a] redhat.com>
    180 
    181 	* c-warn.cc (warn_about_parentheses): Remove an #undef.
    182 
    183 2024-03-27  Jakub Jelinek  <jakub (a] redhat.com>
    184 
    185 	PR tree-optimization/114469
    186 	* c-common.cc (resolve_overloaded_builtin): For _BitInt result
    187 	on !extended targets convert result to the _BitInt type before
    188 	using VIEW_CONVERT_EXPR.
    189 
    190 2024-03-26  Jakub Jelinek  <jakub (a] redhat.com>
    191 
    192 	PR c++/112724
    193 	* c-pretty-print.cc (pp_c_cast_expression,
    194 	c_pretty_printer::expression): Handle EXCESS_PRECISION_EXPR like
    195 	NOP_EXPR.
    196 
    197 2024-03-19  Jakub Jelinek  <jakub (a] redhat.com>
    198 
    199 	PR c/114364
    200 	* c-omp.cc (enum check_loop_binding_expr_ctx): New type.
    201 	(check_loop_binding_expr): Remove context argument, add ctx
    202 	argument with check_loop_binding_expr_ctx type at the end.  Don't
    203 	create diagnostic message from multiple pieces.
    204 	(c_omp_check_loop_binding_exprs): Adjust callers.
    205 
    206 2024-03-08  Jakub Jelinek  <jakub (a] redhat.com>
    207 
    208 	* c-common.cc (resolve_overloaded_atomic_exchange): Instead of setting
    209 	p1 to VIEW_CONVERT_EXPR<I_type> (*p1), set it to MEM_REF with p1 and
    210 	(typeof (p1)) 0 operands and I_type type.
    211 	(resolve_overloaded_atomic_compare_exchange): Similarly for p2.
    212 
    213 2024-03-05  Mark Wielaard  <mark (a] klomp.org>
    214 
    215 	* c.opt.urls: Regenerate.
    216 
    217 2024-03-05  Patrick Palka  <ppalka (a] redhat.com>
    218 
    219 	* c.opt (Wglobal-module): New warning.
    220 
    221 2024-03-04  Mark Wielaard  <mark (a] klomp.org>
    222 
    223 	* c.opt.urls: Regenerate.
    224 
    225 2024-02-22  Jakub Jelinek  <jakub (a] redhat.com>
    226 
    227 	PR c/114007
    228 	* c-lex.cc (c_common_has_attribute): Parse 2 CPP_COLONs with
    229 	the first one with COLON_SCOPE flag the same as CPP_SCOPE.
    230 
    231 2024-02-10  Marek Polacek  <polacek (a] redhat.com>
    232 
    233 	DR 2237
    234 	PR c++/107126
    235 	PR c++/97202
    236 	* c-opts.cc (c_common_post_options): In C++20 or with -Wc++20-compat,
    237 	turn on -Wtemplate-id-cdtor.
    238 	* c.opt (Wtemplate-id-cdtor): New.
    239 
    240 2024-02-10  Jakub Jelinek  <jakub (a] redhat.com>
    241 
    242 	* c-format.cc (gcc_diag_length_specs): Add t and z modifiers.
    243 	(PP_FORMAT_CHAR_TABLE, gcc_gfc_char_table): Add entries for t and
    244 	z modifiers.
    245 
    246 2024-02-10  Jakub Jelinek  <jakub (a] redhat.com>
    247 
    248 	* c-ada-spec.cc (dump_template_types): Use HOST_SIZE_T_PRINT_UNSIGNED
    249 	and casts to fmt_size_t instead of "%lu" and casts to unsigned long.
    250 
    251 2024-02-01  Lewis Hyatt  <lhyatt (a] gmail.com>
    252 
    253 	PR preprocessor/105608
    254 	* c-pch.cc (c_common_read_pch): Adjust line map so that libcpp
    255 	assigns a location to restored macros which is the same location
    256 	that triggered the PCH include.
    257 
    258 2024-01-31  Marek Polacek  <polacek (a] redhat.com>
    259 
    260 	* c-opts.cc (c_common_post_options): Add an inform saying that
    261 	-fconcepts-ts is deprecated and will be removed in GCC 15.
    262 
    263 2024-01-27  Lewis Hyatt  <lhyatt (a] gmail.com>
    264 
    265 	PR preprocessor/105608
    266 	* c-pch.cc (c_common_read_pch): Start a new line map before asking
    267 	libcpp to restore macros defined prior to reading the PCH, instead
    268 	of afterward.
    269 
    270 2024-01-23  Jakub Jelinek  <jakub (a] redhat.com>
    271 
    272 	PR c/113518
    273 	* c-common.cc (atomic_bitint_fetch_using_cas_loop): Call c_fully_fold
    274 	on lhs_addr, val and model for C.
    275 
    276 2024-01-23  Sandra Loosemore  <sandra (a] codesourcery.com>
    277 
    278 	* c.opt: Improve sorting of warning options.
    279 
    280 2024-01-16  Eric Botcazou  <ebotcazou (a] adacore.com>
    281 
    282 	PR ada/113397
    283 	* c-ada-spec.cc (check_type_name_conflict): Add guard for the
    284 	presence of DECL_NAME on a TYPE_DECL.
    285 
    286 2024-01-11  Julian Brown  <julian (a] codesourcery.com>
    287 
    288 	* c-pretty-print.cc (c_pretty_printer::postfix_expression,
    289 	c_pretty_printer::expression): Add OMP_ARRAY_SECTION support.
    290 
    291 2024-01-09  waffl3x  <waffl3x (a] protonmail.com>
    292 
    293 	PR c++/102609
    294 	PR c++/102609
    295 	C++23 P0847R7 (deducing this) - diagnostics.
    296 	* c-cppbuiltin.cc (c_cpp_builtins): Define
    297 	__cpp_explicit_this_parameter=202110L feature test macro.
    298 
    299 2024-01-09  Jakub Jelinek  <jakub (a] redhat.com>
    300 
    301 	PR c/113262
    302 	* c-attribs.cc (handle_copy_attribute): Don't use
    303 	DECL_SOURCE_LOCATION (decl) if decl is not DECL_P, use input_location
    304 	instead.  Formatting fixes.
    305 
    306 2024-01-09  Julian Brown  <julian (a] codesourcery.com>
    307 
    308 	* c-common.h (c_omp_address_inspector): Remove static from get_origin
    309 	and maybe_unconvert_ref methods.
    310 	* c-omp.cc (c_omp_split_clauses): Support OMP_ARRAY_SECTION.
    311 	(c_omp_address_inspector::map_supported_p): Handle OMP_ARRAY_SECTION.
    312 	(c_omp_address_inspector::get_origin): Avoid dereferencing possibly
    313 	NULL type when processing template decls.
    314 	(c_omp_address_inspector::maybe_unconvert_ref): Likewise.
    315 
    316 2024-01-04  David Malcolm  <dmalcolm (a] redhat.com>
    317 
    318 	* c.opt.urls: New file, autogenerated by regenerate-opt-urls.py.
    319 
    320 2023-12-21  Jakub Jelinek  <jakub (a] redhat.com>
    321 
    322 	* c.opt (Walloc-size): Enable also for C++ and ObjC++.
    323 
    324 2023-12-21  Jakub Jelinek  <jakub (a] redhat.com>
    325 
    326 	PR sanitizer/113092
    327 	* c-ubsan.cc (ubsan_instrument_shift): Workaround for missing
    328 	ubsan _BitInt support for the shift count.
    329 
    330 2023-12-20  Florian Weimer  <fweimer (a] redhat.com>
    331 
    332 	PR c/113050
    333 	* c-common.cc (get_atomic_generic_size): Use
    334 	OPT_Wdiscarded_qualifiers instead of
    335 	OPT_Wincompatible_pointer_types.
    336 
    337 2023-12-20  Jakub Jelinek  <jakub (a] redhat.com>
    338 
    339 	* c.opt (Wcalloc-transposed-args): New warning.
    340 	* c-common.h (warn_for_calloc, warn_for_alloc_size): Declare.
    341 	* c-warn.cc (warn_for_calloc, warn_for_alloc_size): New functions.
    342 
    343 2023-12-16  Andrew Carlotti  <andrew.carlotti (a] arm.com>
    344 
    345 	* c-attribs.cc (attr_target_exclusions): Make
    346 	target/target_clones exclusion target-dependent.
    347 	(attr_target_clones_exclusions): Ditto, and add target_version.
    348 	(attr_target_version_exclusions): New.
    349 	(c_common_attribute_table): Add target_version.
    350 	(handle_target_version_attribute): New.
    351 	(handle_target_attribute): Amend comment.
    352 	(handle_target_clones_attribute): Ditto.
    353 
    354 2023-12-16  Andrew Carlotti  <andrew.carlotti (a] arm.com>
    355 
    356 	* c-attribs.cc (attr_always_inline_exclusions): New.
    357 	(attr_target_exclusions): Ditto.
    358 	(attr_target_clones_exclusions): Ditto.
    359 	(c_common_attribute_table): Add new exclusion lists.
    360 	(handle_noinline_attribute): Remove custom exclusion handling.
    361 	(handle_always_inline_attribute): Ditto.
    362 	(handle_target_attribute): Ditto.
    363 	(handle_target_clones_attribute): Ditto.
    364 
    365 2023-12-13  Patrick Palka  <ppalka (a] redhat.com>
    366 
    367 	* c.opt: Add -fdiagnostics-all-candidates.
    368 
    369 2023-12-13  Jason Merrill  <jason (a] redhat.com>
    370 
    371 	* c-warn.cc (check_address_or_pointer_of_packed_member):
    372 	Rename to check_address_of_packed_member.
    373 	(check_and_warn_address_or_pointer_of_packed_member):
    374 	Rename to check_and_warn_address_of_packed_member.
    375 	(warn_for_address_or_pointer_of_packed_member):
    376 	Rename to warn_for_address_of_packed_member.
    377 	* c-common.h: Adjust.
    378 
    379 2023-12-13  Jason Merrill  <jason (a] redhat.com>
    380 
    381 	* c-warn.cc (check_address_or_pointer_of_packed_member):
    382 	Remove warning based on TYPE_PACKED.
    383 
    384 2023-12-13  Julian Brown  <julian (a] codesourcery.com>
    385 
    386 	* c-common.h (c_omp_region_type): Add C_ORT_EXIT_DATA,
    387 	C_ORT_OMP_EXIT_DATA and C_ORT_ACC_TARGET.
    388 	(omp_addr_token): Add forward declaration.
    389 	(c_omp_address_inspector): New class.
    390 	* c-omp.cc (c_omp_adjust_map_clauses): Mark decls addressable here, but
    391 	do not change any mapping node types.
    392 	(c_omp_address_inspector::unconverted_ref_origin,
    393 	c_omp_address_inspector::component_access_p,
    394 	c_omp_address_inspector::check_clause,
    395 	c_omp_address_inspector::get_root_term,
    396 	c_omp_address_inspector::map_supported_p,
    397 	c_omp_address_inspector::get_origin,
    398 	c_omp_address_inspector::maybe_unconvert_ref,
    399 	c_omp_address_inspector::maybe_zero_length_array_section,
    400 	c_omp_address_inspector::expand_array_base,
    401 	c_omp_address_inspector::expand_component_selector,
    402 	c_omp_address_inspector::expand_map_clause): New methods.
    403 	(omp_expand_access_chain): New function.
    404 
    405 2023-12-12  Richard Biener  <rguenther (a] suse.de>
    406 
    407 	PR ipa/92606
    408 	* c-attribs.cc (handle_noicf_attribute): Also allow the
    409 	attribute on global variables.
    410 
    411 2023-12-10  Ken Matsui  <kmatsui (a] gcc.gnu.org>
    412 	    Patrick Palka  <ppalka (a] redhat.com>
    413 
    414 	* c-common.cc (c_common_reswords): Remove all mappings of
    415 	built-in traits.
    416 	* c-common.h (enum rid): Remove all RID values for built-in
    417 	traits.
    418 
    419 2023-12-07  Andrew Pinski  <pinskia (a] gmail.com>
    420 	    Jakub Jelinek  <jakub (a] redhat.com>
    421 
    422 	PR preprocessor/111965
    423 	* c-opts.cc (c_common_handle_option) <case OPT_fdebug_cpp>: Set
    424 	cpp_opts->debug to value rather than 1.
    425 
    426 2023-12-06  David Malcolm  <dmalcolm (a] redhat.com>
    427 
    428 	* c-opts.cc (c_diagnostic_finalizer): Make "diagnostic" param
    429 	const.
    430 
    431 2023-12-06  Alexandre Oliva  <oliva (a] adacore.com>
    432 
    433 	* c-attribs.cc: Include ipa-strub.h.
    434 	(handle_strub_attribute): New.
    435 	(c_common_attribute_table): Add strub.
    436 
    437 2023-12-05  Richard Sandiford  <richard.sandiford (a] arm.com>
    438 
    439 	* c-attribs.cc (c_common_gnu_attribute_table): Add extra
    440 	braces to work around PR 16333 in older compilers.
    441 
    442 2023-12-05  Richard Biener  <rguenther (a] suse.de>
    443 
    444 	PR c/89270
    445 	* c-common.cc (c_common_type_for_size): Consider
    446 	registered_builtin_types.
    447 
    448 2023-12-05  Marek Polacek  <polacek (a] redhat.com>
    449 
    450 	PR c++/107687
    451 	PR c++/110997
    452 	* c-cppbuiltin.cc (c_cpp_builtins): Update __cpp_consteval.
    453 	* c-opts.cc (c_common_post_options): Pre-C++20, unset
    454 	flag_immediate_escalation.
    455 	* c.opt (fimmediate-escalation): New option.
    456 
    457 2023-12-02  Richard Sandiford  <richard.sandiford (a] arm.com>
    458 
    459 	* c-common.h (c_common_attribute_table): Replace with...
    460 	(c_common_gnu_attribute_table): ...this.
    461 	(c_common_format_attribute_table): Change type to
    462 	scoped_attribute_specs.
    463 	* c-attribs.cc (c_common_attribute_table): Replace with...
    464 	(c_common_gnu_attributes, c_common_gnu_attribute_table): ...these
    465 	new globals.
    466 	(c_common_format_attribute_table): Change type to
    467 	scoped_attribute_specs, using...
    468 	(c_common_format_attributes): ...this as the underlying array.
    469 
    470 2023-12-01  Florian Weimer  <fweimer (a] redhat.com>
    471 
    472 	* c.opt (Wdeclaration-missing-parameter-type): New.
    473 
    474 2023-11-30  Jakub Jelinek  <jakub (a] redhat.com>
    475 
    476 	PR c++/110349
    477 	* c-cppbuiltin.cc (c_cpp_builtins): Predefine
    478 	__cpp_placeholder_variables=202306L for C++26.
    479 
    480 2023-11-29  Alexandre Oliva  <oliva (a] adacore.com>
    481 
    482 	* c-attribs.cc (c_common_attribute_table): Add hardbool.
    483 	(handle_hardbool_attribute): New.
    484 	(type_valid_for_vector_size): Reject hardbool.
    485 	* c-common.cc (convert_and_check): Skip warnings for convert
    486 	and check for hardbool.
    487 	(c_hardbool_type_attr_1): New.
    488 	* c-common.h (c_hardbool_type_attr): New.
    489 
    490 2023-11-27  Alex Coplan  <alex.coplan (a] arm.com>
    491 	    Iain Sandoe  <iain (a] sandoe.co.uk>
    492 
    493 	PR c++/60512
    494 	* c-common.cc (struct hf_feature_info): New.
    495 	(c_common_register_feature): New.
    496 	(init_has_feature): New.
    497 	(has_feature_p): New.
    498 	* c-common.h (c_common_has_feature): New.
    499 	(c_family_register_lang_features): New.
    500 	(c_common_register_feature): New.
    501 	(has_feature_p): New.
    502 	* c-lex.cc (init_c_lex): Plumb through has_feature callback.
    503 	(c_common_has_builtin): Generalize and move common part ...
    504 	(c_common_lex_availability_macro): ... here.
    505 	(c_common_has_feature): New.
    506 	* c-ppoutput.cc (init_pp_output): Plumb through has_feature.
    507 
    508 2023-11-24  Lewis Hyatt  <lhyatt (a] gmail.com>
    509 
    510 	PR pch/112319
    511 	* c-ppoutput.cc (cb_read_pch): Reinitialize the frontend parser
    512 	after loading a PCH.
    513 
    514 2023-11-24  Tobias Burnus  <tobias (a] codesourcery.com>
    515 
    516 	* c.opt (-Wopenmp): Add missing tailing '.'.
    517 
    518 2023-11-24  Tobias Burnus  <tobias (a] codesourcery.com>
    519 
    520 	* c.opt (Wopenmp): Add, enable by default.
    521 
    522 2023-11-23  Marek Polacek  <polacek (a] redhat.com>
    523 
    524 	* c-opts.cc: Include "target.h".
    525 	(c_finish_options): Maybe cpp_define _FORTIFY_SOURCE
    526 	and _GLIBCXX_ASSERTIONS.
    527 
    528 2023-11-23  Jakub Jelinek  <jakub (a] redhat.com>
    529 
    530 	* c-common.h (enum rid): Add RID_BUILTIN_STDC: New.
    531 	* c-common.cc (c_common_reswords): Add __builtin_stdc_bit_ceil,
    532 	__builtin_stdc_bit_floor, __builtin_stdc_bit_width,
    533 	__builtin_stdc_count_ones, __builtin_stdc_count_zeros,
    534 	__builtin_stdc_first_leading_one, __builtin_stdc_first_leading_zero,
    535 	__builtin_stdc_first_trailing_one, __builtin_stdc_first_trailing_zero,
    536 	__builtin_stdc_has_single_bit, __builtin_stdc_leading_ones,
    537 	__builtin_stdc_leading_zeros, __builtin_stdc_trailing_ones and
    538 	__builtin_stdc_trailing_zeros.  Move __builtin_assoc_barrier
    539 	alphabetically earlier.
    540 
    541 2023-11-23  Jakub Jelinek  <jakub (a] redhat.com>
    542 
    543 	PR c++/110348
    544 	* c.opt (Wc++26-extensions): New option.
    545 	* c-cppbuiltin.cc (c_cpp_builtins): For C++26 predefine
    546 	__cpp_static_assert to 202306L rather than 201411L.
    547 
    548 2023-11-19  David Malcolm  <dmalcolm (a] redhat.com>
    549 
    550 	* c-lex.cc: Include "rich-location.h".
    551 
    552 2023-11-18  Sebastian Huber  <sebastian.huber (a] embedded-brains.de>
    553 
    554 	* c-cppbuiltin.cc (c_cpp_builtins):  Define
    555 	__LIBGCC_HAVE_LIBATOMIC for libgcov.
    556 
    557 2023-11-18  Sebastian Huber  <sebastian.huber (a] embedded-brains.de>
    558 
    559 	Revert:
    560 	2021-08-16  Sebastian Huber  <sebastian.huber (a] embedded-brains.de>
    561 
    562 	* c-cppbuiltin.c (c_cpp_builtins): Define
    563 	__LIBGCC_GCOV_TYPE_SIZE if flag_building_libgcc is true.
    564 
    565 2023-11-17  Jakub Jelinek  <jakub (a] redhat.com>
    566 
    567 	PR c++/107571
    568 	* c-gimplify.cc (genericize_c_loop): For C++ mark IFN_FALLTHROUGH
    569 	call at the end of loop body as TREE_NOTHROW.
    570 
    571 2023-11-14  Lewis Hyatt  <lhyatt (a] gmail.com>
    572 
    573 	PR pch/9471
    574 	PR pch/47857
    575 	* c-opts.cc (c_common_post_options): Set cpp_opts->main_search
    576 	so libcpp knows it is compiling a header file separately.
    577 
    578 2023-11-14  David Malcolm  <dmalcolm (a] redhat.com>
    579 
    580 	* c-warn.cc (conversion_warning): Update call to
    581 	global_dc->m_option_enabled to use option_enabled_p.
    582 
    583 2023-11-14  David Malcolm  <dmalcolm (a] redhat.com>
    584 
    585 	* c-common.cc (c_get_substring_location): Use global_dc's
    586 	file_cache.
    587 	* c-format.cc (get_corrected_substring): Likewise.
    588 	* c-indentation.cc (get_visual_column): Add file_cache param.
    589 	(get_first_nws_vis_column): Likewise.
    590 	(detect_intervening_unindent): Likewise.
    591 	(should_warn_for_misleading_indentation): Use global_dc's
    592 	file_cache.
    593 	(assert_get_visual_column_succeeds): Add file_cache param.
    594 	(ASSERT_GET_VISUAL_COLUMN_SUCCEEDS): Likewise.
    595 	(assert_get_visual_column_fails): Likewise.
    596 	(define ASSERT_GET_VISUAL_COLUMN_FAILS): Likewise.
    597 	(selftest::test_get_visual_column): Create and use a temporary
    598 	file_cache.
    599 
    600 2023-11-14  Jakub Jelinek  <jakub (a] redhat.com>
    601 
    602 	PR c/111309
    603 	* c-common.cc (check_builtin_function_arguments): Handle
    604 	BUILT_IN_{CLZ,CTZ,CLRSB,FFS,PARITY,POPCOUNT}G.
    605 	* c-gimplify.cc (c_gimplify_expr): If __builtin_c[lt]zg second
    606 	argument hasn't been folded into constant yet, transform it to one
    607 	argument call inside of a COND_EXPR which for first argument 0
    608 	returns the second argument.
    609 
    610 2023-11-11  Martin Uecker  <uecker (a] tugraz.at>
    611 
    612 	PR c/110815
    613 	PR c/112428
    614 	* c-attribs.cc (build_attr_access_from_parms): Synthesize
    615 	nonnull attribute for parameters declared with `static`.
    616 
    617 2023-11-09  Florian Weimer  <fweimer (a] redhat.com>
    618 
    619 	* c.opt (Wreturn-mismatch): New.
    620 
    621 2023-11-08  Florian Weimer  <fweimer (a] redhat.com>
    622 
    623 	* c.opt (fpermissive): Enable for C and ObjC.
    624 	* c-opts.cc (c_common_post_options): Enable -fpermissive.
    625 
    626 2023-11-07  Joseph Myers  <joseph (a] codesourcery.com>
    627 
    628 	* c-format.h (T2X_UI): Rename to T23_UI.
    629 	(T2X_UL): Rename to T23_UL.
    630 	(T2X_ULL): Rename to T23_ULL.
    631 	(T2X_US): Rename to T23_US.
    632 	(T2X_UC): Rename to T23_UC.
    633 	(T2X_ST): Rename to T23_ST.
    634 	(T2X_UPD): Rename to T23_UPD.
    635 	(T2X_UIM): Rename to T23_UIM.
    636 	(T2X_D32): Rename to T23_D32.
    637 	(T2X_D64): Rename to T23_D64.
    638 	(T2X_D128): Rename to T23_D128.
    639 	(T2X_I8): Rename to T23_I8.
    640 	(T2X_I16): Rename to T23_I16.
    641 	(T2X_I32): Rename to T23_I32.
    642 	(T2X_I64): Rename to T23_I64.
    643 	(T2X_U8): Rename to T23_U8.
    644 	(T2X_U16): Rename to T23_U16.
    645 	(T2X_U32): Rename to T23_U32.
    646 	(T2X_U64): Rename to T23_U64.
    647 	(T2X_IF8): Rename to T23_IF8.
    648 	(T2X_IF16): Rename to T23_IF16.
    649 	(T2X_IF32): Rename to T23_IF32.
    650 	(T2X_IF64): Rename to T23_IF64.
    651 	(T2X_UF8): Rename to T23_UF8.
    652 	(T2X_UF16): Rename to T23_UF16.
    653 	(T2X_UF32): Rename to T23_UF32.
    654 	(T2X_UF64): Rename to T23_UF64.
    655 	* c-format.cc: Update all uses of T2X_* macros to use T23_*.
    656 
    657 2023-11-07  Kwok Cheung Yeung  <kcy (a] codesourcery.com>
    658 
    659 	* c-attribs.cc (c_common_attribute_table): Add attribute for
    660 	indirect functions.
    661 	* c-pragma.h (enum parma_omp_clause): Add entry for indirect clause.
    662 
    663 2023-11-07  Joseph Myers  <joseph (a] codesourcery.com>
    664 
    665 	* c-common.cc (flag_isoc2x): Rename to flag_isoc23.
    666 	(c_common_reswords): Use D_C23 instead of D_C2X.
    667 	* c-common.h: Refer throughout to C23 instead of C2X in comments.
    668 	(D_C2X): Rename to D_C23.
    669 	(flag_isoc2x): Rename to flag_isoc23.
    670 	* c-cppbuiltin.cc (builtin_define_float_constants): Use
    671 	flag_isoc23 instead of flag_isoc2x.  Refer to C23 instead of C2x
    672 	in comments.
    673 	* c-format.cc: Use STD_C23 instead of STD_C2X and flag_isoc23
    674 	instead of flag_isoc2x.  Refer to C23 instead of C2X in comments.
    675 	* c-format.h: Use STD_C23 instead of STD_C2X.
    676 	* c-lex.cc: Use warn_c11_c23_compat instead of warn_c11_c2x_compat
    677 	and flag_isoc23 instead of flag_isoc2x.  Refer to C23 instead of
    678 	C2X in diagnostics.
    679 	* c-opts.cc: Use flag_isoc23 instead of flag_isoc2x.  Refer to C23
    680 	instead of C2X in comments.
    681 	(set_std_c2x): Rename to set_std_c23.
    682 	* c.opt (Wc11-c23-compat): Use CPP(cpp_warn_c11_c23_compat)
    683 	CppReason(CPP_W_C11_C23_COMPAT) Var(warn_c11_c23_compat) instead
    684 	of CPP(cpp_warn_c11_c2x_compat) CppReason(CPP_W_C11_C2X_COMPAT)
    685 	Var(warn_c11_c2x_compat).
    686 
    687 2023-11-06  Joseph Myers  <joseph (a] codesourcery.com>
    688 
    689 	PR c/107954
    690 	* c.opt (Wc11-c2x-compat): Rename to Wc11-c23-compat and make into
    691 	a deprecated alias of Wc11-c23-compat.
    692 	(std=c2x): Rename to std=c23 and make into a deprecated alias of
    693 	std=c23.
    694 	(std=gnu2x): Rename to std=gnu23 and make into a deprecated alias
    695 	of std=gnu23.
    696 	(std=iso9899:2024): New option.  Alias of std=c23.
    697 	* c-lex.cc (interpret_float): Use OPT_Wc11_c23_compat instead of
    698 	OPT_Wc11_c2x_compat.
    699 	* c-opts.cc (c_common_handle_option): Use OPT_std_c23 instead of
    700 	OPT_std_c2x and OPT_std_gnu23 instead of OPT_std_gnu2x.
    701 
    702 2023-11-05  Jakub Jelinek  <jakub (a] redhat.com>
    703 
    704 	* c-lex.cc (c_common_has_attribute): Return 1 for omp::directive
    705 	and omp::sequence with -fopenmp or -fopenmp-simd also for C, not
    706 	just for C++.  Return 1 for omp::decl with -fopenmp or -fopenmp-simd
    707 	for both C and C++.
    708 
    709 2023-11-04  David Malcolm  <dmalcolm (a] redhat.com>
    710 
    711 	* c-pragma.cc:: (handle_pragma_push_options): Fix missing "GCC" in
    712 	name of pragma in "junk" message.
    713 	(handle_pragma_pop_options): Likewise.
    714 
    715 2023-11-04  David Malcolm  <dmalcolm (a] redhat.com>
    716 
    717 	* c-common.cc: Update for changes to diagnostic_context.
    718 	* c-indentation.cc: Likewise.
    719 	* c-opts.cc: Likewise.
    720 	* c-warn.cc: Likewise.
    721 
    722 2023-11-01  Martin Uecker  <uecker (a] tugraz.at>
    723 
    724 	PR c/71219
    725 	* c.opt (Walloc-size): New option.
    726 
    727 2023-10-31  David Malcolm  <dmalcolm (a] redhat.com>
    728 
    729 	* c-warn.cc (warn_for_multistatement_macros): Update for removal
    730 	of MACRO_MAP_EXPANSION_POINT_LOCATION.
    731 
    732 2023-10-27  Lewis Hyatt  <lhyatt (a] gmail.com>
    733 
    734 	PR preprocessor/87299
    735 	* c-pragma.cc (init_pragma): Register `#pragma GCC target' and
    736 	related pragmas in preprocess-only mode, and enable early handling.
    737 	(c_reset_target_pragmas): New function refactoring code from...
    738 	(handle_pragma_reset_options): ...here.
    739 	* c-pragma.h (c_reset_target_pragmas): Declare.
    740 
    741 2023-10-26  David Malcolm  <dmalcolm (a] redhat.com>
    742 
    743 	* c-attribs.cc (c_common_attribute_table): Add
    744 	"null_terminated_string_arg".
    745 	(handle_null_terminated_string_arg_attribute): New.
    746 
    747 2023-10-23  Lewis Hyatt  <lhyatt (a] gmail.com>
    748 
    749 	PR preprocessor/36887
    750 	* c-opts.cc (c_common_init_options): Pass new extra hash map
    751 	argument to cpp_create_reader().
    752 
    753 2023-10-20  Marek Polacek  <polacek (a] redhat.com>
    754 
    755 	PR c/111884
    756 	* c-common.cc (c_common_get_alias_set): Return -1 for char8_t only
    757 	in C++.
    758 
    759 2023-10-20  Patrick Palka  <ppalka (a] redhat.com>
    760 
    761 	* c-warn.cc (check_address_or_pointer_of_packed_member): Handle
    762 	type-dependent callee of CALL_EXPR.
    763 
    764 2023-10-20  Alexandre Oliva  <oliva (a] adacore.com>
    765 
    766 	* c-attribs.cc (handle_expected_throw_attribute): New.
    767 	(c_common_attribute_table): Add expected_throw.
    768 
    769 2023-10-19  Lewis Hyatt  <lhyatt (a] gmail.com>
    770 
    771 	PR c++/89038
    772 	* c-pragma.cc (handle_pragma_diagnostic_impl):  Handle
    773 	-Wunknown-pragmas during early processing.
    774 
    775 2023-10-15  Jakub Jelinek  <jakub (a] redhat.com>
    776 
    777 	PR tree-optimization/111800
    778 	* c-warn.cc (match_case_to_enum_1): Assert w.get_precision ()
    779 	is smaller or equal to WIDE_INT_MAX_INL_PRECISION rather than
    780 	w.get_len () is smaller or equal to WIDE_INT_MAX_INL_ELTS.
    781 
    782 2023-10-12  Jakub Jelinek  <jakub (a] redhat.com>
    783 
    784 	PR c/102989
    785 	* c-warn.cc (match_case_to_enum_1): Use wi::to_wide just once instead
    786 	of 3 times, assert get_len () is smaller than WIDE_INT_MAX_INL_ELTS.
    787 
    788 2023-10-02  David Malcolm  <dmalcolm (a] redhat.com>
    789 
    790 	* c-common.cc (maybe_add_include_fixit): Update for renaming of
    791 	diagnostic_context's show_caret to m_source_printing.enabled.
    792 	* c-opts.cc (c_common_init_options): Update for renaming of
    793 	diagnostic_context's colorize_source_p to
    794 	m_source_printing.colorize_source_p.
    795 
    796 2023-09-20  Jakub Jelinek  <jakub (a] redhat.com>
    797 
    798 	PR c++/111392
    799 	* c-omp.cc (c_omp_directives): Add commented out groupprivate
    800 	directive entry.
    801 
    802 2023-09-19  Ben Boeckel  <ben.boeckel (a] kitware.com>
    803 
    804 	* c-opts.cc (c_common_handle_option): Add fdeps_file variable and
    805 	-fdeps-format=, -fdeps-file=, and -fdeps-target= parsing.
    806 	* c.opt: Add -fdeps-format=, -fdeps-file=, and -fdeps-target=
    807 	flags.
    808 
    809 2023-09-19  Javier Martinez  <javier.martinez.bugzilla (a] gmail.com>
    810 
    811 	* c-attribs.cc (handle_hot_attribute): remove warning on
    812 	RECORD_TYPE and UNION_TYPE when in c_dialect_xx.
    813 	(handle_cold_attribute): Likewise.
    814 
    815 2023-09-19  Jakub Jelinek  <jakub (a] redhat.com>
    816 
    817 	* c-common.cc (c_common_signed_or_unsigned_type): Return INTEGER_TYPE
    818 	for signed variant of unsigned _BitInt(1).
    819 
    820 2023-09-06  Jakub Jelinek  <jakub (a] redhat.com>
    821 
    822 	PR c/102989
    823 	* c-attribs.cc (type_valid_for_vector_size): Reject vector types
    824 	with BITINT_TYPE elements even if they have mode precision and
    825 	suitable size.
    826 
    827 2023-09-06  Jakub Jelinek  <jakub (a] redhat.com>
    828 
    829 	PR c/102989
    830 	* c-common.cc (c_common_reswords): Add _BitInt as keyword.
    831 	(unsafe_conversion_p): Handle BITINT_TYPE like INTEGER_TYPE.
    832 	(c_common_signed_or_unsigned_type): Handle BITINT_TYPE.
    833 	(c_common_truthvalue_conversion, c_common_get_alias_set,
    834 	check_builtin_function_arguments): Handle BITINT_TYPE like
    835 	INTEGER_TYPE.
    836 	(sync_resolve_size): Add ORIG_FORMAT argument.  If
    837 	FETCH && !ORIG_FORMAT, type is BITINT_TYPE, return -1 if size isn't
    838 	one of 1, 2, 4, 8 or 16 or if it is 16 but TImode is not supported.
    839 	(atomic_bitint_fetch_using_cas_loop): New function.
    840 	(resolve_overloaded_builtin): Adjust sync_resolve_size caller.  If
    841 	-1 is returned, use atomic_bitint_fetch_using_cas_loop to lower it.
    842 	Formatting fix.
    843 	(keyword_begins_type_specifier): Handle RID_BITINT.
    844 	* c-common.h (enum rid): Add RID_BITINT enumerator.
    845 	* c-cppbuiltin.cc (c_cpp_builtins): For C call
    846 	targetm.c.bitint_type_info and predefine __BITINT_MAXWIDTH__
    847 	and for -fbuilding-libgcc also __LIBGCC_BITINT_LIMB_WIDTH__ and
    848 	__LIBGCC_BITINT_ORDER__ macros if _BitInt is supported.
    849 	* c-lex.cc (interpret_integer): Handle CPP_N_BITINT.
    850 	* c-pretty-print.cc (c_pretty_printer::simple_type_specifier,
    851 	c_pretty_printer::direct_abstract_declarator,
    852 	c_pretty_printer::direct_declarator, c_pretty_printer::declarator):
    853 	Handle BITINT_TYPE.
    854 	(pp_c_integer_constant): Handle printing of large precision wide_ints
    855 	which would buffer overflow digit_buffer.
    856 	* c-warn.cc (conversion_warning, warnings_for_convert_and_check,
    857 	warnings_for_convert_and_check): Handle BITINT_TYPE like
    858 	INTEGER_TYPE.
    859 
    860 2023-09-06  Jakub Jelinek  <jakub (a] redhat.com>
    861 
    862 	PR c/102989
    863 	* c-ubsan.cc (ubsan_instrument_shift): Use UBSAN_PRINT_FORCE_INT
    864 	for type0 type descriptor.
    865 
    866 2023-09-06  Jakub Jelinek  <jakub (a] redhat.com>
    867 
    868 	* c-lex.cc (interpret_float): For C diagnostics on FN and FNx suffixes
    869 	append " before C2X" to diagnostics text and follow behavior of
    870 	pedwarn_c11.
    871 
    872 2023-09-01  Jakub Jelinek  <jakub (a] redhat.com>
    873 
    874 	PR c++/111069
    875 	* c-opts.cc (c_common_post_options): Change latest_abi_version to 19.
    876 
    877 2023-08-31  Francois-Xavier Coudert  <fxcoudert (a] gcc.gnu.org>
    878 
    879 	* c.opt: Change spelling to macOS.
    880 
    881 2023-08-31  Richard Biener  <rguenther (a] suse.de>
    882 
    883 	PR middle-end/111253
    884 	* c-pretty-print.cc (c_pretty_printer::primary_expression):
    885 	Only dump gimple_assign_single_p SSA def RHS.
    886 
    887 2023-08-25  Sandra Loosemore  <sandra (a] codesourcery.com>
    888 
    889 	* c-common.h (c_omp_check_loop_binding_exprs): Declare.
    890 	* c-omp.cc: Include tree-iterator.h.
    891 	(find_binding_in_body): New.
    892 	(check_loop_binding_expr_r): New.
    893 	(LOCATION_OR): New.
    894 	(check_looop_binding_expr): New.
    895 	(c_omp_check_loop_binding_exprs): New.
    896 
    897 2023-08-25  Uros Bizjak  <ubizjak (a] gmail.com>
    898 
    899 	* c-format.cc (read_any_format_width):
    900 	Rename TRUE/FALSE to true/false.
    901 
    902 2023-08-20  Martin Uecker  <uecker (a] tugraz.at>
    903 
    904 	* c-format.cc: Fix identation.
    905 
    906 2023-08-20  Tomas Kalibera  <tomas.kalibera (a] gmail.com>
    907 
    908 	PR c/95130
    909 	* c-format.cc: skip default format for printf symbol if
    910 	explicitly declared by prototype.
    911 
    912 2023-08-17  Jose E. Marchesi  <jose.marchesi (a] oracle.com>
    913 
    914 	PR c/106537
    915 	* c.opt (Wcompare-distinct-pointer-types): New option.
    916 
    917 2023-08-14  Jason Merrill  <jason (a] redhat.com>
    918 
    919 	* c-cppbuiltin.cc (c_cpp_builtins): Adjust __cpp_concepts.
    920 
    921 2023-08-11  Jakub Jelinek  <jakub (a] redhat.com>
    922 
    923 	* c-common.cc (c_common_reswords): Add __typeof_unqual
    924 	and __typeof_unqual__ spellings of typeof_unqual.
    925 
    926 2023-08-11  Martin Uecker  <uecker (a] tugraz.at>
    927 
    928 	PR c/84510
    929 	* c.opt: Enable warning for C and ObjC.
    930 
    931 2023-08-05  Martin Uecker  <uecker (a] tugraz.at>
    932 
    933 	PR c/98536
    934 	* c-warn.cc (warn_parm_array_mismatch): Do not warn if more
    935 	bounds are specified.
    936 
    937 2023-08-04  Tamar Christina  <tamar.christina (a] arm.com>
    938 
    939 	* c-pragma.h (enum pragma_kind): Add PRAGMA_NOVECTOR.
    940 	* c-pragma.cc (init_pragma): Use it.
    941 
    942 2023-08-01  Lewis Hyatt  <lhyatt (a] gmail.com>
    943 
    944 	* c-common.h (c_init_preprocess): Declare new function.
    945 	* c-opts.cc (c_common_init): Call it.
    946 	* c-lex.cc (cb_def_pragma): Add a comment.
    947 	(get_token): New function wrapping cpp_get_token.
    948 	(c_lex_with_flags): Use the new wrapper function to support
    949 	obtaining tokens in preprocess_only mode.
    950 	(lex_string): Likewise.
    951 	* c-pragma.cc (pragma_diagnostic_lex_normal): Rename to...
    952 	(pragma_diagnostic_lex): ...this.
    953 	(pragma_diagnostic_lex_pp): Remove.
    954 	(handle_pragma_diagnostic_impl): Call pragma_diagnostic_lex () in
    955 	all modes.
    956 	(c_pp_invoke_early_pragma_handler): Adapt to support pragma_lex ()
    957 	usage.
    958 	* c-pragma.h (pragma_lex_discard_to_eol): Declare.
    959 
    960 2023-07-31  Hamza Mahfooz  <someguy (a] effective-light.com>
    961 
    962 	PR c/65213
    963 	* c.opt (-Wmissing-variable-declarations): New option.
    964 
    965 2023-07-20  Francois-Xavier Coudert  <fxcoudert (a] gcc.gnu.org>
    966 
    967 	PR middle-end/77928
    968 	* c-common.cc (check_builtin_function_arguments):
    969 	Handle BUILT_IN_ISEQSIG.
    970 
    971 2023-07-05  Robin Dapp  <rdapp (a] ventanamicro.com>
    972 	    Juzhe-Zhong  <juzhe.zhong (a] rivai.ai>
    973 
    974 	* c-common.cc (c_common_type_for_mode): Use GET_MODE_PRECISION.
    975 
    976 2023-06-29  Qing Zhao  <qing.zhao (a] oracle.com>
    977 
    978 	PR c/77650
    979 	* c.opt: New option -Wflex-array-member-not-at-end.
    980 
    981 2023-06-28  Jason Merrill  <jason (a] redhat.com>
    982 
    983 	PR c++/110344
    984 	* c-cppbuiltin.cc (c_cpp_builtins): Update __cpp_constexpr.
    985 
    986 2023-06-26  Richard Biener  <rguenther (a] suse.de>
    987 
    988 	* c-common.cc (shorten_binary_op): Exit early for VECTOR_TYPE
    989 	operations.
    990 
    991 2023-06-23  Marek Polacek  <polacek (a] redhat.com>
    992 
    993 	* c-common.h (cxx_dialect): Add cxx26 as a dialect.
    994 	* c-opts.cc (set_std_cxx26): New.
    995 	(c_common_handle_option): Set options when -std={c,gnu}++2{c,6} is
    996 	enabled.
    997 	(c_common_post_options): Adjust comments.
    998 	* c.opt: Add options for -std=c++26, std=c++2c, -std=gnu++26,
    999 	and -std=gnu++2c.
   1000 	(std=c++2b): Mark as Undocumented.
   1001 	(std=c++23): No longer Undocumented.
   1002 
   1003 2023-06-21  Alexander Monakov  <amonakov (a] ispras.ru>
   1004 
   1005 	* c-gimplify.cc (fma_supported_p): New helper.
   1006 	(c_gimplify_expr) [PLUS_EXPR, MINUS_EXPR]: Implement FMA
   1007 	contraction.
   1008 
   1009 2023-06-16  Alex Coplan  <alex.coplan (a] arm.com>
   1010 
   1011 	* c.opt (Welaborated-enum-base): New.
   1012 
   1013 2023-06-13  David Malcolm  <dmalcolm (a] redhat.com>
   1014 
   1015 	PR c/84890
   1016 	* known-headers.cc
   1017 	(suggest_missing_header::~suggest_missing_header): Reword note to
   1018 	avoid negative tone of "forgetting".
   1019 
   1020 2023-06-07  Jason Merrill  <jason (a] redhat.com>
   1021 
   1022 	PR c++/58487
   1023 	* c.opt: Add -Wnrvo.
   1024 
   1025 2023-05-26  Martin Uecker  <uecker (a] tugraz.at>
   1026 
   1027 	* c-attribs.cc (build_attr_access_from_parms): Split loop to first
   1028 	record all parameters.
   1029 
   1030 2023-05-18  Bernhard Reutner-Fischer  <aldot (a] gcc.gnu.org>
   1031 
   1032 	* c-ada-spec.cc (has_static_fields): Use _P() defines from tree.h.
   1033 	(dump_ada_declaration): Ditto.
   1034 	(dump_ada_structure): Ditto.
   1035 	* c-common.cc (unsafe_conversion_p): Ditto.
   1036 	(shorten_compare): Ditto.
   1037 	(pointer_int_sum): Ditto.
   1038 	(c_common_truthvalue_conversion): Ditto.
   1039 	(scalar_to_vector): Ditto.
   1040 	* c-common.h (gnu_vector_type_p): Ditto.
   1041 	* c-omp.cc (c_omp_depend_t_p): Ditto.
   1042 	(c_omp_split_clauses): Ditto.
   1043 	* c-ubsan.cc (ubsan_instrument_division): Ditto.
   1044 	* c-warn.cc (conversion_warning): Ditto.
   1045 	(warnings_for_convert_and_check): Ditto.
   1046 
   1047 2023-05-18  Joseph Myers  <joseph (a] codesourcery.com>
   1048 
   1049 	* c-format.cc (print_char_table): Handle %B like %b.
   1050 
   1051 2023-05-15  Joseph Myers  <joseph (a] codesourcery.com>
   1052 
   1053 	* c-lex.cc (c_common_has_attribute): Use 202311 as
   1054 	__has_c_attribute return for all C2x attributes.
   1055 
   1056 2023-05-15  Patrick Palka  <ppalka (a] redhat.com>
   1057 
   1058 	* c-cppbuiltin.cc (c_cpp_builtins): Predefine __cpp_auto_cast
   1059 	for C++23.
   1060 
   1061 2023-05-01  Marek Polacek  <polacek (a] redhat.com>
   1062 
   1063 	* c-ubsan.cc (ubsan_maybe_instrument_array_ref): Don't copy_node.
   1064 
   1065 2023-03-28  David Malcolm  <dmalcolm (a] redhat.com>
   1066 
   1067 	PR c/107002
   1068 	* c-common.h (check_for_xor_used_as_pow): Add "rhs_loc" param.
   1069 	* c-warn.cc (check_for_xor_used_as_pow): Add "rhs_loc" param.
   1070 	Reject cases where involving macro expansions.
   1071 
   1072 2023-03-28  Jason Merrill  <jason (a] redhat.com>
   1073 
   1074 	PR c++/107163
   1075 	* c-common.cc (verify_tree): Don't use sequenced handling
   1076 	for COMPONENT_REF.
   1077 
   1078 2023-03-17  Jakub Jelinek  <jakub (a] redhat.com>
   1079 
   1080 	PR c/109151
   1081 	* c-ubsan.cc (ubsan_instrument_division): Handle all scalar integral
   1082 	types rather than just INTEGER_TYPE.
   1083 
   1084 2023-03-10  Marek Polacek  <polacek (a] redhat.com>
   1085 
   1086 	PR sanitizer/108060
   1087 	PR sanitizer/109050
   1088 	* c-gimplify.cc (ubsan_walk_array_refs_r): For a MODIFY_EXPR, instrument
   1089 	the RHS before the LHS.
   1090 
   1091 2023-03-04  Jakub Jelinek  <jakub (a] redhat.com>
   1092 
   1093 	PR c/107465
   1094 	* c-warn.cc (warn_for_sign_compare): Don't warn for unset bits
   1095 	above innermost zero extension of BIT_NOT_EXPR result.
   1096 
   1097 2023-03-04  Jakub Jelinek  <jakub (a] redhat.com>
   1098 
   1099 	PR c/107465
   1100 	* c-warn.cc (warn_for_sign_compare): If c_common_get_narrower
   1101 	doesn't return a narrower result, use TYPE_UNSIGNED to set unsignedp0
   1102 	and unsignedp1.  For the one BIT_NOT_EXPR case vs. one without,
   1103 	only check for constant in the non-BIT_NOT_EXPR operand, use std::swap
   1104 	to simplify the code, only warn if BIT_NOT_EXPR operand is extended
   1105 	from narrower unsigned, fix up computation of mask for the constant
   1106 	cases and for unsigned other operand case handle differently
   1107 	BIT_NOT_EXPR result being sign vs. zero extended.
   1108 
   1109 2023-03-04  Jakub Jelinek  <jakub (a] redhat.com>
   1110 
   1111 	PR c/107846
   1112 	* c-warn.cc: Include langhooks.h.
   1113 	(maybe_warn_shift_overflow): Set type0 to what TREE_TYPE (op0)
   1114 	promotes to rather than TREE_TYPE (op0) itself, if TREE_TYPE (op0)
   1115 	is narrower than type0 and unsigned, use wi::min_precision with
   1116 	UNSIGNED and fold_convert op0 to type0 before emitting the warning.
   1117 
   1118 2023-03-03  Alexandre Oliva  <oliva (a] adacore.com>
   1119 
   1120 	* c-common.cc (c_common_nodes_and_builtins): Take
   1121 	wchar_type_node for wint_type_node when aliased.
   1122 	(c_stddef_cpp_builtins): Define __WINT_TYPE__, when aliased to
   1123 	wchar_t, to the underlying type rather than wchar_t in
   1124 	non-C++.
   1125 	* c-cppbuiltin.cc (type_suffix): Handle wchar_type_node.
   1126 
   1127 2023-02-28  Marek Polacek  <polacek (a] redhat.com>
   1128 
   1129 	PR c++/107938
   1130 	* c-warn.cc (check_address_or_pointer_of_packed_member): Check
   1131 	POINTER_TYPE_P.
   1132 
   1133 2023-02-28  Jakub Jelinek  <jakub (a] redhat.com>
   1134 
   1135 	PR sanitizer/108894
   1136 	* c-common.h (c_strict_flex_array_level_of): Declare.
   1137 	* c-common.cc (c_strict_flex_array_level_of): New function,
   1138 	moved and renamed from c-decl.cc's strict_flex_array_level_of.
   1139 	* c-ubsan.cc (ubsan_instrument_bounds): Fix comment typo.  For
   1140 	C check c_strict_flex_array_level_of whether a trailing array
   1141 	should be treated as flexible member like.  Handle C [0] arrays.
   1142 	Add 1 + index_off_by_one rather than index_off_by_one to bounds
   1143 	and use tree_int_cst_lt rather than tree_int_cst_le for idx vs.
   1144 	bounds comparison.
   1145 
   1146 2023-02-23  Jakub Jelinek  <jakub (a] redhat.com>
   1147 
   1148 	PR translation/108890
   1149 	* c.opt (fcontracts): Fix description.
   1150 
   1151 2023-02-22  Marek Polacek  <polacek (a] redhat.com>
   1152 
   1153 	PR c/108880
   1154 	* c-gimplify.cc (c_genericize_control_stmt) <case STATEMENT_LIST>: Pass
   1155 	pset to walk_tree_1.
   1156 	(c_genericize): Call walk_tree with an explicit pset.
   1157 
   1158 2023-02-18  Martin Uecker  <uecker (a] tugraz.at>
   1159 
   1160 	PR c/105660
   1161 	* c-attribs.cc (append_access_attr): Use order of arguments when
   1162 	construction string.
   1163 	(append_access_attr_idxs): Rename and make static.
   1164 	* c-warn.cc (warn_parm_array_mismatch): Add assertion.
   1165 
   1166 2023-02-16  Patrick Palka  <ppalka (a] redhat.com>
   1167 
   1168 	* c-common.h: Mechanically drop static from static inline
   1169 	functions via s/^static inline/inline/g.
   1170 
   1171 2023-02-01  Jason Merrill  <jason (a] redhat.com>
   1172 
   1173 	* c.opt: Add -Wno-changes-meaning.
   1174 
   1175 2023-01-31  Marek Polacek  <polacek (a] redhat.com>
   1176 
   1177 	PR c++/107593
   1178 	PR c++/108597
   1179 	* c-common.h (instantiation_dependent_expression_p): Declare.
   1180 	* c-warn.cc (warn_duplicated_cond_add_or_warn): If the condition
   1181 	is dependent, invalidate the chain.
   1182 
   1183 2023-01-26  Marek Polacek  <polacek (a] redhat.com>
   1184 
   1185 	PR c++/105300
   1186 	* c-pragma.cc (handle_pragma_message): Warn for CPP_STRING_USERDEF.
   1187 
   1188 2023-01-18  Marek Polacek  <polacek (a] redhat.com>
   1189 
   1190 	PR c/108424
   1191 	* c-common.cc (check_case_value): Check INTEGRAL_TYPE_P.
   1192 
   1193 2023-01-14  Jakub Jelinek  <jakub (a] redhat.com>
   1194 
   1195 	PR c++/108365
   1196 	* c-common.h (may_shorten_divmod): New static inline function.
   1197 
   1198 2023-01-13  Eric Botcazou  <ebotcazou (a] adacore.com>
   1199 
   1200 	* c-ada-spec.cc (is_float32): New function.
   1201 	(is_float64): Likewise.
   1202 	(is_float128): Tweak.
   1203 	(dump_ada_node) <REAL_TYPE>: Call them to recognize more types.
   1204 
   1205 2023-01-12  Lewis Hyatt  <lhyatt (a] gmail.com>
   1206 
   1207 	PR preprocessor/108244
   1208 	* c-pragma.cc (c_register_pragma_1): Don't attempt to register any
   1209 	deferred pragmas if -fdirectives-only.
   1210 	(init_pragma): Likewise.
   1211 
   1212 2023-01-09  Martin Liska  <mliska (a] suse.cz>
   1213 
   1214 	PR c/107993
   1215 	* c-attribs.cc (handle_target_clones_attribute): Check for
   1216 	string constant for all target_clone attribute values.
   1217 
   1218 2023-01-03  Florian Weimer  <fweimer (a] redhat.com>
   1219 
   1220 	* c-cppbuiltin.cc (c_cpp_builtins): Define
   1221 	__LIBGCC_DWARF_CIE_DATA_ALIGNMENT__.
   1222 
   1223 2023-01-03  Florian Weimer  <fweimer (a] redhat.com>
   1224 
   1225 	Revert:
   1226 	2023-01-03  Florian Weimer  <fweimer (a] redhat.com>
   1227 
   1228 	* c-cppbuiltin.cc (__LIBGCC_DWARF_REG_SIZES_CONSTANT__):
   1229 	Define if constant is known.
   1230 
   1231 2023-01-03  Florian Weimer  <fweimer (a] redhat.com>
   1232 
   1233 	Revert:
   1234 	2023-01-02  Florian Weimer  <fweimer (a] redhat.com>
   1235 
   1236 	* c-cppbuiltin.cc (c_cpp_builtins): Define
   1237 	__LIBGCC_DWARF_CIE_DATA_ALIGNMENT__.
   1238 
   1239 2023-01-02  Florian Weimer  <fweimer (a] redhat.com>
   1240 
   1241 	* c-cppbuiltin.cc (c_cpp_builtins): Define
   1242 	__LIBGCC_DWARF_CIE_DATA_ALIGNMENT__.
   1243 
   1244 2023-01-02  Florian Weimer  <fweimer (a] redhat.com>
   1245 
   1246 	* c-cppbuiltin.cc (__LIBGCC_DWARF_REG_SIZES_CONSTANT__):
   1247 	Define if constant is known.
   1248 
   1249 2022-12-19  Marek Polacek  <polacek (a] redhat.com>
   1250 
   1251 	PR c/98487
   1252 	* c-format.cc (check_function_format): Use get_attribute_name.
   1253 
   1254 2022-12-16  Qing Zhao  <qing.zhao (a] oracle.com>
   1255 
   1256 	* c.opt (Wstrict-flex-arrays): New option.
   1257 
   1258 2022-12-02  Andrew MacLeod  <amacleod (a] redhat.com>
   1259 
   1260 	* c-attribs.cc (handle_deprecated_attribute): Use type when
   1261 	using TYPE_NAME.
   1262 
   1263 2022-12-02  Jakub Jelinek  <jakub (a] redhat.com>
   1264 
   1265 	PR c++/84469
   1266 	* c-omp.cc (c_omp_is_loop_iterator): For range for with structured
   1267 	binding return TREE_VEC_LENGTH (d->declv) even if decl is equal
   1268 	to any of the structured binding decls.
   1269 
   1270 2022-11-30  Iskander Shakirzyanov  <iskander (a] ispras.ru>
   1271 	    Franz Sirl  <Franz.Sirl-kernel (a] lauterbach.com>
   1272 
   1273 	PR driver/107787
   1274 	* c-common.cc (fold_offsetof,
   1275 	convert_vector_to_array_for_subscript): Use OPT_Warray_bounds_
   1276 	instead of OPT_Warray_bounds.
   1277 
   1278 2022-11-24  Jakub Jelinek  <jakub (a] redhat.com>
   1279 
   1280 	* c.opt (fcontract-role=, fcontract-semantic=): Terminate descriptions
   1281 	with a dot.
   1282 
   1283 2022-11-23  Andrew Pinski  <apinski (a] marvell.com>
   1284 	    Jakub Jelinek  <jakub (a] redhat.com>
   1285 
   1286 	PR c/107127
   1287 	* c-gimplify.cc (c_genericize): Use walk_tree_without_duplicates
   1288 	instead of walk_tree for c_genericize_control_r.
   1289 
   1290 2022-11-23  Jakub Jelinek  <jakub (a] redhat.com>
   1291 
   1292 	* c.opt (fcontract-assumption-mode=, fcontract-continuation-mode=,
   1293 	fcontract-role=, fcontract-semantic=): Add RejectNegative.
   1294 	(fcontract-build-level=): Terminate description with dot.
   1295 
   1296 2022-11-19  Jakub Jelinek  <jakub (a] redhat.com>
   1297 
   1298 	* c-cppbuiltin.cc (c_cpp_builtins): Bump __cpp_constexpr
   1299 	value from 202207L to 202211L.
   1300 
   1301 2022-11-19  Jeff Chapman II  <jchapman (a] lock3software.com>
   1302 	    Andrew Sutton   <asutton (a] lock3software.com>
   1303 	    Andrew Marmaduke  <amarmaduke (a] lock3software.com>
   1304 	    Michael Lopez  <mlopez (a] lock3software.com>
   1305 	    Jason Merrill   <jason (a] redhat.com>
   1306 
   1307 	* c.opt: Add contracts flags.
   1308 	* c-cppbuiltin.cc (c_cpp_builtins): Add contracts feature-test
   1309 	macros.
   1310 
   1311 2022-11-16  Marek Polacek  <polacek (a] redhat.com>
   1312 
   1313 	PR c++/106649
   1314 	* c-cppbuiltin.cc (c_cpp_builtins): Update value of __cpp_constexpr for
   1315 	C++23.
   1316 	* c-opts.cc (c_common_post_options): Set warn_invalid_constexpr
   1317 	depending on cxx_dialect.
   1318 	* c.opt (Winvalid-constexpr): New option.
   1319 
   1320 2022-11-16  Jakub Jelinek  <jakub (a] redhat.com>
   1321 
   1322 	* c-common.def (CONCEPT_DECL): New tree, moved here from
   1323 	cp-tree.def.
   1324 	* c-common.cc (c_common_init_ts): Handle CONCEPT_DECL.
   1325 	* c-attribs.cc (handle_deprecated_attribute): Allow deprecated
   1326 	attribute on CONCEPT_DECL.
   1327 
   1328 2022-11-15  Lewis Hyatt  <lhyatt (a] gmail.com>
   1329 
   1330 	* c-opts.cc (c_finish_options): Use special_fname_builtin () rather
   1331 	than a hard-coded string.
   1332 
   1333 2022-11-15  Jakub Jelinek  <jakub (a] redhat.com>
   1334 
   1335 	* c-cppbuiltin.cc (c_cpp_builtins): Bump C++23
   1336 	__cpp_multidimensional_subscript macro value to 202211L.
   1337 
   1338 2022-11-15  Patrick Palka  <ppalka (a] redhat.com>
   1339 
   1340 	PR c++/107638
   1341 	* c-lex.cc (c_common_has_attribute): Return 1 for init_priority
   1342 	iff SUPPORTS_INIT_PRIORITY.
   1343 
   1344 2022-11-14  Martin Liska  <mliska (a] suse.cz>
   1345 
   1346 	Revert:
   1347 	2022-11-09  Martin Liska  <mliska (a] suse.cz>
   1348 
   1349 	* c-target.def: Port to RST.
   1350 
   1351 2022-11-12  Joseph Myers  <joseph (a] codesourcery.com>
   1352 
   1353 	* c-common.cc (c_common_reswords): Use D_C2X instead of D_CXXONLY.
   1354 
   1355 2022-11-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1356 
   1357 	PR c/85487
   1358 	* c-pragma.cc (handle_pragma_ignore): New function.
   1359 	(init_pragma): Register region and endregion pragmas.
   1360 
   1361 2022-11-09  Martin Liska  <mliska (a] suse.cz>
   1362 
   1363 	* c-target.def: Port to RST.
   1364 
   1365 2022-11-05  Lewis Hyatt  <lhyatt (a] gmail.com>
   1366 
   1367 	PR preprocessor/55971
   1368 	* c-ppoutput.cc (adjust_for_newlines): Update comment.
   1369 
   1370 2022-11-03  Jason Merrill  <jason (a] redhat.com>
   1371 
   1372 	* c-opts.cc (c_common_post_options): -fconcepts no longer implies
   1373 	-fconcepts-ts before C++20.
   1374 
   1375 2022-10-28  Joseph Myers  <joseph (a] codesourcery.com>
   1376 
   1377 	* c-common.cc (def_fn_type): Call build_function_type for
   1378 	zero-argument variable-argument function.
   1379 	(c_common_nodes_and_builtins): Build default_function_type with
   1380 	build_function_type.
   1381 	* c.opt (fallow-parameterless-variadic-functions): Mark as ignored
   1382 	option.
   1383 
   1384 2022-10-28  Joseph Myers  <joseph (a] codesourcery.com>
   1385 
   1386 	PR c/61469
   1387 	* c-common.h (ENUM_UNDERLYING_TYPE, ENUM_FIXED_UNDERLYING_TYPE_P):
   1388 	New.  Moved from cp/cp-tree.h.
   1389 	* c-warn.cc (warnings_for_convert_and_check): Do not consider
   1390 	conversions to enum with underlying type bool to overflow.
   1391 
   1392 2022-10-26  Marek Polacek  <polacek (a] redhat.com>
   1393 
   1394 	PR c++/106393
   1395 	* c.opt (Wdangling-reference): New.
   1396 
   1397 2022-10-19  Joseph Myers  <joseph (a] codesourcery.com>
   1398 
   1399 	* c-format.h (enum format_lengths): Add FMT_LEN_w8, FMT_LEN_w16,
   1400 	FMT_LEN_w32, FMT_LEN_w64, FMT_LEN_wf8, FMT_LEN_wf16, FMT_LEN_wf32
   1401 	and FMT_LEN_wf64.
   1402 	(NOARGUMENTS, NOLENGTHS): Update definitions.
   1403 	(T_I8, T2X_I8, T_I16, T2X_I16, T_I32, T2X_I32, T_I64, T2X_I64)
   1404 	(T_U8, T2X_U8, T_U16, T2X_U16, T_U32, T2X_U32, T_U64, T2X_U64)
   1405 	(T_IF8, T2X_IF8, T_IF16, T2X_IF16, T_IF32, T2X_IF32, T_IF64)
   1406 	(T2X_IF64, T_UF8, T2X_UF8, T_UF16, T2X_UF16, T_UF32, T2X_UF32)
   1407 	(T_UF64, T2X_UF64): New macros.
   1408 	* c-format.cc (printf_length_specs, scanf_length_specs): Add wN
   1409 	and wfN length modifiers.
   1410 	(print_char_table, scan_char_table): Add entries using wN and wfN
   1411 	length modifiers.
   1412 
   1413 2022-10-18  Joseph Myers  <joseph (a] codesourcery.com>
   1414 
   1415 	PR c/36113
   1416 	* c-common.cc (c_common_type_for_size): Add fallback to
   1417 	widest_unsigned_literal_type_node or
   1418 	widest_integer_literal_type_node for precision that may not
   1419 	exactly match the precision of those types.
   1420 
   1421 2022-10-14  Jakub Jelinek  <jakub (a] redhat.com>
   1422 
   1423 	* c-cppbuiltin.cc (c_cpp_builtins): If bfloat16_type_node,
   1424 	predefine __BFLT16_*__ macros and for C++23 also
   1425 	__STDCPP_BFLOAT16_T__.  Predefine bfloat16_type_node related
   1426 	macros for -fbuilding-libgcc.
   1427 	* c-lex.cc (interpret_float): Handle CPP_N_BFLOAT16.
   1428 
   1429 2022-10-14  Jakub Jelinek  <jakub (a] redhat.com>
   1430 
   1431 	PR middle-end/323
   1432 	PR c++/107097
   1433 	* c-common.def (EXCESS_PRECISION_EXPR): Remove comment part about
   1434 	the tree being specific to C/ObjC.
   1435 	* c-opts.cc (c_common_post_options): Handle flag_excess_precision
   1436 	in C++ the same as in C.
   1437 	* c-lex.cc (interpret_float): Set const_type to excess_precision ()
   1438 	even for C++.
   1439 
   1440 2022-10-13  Joseph Myers  <joseph (a] codesourcery.com>
   1441 
   1442 	* c-cppbuiltin.cc (builtin_define_float_constants): Do not use
   1443 	value 2 for *_IS_IEC_60559.
   1444 
   1445 2022-10-12  Lewis Hyatt  <lhyatt (a] gmail.com>
   1446 
   1447 	PR preprocessor/60014
   1448 	PR preprocessor/60723
   1449 	* c-ppoutput.cc (class token_streamer): Remove member
   1450 	line_marker_emitted to...
   1451 	(token_streamer::stream): ...a local variable here. Set
   1452 	print.prev_was_system_token on all code paths.
   1453 
   1454 2022-10-10  Nathan Sidwell  <nathan (a] acm.org>
   1455 
   1456 	* c-opts.cc (c_common_post_options): Bump abi to 18.
   1457 
   1458 2022-10-10  Marek Polacek  <polacek (a] redhat.com>
   1459 
   1460 	PR c++/106937
   1461 	* c-pretty-print.cc (pp_c_specifier_qualifier_list): Print only GNU
   1462 	attributes here.
   1463 	(c_pretty_printer::direct_abstract_declarator): Print the standard [[]]
   1464 	attributes here.
   1465 	(pp_c_attributes): Remove.
   1466 	(pp_c_attributes_display): Print the [[]] form if appropriate.  Use
   1467 	get_attribute_name.  Don't print a trailing space when printing the
   1468 	[[]] form.
   1469 	* c-pretty-print.h (pp_c_attributes): Remove.
   1470 
   1471 2022-10-07  Qing Zhao  <qing.zhao (a] oracle.com>
   1472 
   1473 	* c-attribs.cc (handle_strict_flex_array_attribute): New function.
   1474 	(c_common_attribute_table): New item for strict_flex_array.
   1475 	* c.opt: (fstrict-flex-arrays): New option.
   1476 	(fstrict-flex-arrays=): New option.
   1477 
   1478 2022-10-07  Martin Liska  <mliska (a] suse.cz>
   1479 
   1480 	* name-hint.h: Use std::move.
   1481 
   1482 2022-10-07  Jakub Jelinek  <jakub (a] redhat.com>
   1483 
   1484 	* c-common.cc (attribute_fallthrough_p): Lookup fallthrough attribute
   1485 	only in gnu namespace or as standard attribute, treat fallthrough
   1486 	attributes in other namespaces like any other unknown attribute.
   1487 
   1488 2022-10-06  Joseph Myers  <joseph (a] codesourcery.com>
   1489 
   1490 	* c-common.cc (c_common_reswords): Mark typeof as D_EXT11.  Add
   1491 	typeof_unqual.
   1492 	* c-common.h (enum rid): Add RID_TYPEOF_UNQUAL.
   1493 	(D_EXT11): New macro.  Values of subsequent macros updated.
   1494 
   1495 2022-10-06  Jakub Jelinek  <jakub (a] redhat.com>
   1496 
   1497 	PR c++/106654
   1498 	* c-attribs.cc (handle_assume_attribute): New function.
   1499 	(c_common_attribute_table): Add entry for assume attribute.
   1500 	* c-lex.cc (c_common_has_attribute): Handle
   1501 	__have_cpp_attribute (assume).
   1502 
   1503 2022-10-04  Jakub Jelinek  <jakub (a] redhat.com>
   1504 
   1505 	* c-omp.cc (c_omp_directives): Uncomment begin declare target
   1506 	entry.
   1507 
   1508 2022-10-03  Patrick Palka  <ppalka (a] redhat.com>
   1509 
   1510 	* c-common.cc (c_common_reswords): Use RID_IS_SAME instead of
   1511 	RID_IS_SAME_AS.
   1512 
   1513 2022-10-03  Joseph Myers  <joseph (a] codesourcery.com>
   1514 
   1515 	* c-cppbuiltin.cc (builtin_define_float_constants): Do not
   1516 	special-case __*_EPSILON__ setting for IBM long double for C2x.
   1517 
   1518 2022-09-30  Patrick Palka  <ppalka (a] redhat.com>
   1519 
   1520 	* c-common.cc (c_common_reswords): Use cp/cp-trait.def to handle
   1521 	C++ traits.
   1522 	* c-common.h (enum rid): Likewise.
   1523 
   1524 2022-09-29  Joseph Myers  <joseph (a] codesourcery.com>
   1525 
   1526 	* c-lex.cc (c_common_has_attribute): Handle noreturn attribute for
   1527 	C.
   1528 
   1529 2022-09-29  Patrick Palka  <ppalka (a] redhat.com>
   1530 
   1531 	* c-common.cc (c_common_reswords): Add __remove_cv,
   1532 	__remove_reference and __remove_cvref.
   1533 	* c-common.h (enum rid): Add RID_REMOVE_CV, RID_REMOVE_REFERENCE
   1534 	and RID_REMOVE_CVREF.
   1535 
   1536 2022-09-27  Marek Polacek  <polacek (a] redhat.com>
   1537 
   1538 	PR c++/101165
   1539 	PR c++/106882
   1540 	* c-cppbuiltin.cc (c_cpp_builtins): Define __cpp_implicit_move.
   1541 
   1542 2022-09-27  Marek Polacek  <polacek (a] redhat.com>
   1543 
   1544 	* c-format.cc (c_keywords): Drop nothrow.
   1545 
   1546 2022-09-27  Jakub Jelinek  <jakub (a] redhat.com>
   1547 
   1548 	PR c++/106651
   1549 	* c-cppbuiltin.cc (c_cpp_builtins): Predefine
   1550 	__cpp_static_call_operator=202207L for C++23.
   1551 
   1552 2022-09-27  Jakub Jelinek  <jakub (a] redhat.com>
   1553 
   1554 	* c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_ASSUME,
   1555 	PRAGMA_OMP_ASSUMES and PRAGMA_OMP_BEGIN.  Rename
   1556 	PRAGMA_OMP_END_DECLARE_TARGET to PRAGMA_OMP_END.
   1557 	* c-pragma.cc (omp_pragmas): Add assumes and begin.
   1558 	For end rename PRAGMA_OMP_END_DECLARE_TARGET to PRAGMA_OMP_END.
   1559 	(omp_pragmas_simd): Add assume.
   1560 	* c-common.h (c_omp_directives): Declare.
   1561 	* c-omp.cc (omp_directives): Rename to ...
   1562 	(c_omp_directives): ... this.  No longer static.  Uncomment
   1563 	assume, assumes, begin assumes and end assumes entries.
   1564 	In end declare target entry rename PRAGMA_OMP_END_DECLARE_TARGET
   1565 	to PRAGMA_OMP_END.
   1566 	(c_omp_categorize_directive): Adjust for omp_directives to
   1567 	c_omp_directives renaming.
   1568 
   1569 2022-09-27  Jakub Jelinek  <jakub (a] redhat.com>
   1570 
   1571 	PR c++/106652
   1572 	PR c++/85518
   1573 	* c-common.cc (c_common_reswords): Change _Float{16,32,64,128} and
   1574 	_Float{32,64,128}x flags from D_CONLY to 0.
   1575 	(shorten_binary_op): Punt if common_type returns error_mark_node.
   1576 	(shorten_compare): Likewise.
   1577 	(c_common_nodes_and_builtins): For C++ record _Float{16,32,64,128}
   1578 	and _Float{32,64,128}x builtin types if available.  For C++
   1579 	clear float128t_type_node.
   1580 	* c-cppbuiltin.cc (c_cpp_builtins): Predefine
   1581 	__STDCPP_FLOAT{16,32,64,128}_T__ for C++23 if supported.
   1582 	* c-lex.cc (interpret_float): For q/Q suffixes prefer
   1583 	float128t_type_node over float128_type_node.  Allow
   1584 	{f,F}{16,32,64,128} suffixes for C++ if supported with pedwarn
   1585 	for C++20 and older.  Allow {f,F}{32,64,128}x suffixes for C++
   1586 	with pedwarn.  Don't call excess_precision_type for C++.
   1587 
   1588 2022-09-26  Marek Polacek  <polacek (a] redhat.com>
   1589 
   1590 	PR c++/106656
   1591 	* c-cppbuiltin.cc (c_cpp_builtins): Update value of __cpp_char8_t
   1592 	for C++20.
   1593 
   1594 2022-09-23  Marek Polacek  <polacek (a] redhat.com>
   1595 
   1596 	PR c++/106784
   1597 	* c-common.cc (c_common_reswords): Add __is_convertible and
   1598 	__is_nothrow_convertible.
   1599 	* c-common.h (enum rid): Add RID_IS_CONVERTIBLE and
   1600 	RID_IS_NOTHROW_CONVERTIBLE.
   1601 
   1602 2022-09-22  David Malcolm  <dmalcolm (a] redhat.com>
   1603 
   1604 	PR c/106830
   1605 	* c-warn.cc (check_for_xor_used_as_pow): Don't try checking
   1606 	values that don't fit in uhwi.
   1607 
   1608 2022-09-15  Richard Biener  <rguenther (a] suse.de>
   1609 
   1610 	* c-common.h (build_void_list_node): Remove.
   1611 	* c-common.cc (c_common_nodes_and_builtins): Do not initialize
   1612 	void_list_node.
   1613 
   1614 2022-09-09  Jan-Benedict Glaw  <jbglaw (a] lug-owl.de>
   1615 
   1616 	* c-format.cc (convert_format_name_to_system_name): Fix warning.
   1617 
   1618 2022-09-07  Joseph Myers  <joseph (a] codesourcery.com>
   1619 
   1620 	* c-common.cc (c_common_reswords): Use D_C2X instead of D_CXXONLY
   1621 	for alignas, alignof, bool, false, static_assert, thread_local and
   1622 	true.
   1623 
   1624 2022-09-07  Jakub Jelinek  <jakub (a] redhat.com>
   1625 
   1626 	* c.opt (Winvalid-utf8): Use ObjC instead of objC.  Remove
   1627 	" in comments" from description.
   1628 	(Wunicode): New option.
   1629 
   1630 2022-09-06  Jakub Jelinek  <jakub (a] redhat.com>
   1631 
   1632 	PR c/106836
   1633 	* c-omp.cc (c_omp_split_clauses): Handle OMP_CLAUSE_DOACROSS.
   1634 
   1635 2022-09-03  Jakub Jelinek  <jakub (a] redhat.com>
   1636 
   1637 	* c-pragma.h (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_DOACROSS.
   1638 	* c-omp.cc (c_finish_omp_depobj): Check also for OMP_CLAUSE_DOACROSS
   1639 	clause and diagnose it.  Don't handle OMP_CLAUSE_DEPEND_SOURCE and
   1640 	OMP_CLAUSE_DEPEND_SINK.  Assert kind is not OMP_CLAUSE_DEPEND_INVALID.
   1641 
   1642 2022-09-02  David Malcolm  <dmalcolm (a] redhat.com>
   1643 
   1644 	PR c/90885
   1645 	* c-common.h (check_for_xor_used_as_pow): New decl.
   1646 	* c-lex.cc (c_lex_with_flags): Add DECIMAL_INT to flags as appropriate.
   1647 	* c-warn.cc (check_for_xor_used_as_pow): New.
   1648 	* c.opt (Wxor-used-as-pow): New.
   1649 
   1650 2022-09-01  Jason Merrill  <jason (a] redhat.com>
   1651 
   1652 	* c-common.cc (c_common_nodes_and_builtins): Set TREE_STRING_FLAG on
   1653 	char8_t.
   1654 	(braced_list_to_string): Check for char-sized elements.
   1655 
   1656 2022-09-01  Jakub Jelinek  <jakub (a] redhat.com>
   1657 
   1658 	PR c++/106655
   1659 	* c.opt (-Winvalid-utf8): New warning.
   1660 	* c-opts.cc (c_common_handle_option) <case OPT_finput_charset_>:
   1661 	Set cpp_opts->cpp_input_charset_explicit.
   1662 	(c_common_post_options): If -finput-charset=UTF-8 is explicit
   1663 	in C++23, enable -Winvalid-utf8 by default and if -pedantic
   1664 	or -pedantic-errors, make it a pedwarn.
   1665 
   1666 2022-08-31  Joseph Myers  <joseph (a] codesourcery.com>
   1667 
   1668 	* c-attribs.cc (handle_deprecated_attribute): Check and pedwarn
   1669 	for LABEL_DECL.
   1670 	* c-common.cc (c_add_case_label): Add argument ATTRS.  Call
   1671 	decl_attributes.
   1672 	* c-common.h (do_case, c_add_case_label): Update declarations.
   1673 	* c-lex.cc (c_common_has_attribute): For C, produce a result of
   1674 	201910 for fallthrough and 202106 for maybe_unused.
   1675 
   1676 2022-08-26  Marek Polacek  <polacek (a] redhat.com>
   1677 
   1678 	PR c++/81159
   1679 	* c.opt (Wself-move): New option.
   1680 
   1681 2022-08-26  Jakub Jelinek  <jakub (a] redhat.com>
   1682 
   1683 	* c-common.cc (check_builtin_function_arguments): Handle
   1684 	BUILT_IN_ISSIGNALING.
   1685 
   1686 2022-08-26  Jakub Jelinek  <jakub (a] redhat.com>
   1687 
   1688 	PR c++/106648
   1689 	* c-cppbuiltin.cc (c_cpp_builtins): Predefine
   1690 	__cpp_named_character_escapes to 202207L.
   1691 
   1692 2022-08-25  Marek Polacek  <polacek (a] redhat.com>
   1693 
   1694 	* c-common.cc (c_common_reswords): Enable nullptr in C2X.
   1695 	(c_common_nodes_and_builtins): Create the built-in node for nullptr.
   1696 	* c-common.h (enum c_tree_index): Add CTI_NULLPTR, CTI_NULLPTR_TYPE.
   1697 	(struct c_common_resword): Resize the disable member.
   1698 	(D_C2X): Add.
   1699 	(nullptr_node): Define.
   1700 	(nullptr_type_node): Define.
   1701 	(NULLPTR_TYPE_P): Define.
   1702 	* c-pretty-print.cc (c_pretty_printer::simple_type_specifier): Handle
   1703 	NULLPTR_TYPE.
   1704 	(c_pretty_printer::direct_abstract_declarator): Likewise.
   1705 	(c_pretty_printer::constant): Likewise.
   1706 
   1707 2022-08-16  Tom Honermann  <tom (a] honermann.net>
   1708 
   1709 	PR c++/106423
   1710 	* c-opts.cc (c_common_post_options): Disable -Wc++20-compat
   1711 	diagnostics in C++20 and later.
   1712 	* c.opt (Wc++20-compat): Enable hooks for the preprocessor.
   1713 
   1714 2022-08-11  Marek Polacek  <polacek (a] redhat.com>
   1715 
   1716 	PR middle-end/102633
   1717 	* c-gimplify.cc (c_gimplify_expr) <case DECL_EXPR>: Don't call
   1718 	suppress_warning here.
   1719 
   1720 2022-08-08  Tom Honermann  <tom (a] honermann.net>
   1721 
   1722 	PR preprocessor/106426
   1723 	* c-opts.cc (c_common_post_options): Assign cpp_opts->unsigned_utf8char
   1724 	subject to -fchar8_t, -fsigned-char, and/or -funsigned-char.
   1725 
   1726 2022-08-08  Tom Honermann  <tom (a] honermann.net>
   1727 
   1728 	* c-lex.cc (lex_string, lex_charconst): Use char8_t as the type
   1729 	of CPP_UTF8CHAR and CPP_UTF8STRING when char8_t support is
   1730 	enabled.
   1731 	* c-opts.cc (c_common_post_options): Set flag_char8_t if
   1732 	targeting C2x.
   1733 
   1734 2022-07-31  Lewis Hyatt  <lhyatt (a] gmail.com>
   1735 
   1736 	PR c++/66290
   1737 	* c-common.h: Rename global done_lexing to
   1738 	override_libcpp_locations.
   1739 	* c-common.cc (c_cpp_diagnostic): Likewise.
   1740 	* c-opts.cc (c_common_finish): Set override_libcpp_locations
   1741 	(formerly done_lexing) immediately prior to calling cpp_finish ().
   1742 
   1743 2022-07-27  Lewis Hyatt  <lhyatt (a] gmail.com>
   1744 
   1745 	* c-ppoutput.cc (token_streamer::stream): Update input_location
   1746 	prior to streaming each token.
   1747 
   1748 2022-07-23  Immad Mir  <mirimmad (a] outlook.com>
   1749 
   1750 	* c-attribs.cc: (c_common_attribute_table): add three new attributes
   1751 	namely: fd_arg, fd_arg_read and fd_arg_write.
   1752 	(handle_fd_arg_attribute): New.
   1753 
   1754 2022-07-15  Marek Polacek  <polacek (a] redhat.com>
   1755 
   1756 	PR c++/104477
   1757 	* c-common.cc (c_common_reswords): Add
   1758 	__reference_constructs_from_temporary and
   1759 	__reference_converts_from_temporary.
   1760 	* c-common.h (enum rid): Add RID_REF_CONSTRUCTS_FROM_TEMPORARY and
   1761 	RID_REF_CONVERTS_FROM_TEMPORARY.
   1762 
   1763 2022-07-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1764 
   1765 	* c-format.cc (class range_label_for_format_type_mismatch):
   1766 	Adjust to new label_text API.
   1767 
   1768 2022-07-11  Lewis Hyatt  <lhyatt (a] gmail.com>
   1769 
   1770 	PR preprocessor/106252
   1771 	* c-pragma.cc (handle_pragma_diagnostic_impl): Don't look up the
   1772 	option argument prior to verifying the option was found.
   1773 
   1774 2022-07-07  David Malcolm  <dmalcolm (a] redhat.com>
   1775 
   1776 	* c-format.cc (range_label_for_format_type_mismatch::get_text):
   1777 	Update for removal of label_text::maybe_free in favor of automatic
   1778 	memory management.
   1779 
   1780 2022-07-06  Lewis Hyatt  <lhyatt (a] gmail.com>
   1781 
   1782 	PR preprocessor/53920
   1783 	PR c++/53431
   1784 	* c-common.cc (c_option_is_from_cpp_diagnostics): New function.
   1785 	* c-common.h (c_option_is_from_cpp_diagnostics): Declare.
   1786 	(c_pp_stream_token): Declare.
   1787 	* c-ppoutput.cc (init_pp_output): Refactor logic about skipping
   1788 	pragmas to...
   1789 	(should_output_pragmas): ...here. New function.
   1790 	(token_streamer::stream): Support handling early pragmas.
   1791 	(do_line_change): Likewise.
   1792 	(c_pp_stream_token): New function.
   1793 	* c-pragma.cc (struct pragma_diagnostic_data): New helper class.
   1794 	(pragma_diagnostic_lex_normal): New function. Moved logic for
   1795 	interpreting GCC diagnostic pragmas here.
   1796 	(pragma_diagnostic_lex_pp): New function for parsing diagnostic pragmas
   1797 	directly from libcpp.
   1798 	(handle_pragma_diagnostic): Refactor into helper function...
   1799 	(handle_pragma_diagnostic_impl): ...here.  New function.
   1800 	(handle_pragma_diagnostic_early): New function.
   1801 	(handle_pragma_diagnostic_early_pp): New function.
   1802 	(struct pragma_ns_name): Renamed to...
   1803 	(struct pragma_pp_data): ...this.  Add new "early_handler" member.
   1804 	(c_register_pragma_1): Support early pragmas in the preprocessor.
   1805 	(c_register_pragma_with_early_handler): New function.
   1806 	(c_register_pragma): Support the new early handlers in struct
   1807 	internal_pragma_handler.
   1808 	(c_register_pragma_with_data): Likewise.
   1809 	(c_register_pragma_with_expansion): Likewise.
   1810 	(c_register_pragma_with_expansion_and_data): Likewise.
   1811 	(c_invoke_early_pragma_handler): New function.
   1812 	(c_pp_invoke_early_pragma_handler): New function.
   1813 	(init_pragma): Add early pragma support for diagnostic pragmas.
   1814 	* c-pragma.h (struct internal_pragma_handler): Add new early handler
   1815 	members.
   1816 	(c_register_pragma_with_early_handler): Declare.
   1817 	(c_invoke_early_pragma_handler): Declare.
   1818 	(c_pp_invoke_early_pragma_handler): Declare.
   1819 
   1820 2022-07-05  Marek Polacek  <polacek (a] redhat.com>
   1821 
   1822 	PR c++/105626
   1823 	* c-format.cc (check_format_arg): Don't emit -Wformat warnings with
   1824 	u8 strings.
   1825 
   1826 2022-07-01  Marek Polacek  <polacek (a] redhat.com>
   1827 
   1828 	PR c++/106111
   1829 	* c-common.h (enum rid): Update RID_LAST_CXX20.
   1830 
   1831 2022-06-30  Jonathan Wakely  <jwakely (a] redhat.com>
   1832 
   1833 	* known-headers.cc (get_stdlib_header_for_name): Add <time.h>
   1834 	names.
   1835 
   1836 2022-06-24  Jason Merrill  <jason (a] redhat.com>
   1837 
   1838 	PR c++/87729
   1839 	PR c++/20423
   1840 	* c.opt (Woverloaded-virtual): Add levels, include in -Wall.
   1841 
   1842 2022-06-18  Jakub Jelinek  <jakub (a] redhat.com>
   1843 
   1844 	* c-ubsan.cc (ubsan_instrument_division, ubsan_instrument_shift):
   1845 	Use flag_sanitize_trap & SANITIZE_??? instead of
   1846 	flag_sanitize_undefined_trap_on_error.  If 2 sanitizers are involved
   1847 	and flag_sanitize_trap differs for them, emit __builtin_trap only
   1848 	for the comparison where trap is requested.
   1849 	(ubsan_instrument_vla, ubsan_instrument_return): Use
   1850 	lag_sanitize_trap & SANITIZE_??? instead of
   1851 	flag_sanitize_undefined_trap_on_error.
   1852 
   1853 2022-06-13  Jason Merrill  <jason (a] redhat.com>
   1854 
   1855 	* c-ubsan.cc (ubsan_instrument_return): Use BUILTINS_LOCATION.
   1856 
   1857 2022-05-27  Marek Polacek  <polacek (a] redhat.com>
   1858 
   1859 	PR c/90658
   1860 	* c-attribs.cc (get_priority): Check FUNCTION_DECL.
   1861 
   1862 2022-05-27  Jakub Jelinek  <jakub (a] redhat.com>
   1863 
   1864 	* c-pragma.h (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_ENTER.
   1865 
   1866 2022-05-20  David Malcolm  <dmalcolm (a] redhat.com>
   1867 
   1868 	* c-format.cc: Replace uses of "FINAL" and "OVERRIDE" with "final"
   1869 	and "override".
   1870 	* c-pretty-print.h: Likewise.
   1871 
   1872 2022-05-18  Marek Polacek  <polacek (a] redhat.com>
   1873 
   1874 	PR c/105131
   1875 	* c.opt (Wenum-int-mismatch): New.
   1876 
   1877 2022-05-18  Marek Polacek  <polacek (a] redhat.com>
   1878 
   1879 	PR c++/105497
   1880 	* c-warn.cc (c_do_switch_warnings): Don't warn about unhandled
   1881 	enumerator when it was marked with attribute unused.
   1882 
   1883 2022-05-18  Eric Botcazou  <ebotcazou (a] adacore.com>
   1884 
   1885 	* c-ada-spec.cc (dump_ada_node) <COMPLEX_TYPE>: Deal with usual
   1886 	floating-point complex types.
   1887 	<POINTER_TYPE>: Do not use limited_with clause if the designated
   1888 	type is a scalar type.
   1889 
   1890 2022-05-17  Jakub Jelinek  <jakub (a] redhat.com>
   1891 
   1892 	* c-omp.cc (c_finish_omp_depobj): Handle
   1893 	OMP_CLAUSE_DEPEND_INOUTSET.
   1894 
   1895 2022-05-16  Jason Merrill  <jason (a] redhat.com>
   1896 
   1897 	PR c/105492
   1898 	* c-attribs.cc (handle_mode_attribute): Don't fix broken typedefs
   1899 	here.
   1900 
   1901 2022-05-16  Martin Liska  <mliska (a] suse.cz>
   1902 
   1903 	* c-common.cc (ARRAY_SIZE): Use ARRAY_SIZE.
   1904 	(c_common_nodes_and_builtins): Likewise.
   1905 	* c-format.cc (check_tokens): Likewise.
   1906 	(check_plain): Likewise.
   1907 	* c-pragma.cc (c_pp_lookup_pragma): Likewise.
   1908 	(init_pragma): Likewise.
   1909 	* known-headers.cc (get_string_macro_hint): Likewise.
   1910 	(get_stdlib_header_for_name): Likewise.
   1911 	* c-attribs.cc: Likewise.
   1912 
   1913 2022-05-13  Richard Biener  <rguenther (a] suse.de>
   1914 
   1915 	* c-omp.cc: Remove gimple-fold.h include.
   1916 
   1917 2022-05-12  Jakub Jelinek  <jakub (a] redhat.com>
   1918 
   1919 	* c-common.h (enum rid): Add RID_OMP_ALL_MEMORY.
   1920 	* c-omp.cc (c_finish_omp_depobj): Don't build_fold_addr_expr
   1921 	if null_pointer_node.
   1922 
   1923 2022-05-11  Martin Liska  <mliska (a] suse.cz>
   1924 
   1925 	PR target/105355
   1926 	* c-opts.cc (c_common_handle_option): Change option name.
   1927 	* c.opt: Remove Joined and use Separate option.
   1928 
   1929 2022-05-09  Alex Coplan  <alex.coplan (a] arm.com>
   1930 
   1931 	* c-common.h (get_dump_info): Delete.
   1932 	* c-gimplify.cc (c_genericize): Get TDI_original dump file info
   1933 	from the global dump_manager instead of the (now obsolete)
   1934 	get_dump_info.
   1935 	* c-opts.cc (original_dump_file): Delete.
   1936 	(original_dump_flags): Delete.
   1937 	(c_common_parse_file): Switch to using global dump_manager to
   1938 	manage the original dump file; fix leak of dump file.
   1939 	(get_dump_info): Delete.
   1940 
   1941 2022-05-07  Marek Polacek  <polacek (a] redhat.com>
   1942 
   1943 	PR c++/101833
   1944 	PR c++/47634
   1945 	* c-attribs.cc (positional_argument): Pass POS by reference.  Deal
   1946 	with FN being either a function declaration or function type.  Use
   1947 	maybe_adjust_arg_pos_for_attribute.
   1948 	* c-common.cc (check_function_arguments): Maybe pass FNDECL down to
   1949 	check_function_format.
   1950 	* c-common.h (maybe_adjust_arg_pos_for_attribute): Declare.
   1951 	(positional_argument): Adjust.
   1952 	* c-format.cc (get_constant): Rename to ...
   1953 	(validate_constant): ... this.  Take EXPR by reference.  Return bool
   1954 	instead of tree.
   1955 	(handle_format_arg_attribute): Don't overwrite FORMAT_NUM_EXPR by the
   1956 	return value of validate_constant.
   1957 	(decode_format_attr): Don't overwrite FORMAT_NUM_EXPR and
   1958 	FIRST_ARG_NUM_EXPR by the return value of validate_constant.
   1959 	(check_function_format): Adjust a parameter name.
   1960 	(handle_format_attribute): Maybe pass FNDECL down to decode_format_attr.
   1961 
   1962 2022-05-04  Marek Polacek  <polacek (a] redhat.com>
   1963 
   1964 	* c-warn.cc (warnings_for_convert_and_check): Convert constants of type
   1965 	char to int.
   1966 
   1967 2022-04-30  Jason Merrill  <jason (a] redhat.com>
   1968 
   1969 	PR c/100545
   1970 	* c-attribs.cc (handle_mode_attribute): Copy attributes, aligned,
   1971 	and typedef.
   1972 	* c-common.cc (set_underlying_type): Add assert.
   1973 
   1974 2022-04-26  Patrick Palka  <ppalka (a] redhat.com>
   1975 
   1976 	PR c++/105304
   1977 	* c-common.cc (verify_tree) [restart]: Move up to before the
   1978 	NULL test.
   1979 
   1980 2022-04-11  Jakub Jelinek  <jakub (a] redhat.com>
   1981 
   1982 	PR c++/105186
   1983 	* c-common.cc (c_common_nodes_and_builtins): After registering __int%d
   1984 	and __int%d__ builtin types, initialize corresponding ridpointers
   1985 	entry.
   1986 
   1987 2022-03-30  Marek Polacek  <polacek (a] redhat.com>
   1988 
   1989 	PR c++/101030
   1990 	* c-warn.cc (conversion_warning) <case COND_EXPR>: Don't call
   1991 	conversion_warning when OP1 is null.
   1992 
   1993 2022-03-30  Thomas Schwinge  <thomas (a] codesourcery.com>
   1994 
   1995 	* c.opt (Wc++11-extensions, Wc++14-extensions, Wc++17-extensions)
   1996 	(Wc++20-extensions, Wc++23-extensions): Remove 'LangEnabledBy'
   1997 	option properties.
   1998 
   1999 2022-03-30  Thomas Schwinge  <thomas (a] codesourcery.com>
   2000 
   2001 	* c.opt (Wuse-after-free): Remove.
   2002 
   2003 2022-03-30  Thomas Schwinge  <thomas (a] codesourcery.com>
   2004 
   2005 	* c.opt (Warray-bounds): Remove.
   2006 
   2007 2022-03-26  Thomas Schwinge  <thomas (a] codesourcery.com>
   2008 
   2009 	* c.opt: Properly quote comment.
   2010 
   2011 2022-03-25  Eric Botcazou  <ebotcazou (a] adacore.com>
   2012 
   2013 	* c-ada-spec.cc (dump_ada_import): Deal with the "section" attribute
   2014 	(dump_ada_node) <POINTER_TYPE>: Do not modify and pass the name, but
   2015 	the referenced type instead.  Deal with the anonymous original type
   2016 	of a typedef'ed type.  In the actual access case, follow the chain
   2017 	of external subtypes.
   2018 	<TYPE_DECL>: Tidy up control flow.
   2019 
   2020 2022-03-21  Qian Jianhua  <qianjh (a] cn.fujitsu.com>
   2021 
   2022 	* c-ada-spec.cc: Change array length
   2023 
   2024 2022-03-19  Arthur Cohen  <arthur.cohen (a] embecosm.com>
   2025 
   2026 	* c-common.cc (c_family_tests): Call the new tests.
   2027 	* c-common.h (c_diagnostic_tests): Declare.
   2028 	(c_opt_problem_cc_tests): Likewise.
   2029 
   2030 2022-03-19  Jakub Jelinek  <jakub (a] redhat.com>
   2031 
   2032 	PR c++/101515
   2033 	* c-pretty-print.cc (c_fold_indirect_ref_for_warn): For C++ don't
   2034 	return COMPONENT_REFs with FIELD_DECLs whose containing scope can't
   2035 	be printed.
   2036 
   2037 2022-03-16  Christophe Lyon  <christophe.lyon (a] arm.com>
   2038 	    Roger Sayle  <roger (a] nextmovesoftware.com>
   2039 
   2040 	PR c/98198
   2041 	* c-attribs.cc (decl_or_type_attrs): Add error_mark_node check.
   2042 
   2043 2022-03-16  Patrick Palka  <ppalka (a] redhat.com>
   2044 
   2045 	PR c++/96780
   2046 	* c.opt: Add -ffold-simple-inlines.
   2047 
   2048 2022-03-13  Tobias Burnus  <tobias (a] codesourcery.com>
   2049 
   2050 	* c-target.def (check_string_object_format_arg): Fix description typo.
   2051 
   2052 2022-03-12  Thomas Schwinge  <thomas (a] codesourcery.com>
   2053 
   2054 	PR other/65095
   2055 	* c-common.h (c_omp_map_clause_name): Remove.
   2056 	* c-omp.cc (c_omp_map_clause_name): Remove.
   2057 
   2058 2022-03-09  Jakub Jelinek  <jakub (a] redhat.com>
   2059 
   2060 	PR c/104711
   2061 	* c-opts.cc (c_common_post_options): Don't enable
   2062 	-Wshift-negative-value from -Wextra for C++20 or later.
   2063 	* c-ubsan.cc (ubsan_instrument_shift): Adjust comments.
   2064 	* c-warn.cc (maybe_warn_shift_overflow): Use TYPE_OVERFLOW_WRAPS
   2065 	instead of TYPE_UNSIGNED.
   2066 
   2067 2022-03-07  Jakub Jelinek  <jakub (a] redhat.com>
   2068 
   2069 	* c-attribs.cc: Fix up duplicated word issue in a comment.
   2070 
   2071 2022-03-01  Martin Liska  <mliska (a] suse.cz>
   2072 
   2073 	PR ipa/104533
   2074 	* c-attribs.cc (handle_target_clones_attribute): Use
   2075 	get_target_clone_attr_len and report warning soon.
   2076 
   2077 2022-02-17  Jonathan Wakely  <jwakely (a] redhat.com>
   2078 
   2079 	* c-pragma.cc (handle_pragma_pack): Remove parameter name.
   2080 	(handle_pragma_weak): Likewise.
   2081 	(handle_pragma_scalar_storage_order): Likewise.
   2082 	(handle_pragma_redefine_extname): Likewise.
   2083 	(handle_pragma_visibility): Likewise.
   2084 	(handle_pragma_diagnostic): Likewise.
   2085 	(handle_pragma_target): Likewise.
   2086 	(handle_pragma_optimize): Likewise.
   2087 	(handle_pragma_push_options): Likewise.
   2088 	(handle_pragma_pop_options): Likewise.
   2089 	(handle_pragma_reset_options): Likewise.
   2090 	(handle_pragma_message): Likewise.
   2091 	(handle_pragma_float_const_decimal64): Likewise.
   2092 
   2093 2022-02-16  Jakub Jelinek  <jakub (a] redhat.com>
   2094 
   2095 	PR c/104531
   2096 	* c-omp.cc (c_finish_omp_atomic): For MIN_EXPR/MAX_EXPR, try first
   2097 	build_binary_op with LT_EXPR and only if that doesn't return
   2098 	error_mark_node call build_modify_expr.
   2099 
   2100 2022-02-16  Jakub Jelinek  <jakub (a] redhat.com>
   2101 
   2102 	PR c/104510
   2103 	* c-common.cc (shorten_compare): Convert original arguments to
   2104 	the original *restype_ptr when mixing binary and decimal float.
   2105 
   2106 2022-02-14  Richard Biener  <rguenther (a] suse.de>
   2107 
   2108 	PR c/104505
   2109 	* c-pretty-print.cc (c_pretty_printer::postfix_expression): Handle
   2110 	internal function calls.
   2111 
   2112 2022-02-11  Richard Biener  <rguenther (a] suse.de>
   2113 
   2114 	* c-attribs.cc (c_common_attribute_table): Add entry for
   2115 	vector_mask.
   2116 	(handle_vector_mask_attribute): New.
   2117 
   2118 2022-02-10  Marcel Vollweiler  <marcel (a] codesourcery.com>
   2119 
   2120 	* c-omp.cc (c_omp_split_clauses): Added OMP_CLAUSE_HAS_DEVICE_ADDR case.
   2121 	* c-pragma.h (enum pragma_kind): Added 5.1 in comment.
   2122 	(enum pragma_omp_clause): Added PRAGMA_OMP_CLAUSE_HAS_DEVICE_ADDR.
   2123 
   2124 2022-02-09  Jason Merrill  <jason (a] redhat.com>
   2125 
   2126 	* c-cppbuiltin.cc (c_cpp_builtins): Update values
   2127 	of __cpp_constexpr and __cpp_concepts for C++20.
   2128 
   2129 2022-01-24  Marek Polacek  <polacek (a] redhat.com>
   2130 
   2131 	PR preprocessor/104030
   2132 	* c.opt (Wbidi-chars): Mark as EnumSet.  Also accept =ucn.
   2133 
   2134 2022-01-21  Jakub Jelinek  <jakub (a] redhat.com>
   2135 
   2136 	PR c++/104148
   2137 	* c-common.h (check_function_arguments_recurse): Add for_format
   2138 	arg.
   2139 	* c-common.cc (check_function_nonnull): Pass false to
   2140 	check_function_arguments_recurse's last argument.
   2141 	(check_function_arguments_recurse): Add for_format argument,
   2142 	if true, don't stop on warning_suppressed_p.
   2143 	* c-format.cc (check_format_info): Pass true to
   2144 	check_function_arguments_recurse's last argument.
   2145 
   2146 2022-01-19  David Malcolm  <dmalcolm (a] redhat.com>
   2147 
   2148 	* c-common.cc (c_common_c_tests): Rename to...
   2149 	(c_common_cc_tests): ...this.
   2150 	(c_family_tests): Update calls for .c to .cc renaming.
   2151 	* c-common.h (c_format_c_tests): Rename to...
   2152 	(c_format_cc_tests): ...this.
   2153 	(c_indentation_c_tests): Rename to...
   2154 	(c_indentation_cc_tests): ...this.
   2155 	(c_pretty_print_c_tests): Rename to...
   2156 	(c_pretty_print_cc_tests): ...this.
   2157 	* c-format.cc (c_format_c_tests): Rename to...
   2158 	(c_format_cc_tests): ...this.
   2159 	* c-indentation.cc (c_indentation_c_tests): Rename to...
   2160 	(c_indentation_cc_tests): ...this.
   2161 	* c-pretty-print.cc (c_pretty_print_c_tests): Rename to...
   2162 	(c_pretty_print_cc_tests): ...this.
   2163 
   2164 2022-01-17  Martin Liska  <mliska (a] suse.cz>
   2165 
   2166 	* c-ada-spec.cc: Rename .c names to .cc.
   2167 	* c-ada-spec.h: Likewise.
   2168 	* c-common.cc (c_build_vec_convert): Likewise.
   2169 	(warning_candidate_p): Likewise.
   2170 	* c-common.h (enum rid): Likewise.
   2171 	(build_real_imag_expr): Likewise.
   2172 	(finish_label_address_expr): Likewise.
   2173 	(c_get_substring_location): Likewise.
   2174 	(c_build_bind_expr): Likewise.
   2175 	(conflict_marker_get_final_tok_kind): Likewise.
   2176 	(c_parse_error): Likewise.
   2177 	(check_missing_format_attribute): Likewise.
   2178 	(invalid_array_size_error): Likewise.
   2179 	(warn_for_multistatement_macros): Likewise.
   2180 	(build_attr_access_from_parms): Likewise.
   2181 	* c-cppbuiltin.cc (c_cpp_builtins): Likewise.
   2182 	* c-format.cc: Likewise.
   2183 	* c-gimplify.cc (c_gimplify_expr): Likewise.
   2184 	* c-indentation.h: Likewise.
   2185 	* c-objc.h (objc_prop_attr_kind_for_rid): Likewise.
   2186 	* c-omp.cc (c_omp_predetermined_mapping): Likewise.
   2187 	* c-opts.cc (c_common_post_options): Likewise.
   2188 	(set_std_cxx23): Likewise.
   2189 	* c-pragma.cc (handle_pragma_redefine_extname): Likewise.
   2190 	* c-pretty-print.h: Likewise.
   2191 
   2192 2022-01-17  Martin Liska  <mliska (a] suse.cz>
   2193 
   2194 	* c-ada-spec.c: Moved to...
   2195 	* c-ada-spec.cc: ...here.
   2196 	* c-attribs.c: Moved to...
   2197 	* c-attribs.cc: ...here.
   2198 	* c-common.c: Moved to...
   2199 	* c-common.cc: ...here.
   2200 	* c-cppbuiltin.c: Moved to...
   2201 	* c-cppbuiltin.cc: ...here.
   2202 	* c-dump.c: Moved to...
   2203 	* c-dump.cc: ...here.
   2204 	* c-format.c: Moved to...
   2205 	* c-format.cc: ...here.
   2206 	* c-gimplify.c: Moved to...
   2207 	* c-gimplify.cc: ...here.
   2208 	* c-indentation.c: Moved to...
   2209 	* c-indentation.cc: ...here.
   2210 	* c-lex.c: Moved to...
   2211 	* c-lex.cc: ...here.
   2212 	* c-omp.c: Moved to...
   2213 	* c-omp.cc: ...here.
   2214 	* c-opts.c: Moved to...
   2215 	* c-opts.cc: ...here.
   2216 	* c-pch.c: Moved to...
   2217 	* c-pch.cc: ...here.
   2218 	* c-ppoutput.c: Moved to...
   2219 	* c-ppoutput.cc: ...here.
   2220 	* c-pragma.c: Moved to...
   2221 	* c-pragma.cc: ...here.
   2222 	* c-pretty-print.c: Moved to...
   2223 	* c-pretty-print.cc: ...here.
   2224 	* c-semantics.c: Moved to...
   2225 	* c-semantics.cc: ...here.
   2226 	* c-ubsan.c: Moved to...
   2227 	* c-ubsan.cc: ...here.
   2228 	* c-warn.c: Moved to...
   2229 	* c-warn.cc: ...here.
   2230 	* cppspec.c: Moved to...
   2231 	* cppspec.cc: ...here.
   2232 	* stub-objc.c: Moved to...
   2233 	* stub-objc.cc: ...here.
   2234 
   2235 2022-01-15  Martin Sebor  <msebor (a] redhat.com>
   2236 
   2237 	PR c/63272
   2238 	* c.opt (-Wdangling-pointer): New option.
   2239 
   2240 2022-01-15  Martin Sebor  <msebor (a] redhat.com>
   2241 
   2242 	PR tree-optimization/80532
   2243 	* c.opt (-Wuse-after-free): New options.
   2244 
   2245 2022-01-14  David Malcolm  <dmalcolm (a] redhat.com>
   2246 
   2247 	* c-attribs.c (c_common_attribute_table): Add "tainted_args".
   2248 	(handle_tainted_args_attribute): New.
   2249 
   2250 2022-01-13  Anthony Sharp  <anthonysharp15 (a] gmail.com>
   2251 	    Jason Merrill  <jason (a] redhat.com>
   2252 
   2253 	PR c++/70417
   2254 	* c.opt: Added -Wmissing-template-keyword.
   2255 
   2256 2022-01-13  Richard Biener  <rguenther (a] suse.de>
   2257 
   2258 	PR c/104002
   2259 	* c-common.c (c_common_mark_addressable_vec): Handle TARGET_EXPR.
   2260 
   2261 2022-01-12  Martin Liska  <mliska (a] suse.cz>
   2262 
   2263 	PR target/103804
   2264 	* c-attribs.c (handle_optimize_attribute): Do not call
   2265 	cl_optimization_compare if we seen an error.
   2266 
   2267 2022-01-11  Jakub Jelinek  <jakub (a] redhat.com>
   2268 
   2269 	PR c/101537
   2270 	PR c/103881
   2271 	* c-warn.c (conversion_warning): Handle BIT_AND_EXPR, BIT_IOR_EXPR
   2272 	and BIT_XOR_EXPR.
   2273 
   2274 2022-01-10  Richard Biener  <rguenther (a] suse.de>
   2275 
   2276 	PR middle-end/101530
   2277 	* c-common.c (c_build_shufflevector): Wrap the BIT_FIELD_REF
   2278 	in a TARGET_EXPR to force a temporary.
   2279 
   2280 2022-01-06  Marek Polacek  <polacek (a] redhat.com>
   2281 
   2282 	PR c++/103758
   2283 	* c-pragma.c (handle_pragma_scalar_storage_order): Use %< %> in
   2284 	diagnostic messages.
   2285 	(handle_pragma_diagnostic): Likewise.
   2286 
   2287 2022-01-03  Marek Polacek  <polacek (a] redhat.com>
   2288 
   2289 	PR c++/103758
   2290 	* c-format.c (check_tokens): Accept "decl-specifier*".
   2291 
   2292 2022-01-03  Jakub Jelinek  <jakub (a] redhat.com>
   2293 
   2294 	PR c++/103600
   2295 	* c-attribs.c (handle_non_overlapping_attribute): New function.
   2296 	(c_common_attribute_table): Add "non overlapping" attribute.
   2297 
   2298 2021-12-30  Jakub Jelinek  <jakub (a] redhat.com>
   2299 
   2300 	PR c++/103012
   2301 	* c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Perform
   2302 	cpp_define_unused/cpp_undef calls with forced token locations
   2303 	BUILTINS_LOCATION.
   2304 
   2305 2021-12-27  Patrick Palka  <ppalka (a] redhat.com>
   2306 
   2307 	PR c++/103700
   2308 	* c-common.c (pointer_int_sum): When quiet, return
   2309 	error_mark_node for an incomplete pointed-to type and don't
   2310 	call size_in_bytes_loc.
   2311 
   2312 2021-12-17  Jason Merrill  <jason (a] redhat.com>
   2313 
   2314 	PR c++/103681
   2315 	* c-opts.c (c_common_post_options): Update defaults.
   2316 
   2317 2021-12-16  Martin Liska  <mliska (a] suse.cz>
   2318 
   2319 	PR target/103709
   2320 	* c-pragma.c (handle_pragma_pop_options): Do not check
   2321 	global options modification when an error is seen in parsing
   2322 	of options (pragmas or attributes).
   2323 
   2324 2021-12-12  Jonathan Wakely  <jwakely (a] redhat.com>
   2325 
   2326 	* known-headers.cc: Define INCLUDE_MEMORY instead of
   2327 	INCLUDE_UNIQUE_PTR.
   2328 	* name-hint.h: Likewise.
   2329 	(class name_hint): Use std::unique_ptr instead of gnu::unique_ptr.
   2330 
   2331 2021-12-09  Jakub Jelinek  <jakub (a] redhat.com>
   2332 
   2333 	PR pch/71934
   2334 	* c-pch.c (c_common_no_more_pch): Pass a temporary void * var
   2335 	with NULL value instead of NULL to host_hooks.gt_pch_use_address.
   2336 
   2337 2021-12-03  Jakub Jelinek  <jakub (a] redhat.com>
   2338 
   2339 	PR pch/71934
   2340 	* c-pch.c (struct c_pch_validity): Remove pch_init member.
   2341 	(pch_init): Don't initialize v.pch_init.
   2342 	(c_common_valid_pch): Don't warn and punt if .text addresses change.
   2343 
   2344 2021-12-01  Jason Merrill  <jason (a] redhat.com>
   2345 
   2346 	PR c++/103310
   2347 	* c.opt: Add -fconstexpr-fp-except.
   2348 
   2349 2021-11-29  Richard Biener  <rguenther (a] suse.de>
   2350 
   2351 	* c-format.c (check_format_string): Remove spurious
   2352 	gcc_unreachable.
   2353 
   2354 2021-11-29  Richard Biener  <rguenther (a] suse.de>
   2355 
   2356 	* c-opts.c (c_common_post_options): Remove unreachable return.
   2357 	* c-pragma.c (handle_pragma_target): Likewise.
   2358 	(handle_pragma_optimize): Likewise.
   2359 
   2360 2021-11-25  Jakub Jelinek  <jakub (a] redhat.com>
   2361 
   2362 	PR c++/102611
   2363 	* c-opts.c (c_common_post_options): Enable -Wcomma-subscript by
   2364 	default for C++23 regardless of warn_deprecated.
   2365 	* c-cppbuiltin.c (c_cpp_builtins): Predefine
   2366 	__cpp_multidimensional_subscript=202110L for C++23.
   2367 
   2368 2021-11-23  Martin Sebor  <msebor (a] redhat.com>
   2369 
   2370 	PR middle-end/88232
   2371 	* c.opt: Add -Winfinite-recursion.
   2372 
   2373 2021-11-19  Martin Sebor  <msebor (a] redhat.com>
   2374 
   2375 	PR c++/33925
   2376 	PR c/102867
   2377 	* c-common.c (decl_with_nonnull_addr_p): Call maybe_nonzero_address
   2378 	and improve handling tof defined symbols.
   2379 
   2380 2021-11-19  Martin Liska  <mliska (a] suse.cz>
   2381 
   2382 	Revert:
   2383 	2021-11-18  Martin Liska  <mliska (a] suse.cz>
   2384 
   2385 	* c-gimplify.c (genericize_c_loop): Use option directly.
   2386 
   2387 2021-11-18  Matthias Kretz  <m.kretz (a] gsi.de>
   2388 
   2389 	* c-common.c (c_common_reswords): Add __builtin_assoc_barrier.
   2390 	* c-common.h (enum rid): Add RID_BUILTIN_ASSOC_BARRIER.
   2391 
   2392 2021-11-18  Martin Liska  <mliska (a] suse.cz>
   2393 
   2394 	* c-gimplify.c (genericize_c_loop): Use option directly.
   2395 
   2396 2021-11-17  Martin Uecker  <uecker (a] gcc.gnu.org>
   2397 
   2398 	PR c/91038
   2399 	PR c/29970
   2400 	* c-common.c (pointer_int_sum): Make sure pointer expressions
   2401 	are evaluated first when the size expression depends on for
   2402 	variably-modified types.
   2403 
   2404 2021-11-17  Marek Polacek  <polacek (a] redhat.com>
   2405 
   2406 	PR preprocessor/103026
   2407 	* c.opt (Wbidi-chars, Wbidi-chars=): New option.
   2408 
   2409 2021-11-16  Jason Merrill  <jason (a] redhat.com>
   2410 
   2411 	* c-common.c (release_tree_vector): Only cache vecs smaller than
   2412 	16 elements.
   2413 
   2414 2021-11-15  Jason Merrill  <jason (a] redhat.com>
   2415 
   2416 	* c.opt: Add -fimplicit-constexpr.
   2417 	* c-cppbuiltin.c: Define __cpp_implicit_constexpr.
   2418 	* c-opts.c (c_common_post_options): Disable below C++14.
   2419 
   2420 2021-11-15  Jakub Jelinek  <jakub (a] redhat.com>
   2421 
   2422 	* c-omp.c (c_omp_split_clauses) <case OMP_CLAUSE_THREAD_LIMIT>:
   2423 	Duplicate to both OMP_TARGET and OMP_TEAMS.
   2424 
   2425 2021-11-10  Marek Polacek  <polacek (a] redhat.com>
   2426 
   2427 	PR c++/101940
   2428 	* c-pragma.c (handle_pragma_diagnostic): Handle #pragma GCC diagnostic
   2429 	ignored_attributes.
   2430 
   2431 2021-11-09  David Malcolm  <dmalcolm (a] redhat.com>
   2432 
   2433 	* c-pragma.c (GCC_BAD_AT): New macro.
   2434 	(GCC_BAD2_AT): New macro.
   2435 	(handle_pragma_pack): Use the location of the pertinent token when
   2436 	issuing diagnostics about invalid constants/actions, and trailing
   2437 	junk.
   2438 	(handle_pragma_target): Likewise for non-string "GCC option".
   2439 	(handle_pragma_message): Likewise for trailing junk.
   2440 
   2441 2021-11-03  Joseph Myers  <joseph (a] codesourcery.com>
   2442 
   2443 	PR c/103031
   2444 	* c-common.c (convert_and_check): Add argument init_const.  Call
   2445 	convert_init if init_const.
   2446 	* c-common.h (convert_and_check): Update prototype.
   2447 	(convert_init): New prototype.
   2448 
   2449 2021-11-01  David Malcolm  <dmalcolm (a] redhat.com>
   2450 
   2451 	* c-lex.c (c_lex_with_flags): When complaining about non-printable
   2452 	CPP_OTHER tokens, set the "escape on output" flag.
   2453 
   2454 2021-10-27  Jakub Jelinek  <jakub (a] redhat.com>
   2455 
   2456 	* c-omp.c (c_omp_check_loop_iv_r): Don't clear 3rd bit for
   2457 	POINTER_PLUS_EXPR.
   2458 	(c_omp_check_nonrect_loop_iv): Handle POINTER_PLUS_EXPR.
   2459 	(c_omp_check_loop_iv): Set kind even if the iterator is non-integral.
   2460 
   2461 2021-10-27  Jakub Jelinek  <jakub (a] redhat.com>
   2462 
   2463 	PR c++/102854
   2464 	* c-common.h (c_omp_check_loop_iv_exprs): Add enum tree_code argument.
   2465 	* c-omp.c (c_omp_check_loop_iv_r): For trees other than decls,
   2466 	TREE_VEC, PLUS_EXPR, MINUS_EXPR, MULT_EXPR, POINTER_PLUS_EXPR or
   2467 	conversions temporarily clear the 3rd bit from d->kind while walking
   2468 	subtrees.
   2469 	(c_omp_check_loop_iv_exprs): Add CODE argument.  Or in 4 into data.kind
   2470 	if possibly non-rectangular.
   2471 
   2472 2021-10-21  Jakub Jelinek  <jakub (a] redhat.com>
   2473 
   2474 	PR middle-end/64888
   2475 	* c-omp.c (c_omp_predefined_variable): Return true also for
   2476 	ubsan_create_data created artificial variables.
   2477 
   2478 2021-10-14  Joseph Myers  <joseph (a] codesourcery.com>
   2479 
   2480 	* c-format.c (printf_length_specs, scanf_length_specs)
   2481 	(print_char_table, scan_char_table): Support DFP formats for C2X.
   2482 	* c-format.h (TEX_D32, TEX_D64, TEX_D128): Remove.
   2483 	(T2X_D32, T2X_D64, T2X_D128): New macros.
   2484 
   2485 2021-10-14  Kwok Cheung Yeung  <kcy (a] codesourcery.com>
   2486 
   2487 	* c-omp.c (c_omp_check_context_selector): Rename to
   2488 	omp_check_context_selector and move to omp-general.c.
   2489 	(c_omp_mark_declare_variant): Rename to omp_mark_declare_variant and
   2490 	move to omp-general.c.
   2491 
   2492 2021-10-12  Joseph Myers  <joseph (a] codesourcery.com>
   2493 
   2494 	* c-format.c (print_char_table): Add %b and %B formats.
   2495 	(scan_char_table): Add %b format.
   2496 	* c-format.h (T2X_UI, T2X_UL, T2X_ULL, T2X_US, T2X_UC, T2X_ST)
   2497 	(T2X_UPD, T2X_UIM): New macros.
   2498 
   2499 2021-10-12  Jakub Jelinek  <jakub (a] redhat.com>
   2500 
   2501 	* c-omp.c (c_finish_omp_atomic): Use
   2502 	clear_padding_type_may_have_padding_p.
   2503 
   2504 2021-10-08  Martin Liska  <mliska (a] suse.cz>
   2505 
   2506 	* c-opts.c (c_common_post_options): Use new macro
   2507 	OPTION_SET_P.
   2508 
   2509 2021-10-07  Martin Liska  <mliska (a] suse.cz>
   2510 
   2511 	* c-common.c (parse_optimize_options): Make
   2512 	save_opt_decoded_options a pointer type.
   2513 
   2514 2021-10-06  Jakub Jelinek  <jakub (a] redhat.com>
   2515 
   2516 	PR tree-optimization/102571
   2517 	* c-omp.c (c_finish_omp_atomic): Optimize the case where type has
   2518 	padding, but the non-padding bits are contiguous set of bytes
   2519 	by adjusting the memcmp call arguments instead of emitting
   2520 	__builtin_clear_padding and then comparing all the type's bytes.
   2521 
   2522 2021-10-06  Jakub Jelinek  <jakub (a] redhat.com>
   2523 
   2524 	PR c++/102612
   2525 	* c-cppbuiltin.c (c_cpp_builtins): For -std=c++23 predefine
   2526 	__cpp_constexpr to 202110L rather than 201907L.
   2527 
   2528 2021-10-04  Marek Polacek  <polacek (a] redhat.com>
   2529 
   2530 	PR c++/97573
   2531 	* c-common.h (do_warn_array_compare): Declare.
   2532 	* c-warn.c (do_warn_array_compare): New.
   2533 	* c.opt (Warray-compare): New option.
   2534 
   2535 2021-10-02  Iain Sandoe  <iain (a] sandoe.co.uk>
   2536 
   2537 	* c-format.c: Remove a test of TARGET_FORMAT_TYPES with
   2538 	NULL, this is not needed.
   2539 
   2540 2021-10-01  Martin Sebor  <msebor (a] redhat.com>
   2541 
   2542 	PR c/102103
   2543 	* c-common.c (decl_with_nonnull_addr_p): Handle members.
   2544 	Check and perform warning suppression.
   2545 	(c_common_truthvalue_conversion): Enhance warning suppression.
   2546 
   2547 2021-10-01  Martin Liska  <mliska (a] suse.cz>
   2548 
   2549 	PR target/102552
   2550 	* c-common.c (parse_optimize_options): decoded_options[0] is
   2551 	used for program name, so merged_decoded_options should also
   2552 	respect that.
   2553 
   2554 2021-10-01  Jakub Jelinek  <jakub (a] redhat.com>
   2555 	    Richard Biener  <rguenther (a] suse.de>
   2556 
   2557 	PR sanitizer/102515
   2558 	* c-ubsan.c (ubsan_instrument_division): Check the right
   2559 	flag_sanitize_recover bit, depending on which sanitization
   2560 	is done.  Sanitize INT_MIN / -1 under SANITIZE_SI_OVERFLOW
   2561 	rather than SANITIZE_DIVIDE.  If both SANITIZE_SI_OVERFLOW
   2562 	and SANITIZE_DIVIDE is enabled, neither check is known
   2563 	to be false and flag_sanitize_recover bits for those two
   2564 	aren't the same, emit both __ubsan_handle_divrem_overflow
   2565 	and __ubsan_handle_divrem_overflow_abort calls.
   2566 
   2567 2021-10-01  Martin Liska  <mliska (a] suse.cz>
   2568 
   2569 	* c-common.c (parse_optimize_options): Combine optimize
   2570 	options with what was provided on the command line.
   2571 
   2572 2021-10-01  Jakub Jelinek  <jakub (a] redhat.com>
   2573 
   2574 	* c-omp.c (c_omp_split_clauses): Also copy
   2575 	OMP_CLAUSE_ORDER_REPRODUCIBLE.
   2576 
   2577 2021-09-27  Martin Liska  <mliska (a] suse.cz>
   2578 
   2579 	* c-opts.c (c_common_init_options_struct): Set also
   2580 	x_flag_default_complex_method.
   2581 
   2582 2021-09-22  Jakub Jelinek  <jakub (a] redhat.com>
   2583 
   2584 	* c-omp.c (c_omp_split_clauses): Copy over OMP_CLAUSE_ALLOCATE_ALIGN.
   2585 
   2586 2021-09-20  Matthias Kretz  <m.kretz (a] gsi.de>
   2587 
   2588 	* c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Define or
   2589 	undefine __RECIPROCAL_MATH__, __NO_SIGNED_ZEROS__,
   2590 	__NO_TRAPPING_MATH__, __ASSOCIATIVE_MATH__, and
   2591 	__ROUNDING_MATH__ according to the new optimization flags.
   2592 
   2593 2021-09-18  Jakub Jelinek  <jakub (a] redhat.com>
   2594 
   2595 	* c-omp.c (c_omp_split_clauses): Split order clause also to
   2596 	distribute construct.  Copy over OMP_CLAUSE_ORDER_UNCONSTRAINED.
   2597 
   2598 2021-09-17  Jakub Jelinek  <jakub (a] redhat.com>
   2599 
   2600 	* c-omp.c (c_finish_omp_atomic): Avoid creating
   2601 	TARGET_EXPR if test is true, use create_tmp_var_raw instead of
   2602 	create_tmp_var and add a zero initializer to TARGET_EXPRs that
   2603 	had NULL initializer.  When omitting operands after v = x,
   2604 	use type of v rather than type of x.  Fix type of vtmp
   2605 	TARGET_EXPR.
   2606 
   2607 2021-09-13  Jason Merrill  <jason (a] redhat.com>
   2608 
   2609 	* c.opt: Add -Winterference-size.
   2610 	* c-cppbuiltin.c (cpp_atomic_builtins): Add __GCC_DESTRUCTIVE_SIZE
   2611 	and __GCC_CONSTRUCTIVE_SIZE.
   2612 
   2613 2021-09-10  Jakub Jelinek  <jakub (a] redhat.com>
   2614 
   2615 	* c-common.h (c_finish_omp_atomic): Add r and weak arguments.
   2616 	* c-omp.c: Include gimple-fold.h.
   2617 	(c_finish_omp_atomic): Add r and weak arguments.  Add support for
   2618 	OpenMP 5.1 atomics.
   2619 
   2620 2021-09-09  qing zhao  <qing.zhao (a] oracle.com>
   2621 
   2622 	* c-attribs.c (handle_uninitialized_attribute): New function.
   2623 	(c_common_attribute_table): Add "uninitialized" attribute.
   2624 
   2625 2021-09-08  liuhongt  <hongtao.liu (a] intel.com>
   2626 
   2627 	* c-common.c (excess_precision_mode_join): Update below comments.
   2628 	(c_ts18661_flt_eval_method): Set excess_precision_type to
   2629 	EXCESS_PRECISION_TYPE_FLOAT16 when -fexcess-precision=16.
   2630 	* c-cppbuiltin.c (cpp_atomic_builtins): Update below comments.
   2631 	(c_cpp_flt_eval_method_iec_559): Set excess_precision_type to
   2632 	EXCESS_PRECISION_TYPE_FLOAT16 when -fexcess-precision=16.
   2633 
   2634 2021-09-07  Marcel Vollweiler  <marcel (a] codesourcery.com>
   2635 
   2636 	* c-omp.c (c_finish_omp_flush): Handle MEMMODEL_SEQ_CST.
   2637 
   2638 2021-09-03  Eric Botcazou  <ebotcazou (a] adacore.com>
   2639 
   2640 	* c-ada-spec.c (dump_ads): Generate pragmas to disable style checks
   2641 	and -gnatwu warning for the package specification.
   2642 
   2643 2021-09-01  Iain Sandoe  <iain (a] sandoe.co.uk>
   2644 
   2645 	* c-attribs.c (handle_unavailable_attribute): New.
   2646 
   2647 2021-08-30  Jason Merrill  <jason (a] redhat.com>
   2648 
   2649 	* c.opt: Add -Wmissing-requires.
   2650 
   2651 2021-08-25  Lewis Hyatt  <lhyatt (a] gmail.com>
   2652 
   2653 	PR other/93067
   2654 	* c-opts.c (c_common_input_charset_cb): New function.
   2655 	(c_common_post_options): Call new function
   2656 	diagnostic_initialize_input_context().
   2657 
   2658 2021-08-20  Tobias Burnus  <tobias (a] codesourcery.com>
   2659 
   2660 	* c-format.c (gcc_gfc_length_specs): Add 'll' and 'w'.
   2661 	(gcc_gfc_char_table): Add T9L_LL and T9L_ULL to
   2662 	"di" and "u", respecitively; fill with BADLEN to match
   2663 	size of 'types'.
   2664 	(get_init_dynamic_hwi): Split off from ...
   2665 	(init_dynamic_diag_info): ... here. Call it.
   2666 	(init_dynamic_gfc_info): Call it.
   2667 
   2668 2021-08-20  Jakub Jelinek  <jakub (a] redhat.com>
   2669 
   2670 	* c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_ERROR.
   2671 	* c-pragma.c (omp_pragmas): Add error directive.
   2672 	* c-omp.c (omp_directives): Uncomment error directive entry.
   2673 
   2674 2021-08-18  Jakub Jelinek  <jakub (a] redhat.com>
   2675 
   2676 	* c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_NOTHING.
   2677 	* c-pragma.c (omp_pragmas): Add nothing directive.
   2678 	* c-omp.c (omp_directives): Uncomment nothing directive entry.
   2679 
   2680 2021-08-17  Jakub Jelinek  <jakub (a] redhat.com>
   2681 
   2682 	PR c++/101539
   2683 	* c-common.h (enum rid): Add RID_IS_LAYOUT_COMPATIBLE.
   2684 	* c-common.c (c_common_reswords): Add __is_layout_compatible.
   2685 
   2686 2021-08-17  Matt Jacobson  <mhjacobson (a] me.com>
   2687 
   2688 	* c-opts.c (c_common_post_options): Default to
   2689 	flag_objc_sjlj_exceptions = 1 only when flag_objc_abi < 2.
   2690 
   2691 2021-08-17  Jakub Jelinek  <jakub (a] redhat.com>
   2692 
   2693 	* c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_SCOPE.
   2694 	* c-pragma.c (omp_pragmas): Add scope construct.
   2695 	* c-omp.c (omp_directives): Uncomment scope directive entry.
   2696 
   2697 2021-08-16  Sebastian Huber  <sebastian.huber (a] embedded-brains.de>
   2698 
   2699 	* c-cppbuiltin.c (c_cpp_builtins): Define
   2700 	__LIBGCC_GCOV_TYPE_SIZE if flag_building_libgcc is true.
   2701 
   2702 2021-08-12  Jakub Jelinek  <jakub (a] redhat.com>
   2703 
   2704 	* c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_MASKED.
   2705 	(enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FILTER.
   2706 	* c-pragma.c (omp_pragmas_simd): Add masked construct.
   2707 	* c-common.h (enum c_omp_clause_split): Add C_OMP_CLAUSE_SPLIT_MASKED
   2708 	enumerator.
   2709 	(c_finish_omp_masked): Declare.
   2710 	* c-omp.c (c_finish_omp_masked): New function.
   2711 	(c_omp_split_clauses): Handle combined masked constructs.
   2712 
   2713 2021-07-30  Jakub Jelinek  <jakub (a] redhat.com>
   2714 
   2715 	PR c++/101539
   2716 	* c-common.h (enum rid): Add RID_IS_POINTER_INTERCONVERTIBLE_BASE_OF.
   2717 	* c-common.c (c_common_reswords): Add
   2718 	__is_pointer_interconvertible_base_of.
   2719 
   2720 2021-07-29  Richard Biener  <rguenther (a] suse.de>
   2721 
   2722 	PR c/101512
   2723 	* c-common.c (c_common_mark_addressable_vec): Look through
   2724 	C_MAYBE_CONST_EXPR even if not at the toplevel.
   2725 
   2726 2021-07-27  Martin Sebor  <msebor (a] redhat.com>
   2727 
   2728 	PR c/101585
   2729 	* c-warn.c (warn_parm_ptrarray_mismatch): Use OEP_DECL_NAME.
   2730 
   2731 2021-07-23  Jakub Jelinek  <jakub (a] redhat.com>
   2732 
   2733 	* c-lex.c (c_common_has_attribute): Call canonicalize_attr_name also
   2734 	on attr_id.  Return 1 for omp::directive or omp::sequence in C++11
   2735 	and later.
   2736 
   2737 2021-07-23  Jakub Jelinek  <jakub (a] redhat.com>
   2738 
   2739 	* c-pragma.h (enum pragma_kind): Add PRAGMA_OMP__START_ and
   2740 	PRAGMA_OMP__LAST_ enumerators.
   2741 
   2742 2021-07-21  Thomas Schwinge  <thomas (a] codesourcery.com>
   2743 	    Joseph Myers  <joseph (a] codesourcery.com>
   2744 	    Cesar Philippidis  <cesar (a] codesourcery.com>
   2745 
   2746 	* c-pragma.h (pragma_omp_clause): Add 'PRAGMA_OACC_CLAUSE_NOHOST'.
   2747 
   2748 2021-07-20  Martin Sebor  <msebor (a] redhat.com>
   2749 
   2750 	* c-common.c (c_build_shufflevector): Adjust by-value argument to
   2751 	by-const-reference.
   2752 	* c-common.h (c_build_shufflevector): Same.
   2753 
   2754 2021-07-16  Andrew Pinski  <apinski (a] marvell.com>
   2755 
   2756 	PR c/101453
   2757 	* c-common.c (parse_optimize_options): Use the correct
   2758 	size for buffer.
   2759 
   2760 2021-07-15  Martin Sebor  <msebor (a] redhat.com>
   2761 
   2762 	PR c/101289
   2763 	PR c/97548
   2764 	* c-warn.c (warn_parm_array_mismatch): Use OEP_DECL_NAME.
   2765 
   2766 2021-07-14  Jason Merrill  <jason (a] redhat.com>
   2767 
   2768 	* c-opts.c (c_common_post_options): Set -fdelete-dead-exceptions.
   2769 
   2770 2021-07-06  Martin Sebor  <msebor (a] redhat.com>
   2771 
   2772 	* c-format.c (gcc_tdiag_char_table): Remove support for %G and %K.
   2773 	(gcc_cdiag_char_table): Same.
   2774 	(gcc_cxxdiag_char_table): Same.
   2775 
   2776 2021-07-02  Jakub Jelinek  <jakub (a] redhat.com>
   2777 
   2778 	* c-common.h (enum c_omp_directive_kind): New enum.
   2779 	(struct c_omp_directive): New type.
   2780 	(c_omp_categorize_directive): Declare.
   2781 	* c-omp.c (omp_directives): New variable.
   2782 	(c_omp_categorize_directive): New function.
   2783 
   2784 2021-07-01  Eric Botcazou  <ebotcazou (a] adacore.com>
   2785 
   2786 	* c-ada-spec.c (packed_layout): New global variable.
   2787 	(dump_ada_declaration): Set it upon seeing a packed record type.
   2788 	Do not put the "aliased" keyword if it is set.
   2789 	(dump_ada_structure): Add Pack aspect if it is set and clear it.
   2790 
   2791 2021-07-01  Eric Botcazou  <ebotcazou (a] adacore.com>
   2792 
   2793 	* c-ada-spec.c (check_name): Rename into...
   2794 	(check_type_name_conflict): ...this.  Minor tweak.
   2795 	(dump_ada_function_declaration): Adjust to above renaming.
   2796 	(dump_ada_array_domains): Fix oversight.
   2797 	(dump_ada_declaration): Call check_type_name_conflict for variables.
   2798 
   2799 2021-06-25  Martin Sebor  <msebor (a] redhat.com>
   2800 
   2801 	* c-common.c (c_wrap_maybe_const): Remove TREE_NO_WARNING.
   2802 	(c_common_truthvalue_conversion): Replace direct uses of
   2803 	TREE_NO_WARNING with warning_suppressed_p, suppress_warning, and
   2804 	copy_no_warning.
   2805 	(check_function_arguments_recurse): Same.
   2806 	* c-gimplify.c (c_gimplify_expr): Same.
   2807 	* c-warn.c (overflow_warning): Same.
   2808 	(warn_logical_operator): Same.
   2809 	(warn_if_unused_value): Same.
   2810 	(do_warn_unused_parameter): Same.
   2811 
   2812 2021-06-24  Jakub Jelinek  <jakub (a] redhat.com>
   2813 
   2814 	* c-common.h (enum c_omp_region_type): Add C_ORT_TARGET and
   2815 	C_ORT_OMP_TARGET.
   2816 	* c-omp.c (c_omp_split_clauses): For OMP_CLAUSE_IN_REDUCTION on
   2817 	combined target constructs also add map (always, tofrom:) clause.
   2818 
   2819 2021-06-15  Robin Dapp  <rdapp (a] linux.ibm.com>
   2820 
   2821 	* c-attribs.c (common_handle_aligned_attribute): Remove short
   2822 	circuit and dead code.
   2823 
   2824 2021-06-14  Jonathan Wakely  <jwakely (a] redhat.com>
   2825 
   2826 	PR c++/101052
   2827 	* known-headers.cc (get_stdlib_header_for_name): Add known
   2828 	headers for EXIT_FAILURE, EXIT_SUCCESS, abort, atexit, calloc,
   2829 	exit, and getenv.
   2830 
   2831 2021-06-12  Jason Merrill  <jason (a] redhat.com>
   2832 
   2833 	* c-attribs.c (handle_unused_attribute): Handle FIELD_DECL.
   2834 
   2835 2021-06-11  Jakub Jelinek  <jakub (a] redhat.com>
   2836 
   2837 	PR c++/100974
   2838 	* c-cppbuiltin.c (c_cpp_builtins): Predefine __cpp_if_consteval for
   2839 	-std=c++2b for P1938R3 consteval if support.
   2840 
   2841 2021-06-09  Jason Merrill  <jason (a] redhat.com>
   2842 
   2843 	PR c++/100879
   2844 	* c-warn.c (warn_for_sign_compare): Remove C++ enum mismatch
   2845 	warning.
   2846 
   2847 2021-06-07  Martin Liska  <mliska (a] suse.cz>
   2848 
   2849 	* c-target.def: Split long lines and replace them
   2850 	with '\n\'.
   2851 
   2852 2021-06-04  Martin Sebor  <msebor (a] redhat.com>
   2853 
   2854 	PR c/100783
   2855 	* c-attribs.c (positional_argument): Bail on erroneous types.
   2856 
   2857 2021-06-04  Martin Sebor  <msebor (a] redhat.com>
   2858 
   2859 	* c-warn.c (warn_parm_array_mismatch): Check TREE_PURPOSE to test
   2860 	for element presence.
   2861 
   2862 2021-06-03  Eric Botcazou  <ebotcazou (a] adacore.com>
   2863 
   2864 	* c-ada-spec.c (dump_ada_macros): Minor tweaks.
   2865 	(dump_ada_decl_name): Likewise.
   2866 	(dump_anonymous_type_name): Remove parent parameter and adjust.
   2867 	(dump_sloc): Minor tweak.
   2868 	(dump_ada_array_type): Remove type parameter and adjust.
   2869 	(dump_ada_enum_type): Remove parent parameter and adjust.
   2870 	(dump_ada_node): Adjust calls to above functions.
   2871 	(dumped_anonymous_types): New global variable.
   2872 	(dump_nested_types_1): Rename into...
   2873 	(dump_nested_types): ...this.
   2874 	(dump_nested_type): Remove parent and dumped_types parameters.
   2875 	<ARRAY_TYPE>: Replace dumped_types with dumped_anonymous_types.
   2876 	Adjust calls to dump_anonymous_type_name and dump_ada_array_type.
   2877 	(dump_ada_specs): Initialize and free dumped_anonymous_types.
   2878 
   2879 2021-06-03  Eric Botcazou  <ebotcazou (a] adacore.com>
   2880 
   2881 	* c-ada-spec.c (pp_ada_tree_identifier): Tidy up.
   2882 	(dump_ada_node) <POINTER_TYPE>: Deal specially with external subtypes.
   2883 
   2884 2021-06-03  Eric Botcazou  <ebotcazou (a] adacore.com>
   2885 
   2886 	* c-ada-spec.c (dump_ada_enum_type): Dump a prefix for constants.
   2887 	(htable_t): New typedef.
   2888 	(overloaded_names): Use it.
   2889 	(add_name): New function.
   2890 	(init_overloaded_names): Use add_name to populate the table and add
   2891 	special cases for sigaction and stat.
   2892 	(overloaded_name_p): Rename into...
   2893 	(overloading_index): ...this.  Do not initialize overloaded_names table
   2894 	here.  Return the index or zero.
   2895 	(dump_ada_declaration): Minor tweaks.  Do not skip overloaded functions
   2896 	but add an overloading suffix instead.
   2897 	(dump_ada_specs): Initialize overloaded_names tables here.
   2898 
   2899 2021-06-01  Martin Liska  <mliska (a] suse.cz>
   2900 
   2901 	PR other/100759
   2902 	* c-attribs.c (handle_optimize_attribute): Limit sanity check
   2903 	to a situation where we are not in processing of an optimize
   2904 	pragma.
   2905 	* c-pragma.c (handle_pragma_pop_options): Restore target
   2906 	options.
   2907 
   2908 2021-05-31  Indu Bhagat  <indu.bhagat (a] oracle.com>
   2909 
   2910 	PR testsuite/100749
   2911 	* c-pch.c (c_common_valid_pch): Use xstrdup for debug format set names.
   2912 
   2913 2021-05-31  Richard Biener  <rguenther (a] suse.de>
   2914 
   2915 	PR c++/88601
   2916 	* c-common.c: Include tree-vector-builder.h and
   2917 	vec-perm-indices.h.
   2918 	(c_common_reswords): Add __builtin_shufflevector.
   2919 	(c_build_shufflevector): New funtion.
   2920 	* c-common.h (enum rid): Add RID_BUILTIN_SHUFFLEVECTOR.
   2921 	(c_build_shufflevector): Declare.
   2922 
   2923 2021-05-28  Jakub Jelinek  <jakub (a] redhat.com>
   2924 
   2925 	PR middle-end/99928
   2926 	* c-omp.c (c_omp_split_clauses): For reduction clause if combined with
   2927 	target add a map tofrom clause with OMP_CLAUSE_MAP_IMPLICIT.
   2928 
   2929 2021-05-28  Tobias Burnus  <tobias (a] codesourcery.com>
   2930 
   2931 	* c-pragma.h (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_AFFINITY.
   2932 
   2933 2021-05-25  Martin Liska  <mliska (a] suse.cz>
   2934 
   2935 	PR tree-optimization/92860
   2936 	PR target/99592
   2937 	* c-attribs.c (handle_optimize_attribute): Save target node
   2938 	before calling parse_optimize_options and save it in case
   2939 	it changes.
   2940 	* c-pragma.c (handle_pragma_target): Similarly for pragma.
   2941 	(handle_pragma_pop_options): Likewise here.
   2942 
   2943 2021-05-25  Martin Liska  <mliska (a] suse.cz>
   2944 
   2945 	* c-attribs.c (handle_no_sanitize_coverage_attribute): New.
   2946 
   2947 2021-05-25  Jakub Jelinek  <jakub (a] redhat.com>
   2948 
   2949 	PR middle-end/99928
   2950 	* c-omp.c (c_omp_split_clauses): Copy reduction to teams when teams is
   2951 	combined with simd and not with taskloop or for.
   2952 
   2953 2021-05-21  Jakub Jelinek  <jakub (a] redhat.com>
   2954 
   2955 	PR middle-end/99928
   2956 	* c-omp.c (c_omp_split_clauses): Set OMP_CLAUSE_FIRSTPRIVATE_IMPLICIT
   2957 	on firstprivate clause copy going to target construct, and for
   2958 	target simd set also OMP_CLAUSE_FIRSTPRIVATE_IMPLICIT_TARGET bit.
   2959 
   2960 2021-05-20  Jonathan Wakely  <jwakely (a] redhat.com>
   2961 
   2962 	* c.opt (Wc++11-extensions, Wc++14-extensions)
   2963 	(Wc++17-extensions, Wc++20-extensions, Wc++23-extensions): New
   2964 	options.
   2965 
   2966 2021-05-20  Indu Bhagat  <indu.bhagat (a] oracle.com>
   2967 
   2968 	* c-lex.c (init_c_lex): Use dwarf_debuginfo_p.
   2969 
   2970 2021-05-20  Indu Bhagat  <indu.bhagat (a] oracle.com>
   2971 
   2972 	* c-opts.c (c_common_post_options): Adjust access to debug_type_names.
   2973 	* c-pch.c (struct c_pch_validity): Use type uint32_t.
   2974 	(pch_init): Renamed member.
   2975 	(c_common_valid_pch): Adjust access to debug_type_names.
   2976 
   2977 2021-05-19  Martin Sebor  <msebor (a] redhat.com>
   2978 
   2979 	PR c/100619
   2980 	* c-attribs.c (build_attr_access_from_parms): Handle arbitrarily many
   2981 	bounds.
   2982 
   2983 2021-05-18  Richard Biener  <rguenther (a] suse.de>
   2984 
   2985 	PR c/100547
   2986 	* c-attribs.c (type_valid_for_vector_size): Reject too large nunits.
   2987 	Reword existing nunit diagnostic.
   2988 
   2989 2021-05-17  Joern Rennecke  <joern.rennecke (a] embecosm.com>
   2990 
   2991 	* c-common.c (braced_list_to_string): Return CTOR unchanged
   2992 	if host and target character sizes don't match.
   2993 
   2994 2021-05-14  Martin Liska  <mliska (a] suse.cz>
   2995 
   2996 	* c.opt: Add Warning keyword for 2 options.
   2997 
   2998 2021-05-13  Martin Liska  <mliska (a] suse.cz>
   2999 
   3000 	PR middle-end/100504
   3001 	* c-attribs.c (handle_target_clones_attribute): Expect a string
   3002 	argument to target_clone argument.
   3003 
   3004 2021-05-11  Joseph Myers  <joseph (a] codesourcery.com>
   3005 
   3006 	* c-lex.c (interpret_float): Handle digit separators for C2X.
   3007 
   3008 2021-05-10  Martin Liska  <mliska (a] suse.cz>
   3009 
   3010 	* c-ada-spec.c (print_destructor): Use startswith
   3011 	function instead of strncmp.
   3012 	(dump_ada_declaration): Likewise.
   3013 	* c-common.c (disable_builtin_function): Likewise.
   3014 	(def_builtin_1): Likewise.
   3015 	* c-format.c (check_tokens): Likewise.
   3016 	(check_plain): Likewise.
   3017 	(convert_format_name_to_system_name): Likewise.
   3018 
   3019 2021-04-28  Patrick McGehearty  <patrick.mcgehearty (a] oracle.com>
   3020 
   3021 	* c-cppbuiltin.c (c_cpp_builtins): Add supporting macros for new
   3022 	complex divide
   3023 
   3024 2021-04-26  Thomas Schwinge  <thomas (a] codesourcery.com>
   3025 	    Nathan Sidwell  <nathan (a] codesourcery.com>
   3026 	    Tom de Vries  <vries (a] codesourcery.com>
   3027 	    Julian Brown  <julian (a] codesourcery.com>
   3028 	    Kwok Cheung Yeung  <kcy (a] codesourcery.com>
   3029 
   3030 	* c.opt (Wopenacc-parallelism): New.
   3031 
   3032 2021-04-19  Thomas Schwinge  <thomas (a] codesourcery.com>
   3033 
   3034 	* c.opt (fopenacc-kernels=): Remove.
   3035 
   3036 2021-04-08  Jakub Jelinek  <jakub (a] redhat.com>
   3037 
   3038 	* c-warn.c (do_warn_double_promotion): Fix comment typo,
   3039 	occured -> occurred.
   3040 	(check_alignment_of_packed_member): Fix a comment typo,
   3041 	memeber -> member.
   3042 	(warn_parm_ptrarray_mismatch): Fix comment typos, os -> of
   3043 	and onless -> unless.
   3044 	(warn_parm_array_mismatch): Fix comment typos, declaratation
   3045 	-> declaration and woud -> would.  Fix up comment indentation.
   3046 
   3047 2021-04-08  Martin Sebor  <msebor (a] redhat.com>
   3048 
   3049 	PR middle-end/99883
   3050 	* c.opt (Wmismatched-new-delete): Correct spelling.
   3051 
   3052 2021-04-05  Eric Botcazou  <ebotcazou (a] adacore.com>
   3053 
   3054 	* c-ada-spec.c (is_simple_enum): Minor tweaks.
   3055 	(dump_ada_enum_type): Add TYPE and PARENT parameters.  For non-simple
   3056 	enumeral types use again the type name for the enumeration constants.
   3057 	(dump_ada_node): Adjust call to dump_ada_enum_type.
   3058 	(dump_nested_type): Likewise.
   3059 
   3060 2021-04-01  Jason Merrill  <jason (a] redhat.com>
   3061 
   3062 	PR c++/98481
   3063 	* c-opts.c (c_common_post_options): Bump latest_abi_version.
   3064 
   3065 2021-03-25  Jakub Jelinek  <jakub (a] redhat.com>
   3066 
   3067 	PR c++/99565
   3068 	* c-warn.c (do_warn_duplicated_branches): Pass also
   3069 	OEP_ADDRESS_OF_SAME_FIELD to operand_equal_p.
   3070 
   3071 2021-03-20  Jakub Jelinek  <jakub (a] redhat.com>
   3072 
   3073 	PR debug/99230
   3074 	* c-gimplify.c (c_genericize_control_stmt): Handle STATEMENT_LIST.
   3075 
   3076 2021-03-05  Eric Botcazou  <ebotcazou (a] adacore.com>
   3077 
   3078 	* c-ada-spec.c (dump_ada_declaration) <TYPE_DECL>: Dump nested types
   3079 	after entering the separate class package, if any.
   3080 
   3081 2021-03-04  Richard Biener  <rguenther (a] suse.de>
   3082 
   3083 	* c-pretty-print.c (c_pretty_printer::direct_abstract_declarator):
   3084 	Handle ERROR_MARK.
   3085 
   3086 2021-03-04  Jakub Jelinek  <jakub (a] redhat.com>
   3087 
   3088 	PR c/99325
   3089 	* c-ppoutput.c (print): Change src_line type from int to unsigned.
   3090 	(token_streamer::stream) Likewise.
   3091 	(maybe_print_line_1): Likewise.  Don't strcmp src_file if src_loc is
   3092 	UNKNOWN_LOCATION.
   3093 
   3094 2021-03-03  Jakub Jelinek  <jakub (a] redhat.com>
   3095 
   3096 	PR c/99324
   3097 	* c-common.c (build_va_arg): Call c_common_mark_addressable_vec
   3098 	instead of mark_addressable.  Fix a comment typo -
   3099 	neutrallly -> neutrally.
   3100 
   3101 2021-02-28  Jakub Jelinek  <jakub (a] redhat.com>
   3102 
   3103 	PR c/99304
   3104 	* c-attribs.c (handle_malloc_attribute): Fix a typo in inform
   3105 	message - refernced -> referenced.  Remove superfluous space before
   3106 	closing paren of function calls.
   3107 
   3108 2021-02-25  Nathan Sidwell  <nathan (a] acm.org>
   3109 
   3110 	PR c++/99166
   3111 	* c.opt (-flang-info-module-cmi): Renamed option.
   3112 
   3113 2021-02-19  Nathan Sidwell  <nathan (a] acm.org>
   3114 
   3115 	* c.opt (flang-info-module-read, flang-info-module-read=): New.
   3116 
   3117 2021-02-18  H.J. Lu  <hjl.tools (a] gmail.com>
   3118 
   3119 	PR target/99113
   3120 	* c-attribs.c (c_common_attribute_table): Add the "retain"
   3121 	attribute.
   3122 	(handle_retain_attribute): New function.
   3123 
   3124 2021-02-16  Marek Polacek  <polacek (a] redhat.com>
   3125 
   3126 	PR c++/99062
   3127 	* c-attribs.c (handle_assume_aligned_attribute): Check that the
   3128 	alignment argument is non-negative.  Tweak a warning message.
   3129 
   3130 2021-02-12  Martin Sebor  <msebor (a] redhat.com>
   3131 
   3132 	PR c/99055
   3133 	* c-warn.c (warn_parm_array_mismatch): Free strings returned from
   3134 	print_generic_expr_to_str.
   3135 
   3136 2021-02-10  Richard Biener  <rguenther (a] suse.de>
   3137 
   3138 	* c-common.c (parse_optimize_options): Free decoded_options.
   3139 
   3140 2021-02-04  emsr  <3dw4rd (a] verizon.net>
   3141 
   3142 	* c-cppbuiltin.c (c_cpp_builtins): __cpp_size_t_suffix=202011L.
   3143 
   3144 2021-02-03  Ed Smith-Rowland  <3dw4rd (a] verizon.net>
   3145 
   3146 	* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_size_t_suffix.
   3147 	* c-lex.c (interpret_integer): Set node type for size literal.
   3148 
   3149 2021-01-28  Jakub Jelinek  <jakub (a] redhat.com>
   3150 
   3151 	* c.opt (-std=c++2a, -std=c++20, -std=gnu++2a, -std=gnu++20): Remove
   3152 	draft from description.
   3153 	(-std=c++2b): Fix a pasto, 2020 -> 2023.
   3154 
   3155 2021-01-26  Paul Fee  <paul.f.fee (a] gmail.com>
   3156 
   3157 	* c-common.h (cxx_dialect): Add cxx23 as a dialect.
   3158 	* c.opt: Add options for -std=c++23, std=c++2b, -std=gnu++23
   3159 	and -std=gnu++2b
   3160 	* c-opts.c (set_std_cxx23): New.
   3161 	(c_common_handle_option): Set options when -std=c++23 is enabled.
   3162 	(c_common_post_options): Adjust comments.
   3163 	(set_std_cxx20): Likewise.
   3164 
   3165 2021-01-25  Martin Sebor  <msebor (a] redhat.com>
   3166 
   3167 	PR c++/98646
   3168 	* c-common.c (check_nonnull_arg): Adjust warning text.
   3169 
   3170 2021-01-17  Martin Sebor  <msebor (a] redhat.com>
   3171 
   3172 	* c-pretty-print.c (c_pretty_printer::primary_expression): Don't
   3173 	assume SSA_NAME_IDENTIFIER evaluates to nonzero.
   3174 
   3175 2021-01-16  Kwok Cheung Yeung  <kcy (a] codesourcery.com>
   3176 
   3177 	* c-pragma.h (pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_DETACH.
   3178 	Redefine PRAGMA_OACC_CLAUSE_DETACH.
   3179 
   3180 2021-01-15  Jakub Jelinek  <jakub (a] redhat.com>
   3181 
   3182 	PR tree-optimization/98597
   3183 	* c-pretty-print.c: Include options.h.
   3184 	(c_fold_indirect_ref_for_warn): New function.
   3185 	(print_mem_ref): Use it.  If it returns something that has compatible
   3186 	type and is TBAA compatible with zero offset, print it and return,
   3187 	otherwise print it using offsetof syntax or array ref syntax.  Fix up
   3188 	printing if MEM_REFs first operand is ADDR_EXPR, or when the first
   3189 	argument has pointer to array type.  Print pointers using the standard
   3190 	formatting.
   3191 
   3192 2021-01-12  Martin Sebor  <msebor (a] redhat.com>
   3193 
   3194 	PR c/98597
   3195 	PR c/98592
   3196 	* c-pretty-print.c (print_mem_ref): Avoid assuming MEM_REF operand
   3197 	has pointer type.  Remove redundant code.  Avoid calling
   3198 	gimple_canonical_types_compatible_p.
   3199 
   3200 2021-01-07  Martin Sebor  <msebor (a] redhat.com>
   3201 
   3202 	PR middle-end/98578
   3203 	* c-pretty-print.c (print_mem_ref): Strip array from access type.
   3204 	Avoid assuming acces type's size is constant.  Correct condition
   3205 	guarding the printing of a parenthesis.
   3206 
   3207 2021-01-06  Martin Sebor  <msebor (a] redhat.com>
   3208 
   3209 	PR c++/95768
   3210 	* c-pretty-print.c (c_pretty_printer::primary_expression): For
   3211 	SSA_NAMEs print VLA names and GIMPLE defining statements.
   3212 	(print_mem_ref): New function.
   3213 	(c_pretty_printer::unary_expression): Call it.
   3214 
   3215 2021-01-06  Richard Biener  <rguenther (a] suse.de>
   3216 
   3217 	PR tree-optimization/95582
   3218 	* c-attribs.c (c_common_attribute_table): Add entry for
   3219 	signed_bool_precision.
   3220 	(handle_signed_bool_precision_attribute): New.
   3221 
   3222 2020-12-24  Iain Sandoe  <iain (a] sandoe.co.uk>
   3223 
   3224 	* c.opt: Add -stdlib= option and enumerations for
   3225 	libstdc++ and libc++.
   3226 
   3227 2020-12-16  Martin Liska  <mliska (a] suse.cz>
   3228 
   3229 	* c.opt: Remove usage of Report.
   3230 
   3231 2020-12-14  Martin Sebor  <msebor (a] redhat.com>
   3232 
   3233 	PR middle-end/98166
   3234 	PR c++/57111
   3235 	PR middle-end/98160
   3236 	* c-attribs.c (maybe_add_noinline): New function.
   3237 	(handle_malloc_attribute): Call it.  Use ATTR_FLAG_INTERNAL.
   3238 	Implicitly add attribute noinline to functions not declared inline
   3239 	and warn on those.
   3240 
   3241 2020-12-09  Tobias Burnus  <tobias (a] codesourcery.com>
   3242 
   3243 	* c-pragma.c (omp_pragmas): Add 'allocate'.
   3244 	* c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_ALLOCATE.
   3245 
   3246 2020-12-08  Jakub Jelinek  <jakub (a] redhat.com>
   3247 
   3248 	PR c++/98187
   3249 	* c-pragma.c (omp_pragmas): Remove "master".
   3250 	(omp_pragmas_simd): Add "master".
   3251 
   3252 2020-12-07  Marek Polacek  <polacek (a] redhat.com>
   3253 
   3254 	PR c++/98126
   3255 	* c-common.c (verify_tree_lim_r): New function.
   3256 	(verify_sequence_points): Use it.  Use nullptr instead of 0.
   3257 
   3258 2020-12-03  Martin Sebor  <msebor (a] redhat.com>
   3259 
   3260 	PR c++/90629
   3261 	PR middle-end/94527
   3262 	* c-attribs.c (handle_dealloc_attribute): New function.
   3263 	(handle_malloc_attribute): Handle argument forms of attribute.
   3264 	* c.opt (-Wmismatched-dealloc): New option.
   3265 	(-Wmismatched-new-delete): New option.
   3266 
   3267 2020-12-03  Jakub Jelinek  <jakub (a] redhat.com>
   3268 
   3269 	PR libstdc++/93121
   3270 	* c-common.h (enum rid): Add RID_BUILTIN_BIT_CAST.
   3271 	* c-common.c (c_common_reswords): Add __builtin_bit_cast.
   3272 
   3273 2020-12-01  JeanHeyd Meneide  <phdofthehouse (a] gmail.com>
   3274 
   3275 	* c-cppbuiltin.c (c_cpp_builtins): Add predefined
   3276 	{__GNUC_EXECUTION_CHARSET_NAME} and
   3277 	_WIDE_EXECUTION_CHARSET_NAME} macros.
   3278 
   3279 2020-12-01  Nathan Sidwell  <nathan (a] acm.org>
   3280 
   3281 	* c-common.c (module, import, export): New internal tokens (with
   3282 	trailing space).
   3283 	* c-common.h (RID__MODULE, RID__IMPORT & RID__EXPORT): Enumerate
   3284 	them.
   3285 	(D_CXX_MODULES, D_CXX_MODULES_FLAGS): Enable them.
   3286 	* c-cppbuiltin.c (c_cpp_builtins): Feature macro.
   3287 
   3288 2020-12-01  Nathan Sidwell  <nathan (a] acm.org>
   3289 
   3290 	* c-opts.c (c_common_init_options): Ask for module dependencies.
   3291 	(c_common_handle_option): Handle -Mmodules -Mno-modules.
   3292 	* c-pch.c (c_common_valid_pch): ... does not play with C++
   3293 	modules.
   3294 	* c.opt (Mmodules, Mno-modules): New preprocessor dependency
   3295 	options.
   3296 	(fmodules-ts, fmodule-header, fmodule-implicit-inline)
   3297 	(fmodule-only, fmodule-mapper, fmodule-lazy)
   3298 	(fmodule-version-ignore, Winvalid-imported-macros)
   3299 	(flang-info-include-translate, flang-info-include-translate-not):
   3300 	New options
   3301 
   3302 2020-11-28  Eric Botcazou  <ebotcazou (a] adacore.com>
   3303 
   3304 	* c-ada-spec.c (dump_nested_type) <RECORD_TYPE>: Remove obsolete code.
   3305 	(dump_ada_structure): Also deal with convention, unchecked union and
   3306 	bit-field for nested types.  In the latter case, print an Alignment
   3307 	aspect along with the Pack aspect.
   3308 
   3309 2020-11-25  Martin Sebor  <msebor (a] redhat.com>
   3310 
   3311 	PR bootstrap/94982
   3312 	* c-attribs.c (handle_patchable_function_entry_attribute): Avoid
   3313 	-Wformat-diag.
   3314 
   3315 2020-11-24  Martin Sebor  <msebor (a] redhat.com>
   3316 
   3317 	* c-warn.c (warn_parm_array_mismatch): Avoid invalid redeclarations.
   3318 
   3319 2020-11-23  Jozef Lawrynowicz  <jozef.l (a] mittosystems.com>
   3320 
   3321 	* c-attribs.c (handle_special_var_sec_attribute): New.
   3322 	(handle_noinit_attribute): Remove.
   3323 	(attr_noinit_exclusions): Rename to...
   3324 	(attr_section_exclusions): ...this, and add "persistent" attribute
   3325 	exclusion.
   3326 	(c_common_attribute_table): Add "persistent" attribute.
   3327 
   3328 2020-11-21  Aaron Sawdey  <acsawdey (a] linux.ibm.com>
   3329 
   3330 	* c-pretty-print.c (c_pretty_printer::simple_type_specifier):
   3331 	Treat opaque types like other types.
   3332 	(c_pretty_printer::direct_abstract_declarator): Opaque types are
   3333 	supported types.
   3334 
   3335 2020-11-20  Martin Sebor  <msebor (a] redhat.com>
   3336 
   3337 	* c-warn.c (warn_parm_array_mismatch): Bail on invalid redeclarations
   3338 	with fewer arguments.
   3339 
   3340 2020-11-20  Martin Sebor  <msebor (a] redhat.com>
   3341 
   3342 	PR middle-end/97879
   3343 	* c-attribs.c (handle_access_attribute): Handle ATTR_FLAG_INTERNAL.
   3344 	Error out on invalid modes.
   3345 
   3346 2020-11-20  Jakub Jelinek  <jakub (a] redhat.com>
   3347 
   3348 	PR libstdc++/88101
   3349 	* c-common.c (check_builtin_function_arguments): Handle
   3350 	BUILT_IN_CLEAR_PADDING.
   3351 
   3352 2020-11-18  Nathan Sidwell  <nathan (a] acm.org>
   3353 
   3354 	* c-lex.c (c_lex_with_flags): CPP_HEADER_NAMEs can now be seen.
   3355 
   3356 2020-11-17  Nathan Sidwell  <nathan (a] acm.org>
   3357 
   3358 	* c-common.h (enum c_tree_index): Reorder to place lazy fields
   3359 	after newly-added CTI_MODULE_HWM.
   3360 
   3361 2020-11-17  Joseph Myers  <joseph (a] codesourcery.com>
   3362 
   3363 	* c-cppbuiltin.c (builtin_define_float_constants): Define
   3364 	"*_IS_IEC_60559__" macros.
   3365 
   3366 2020-11-17  Nathan Sidwell  <nathan (a] acm.org>
   3367 
   3368 	* c-lex.c: #include "langhooks.h".
   3369 	(cb_undef): Maybe call preprocess_undef lang hook.
   3370 	* c-opts.c (c_common_post_options): Maybe call preprocess_options
   3371 	lang hook.
   3372 	(push_command_line_include): Maybe call preprocess_main_file lang
   3373 	hook.
   3374 	(cb_file_change): Likewise.
   3375 	* c-ppoutput.c: #include "langhooks.h.
   3376 	(scan_translation_unit): Maybe call preprocess_token lang hook.
   3377 	(class do_streamer): New, derive from token_streamer.
   3378 	(directives_only_cb): Data pointer is do_streamer, call
   3379 	preprocess_token lang hook.
   3380 	(scan_translation_unit_directives_only): Use do_streamer.
   3381 	(print_line_1): Move src_line recording to after string output.
   3382 	(cb_undef): Maybe call preprocess_undef lang hook.
   3383 
   3384 2020-11-17  Nathan Sidwell  <nathan (a] acm.org>
   3385 
   3386 	* c-ppoutput.c (scan_translation_unit): Use token_streamer, remove
   3387 	code duplicating that functionality.
   3388 
   3389 2020-11-17  Jakub Jelinek  <jakub (a] redhat.com>
   3390 
   3391 	PR c/90628
   3392 	* c-common.c (check_builtin_function_arguments)
   3393 	<case BUILT_IN_ADD_OVERFLOW>: Diagnose when last argument is pointer
   3394 	to _Atomic.  For the TYPE_READONLY case, adjust message to be usable
   3395 	for more builtins and argument positions.
   3396 
   3397 2020-11-16  Iain Sandoe  <iain (a] sandoe.co.uk>
   3398 
   3399 	PR objc/97854
   3400 	* stub-objc.c: Include c-common.h to declare enum rid.
   3401 
   3402 2020-11-13  Jakub Jelinek  <jakub (a] redhat.com>
   3403 
   3404 	PR c++/63287
   3405 	* c-cppbuiltin.c: Include configargs.h.
   3406 	(c_cpp_builtins): For C++11 and later if THREAD_MODEL_SPEC is not
   3407 	defined, predefine __STDCPP_THREADS__ to 1 unless thread_model is
   3408 	"single".
   3409 
   3410 2020-11-13  Gerg Barany  <gergo (a] codesourcery.com>
   3411 	    Thomas Schwinge  <thomas (a] codesourcery.com>
   3412 
   3413 	* c.opt (fopenacc-kernels): Add.
   3414 
   3415 2020-11-13  Jason Merrill  <jason (a] redhat.com>
   3416 
   3417 	* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_using_enum.
   3418 
   3419 2020-11-13  Piotr H. Dabrowski  <phd (a] phd.re>
   3420 
   3421 	PR c++/91318
   3422 	* c-cppbuiltin.c: c_cpp_builtins_optimize_pragma(): use cpp_define_unused()
   3423 
   3424 2020-11-13  Martin Liska  <mliska (a] suse.cz>
   3425 
   3426 	* c-attribs.c (build_attr_access_from_parms): Format properly.
   3427 
   3428 2020-11-13  Iain Sandoe  <iain (a] sandoe.co.uk>
   3429 
   3430 	PR objc/90707
   3431 	* c-common.c (c_common_reswords): null_unspecified, nullable,
   3432 	nonnull, null_resettable: New keywords.
   3433 	* c-common.h (enum rid): RID_NULL_UNSPECIFIED, RID_NULLABLE,
   3434 	RID_NONNULL, RID_NULL_RESETTABLE: New.
   3435 	(OBJC_IS_PATTR_KEYWORD): Include nullability keywords in the
   3436 	ranges accepted for property attributes.
   3437 	* c-attribs.c (handle_objc_nullability_attribute): New.
   3438 	* c-objc.h (enum objc_property_attribute_group): Add
   3439 	OBJC_PROPATTR_GROUP_NULLABLE.
   3440 	(enum objc_property_attribute_kind):Add
   3441 	OBJC_PROPERTY_ATTR_NULL_UNSPECIFIED, OBJC_PROPERTY_ATTR_NULLABLE,
   3442 	OBJC_PROPERTY_ATTR_NONNULL, OBJC_PROPERTY_ATTR_NULL_RESETTABLE.
   3443 
   3444 2020-11-13  Iain Sandoe  <iain (a] sandoe.co.uk>
   3445 
   3446 	PR objc/77404
   3447 	* c-attribs.c (handle_objc_root_class_attribute): New
   3448 	* c-objc.h (objc_start_class_interface): Add a location
   3449 	value for the position of the class name.
   3450 	* c.opt: Add Wobjc-root-class.
   3451 	* stub-objc.c (objc_start_class_interface): Add a location
   3452 	value for the position of the class name.
   3453 
   3454 2020-11-12  Joseph Myers  <joseph (a] codesourcery.com>
   3455 
   3456 	* c-lex.c (c_common_has_attribute): Take argument std_syntax.
   3457 	Allow scope for C.  Handle standard attributes for C.  Do not
   3458 	accept unscoped attributes if std_syntax and not handled as
   3459 	standard attributes.
   3460 	* c-common.h (c_common_has_attribute): Update prototype.
   3461 
   3462 2020-11-12  Nicholas Guriev  <guriev-ns (a] ya.ru>
   3463 
   3464 	PR pch/86674
   3465 	* c-pch.c (c_common_valid_pch): Use cpp_warning with CPP_W_INVALID_PCH
   3466 	reason to fix -Werror=invalid-pch and -Wno-error=invalid-pch switches.
   3467 
   3468 2020-11-11  Patrick Palka  <ppalka (a] redhat.com>
   3469 
   3470 	PR c++/88115
   3471 	* c-opts.c (c_common_post_options): Update latest_abi_version.
   3472 
   3473 2020-11-10  Jakub Jelinek  <jakub (a] redhat.com>
   3474 
   3475 	PR c/97748
   3476 	* c-common.h (warn_if_unused_value): Add quiet argument defaulted
   3477 	to false.
   3478 	* c-warn.c (warn_if_unused_value): Likewise.  Pass it down
   3479 	recursively and just return true instead of warning if it is true.
   3480 	Handle COMPLEX_EXPR.
   3481 
   3482 2020-11-10  Chung-Lin Tang  <cltang (a] codesourcery.com>
   3483 
   3484 	* c-common.h (c_omp_adjust_map_clauses): New declaration.
   3485 	* c-omp.c (struct map_clause): Helper type for c_omp_adjust_map_clauses.
   3486 	(c_omp_adjust_map_clauses): New function.
   3487 
   3488 2020-11-09  Marek Polacek  <polacek (a] redhat.com>
   3489 
   3490 	DR 1914
   3491 	* c-common.c (attribute_fallthrough_p): Tweak the warning
   3492 	message.
   3493 
   3494 2020-11-09  Patrick Palka  <ppalka (a] redhat.com>
   3495 
   3496 	* c-pragma.c (handle_pragma_diagnostic): Split the
   3497 	unknown-option -Wpragmas diagnostic into a warning and a
   3498 	subsequent note containing a spelling suggestion.  Avoid
   3499 	computing the suggestion if -Wpragmas warnings are being
   3500 	suppressed.
   3501 
   3502 2020-11-09  Patrick Palka  <ppalka (a] redhat.com>
   3503 
   3504 	PR testsuite/97117
   3505 	* c-indentation.c (get_visual_column): Remove location_t
   3506 	parameter.  Move the column-tracking diagnostic code from here
   3507 	to ...
   3508 	(should_warn_for_misleading_indentation): ... here, before the
   3509 	early exit for when the loci are not all distinct.  Don't pass a
   3510 	location_t argument to get_visual_column.
   3511 	(assert_get_visual_column_succeeds): Don't pass a location_t
   3512 	argument to get_visual_column.
   3513 	(assert_get_visual_column_fails): Likewise.
   3514 
   3515 2020-11-08  Iain Sandoe  <iain (a] sandoe.co.uk>
   3516 
   3517 	* c-common.h (OBJC_IS_PATTR_KEYWORD): Add class to the list
   3518 	of keywords accepted in @property attribute contexts.
   3519 	* c-objc.h (enum objc_property_attribute_group): Add
   3520 	OBJC_PROPATTR_GROUP_CLASS.
   3521 	(enum objc_property_attribute_kind): Add
   3522 	OBJC_PROPERTY_ATTR_CLASS.
   3523 
   3524 2020-11-07  Iain Sandoe  <iain (a] sandoe.co.uk>
   3525 
   3526 	* c-common.c (c_common_reswords): Add 'atomic' property
   3527 	attribute.
   3528 	* c-common.h (enum rid): Add RID_PROPATOMIC for atomic
   3529 	property attributes.
   3530 
   3531 2020-11-07  Iain Sandoe  <iain (a] sandoe.co.uk>
   3532 
   3533 	* c-attribs.c (handle_nsobject_attribute): New.
   3534 	* c.opt: Add WNSObject-attribute.
   3535 
   3536 2020-11-06  Iain Sandoe  <iain (a] sandoe.co.uk>
   3537 
   3538 	* c-objc.h (enum objc_property_attribute_group): New
   3539 	(enum objc_property_attribute_kind): New.
   3540 	(OBJC_PROPATTR_GROUP_MASK): New.
   3541 	(struct property_attribute_info): Small class encapsulating
   3542 	parser output from property attributes.
   3543 	(objc_prop_attr_kind_for_rid): New
   3544 	(objc_add_property_declaration): Simplify interface.
   3545 	* stub-objc.c (enum rid): Dummy type.
   3546 	(objc_add_property_declaration): Simplify interface.
   3547 	(objc_prop_attr_kind_for_rid): New.
   3548 
   3549 2020-11-06  Nathan Sidwell  <nathan (a] acm.org>
   3550 
   3551 	* c-ada-spec.c (collect_ada_nodes): Rename
   3552 	DECL_IS_BUILTIN->DECL_IS_UNDECLARED_BUILTIN.
   3553 	(collect_ada_node): Likewise.
   3554 	(dump_forward_type): Likewise.
   3555 	* c-common.c (set_underlying_type): Rename
   3556 	DECL_IS_BUILTIN->DECL_IS_UNDECLARED_BUILTIN.
   3557 	(user_facing_original_type, c_common_finalize_early_debug): Likewise.
   3558 
   3559 2020-11-06  Jakub Jelinek  <jakub (a] redhat.com>
   3560 
   3561 	* c-common.c (verify_sequence_points): Remove DEBUG_FUNCTION.
   3562 
   3563 2020-11-05  Marek Polacek  <polacek (a] redhat.com>
   3564 
   3565 	PR c++/97675
   3566 	* c.opt (Wexceptions): New option.
   3567 
   3568 2020-11-05  Marek Polacek  <polacek (a] redhat.com>
   3569 
   3570 	PR c++/25814
   3571 	* c.opt (Wvexing-parse): New option.
   3572 
   3573 2020-11-04  Jakub Jelinek  <jakub (a] redhat.com>
   3574 
   3575 	PR c++/97670
   3576 	* c-omp.c (c_omp_split_clauses): Look through array reductions to find
   3577 	underlying decl to clear in the allocate_head bitmap.
   3578 
   3579 2020-11-04  Iain Sandoe  <iain (a] sandoe.co.uk>
   3580 
   3581 	* c-objc.h (objc_non_constant_expr_p): New.
   3582 	* stub-objc.c (objc_non_constant_expr_p): New.
   3583 
   3584 2020-11-03  Nathan Sidwell  <nathan (a] acm.org>
   3585 
   3586 	* c.opt (MQ,MT): Reword description to be make-agnostic.
   3587 
   3588 2020-11-02  Nathan Sidwell  <nathan (a] acm.org>
   3589 
   3590 	* c-opts.c (c_common_post_options): Move var decl to its
   3591 	initialization point.
   3592 
   3593 2020-11-01  Iain Sandoe  <iain (a] sandoe.co.uk>
   3594 
   3595 	* c-lex.c (c_lex_with_flags): When combining '@' with a
   3596 	keyword for Objective-C, combine the location ranges too.
   3597 
   3598 2020-10-30  Qing Zhao  <qing.zhao (a] oracle.com>
   3599 	    H.J.Lu  <hjl.tools (a] gmail.com>
   3600 
   3601 	* c-attribs.c (c_common_attribute_table): Add new attribute
   3602 	zero_call_used_regs.
   3603 	(handle_zero_call_used_regs_attribute): New function.
   3604 
   3605 2020-10-28  Marek Polacek  <polacek (a] redhat.com>
   3606 
   3607 	PR c++/97573
   3608 	* c-opts.c (c_common_post_options): In C++20, turn on
   3609 	-Wdeprecated-enum-enum-conversion and
   3610 	-Wdeprecated-enum-float-conversion.
   3611 	* c.opt (Wdeprecated-enum-enum-conversion,
   3612 	Wdeprecated-enum-float-conversion): New options.
   3613 	(Wenum-conversion): Allow for C++ too.
   3614 
   3615 2020-10-28  Jakub Jelinek  <jakub (a] redhat.com>
   3616 
   3617 	* c-pragma.h (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_ALLOCATE.
   3618 	* c-omp.c: Include bitmap.h.
   3619 	(c_omp_split_clauses): Handle OMP_CLAUSE_ALLOCATE.
   3620 
   3621 2020-10-26  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   3622 
   3623 	* c-common.c (__is_nothrow_assignable): New.
   3624 	(__is_nothrow_constructible): Likewise.
   3625 	* c-common.h (RID_IS_NOTHROW_ASSIGNABLE): New.
   3626 	(RID_IS_NOTHROW_CONSTRUCTIBLE): Likewise.
   3627 
   3628 2020-10-23  Jan Hubicka  <hubicka (a] ucw.cz>
   3629 
   3630 	* c-common.c (c_common_finalize_early_debug): Update for new thunk api.
   3631 
   3632 2020-10-23  Marek Polacek  <polacek (a] redhat.com>
   3633 
   3634 	PR c++/91741
   3635 	* c-common.c (verify_tree): Handle PAREN_SIZEOF_EXPR.
   3636 	(c_common_init_ts): Likewise.
   3637 	* c-common.def (PAREN_SIZEOF_EXPR): New tree code.
   3638 	* c-common.h (maybe_warn_sizeof_array_div): Declare.
   3639 	* c-warn.c (sizeof_pointer_memaccess_warning): Unwrap NOP_EXPRs.
   3640 	(maybe_warn_sizeof_array_div): New function.
   3641 	* c.opt (Wsizeof-array-div): New option.
   3642 
   3643 2020-10-23  Martin Sebor  <msebor (a] redhat.com>
   3644 
   3645 	PR c/97463
   3646 	* c-warn.c (warn_parm_ptrarray_mismatch): Move null test earlier.
   3647 
   3648 2020-10-22  Martin Liska  <mliska (a] suse.cz>
   3649 
   3650 	PR c/94722
   3651 	* c-attribs.c (handle_no_stack_protect_function_attribute): New.
   3652 	(handle_stack_protect_attribute): Add error message for a
   3653 	no_stack_protector function.
   3654 
   3655 2020-10-22  Martin Liska  <mliska (a] suse.cz>
   3656 
   3657 	* c-cppbuiltin.c (c_cpp_builtins): Use the stack_protector enum.
   3658 
   3659 2020-10-22  Jan Hubicka  <hubicka (a] ucw.cz>
   3660 
   3661 	* c-gimplify.c: Include tree-nested.h
   3662 	(c_genericize): Update for new nested function info.
   3663 
   3664 2020-10-14  Martin Sebor  <msebor (a] redhat.com>
   3665 
   3666 	PR c/97413
   3667 	* c-attribs.c (build_attr_access_from_parms): Wrap chain of VLA
   3668 	bounds in an extra list.
   3669 
   3670 2020-10-05  Richard Biener  <rguenther (a] suse.de>
   3671 	    Jakub Jelinek  <jakub (a] redhat.com>
   3672 
   3673 	PR c++/97197
   3674 	* c-pretty-print.c: Include langhooks.h.
   3675 	(c_pretty_printer::postfix_expression): Handle TARGET_MEM_REF as
   3676 	expression.
   3677 	(c_pretty_printer::expression): Handle TARGET_MEM_REF as
   3678 	unary_expression.
   3679 	(c_pretty_printer::unary_expression): Handle TARGET_MEM_REF.
   3680 
   3681 2020-09-30  Martin Sebor  <msebor (a] redhat.com>
   3682 
   3683 	PR middle-end/97189
   3684 	* c-attribs.c (append_access_attr): Use the function declaration
   3685 	location for a warning about an attribute access argument.
   3686 
   3687 2020-09-29  Marek Polacek  <polacek (a] redhat.com>
   3688 
   3689 	PR c++/94695
   3690 	* c.opt (Wrange-loop-construct): New option.
   3691 
   3692 2020-09-23  Martin Sebor  <msebor (a] redhat.com>
   3693 
   3694 	PR c/97131
   3695 	* c-warn.c (warn_parm_ptrarray_mismatch): Handle more invalid input.
   3696 
   3697 2020-09-23  Marek Polacek  <polacek (a] redhat.com>
   3698 
   3699 	PR c/97125
   3700 	* c-gimplify.c (c_genericize): Only call do_warn_duplicated_branches_r
   3701 	after loops and other structured control constructs have been lowered.
   3702 
   3703 2020-09-22  Jakub Jelinek  <jakub (a] redhat.com>
   3704 
   3705 	* c.opt (Wbuiltin-declaration-mismatch): Fix typo in variable name:
   3706 	warn_builtin_declaraion_mismatch -> warn_builtin_declaration_mismatch.
   3707 
   3708 2020-09-21  Marek Polacek  <polacek (a] redhat.com>
   3709 
   3710 	* c.opt (Wctad-maybe-unsupported): New option.
   3711 
   3712 2020-09-19  Martin Sebor  <msebor (a] redhat.com>
   3713 
   3714 	PR c/50584
   3715 	* c-common.h (warn_parm_array_mismatch): Declare new function.
   3716 	(has_attribute): Move declaration of an existing function.
   3717 	(build_attr_access_from_parms): Declare new function.
   3718 	* c-warn.c (parm_array_as_string): Define new function.
   3719 	(plus_one):  Define new function.
   3720 	(warn_parm_ptrarray_mismatch): Define new function.
   3721 	(warn_parm_array_mismatch):  Define new function.
   3722 	(vla_bound_parm_decl): New function.
   3723 	* c.opt (-Warray-parameter, -Wvla-parameter): New options.
   3724 	* c-pretty-print.c (pp_c_type_qualifier_list): Don't print array type
   3725 	qualifiers here...
   3726 	(c_pretty_printer::direct_abstract_declarator): ...but instead print
   3727 	them in brackets here.  Also print [static].  Strip extraneous
   3728 	expressions from VLA bounds.
   3729 
   3730 2020-09-19  Martin Sebor  <msebor (a] redhat.com>
   3731 
   3732 	PR c/50584
   3733 	* c-attribs.c (c_common_attribute_table): Add "arg spec" attribute.
   3734 	(handle_argspec_attribute): New function.
   3735 	(get_argument, get_argument_type): New functions.
   3736 	(append_access_attrs): Add overload.  Handle internal attribute
   3737 	representation in addition to external.
   3738 	(handle_access_attribute): Handle internal attribute representation
   3739 	in addition to external.
   3740 	(build_attr_access_from_parms): New function.
   3741 
   3742 2020-09-19  Sandra Loosemore  <sandra (a] codesourcery.com>
   3743 
   3744 	* c-gimplify.c (genericize_c_loop): Rewrite to match
   3745 	c_finish_loop in c-typeck.c.
   3746 
   3747 2020-09-19  Sandra Loosemore  <sandra (a] codesourcery.com>
   3748 
   3749 	* c-common.c (c_block_may_fallthrough): New, split from
   3750 	cxx_block_may_fallthrough in the cp front end.
   3751 	(c_common_init_ts): Move handling of loop and switch-related
   3752 	statements here from the cp front end.
   3753 	* c-common.def (FOR_STMT, WHILE_STMT, DO_STMT): Move here from
   3754 	cp front end.
   3755 	(BREAK_STMT, CONTINUE_STMT, SWITCH_STMT): Likewise.
   3756 	* c-common.h (c_block_may_fallthru): Declare.
   3757 	(bc_state_t): Move here from cp front end.
   3758 	(save_bc_state, restore_bc_state): Declare.
   3759 	(c_genericize_control_stmt): Declare.
   3760 	(WHILE_COND, WHILE_BODY): Likewise.
   3761 	(DO_COND, DO_BODY): Likewise.
   3762 	(FOR_INIT_STMT, FOR_COND, FOR_EXPR, FOR_BODY, FOR_SCOPE): Likewise.
   3763 	(SWITCH_STMT_COND, SWITCH_STMT_BODY): Likewise.
   3764 	(SWITCH_STMT_TYPE, SWITCH_STMT_SCOPE): Likewise.
   3765 	(SWITCH_STMT_ALL_CASES_P, SWITCH_STMT_NO_BREAK_P): Likewise.
   3766 	(LABEL_DECL_BREAK, LABEL_DECL_CONTINUE): Likewise.
   3767 	* c-dump.c (dump_stmt): Copy from cp front end.
   3768 	(c_dump_tree): Move code to handle structured loop and switch
   3769 	tree nodes here from cp front end.
   3770 	* c-gimplify.c: Adjust includes.
   3771 	(enum bc_t, bc_label, begin_bc_block, finish_bc_block): Move from
   3772 	cp front end.
   3773 	(save_bc_state, restore_bc_state): New functions using old code
   3774 	from cp front end.
   3775 	(get_bc_label, expr_loc_or_loc): Move from cp front end.
   3776 	(genericize_c_loop): Move from cp front end.
   3777 	(genericize_for_stmt, genericize_while_stmt): Likewise.
   3778 	(genericize_do_stmt, genericize_switch_stmt): Likewise.
   3779 	(genericize_continue_stmt, genericize_break_stmt): Likewise.
   3780 	(genericize_omp_for_stmt): Likewise.
   3781 	(c_genericize_control_stmt): New function using code split from
   3782 	cp front end.
   3783 	(c_genericize_control_r): New.
   3784 	(c_genericize): Call walk_tree with c_genericize_control_r.
   3785 	* c-pretty-print.c (c_pretty_printer::statement): Move code to handle
   3786 	structured loop and switch tree nodes here from cp front end.
   3787 
   3788 2020-09-17  Patrick Palka  <ppalka (a] redhat.com>
   3789 
   3790 	PR c/80076
   3791 	* c-indentation.c (should_warn_for_misleading_indentation): Move
   3792 	declarations of local variables closer to their first use.
   3793 	Handle virtual token locations by resolving them to their
   3794 	respective macro expansion points.  If all three tokens are
   3795 	produced from the same macro expansion, then instead use their
   3796 	loci within the macro definition.
   3797 
   3798 2020-09-16  Martin Sebor  <msebor (a] redhat.com>
   3799 
   3800 	PR c/78666
   3801 	PR c/96126
   3802 	* c-attribs.c (validate_attr_args): New function.
   3803 	(validate_attr_arg): Same.
   3804 	(handle_section_attribute): Call it.  Introduce a local variable.
   3805 	(handle_alloc_size_attribute):  Same.
   3806 	(handle_alloc_align_attribute): Same.
   3807 
   3808 2020-09-14  Jakub Jelinek  <jakub (a] redhat.com>
   3809 
   3810 	* c-attribs.c (handle_optimize_attribute): Adjust
   3811 	cl_optimization_save, cl_optimization_restore and
   3812 	build_optimization_node callers.
   3813 	* c-pragma.c (handle_pragma_optimize): Adjust
   3814 	build_optimization_node caller.
   3815 	(handle_pragma_push_options): Adjust
   3816 	build_optimization_node and build_target_option_node callers.
   3817 	(handle_pragma_pop_options, handle_pragma_reset_options):
   3818 	Adjust cl_optimization_restore callers.
   3819 
   3820 2020-08-28  Martin Sebor  <msebor (a] redhat.com>
   3821 
   3822 	* c.opt (Wstringop-overread): New option.
   3823 
   3824 2020-08-11  Jakub Jelinek  <jakub (a] redhat.com>
   3825 
   3826 	PR c/96545
   3827 	* c-common.c (get_atomic_generic_size): Require that first argument's
   3828 	type points to a complete type and use tree_fits_uhwi_p instead of
   3829 	just INTEGER_CST TREE_CODE check for the TYPE_SIZE_UNIT.
   3830 
   3831 2020-07-31  Martin Sebor  <msebor (a] redhat.com>
   3832 
   3833 	PR c++/96003
   3834 	* c-common.c (check_function_arguments_recurse): Return early when
   3835 	no-warning bit is set.
   3836 
   3837 2020-07-31  Richard Biener  <rguenther (a] suse.de>
   3838 
   3839 	PR debug/96383
   3840 	* c-common.h (c_common_finalize_early_debug): Declare.
   3841 	* c-common.c: Include debug.h.
   3842 	(c_common_finalize_early_debug): finalize_early_debug langhook
   3843 	implementation generating debug for extern declarations.
   3844 
   3845 2020-07-27  Nathan Sidwell  <nathan (a] acm.org>
   3846 
   3847 	* c-common.c (try_to_locate_new_include_insertion_point): Use
   3848 	strcmp, not pointer equality.
   3849 
   3850 2020-07-25  Martin Sebor  <msebor (a] redhat.com>
   3851 
   3852 	PR c++/96310
   3853 	* c-common.c (check_nonnull_arg): Print note only when warning was
   3854 	issued.
   3855 
   3856 2020-07-22  Tobias Burnus  <tobias (a] codesourcery.com>
   3857 
   3858 	* c-omp.c (c_finish_omp_critical): Check for no name but
   3859 	nonzero hint provided.
   3860 
   3861 2020-07-20  Jason Merrill  <jason (a] redhat.com>
   3862 
   3863 	* c-cppbuiltin.c (c_cpp_builtins): Update
   3864 	__cpp_nontype_template_args for C++20.
   3865 
   3866 2020-07-20  Martin Sebor  <msebor (a] redhat.com>
   3867 
   3868 	PR c/96249
   3869 	* c.opt: Remove stray text.
   3870 
   3871 2020-07-14  Lewis Hyatt  <lhyatt (a] gmail.com>
   3872 
   3873 	PR other/86904
   3874 	* c-indentation.c (should_warn_for_misleading_indentation): Get
   3875 	global tabstop from the new source.
   3876 	* c-opts.c (c_common_handle_option): Remove handling of -ftabstop, which
   3877 	is now a common option.
   3878 	* c.opt: Likewise.
   3879 
   3880 2020-07-08  Eric Botcazou  <ebotcazou (a] adacore.com>
   3881 
   3882 	* c.opt (Wscalar-storage-order): Add explicit variable.
   3883 
   3884 2020-07-07  Nathan Sidwell  <nathan (a] acm.org>
   3885 
   3886 	* c-opts.c (c_common_post_options): Add 'injecting' arg to
   3887 	cpp_read_main_file.
   3888 	(c_finish_options): Add linemap_line_start calls for builtin and cmd
   3889 	maps.  Force token position to line_table's highest line.
   3890 	* c-ppoutput.c (print_line_1): Refactor, print line zero.
   3891 	(cb_define): Always increment source line.
   3892 
   3893 2020-07-06  Martin Sebor  <msebor (a] redhat.com>
   3894 
   3895 	PR c++/95984
   3896 	* c-common.c (check_function_nonnull): Avoid checking syntesized calls
   3897 	to stub lambda objects with null this pointer.
   3898 	(check_nonnull_arg): Handle C++ nullptr.
   3899 
   3900 2020-07-02  Jason Merrill  <jason (a] redhat.com>
   3901 	    Jakub Jelinek  <jakub (a] redhat.com>
   3902 
   3903 	* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_consteval.
   3904 
   3905 2020-06-30  Jakub Jelinek  <jakub (a] redhat.com>
   3906 
   3907 	PR c++/95963
   3908 	* c-common.c (check_function_arguments_recurse): Don't crash on
   3909 	calls to internal functions.
   3910 
   3911 2020-06-28  Martin Sebor  <msebor (a] redhat.com>
   3912 
   3913 	PR c++/86568
   3914 	* c-common.c (struct nonnull_arg_ctx): Add members.
   3915 	(check_function_nonnull): Use nonnull_arg_ctx as argument.  Handle
   3916 	C++ member functions specially.  Consider the this pointer implicitly
   3917 	nonnull.
   3918 	(check_nonnull_arg): Use location of argument when available.
   3919 	(check_function_arguments): Use nonnull_arg_ctx as argument.
   3920 
   3921 2020-06-27  Jakub Jelinek  <jakub (a] redhat.com>
   3922 
   3923 	PR middle-end/95903
   3924 	* c-common.c (pointer_int_sum): Use TYPE_OVERFLOW_UNDEFINED instead of
   3925 	!TYPE_UNSIGNED check to see if we can apply distributive law and handle
   3926 	smaller precision intop operands separately.
   3927 
   3928 2020-06-26  Marek Polacek  <polacek (a] redhat.com>
   3929 
   3930 	* c-opts.c (c_common_init_options): Default to gnu++17.
   3931 
   3932 2020-06-17  Jonathan Wakely  <jwakely (a] redhat.com>
   3933 
   3934 	PR c/95378
   3935 	* c-common.c (get_atomic_generic_size): Check cv-qualifiers in
   3936 	pointer arguments.
   3937 
   3938 2020-06-16  Jakub Jelinek  <jakub (a] redhat.com>
   3939 
   3940 	* c-common.h (c_omp_check_loop_iv_exprs): Add an int argument.
   3941 	* c-omp.c (struct c_omp_check_loop_iv_data): Add maybe_nonrect and
   3942 	idx members.
   3943 	(c_omp_is_loop_iterator): New function.
   3944 	(c_omp_check_loop_iv_r): Use it.  Add support for silent scanning
   3945 	if outer loop iterator is present.  Perform duplicate checking through
   3946 	hash_set in the function rather than expecting caller to do that.
   3947 	Pass NULL instead of d->ppset to walk_tree_1.
   3948 	(c_omp_check_nonrect_loop_iv): New function.
   3949 	(c_omp_check_loop_iv): Use it.  Fill in new members, allow
   3950 	non-rectangular loop forms, diagnose multiple associated loops with
   3951 	the same iterator.  Pass NULL instead of &pset to walk_tree_1.
   3952 	(c_omp_check_loop_iv_exprs): Likewise.
   3953 
   3954 2020-06-10  Martin Liska  <mliska (a] suse.cz>
   3955 
   3956 	PR tree-optimization/92860
   3957 	* c-attribs.c (handle_optimize_attribute):
   3958 	Save global options and compare it after parsing of function
   3959 	attribute.
   3960 	* c-pragma.c (opt_stack::saved_global_options): New field.
   3961 	(handle_pragma_push_options): Save global_options.
   3962 	(handle_pragma_pop_options): Compare them after pop.
   3963 
   3964 2020-06-09  Jakub Jelinek  <jakub (a] redhat.com>
   3965 
   3966 	PR c/95580
   3967 	* c-pretty-print.c (c_pretty_printer::unary_expression): Handle the
   3968 	case when MEM_REF's first argument has type pointer to incomplete type.
   3969 
   3970 2020-06-05  Jason Merrill  <jason (a] redhat.com>
   3971 
   3972 	* c-pretty-print.c (pp_c_additive_expression): Handle negative
   3973 	operand to POINTER_PLUS_EXPR.
   3974 
   3975 2020-06-04  Martin Sebor  <msebor (a] redhat.com>
   3976 
   3977 	PR middle-end/10138
   3978 	PR middle-end/95136
   3979 	* c-attribs.c (append_access_attrs): Handle attr_access::none.
   3980 	(handle_access_attribute): Same.
   3981 
   3982 2020-06-03  Mark Wielaard  <mark (a] klomp.org>
   3983 
   3984 	* known-headers.cc (get_cp_stdlib_header_for_string_macro_name):
   3985 	New function.
   3986 	* known-headers.h (get_cp_stdlib_header_for_string_macro_name):
   3987 	New function declaration.
   3988 
   3989 2020-06-03  Mark Wielaard  <mark (a] klomp.org>
   3990 
   3991 	* known-headers.cc (get_string_macro_hint): New function.
   3992 	(get_stdlib_header_for_name): Use get_string_macro_hint.
   3993 	(get_c_stdlib_header_for_string_macro_name): New function.
   3994 	* known-headers.h (get_c_stdlib_header_for_string_macro_name):
   3995 	New function declaration.
   3996 
   3997 2020-06-03  Tobias Burnus  <tobias (a] codesourcery.com>
   3998 
   3999 	* c-common.h (c_omp_predetermined_mapping): Declare.
   4000 	* c-omp.c (c_omp_predetermined_mapping): New.
   4001 
   4002 2020-05-22  Mark Wielaard  <mark (a] klomp.org>
   4003 
   4004 	* known-headers.cc (get_stdlib_header_for_name): Add a new
   4005 	stdlib_hint array for stdbool and stdint.
   4006 
   4007 2020-05-22  Mark Wielaard  <mark (a] klomp.org>
   4008 
   4009 	* known-headers.cc (get_stdlib_header_for_name): Return
   4010 	"<stdbool.h>" for "bool", "true" or "false" when STDLIB_C and
   4011 	flag_isoc99.
   4012 
   4013 2020-05-20  Nathan Sidwell  <nathan (a] acm.org>
   4014 
   4015 	* c-common.c (try_to_locate_new_include_insertion_point): Revert change.
   4016 
   4017 	* c-common.c (try_to_locate_new_include_insertion_point): Use
   4018 	strcmp to compare filenames.
   4019 	* c-lex.c (init_c_lex): Move declaration to initialization.
   4020 	* c-opts.c (handle_deferred_opts): Move cpp_get_deps call into
   4021 	deferred count loop.
   4022 
   4023 2020-05-15  Jason Merrill  <jason (a] redhat.com>
   4024 
   4025 	* c-opts.c (set_std_cxx20): Set flag_coroutines.
   4026 
   4027 2020-05-13  Jason Merrill  <jason (a] redhat.com>
   4028 
   4029 	* c.opt (std=c++20): Make c++2a the alias.
   4030 	(std=gnu++20): Likewise.
   4031 	* c-common.h (cxx_dialect): Change cxx2a to cxx20.
   4032 	* c-opts.c: Adjust.
   4033 	* c-cppbuiltin.c: Adjust.
   4034 	* c-ubsan.c: Adjust.
   4035 	* c-warn.c: Adjust.
   4036 
   4037 2020-05-12  Eric Botcazou  <ebotcazou (a] adacore.com>
   4038 
   4039 	* c-ada-spec.c (dump_ads): Output pragma Warnings ("U"); on entry.
   4040 
   4041 2020-05-08  Nathan Sidwell  <nathan (a] acm.org>
   4042 
   4043 	Reimplement directives only processing.
   4044 	* c-ppoutput.c (token_streamer): Ne.
   4045 	(directives_only_cb): New.  Swallow ...
   4046 	(print_lines_directives_only): ... this.
   4047 	(scan_translation_unit_directives_only): Reimplment using the
   4048 	published interface.
   4049 
   4050 2020-05-07  Marek Polacek  <polacek (a] redhat.com>
   4051 
   4052 	* c-format.c (badwords): Add "nonstatic".
   4053 
   4054 202-05-07  Jakub Jelinek  <jakub (a] redhat.com>
   4055 
   4056 	PR c/94968
   4057 	* c-common.c (speculation_safe_value_resolve_params): Return false if
   4058 	error_operand_p (val2).
   4059 	(resolve_overloaded_builtin) <case BUILT_IN_SPECULATION_SAFE_VALUE_N>:
   4060 	Remove extraneous semicolon.
   4061 
   4062 2020-05-06  qing zhao  <qing.zhao (a] oracle.com>
   4063 
   4064 	PR c/94230
   4065 	* c-indentation.c (get_visual_column): Add a hint to use the new
   4066 	-flarge-source-files option.
   4067 
   4068 2020-05-05  Stefan Schulze Frielinghaus  <stefansf (a] linux.ibm.com>
   4069 
   4070 	* c-attribs.c (handle_vector_size_attribute): Add attribute
   4071 	nonnull for argument args in order to silence warning of
   4072 	uninitialized variable usage.  Since this is local to the
   4073 	compilation unit and thus cannot be checked at call sides by the
   4074 	compiler, added an assert statement in order to verify this.
   4075 
   4076 2020-05-01  H.J. Lu  <hongjiu.lu (a] intel.com>
   4077 
   4078 	PR target/93492
   4079 	* c-attribs.c (handle_patchable_function_entry_attribute): Limit
   4080 	value to USHRT_MAX (65535).
   4081 
   4082 2020-04-29  Jakub Jelinek  <jakub (a] redhat.com>
   4083 
   4084 	* c-format.c (PP_FORMAT_CHAR_TABLE): Add %{ and %}.
   4085 
   4086 2020-04-27  Jakub Jelinek  <jakub (a] redhat.com>
   4087 
   4088 	PR c/94755
   4089 	* c-common.c (resolve_overloaded_builtin): Return error_mark_node for
   4090 	fncode == BUILT_IN_NONE before initialization of first_param.
   4091 
   4092 2020-04-23  Marek Polacek  <polacek (a] redhat.com>
   4093 
   4094 	PR c++/94733
   4095 	* c-attribs.c (find_tm_attribute): Use get_attribute_name instead of
   4096 	TREE_PURPOSE.
   4097 
   4098 2020-04-14  Patrick Palka  <ppalka (a] redhat.com>
   4099 
   4100 	PR c++/85278
   4101 	* c-pretty-print.c (pp_c_pointer) <case REFERENCE_TYPE>: Print a double
   4102 	ampersand if it's an rvalue reference type.
   4103 
   4104 2020-04-13  Martin Sebor  <msebor (a] redhat.com>
   4105 
   4106 	PR c/92326
   4107 	* c-pretty-print.c (c_pretty_printer::direct_abstract_declarator): Avoid
   4108 	printing array bound for flexible array members.
   4109 
   4110 2020-04-13  Iain Sandoe  <iain (a] sandoe.co.uk>
   4111 
   4112 	* c-cppbuiltin.c (c_cpp_builtins): Update coroutines builtin
   4113 	define, per n4861.
   4114 
   4115 2020-04-02  Richard Biener  <rguenther (a] suse.de>
   4116 
   4117 	PR c/94392
   4118 	* c-opts.c (c_common_post_options): Enable -ffinite-loops
   4119 	for -O2 and C++11 or newer.
   4120 
   4121 2020-03-28  Patrick Palka  <ppalka (a] redhat.com>
   4122 
   4123 	* c.opt: Add -fconcepts-diagnostics-depth.
   4124 
   4125 2020-03-27  Martin Sebor  <msebor (a] redhat.com>
   4126 
   4127 	PR c++/94346
   4128 	* c-attribs.c (handle_copy_attribute): Avoid passing expressions
   4129 	to decl_attributes.  Make handling of different kinds of entities
   4130 	more robust.
   4131 
   4132 2020-03-27  Martin Sebor  <msebor (a] redhat.com>
   4133 
   4134 	PR c++/94098
   4135 	* c-attribs.c (handle_access_attribute): Avoid setting TYPE_ATTRIBUTES
   4136 	here.
   4137 
   4138 2020-03-23  Jakub Jelinek  <jakub (a] redhat.com>
   4139 
   4140 	PR c++/91993
   4141 	* c-warn.c (warnings_for_convert_and_check): For expr and/or
   4142 	result being COMPOUND_EXPRs, skip to ultimate rhs.
   4143 
   4144 2020-03-20  Richard Sandiford  <richard.sandiford (a] arm.com>
   4145 
   4146 	PR middle-end/94072
   4147 	* c-common.c (c_common_type_for_mode): Before using a registered
   4148 	built-in type, check that the vectorness of the type matches
   4149 	the vectorness of the mode.
   4150 
   4151 2020-03-17  Jakub Jelinek  <jakub (a] redhat.com>
   4152 
   4153 	* c-common.c (resolve_overloaded_builtin): Fix up duplicated word
   4154 	issue in a diagnostic message.
   4155 
   4156 2020-03-15  Lewis Hyatt  <lhyatt (a] gmail.com>
   4157 
   4158 	* c.opt: Avoid redundancy in the help text.
   4159 
   4160 2020-03-02  Marek Polacek  <polacek (a] redhat.com>
   4161 
   4162 	PR c++/93958 - add missing -std=gnu++20.
   4163 	* c.opt: Add -std=gnu++20.
   4164 
   4165 2020-03-01  Martin Sebor  <msebor (a] redhat.com>
   4166 
   4167 	PR c++/92721
   4168 	* c-attribs.c (append_access_attrs): Correctly handle attribute.
   4169 	(handle_access_attribute): Same.
   4170 
   4171 2020-02-25  Jakub Jelinek  <jakub (a] redhat.com>
   4172 
   4173 	PR c/93858
   4174 	* c-pragma.c (handle_pragma_diagnostic): Add missing ? after
   4175 	"did you mean" hint in diagnostics.
   4176 
   4177 2020-02-15  Jason Merrill  <jason (a] redhat.com>
   4178 
   4179 	* c.opt: Add -std=c++20.
   4180 
   4181 2020-02-14  Eric Botcazou  <ebotcazou (a] adacore.com>
   4182 
   4183 	* c-ada-spec.c: Include bitmap.h.
   4184 	(dump_ada_double_name): Rename into...
   4185 	(dump_anonymous_type_name): ...this.  Always use the TYPE_UID.
   4186 	(dump_ada_array_type): Adjust to above renaming.  Robustify.
   4187 	(dump_nested_types_1): New function copied from...  Add dumped_types
   4188 	parameter and pass it down to dump_nested_type.
   4189 	(dump_nested_types): ...this.  Remove parent parameter.  Just call
   4190 	dump_nested_types_1 on an automatic bitmap.
   4191 	(dump_nested_type): Add dumped_types parameter.
   4192 	<ARRAY_TYPE>: Do not dump it if already present in dumped_types.
   4193 	Adjust recursive calls and adjust to above renaming.
   4194 	(dump_ada_declaration): Adjust call to dump_nested_types.
   4195 	Tidy up and adjust to above renaming.
   4196 	(dump_ada_specs): Initialize and release bitmap obstack.
   4197 
   4198 2020-02-10  Martin Sebor  <msebor (a] redhat.com>
   4199 
   4200 	PR c/93640
   4201 	* c-attribs.c (handle_access_attribute): Correct off-by-one mistakes.
   4202 
   4203 2020-02-10  Jakub Jelinek  <jakub (a] redhat.com>
   4204 
   4205 	PR other/93641
   4206 	* c-format.c (check_plain): Fix up last argument of strncasecmp.
   4207 	Remove useless extra test.
   4208 
   4209 2020-02-03  Julian Brown  <julian (a] codesourcery.com>
   4210 	    Tobias Burnus  <tobias (a] codesourcery.com>
   4211 
   4212 	* c-cppbuiltin.c (c_cpp_builtins): Update _OPENACC define to 201711.
   4213 
   4214 2020-01-29  Jason Merrill  <jason (a] redhat.com>
   4215 
   4216 	PR c++/89357
   4217 	* c-attribs.c (check_cxx_fundamental_alignment_constraints): Remove.
   4218 
   4219 2020-01-23  Jason Merrill  <jason (a] redhat.com>
   4220 
   4221 	* c-warn.c (conversion_warning): Change -Wsign-conversion handling.
   4222 
   4223 2020-01-23  Martin Sebor  <msebor (a] redhat.com>
   4224 
   4225 	PR c/84919
   4226 	* c-common.c (check_function_arguments): Avoid overlap checking
   4227 	of sprintf functions.
   4228 
   4229 2020-01-22  Jason Merrill  <jason (a] redhat.com>
   4230 
   4231 	PR testsuite/93391 - PR 40752 test fails with unsigned plain char.
   4232 	PR c++/40752
   4233 	* c-warn.c (conversion_warning): Check operands only after checking
   4234 	the whole expression.  Don't check second operand of + for sign.
   4235 
   4236 2020-01-21  Jason Merrill  <jason (a] redhat.com>
   4237 	    Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   4238 
   4239 	PR c++/40752 - useless -Wconversion with short +=.
   4240 	* c.opt (-Warith-conversion): New.
   4241 	* c-warn.c (conversion_warning): Recurse for operands of
   4242 	operators.  Only warn about the whole expression with
   4243 	-Warith-conversion.
   4244 
   4245 2020-01-21  Jason Merrill  <jason (a] redhat.com>
   4246 
   4247 	* c-common.c (unsafe_conversion_p): Don't warn, return UNSAFE_SIGN.
   4248 	* c-warn.c (conversion_warning): Warn about UNSAFE_SIGN.
   4249 
   4250 2020-01-20  Nathan Sidwell  <nathan (a] acm.org>
   4251 
   4252 	PR preprocessor/80005
   4253 	* c-cppbuiltins.c (c_cpp_builtins): Don't define __has_include{,_next}.
   4254 
   4255 2020-01-18  Iain Sandoe  <iain (a] sandoe.co.uk>
   4256 
   4257 	* c-common.c (co_await, co_yield, co_return): New.
   4258 	* c-common.h (RID_CO_AWAIT, RID_CO_YIELD,
   4259 	RID_CO_RETURN): New enumeration values.
   4260 	(D_CXX_COROUTINES): Bit to identify coroutines are active.
   4261 	(D_CXX_COROUTINES_FLAGS): Guard for coroutine keywords.
   4262 	* c-cppbuiltin.c (__cpp_coroutines): New cpp define.
   4263 	* c.opt (fcoroutines): New command-line switch.
   4264 
   4265 2020-01-10  David Malcolm  <dmalcolm (a] redhat.com>
   4266 
   4267 	* c-format.c (local_event_ptr_node): New.
   4268 	(PP_FORMAT_CHAR_TABLE): Add entry for "%@".
   4269 	(init_dynamic_diag_info): Initialize local_event_ptr_node.
   4270 	* c-format.h (T_EVENT_PTR): New define.
   4271 
   4272 2020-01-10  Martin Sebor  <msebor (a] redhat.com>
   4273 
   4274 	PR c/93132
   4275 	* c-attribs.c (append_access_attrs): Validate against the translated
   4276 	access string rather than the human-readable representation.
   4277 
   4278 2020-01-01  Jakub Jelinek  <jakub (a] redhat.com>
   4279 
   4280 	Update copyright years.
   4281 
   4282 2019-12-20  Eric Botcazou  <ebotcazou (a] adacore.com>
   4283 
   4284 	* c-ada-spec.h (decl_sloc): Delete.
   4285 	* c-ada-spec.c (decl_sloc): Make static.
   4286 
   4287 2019-12-19  Julian Brown  <julian (a] codesourcery.com>
   4288 
   4289 	* c-common.h (c_omp_map_clause_name): Add prototype.
   4290 	* c-omp.c (c_omp_map_clause_name): New function.
   4291 	* c-pragma.h (pragma_omp_clause): Add PRAGMA_OACC_CLAUSE_ATTACH and
   4292 	PRAGMA_OACC_CLAUSE_DETACH.
   4293 
   4294 2019-12-19  Julian Brown  <julian (a] codesourcery.com>
   4295 	    Maciej W. Rozycki  <macro (a] codesourcery.com>
   4296 	    Tobias Burnus  <tobias (a] codesourcery.com>
   4297 	    Thomas Schwinge  <thomas (a] codesourcery.com>
   4298 
   4299 	* c-pragma.h (pragma_omp_clause): Add
   4300 	PRAGMA_OACC_CLAUSE_NO_CREATE.
   4301 
   4302 2019-12-17  Martin Sebor  <msebor (a] redhat.com>
   4303 
   4304 	PR c++/61339
   4305 	* c.opt (-Wmismatched-tags, -Wredundant-tags): New options.
   4306 
   4307 2019-12-11  David Malcolm  <dmalcolm (a] redhat.com>
   4308 
   4309 	* c-pretty-print.c (c_pretty_printer::clone): New vfunc
   4310 	implementation.
   4311 	* c-pretty-print.h (c_pretty_printer::clone): New vfunc decl.
   4312 
   4313 2019-12-09  David Malcolm  <dmalcolm (a] redhat.com>
   4314 
   4315 	* c-format.c (range_label_for_format_type_mismatch::get_text):
   4316 	Replace label_text ctor called with true with label_text::take.
   4317 
   4318 2019-12-09  David Malcolm  <dmalcolm (a] redhat.com>
   4319 
   4320 	* c-format.c (selftest::test_type_mismatch_range_labels): Remove
   4321 	initial newline from expected outputs.
   4322 	* c-opts.c (c_diagnostic_finalizer): Add pp_newline call before
   4323 	call to diagnostic_show_locus.
   4324 
   4325 2019-12-06  Jakub Jelinek  <jakub (a] redhat.com>
   4326 
   4327 	* c-cppbuiltin.c (c_cpp_builtins): Don't define __cpp_consteval for
   4328 	now.
   4329 
   4330 2019-12-05  Marek Polacek  <polacek (a] redhat.com>
   4331 	    Jakub Jelinek  <jakub (a] redhat.com>
   4332 
   4333 	PR c++/91353 - P1331R2: Allow trivial default init in constexpr contexts.
   4334 	* c-cppbuiltin.c (c_cpp_builtins): Adjust the value of __cpp_constexpr.
   4335 
   4336 2019-12-05  Marek Polacek  <polacek (a] redhat.com>
   4337 
   4338 	PR c++/92271 - make __is_same alias for __is_same_as.
   4339 	* c-common.c: Add __is_same, an alias for __is_same_as.
   4340 
   4341 2019-12-03  Marek Polacek  <polacek (a] redhat.com>
   4342 
   4343 	PR c++/91363 - P0960R3: Parenthesized initialization of aggregates.
   4344 	* c-cppbuiltin.c (c_cpp_builtins): Predefine
   4345 	__cpp_aggregate_paren_init=201902 for -std=c++2a.
   4346 
   4347 2019-11-30  Jan Hubicka  <hubicka (a] ucw.cz>
   4348 
   4349 	* c-attribs.c (handle_symver_attribute): New function
   4350 	(c_common_attributes): Add symver.
   4351 
   4352 2019-11-30  Richard Sandiford  <richard.sandiford (a] arm.com>
   4353 
   4354 	* c-common.c (pointer_int_sum): Use verify_type_context to check
   4355 	whether the target allows pointer arithmetic for the types involved.
   4356 	(c_sizeof_or_alignof_type, c_alignof_expr): Use verify_type_context
   4357 	to check whether the target allows sizeof and alignof operations
   4358 	for the types involved.
   4359 
   4360 2019-11-27  Jason Merrill  <jason (a] redhat.com>
   4361 
   4362 	* c-cppbuiltin.c (c_cpp_builtins): Update __cpp_deduction_guides.
   4363 
   4364 2019-11-26  Jakub Jelinek  <jakub (a] redhat.com>
   4365 
   4366 	PR c++/61414
   4367 	* c-attribs.c (handle_mode_attribute): Add mode attribute to
   4368 	ENUMERAL_TYPEs.
   4369 
   4370 2019-11-25  Joseph Myers  <joseph (a] codesourcery.com>
   4371 
   4372 	PR c/91985
   4373 	* c-common.c (c_common_type_for_mode): Handle decimal
   4374 	floating-point types being NULL_TREE.
   4375 	* c-format.c (get_format_for_type_1): Handle specified types being
   4376 	NULL_TREE.
   4377 	* c-lex.c (interpret_float): Give an error for decimal
   4378 	floating-point constants when decimal floating-point not
   4379 	supported.
   4380 
   4381 2019-11-23  Jakub Jelinek  <jakub (a] redhat.com>
   4382 
   4383 	PR middle-end/83859
   4384 	* c-attribs.c (append_access_attrs): Avoid buffer overflow.  Avoid
   4385 	memory leak.  Use XNEWVEC macro.  Use auto_diagnostic_group to
   4386 	group warning with inform together.
   4387 	(handle_access_attribute): Formatting fix.
   4388 
   4389 2019-11-22  Jakub Jelinek  <jakub (a] redhat.com>
   4390 
   4391 	PR c/90677
   4392 	* c-common.h (identifier_global_tag): Declare.
   4393 	* c-format.c (get_pointer_to_named_type): Renamed to ...
   4394 	(get_named_type): ... this.  Use identifier_global_tag instead of
   4395 	identifier_global_value, handle the return value being a TYPE_P.
   4396 	(init_dynamic_diag_info): Adjust get_pointer_to_named_type callers
   4397 	to call get_named_type instead.  Formatting fixes.
   4398 
   4399 	Implement P1902R1, Missing feature-test macros 2017-2019.
   4400 	* c-cppbuiltin.c (c_cpp_builtins): Bump __cpp_init_captures
   4401 	and __cpp_generic_lambdas for -std=c++2a.  Define
   4402 	__cpp_designated_initializers, __cpp_constexpr_in_decltype and
   4403 	__cpp_consteval for -std=c++2a.  Remove a FIXME comment about
   4404 	__cpp_concepts for -std=c++2a.
   4405 
   4406 2019-11-22  Martin Sebor  <msebor (a] redhat.com>
   4407 
   4408 	PR middle-end/83859
   4409 	* c-attribs.c (handle_access_attribute): New function.
   4410 	(c_common_attribute_table): Add new attribute.
   4411 	(get_argument_type): New function.
   4412 	(append_access_attrs): New function.
   4413 	(get_nonnull_operand): Rename...
   4414 	(get_attribute_operand): ...to this.
   4415 	* c-common.c (get_nonnull_operand): Rename...
   4416 	(get_attribute_operand): ...to this.
   4417 
   4418 2019-11-21  Joseph Myers  <joseph (a] codesourcery.com>
   4419 
   4420 	* c-attribs.c (handle_fallthrough_attribute): Use pedwarn instead
   4421 	of warning.
   4422 
   4423 2019-11-19  Joseph Myers  <joseph (a] codesourcery.com>
   4424 
   4425 	* c-common.c (attribute_fallthrough_p): In C, use pedwarn not
   4426 	warning for standard attributes mixed with fallthrough attributes.
   4427 
   4428 2019-11-15  Joseph Myers  <joseph (a] codesourcery.com>
   4429 
   4430 	* c-attribs.c (handle_fallthrough_attribute): Remove static.
   4431 	* c-common.h (handle_fallthrough_attribute): Declare.
   4432 
   4433 2019-11-15  Joseph Myers  <joseph (a] codesourcery.com>
   4434 
   4435 	* c-attribs.c (handle_deprecated_attribute): Remove static.
   4436 	* c-common.h (handle_deprecated_attribute): Declare.
   4437 
   4438 2019-11-14  Joseph Myers  <joseph (a] codesourcery.com>
   4439 
   4440 	* c-lex.c (lex_charconst): Make CPP_UTF8CHAR constants unsigned
   4441 	char for C.
   4442 
   4443 2019-11-14  Jakub Jelinek  <jakub (a] redhat.com>
   4444 
   4445 	* c-omp.c (c_omp_check_context_selector): Add nvidia to the list of
   4446 	valid vendors.
   4447 
   4448 	* c-omp.c (c_omp_check_context_selector): Handle name lists
   4449 	containing string literals.  Don't diagnose atomic_default_mem_order
   4450 	with multiple props.
   4451 
   4452 2019-11-13  Joseph Myers  <joseph (a] codesourcery.com>
   4453 
   4454 	* c-cppbuiltin.c (builtin_define_float_constants): Also define
   4455 	NORM_MAX constants.  Update call to get_max_float.
   4456 	(LAZY_HEX_FP_VALUES_CNT): Update value to include NORM_MAX
   4457 	constants.
   4458 
   4459 2019-11-13  Eric Botcazou  <ebotcazou (a] adacore.com>
   4460 
   4461 	* c-ada-spec.c (get_underlying_decl): Do not look through typedefs.
   4462 	(dump_forward_type): Do not generate a declaration for function types.
   4463 	(dump_nested_type) <ARRAY_TYPE>: Do not generate a nested declaration
   4464 	of the component type if it is declared in another file.
   4465 
   4466 2019-11-12  Martin Liska  <mliska (a] suse.cz>
   4467 
   4468 	* c-opts.c (c_common_post_options):
   4469 	Use SET_OPTION_IF_UNSET.
   4470 
   4471 2019-11-12  Maciej W. Rozycki  <macro (a] codesourcery.com>
   4472 	    Frederik Harwath  <frederik (a] codesourcery.com>
   4473 
   4474 	gcc/c-family/
   4475 	* c-pragma.h (pragma_kind): Add PRAGMA_OACC_SERIAL enumeration
   4476 	constant.
   4477 	* c-pragma.c (oacc_pragmas): Add "serial" entry.
   4478 
   4479 2019-11-08  Richard Sandiford  <richard.sandiford (a] arm.com>
   4480 
   4481 	* c-common.h (gnu_vector_type_p): New function.
   4482 	* c-common.c (c_build_vec_perm_expr): Require __builtin_shuffle
   4483 	vectors to satisfy gnu_vector_type_p.
   4484 	(c_build_vec_convert): Likewise __builtin_convertvector.
   4485 	(convert_vector_to_array_for_subscript): Likewise when applying
   4486 	implicit vector to array conversion.
   4487 	(scalar_to_vector): Likewise when converting vector-scalar
   4488 	operations to vector-vector operations.
   4489 
   4490 2019-11-08  Joseph Myers  <joseph (a] codesourcery.com>
   4491 
   4492 	* c.opt (Wold-style-definition): Initialize to -1.
   4493 	* c-opts.c (c_common_post_options): Set warn_old_style_definition
   4494 	to flag_isoc2x if not set explicitly.
   4495 
   4496 2019-11-07  Joseph Myers  <joseph (a] codesourcery.com>
   4497 
   4498 	* c-attribs.c (parse_tm_stmt_attr): Handle scoped attributes.
   4499 
   4500 2019-11-05  Jason Merrill  <jason (a] redhat.com>
   4501 
   4502 	* c-opts.c (c_common_post_options): -fconcepts-ts implies
   4503 	-fconcepts.
   4504 
   4505 2019-11-04  Kamlesh Kumar  <kamleshbhalui (a] gmail.com>
   4506 
   4507 	* c-opts.c (c_common_post_options): Update
   4508 	latest_abi_version.
   4509 
   4510 2019-11-02  Jakub Jelinek  <jakub (a] redhat.com>
   4511 
   4512 	* c-common.h (c_omp_get_context_selector): Remove.
   4513 	* c-omp.c (c_omp_get_context_selector): Moved to omp-general.c
   4514 	and renamed to omp_get_context_selector.
   4515 
   4516 	* c-omp.c (c_omp_mark_declare_variant): Use
   4517 	omp_context_selector_set_compare.
   4518 
   4519 	PR c++/88335 - Implement P1073R3: Immediate functions
   4520 	* c-common.h (enum rid): Add RID_CONSTEVAL.
   4521 	* c-common.c (c_common_reswords): Add consteval.
   4522 
   4523 2019-11-01  Martin Sebor  <msebor (a] redhat.com>
   4524 
   4525 	PR middle-end/91679
   4526 	PR middle-end/91647
   4527 	PR middle-end/91463
   4528 	PR middle-end/92312
   4529 	* c-pretty-print.c (direct_abstract_declarator): Print
   4530 	bound in zero-length arrays.
   4531 	* c.opt (-Wzero-length-bounds): New option.
   4532 
   4533 2019-10-30  Nathan Sidwell  <nathan (a] acm.org>
   4534 
   4535 	* c-cppbuiltin.c (c_cpp_builtins): Add 'L' suffix to feature
   4536 	macros.
   4537 
   4538 2019-10-28  Martin Sebor  <msebor (a] redhat.com>
   4539 
   4540 	PR c/66970
   4541 	* c-common.c (c_common_nodes_and_builtins): Call c_define_builtins
   4542 	even when only preprocessing.
   4543 	* c-common.h (names_builtin_p): Declare new function.
   4544 	* c-lex.c (init_c_lex): Set has_builtin.
   4545 	(c_common_has_builtin): Define a new function.
   4546 	* c-ppoutput.c (init_pp_output): Set has_builtin.
   4547 
   4548 2019-10-24  Jakub Jelinek  <jakub (a] redhat.com>
   4549 
   4550 	* c-common.h (c_omp_context_selector_matches): Remove.
   4551 	* c-omp.c (c_omp_context_selector_matches): Remove.
   4552 	* c-attribs.c (c_common_attribute_table): Add
   4553 	"omp declare target {host,nohost,block}" attributes.
   4554 
   4555 2019-10-17  JeanHeyd Meneide  <phdofthehouse (a] gmail.com>
   4556 
   4557 	* c-lex.c (c_common_has_attribute): Update nodiscard value.
   4558 
   4559 2019-10-14  Richard Sandiford  <richard.sandiford (a] arm.com>
   4560 
   4561 	* c-common.h (user_facing_original_type_p): Declare.
   4562 	* c-common.c: Include c-spellcheck.h.
   4563 	(user_facing_original_type_p): New function.
   4564 
   4565 2019-10-12  Jakub Jelinek  <jakub (a] redhat.com>
   4566 
   4567 	* c-common.h (c_omp_mark_declare_variant,
   4568 	c_omp_context_selector_matches): Declare.
   4569 	* c-omp.c: Include attribs.h, gimplify.h, cgraph.h, symbol-summary.h
   4570 	and hsa-common.h.
   4571 	(c_omp_get_context_selector): Support second argument NULL.
   4572 	(c_omp_mark_declare_variant, c_omp_context_selector_matches): New
   4573 	functions.
   4574 	* c-attribs.c (c_common_attribute_table): Remove "omp declare variant"
   4575 	attribute, add "omp declare variant base" and
   4576 	"omp declare variant variant" attributes.
   4577 
   4578 2019-10-11  Joseph Myers  <joseph (a] codesourcery.com>
   4579 
   4580 	* c.opt (Wc11-c2x-compat): Add CPP(cpp_warn_c11_c2x_compat)
   4581 	CppReason(CPP_W_C11_C2X_COMPAT).
   4582 
   4583 2019-10-11  Joseph Myers  <joseph (a] codesourcery.com>
   4584 
   4585 	* c-common.c (c_common_reswords): Do not use D_EXT for _Decimal32,
   4586 	_Decimal64 and _Decimal128.
   4587 
   4588 2019-10-10  Joseph Myers  <joseph (a] codesourcery.com>
   4589 
   4590 	* c-cppbuiltin.c (c_cpp_builtins): Do not define macros for DFP
   4591 	types if DFP not supported.
   4592 
   4593 2019-10-10  Jakub Jelinek  <jakub (a] redhat.com>
   4594 
   4595 	* c-common.h (c_omp_check_context_selector,
   4596 	c_omp_get_context_selector): Declare.
   4597 	* c-omp.c (c_omp_declare_simd_clauses_to_numbers): Fix spelling
   4598 	in diagnostic message.
   4599 	(c_omp_check_context_selector, c_omp_get_context_selector): New
   4600 	functions.
   4601 	* c-attribs.c (c_common_attribute_table): Add "omp declare variant"
   4602 	attribute.
   4603 	(handle_omp_declare_variant_attribute): New function.
   4604 
   4605 2019-10-09  Martin Sebor  <msebor (a] redhat.com>
   4606 
   4607 	PR tree-optimization/90879
   4608 	* c.opt (-Wstring-compare): New option.
   4609 
   4610 2019-10-08  Andrew Sutton  <asutton (a] lock3software.com>
   4611 	    Jason Merrill  <jason (a] redhat.com>
   4612 
   4613 	Update the concepts implementation to conform to the C++20
   4614 	specification, improve compile times, and generally clean up
   4615 	the implementation.
   4616 
   4617 	* c-cppbuiltin.c (c_cpp_builtins): Use new feature test values for
   4618 	concepts when -std=c++2a. Bump __cpp_concepts to 201907.
   4619 	* c.opt: Add -Wconcepts-ts.
   4620 	* c-opts.c (c_common_post_options): Warn when -fconcepts is used
   4621 	with -std=c++2a. Disable warning for -fconcepts in C++20 mode.
   4622 	(set_std_cxx2a): Enable concepts by default.
   4623 
   4624 2019-10-08  Joseph Myers  <joseph (a] codesourcery.com>
   4625 
   4626 	* c-opts.c (c_common_post_options): Set
   4627 	-fno-fp-int-builtin-inexact for C2X.
   4628 
   4629 2019-10-05  Jakub Jelinek  <jakub (a] redhat.com>
   4630 
   4631 	PR c++/91369 - Implement P0784R7: constexpr new
   4632 	* c-cppbuiltin.c (c_cpp_builtins): Predefine
   4633 	__cpp_constexpr_dynamic_alloc=201907 for -std=c++2a.
   4634 
   4635 2019-10-04  Joseph Myers  <joseph (a] codesourcery.com>
   4636 
   4637 	PR c/82752
   4638 	* c-format.c (C_STD_VER): Handle C2x.
   4639 	(C_STD_NAME): Likewise.
   4640 	(strftime_flag_specs): Add 'O' modifier with 'p' flag.
   4641 	(time_char_table): Use separate entry for 'B' and 'b', with 'O'
   4642 	modifier allowed and 'p' flag.
   4643 	* c-format.h (enum format_std_version): Add STD_C2X.
   4644 	(struct format_char_info): Mention 'p' in comment on flags2.
   4645 
   4646 2019-10-01  David Malcolm  <dmalcolm (a] redhat.com>
   4647 
   4648 	* c-opts.c (c_diagnostic_finalizer): Temporarily clear prefix when
   4649 	calling diagnostic_show_locus, rather than destroying it afterwards.
   4650 
   4651 2019-10-01  Jakub Jelinek  <jakub (a] redhat.com>
   4652 
   4653 	PR c++/91925
   4654 	* c-warn.c (check_alignment_of_packed_member): Ignore FIELD_DECLs
   4655 	with NULL DECL_FIELD_OFFSET.
   4656 
   4657 2019-10-01  Richard Sandiford  <richard.sandiford (a] arm.com>
   4658 
   4659 	* c-pretty-print.c (pp_c_specifier_qualifier_list): If a vector type
   4660 	has a type name, use it in preference to the __vector syntax.
   4661 
   4662 2019-09-30  Richard Sandiford  <richard.sandiford (a] arm.com>
   4663 
   4664 	* c-pretty-print.c (pp_c_parameter_type_list): Avoid printing
   4665 	two spaces between a comma and "...".
   4666 
   4667 2019-09-27  Jakub Jelinek  <jakub (a] redhat.com>
   4668 
   4669 	PR c++/88203
   4670 	* c-common.h (c_omp_predefined_variable): Declare.
   4671 	* c-omp.c (c_omp_predefined_variable): New function.
   4672 	(c_omp_predetermined_sharing): Return OMP_CLAUSE_DEFAULT_SHARED
   4673 	for predefined variables.
   4674 
   4675 2019-09-27  Richard Sandiford  <richard.sandiford (a] arm.com>
   4676 
   4677 	* c-common.h (build_function_call_vec): Take the original
   4678 	function decl as an optional final parameter.
   4679 	(check_builtin_function_arguments): Take the original function decl.
   4680 	* c-common.c (check_builtin_function_arguments): Likewise.
   4681 	Handle all built-in functions, not just BUILT_IN_NORMAL ones.
   4682 	Use targetm.check_builtin_call to check BUILT_IN_MD functions.
   4683 
   4684 2019-09-15  Jason Merrill  <jason (a] redhat.com>
   4685 
   4686 	* c-warn.c (warn_logical_operator): Strip location wrappers.  Don't
   4687 	fold_for_warn in "|| mask" warning.
   4688 
   4689 2019-09-10  Martin Liska  <mliska (a] suse.cz>
   4690 
   4691 	* c.opt: Use newly added WarnRemoved.
   4692 
   4693 2019-09-09  Martin Liska  <mliska (a] suse.cz>
   4694 
   4695 	* c.opt: Update comment of removed
   4696 	options that are preserved only for backward
   4697 	compatibility.
   4698 
   4699 2019-09-06  Martin Liska  <mliska (a] suse.cz>
   4700 
   4701 	PR c++/91125
   4702 	* c-common.c: Remove definition of flag_use_repository.
   4703 	* c-common.h: Likewise.
   4704 	* c-opts.c (c_common_handle_option):
   4705 	Do not handle OPT_frepo option.
   4706 	* c.opt: Mark the option with Deprecated.
   4707 
   4708 2019-09-04  Marek Polacek  <polacek (a] redhat.com>
   4709 
   4710 	* c.opt (fdeduce-init-list): Ignored.
   4711 
   4712 2019-09-04  Prathamesh Kulkarni  <prathamesh.kulkarni (a] linaro.org>
   4713 
   4714 	PR c/78736
   4715 	* c.opt (Wenum-conversion): New option.
   4716 
   4717 2019-09-03  Jozef Lawrynowicz  <jozef.l (a] mittosystems.com>
   4718 
   4719 	* c-attribs.c (handle_section_attribute): Call the
   4720 	handle_generic_attribute target hook after performing target
   4721 	independent processing.
   4722 	(handle_noinit_attribute): Likewise.
   4723 
   4724 2019-09-03  Ian Lance Taylor  <iant (a] golang.org>
   4725 
   4726 	* c-cppbuiltin.c (builtin_define_with_hex_fp_value): Always expand
   4727 	when using -fgo-dump-spec.
   4728 
   4729 2019-09-02  Martin Liska  <mliska (a] suse.cz>
   4730 
   4731 	PR c++/91155
   4732 	* c-common.c (fname_as_string): Use cxx_printable_name for
   4733 	__PRETTY_FUNCTION__ same as was used before r265711.
   4734 
   4735 2019-08-28  Marek Polacek  <polacek (a] redhat.com>
   4736 
   4737 	Implement P1152R4: Deprecating some uses of volatile.
   4738 	PR c++/91361
   4739 	* c-opts.c (c_common_post_options): Enable -Wvolatile by
   4740 	default for C++2a, unless -Wno-deprecated.
   4741 	* c.opt (Wvolatile): New warning.
   4742 
   4743 2019-08-28  Marek Polacek  <polacek (a] redhat.com>
   4744 
   4745 	PR c++/91360 - Implement C++20 P1143R2: constinit.
   4746 	* c-common.c (c_common_reswords): Add constinit and __constinit.
   4747 	(keyword_is_decl_specifier): Handle RID_CONSTINIT.
   4748 	* c-common.h (enum rid): Add RID_CONSTINIT, RID_FIRST_CXX20, and
   4749 	RID_LAST_CXX20.
   4750 	(D_CXX20): Define.
   4751 	* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_constinit.
   4752 	* c-format.c (cxx_keywords): Add "constinit".
   4753 	* c.opt (Wc++2a-compat, Wc++20-compat): New options.
   4754 
   4755 2019-08-27  Jakub Jelinek  <jakub (a] redhat.com>
   4756 
   4757 	PR c++/91415
   4758 	* c-common.c (verify_tree): For LSHIFT_EXPR, RSHIFT_EXPR,
   4759 	COMPONENT_REF and ARRAY_REF in cxx_dialect >= cxx17 mode handle it
   4760 	like COMPOUND_EXPR rather than normal expression.
   4761 
   4762 2019-08-23  Iain Sandoe  <iain (a] sandoe.co.uk>
   4763 
   4764 	PR pch/61250
   4765 	* c-lex.c (c_lex_with_flags):  Don't call
   4766 	c_common_no_more_pch () from here.
   4767 
   4768 2019-08-23  Jakub Jelinek  <jakub (a] redhat.com>
   4769 
   4770 	PR middle-end/91283
   4771 	* c-common.c (c_ts18661_flt_eval_method): Use flag_excess_precision
   4772 	instead of flag_excess_precision_cmdline.
   4773 	* c-cppbuiltin.c (c_cpp_flt_eval_method_iec_559): Likewise.
   4774 	* c-opts.c (c_common_post_options): Likewise.
   4775 
   4776 2019-08-22  Martin Sebor  <msebor (a] redhat.com>
   4777 
   4778 	PR middle-end/91490
   4779 	* c-common.c (braced_list_to_string): Add argument and overload.
   4780 	Handle flexible length arrays and unions.
   4781 
   4782 2019-08-21  Eric Botcazou  <ebotcazou (a] adacore.com>
   4783 
   4784 	* c-ada-spec.c (dump_ada_function_declaration): Be prepared for broken
   4785 	function declarations where arguments are missing.  Rename variables.
   4786 
   4787 2019-08-15  Richard Biener  <rguenther (a] suse.de>
   4788 
   4789 	* c-common.c (c_stddef_cpp_builtins): When the GIMPLE FE is
   4790 	enabled, define __SIZETYPE__.
   4791 
   4792 2019-08-14  Christophe Lyon  <christophe.lyon (a] linaro.org>
   4793 
   4794 	* c-attribs.c (c_common_attribute_table): Add "noinit" entry. Add
   4795 	exclusion with "section" attribute.
   4796 	(attr_noinit_exclusions): New table.
   4797 	(handle_noinit_attribute): New function.
   4798 
   4799 2019-08-13  Richard Sandiford  <richard.sandiford (a] arm.com>
   4800 
   4801 	PR middle-end/91421
   4802 	* c-common.c (resolve_overloaded_builtin): Use
   4803 	copy_decl_built_in_function.
   4804 
   4805 2019-08-13  Martin Sebor  <msebor (a] redhat.com>
   4806 
   4807 	PR c/80619
   4808 	* c-format.c (printf_length_specs): Set FMT_LEN_w for "w".
   4809 	(asm_fprintf_length_spec): Same.
   4810 	* c-format.h (format_lengths): Add FMT_LEN_w.
   4811 
   4812 2019-08-10  Jakub Jelinek  <jakub (a] redhat.com>
   4813 
   4814 	* c-pragma.h (enum pragma_omp_clause): Add
   4815 	PRAGMA_OMP_CLAUSE_DEVICE_TYPE.
   4816 
   4817 2019-08-07  Jakub Jelinek  <jakub (a] redhat.com>
   4818 
   4819 	* c-pragma.h (enum pragma_omp_clause): Add
   4820 	PRAGMA_OMP_CLAUSE_USE_DEVICE_ADDR.  Set PRAGMA_OACC_CLAUSE_USE_DEVICE
   4821 	equal to PRAGMA_OMP_CLAUSE_USE_DEVICE_PTR instead of being a separate
   4822 	enumeration value.
   4823 
   4824 2019-08-05  Marek Polacek  <polacek (a] redhat.com>
   4825 
   4826 	PR c++/91338 - Implement P1161R3: Deprecate a[b,c].
   4827 	* c-opts.c (c_common_post_options): Enable -Wcomma-subscript by
   4828 	default for C++2a, unless -Wno-deprecated.
   4829 	* c.opt (Wcomma-subscript): New warning.
   4830 
   4831 2019-07-20  Jakub Jelinek  <jakub (a] redhat.com>
   4832 
   4833 	* c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_LOOP.
   4834 	(enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_BIND.
   4835 	* c-pragma.c (omp_pragmas_simd): Add PRAGMA_OMP_LOOP entry.
   4836 	* c-common.h (enum c_omp_clause_split): Add C_OMP_CLAUSE_SPLIT_LOOP.
   4837 	* c-omp.c (c_omp_split_clauses): Add support for 4 new combined
   4838 	constructs with the loop construct.
   4839 
   4840 2019-07-13  Jakub Jelinek  <jakub (a] redhat.com>
   4841 
   4842 	PR c/91149
   4843 	* c-omp.c (c_omp_split_clauses): Fix a pasto in
   4844 	OMP_CLAUSE_REDUCTION_TASK handling.
   4845 
   4846 2019-07-12  Jakub Jelinek  <jakub (a] redhat.com>
   4847 
   4848 	* c-pragma.h (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_ORDER.
   4849 	* c-omp.c (c_omp_split_clauses): Handle splitting of OMP_CLAUSE_ORDER.
   4850 
   4851 2019-07-09  Martin Sebor  <msebor (a] redhat.com>
   4852 
   4853 	PR c++/61339
   4854 	* c-opts.c (handle_deferred_opts): Change class-key of PODs to struct
   4855 	and others to class.
   4856 	* c-pretty-print.h: Same.
   4857 
   4858 2019-07-09  Martin Sebor  <msebor (a] redhat.com>
   4859 
   4860 	PR c++/61339
   4861 	* c-format.c (check_argument_type): Change class-key from class to
   4862 	struct and vice versa to match convention and avoid -Wclass-is-pod
   4863 	and -Wstruct-no-pod.
   4864 	* c-pretty-print.h: Same.
   4865 
   4866 2019-07-03  Martin Liska  <mliska (a] suse.cz>
   4867 
   4868 	* c-common.c (try_to_locate_new_include_insertion_point): Remove
   4869 	dead assignemts.
   4870 
   4871 2019-07-03  Jakub Jelinek  <jakub (a] redhat.com>
   4872 
   4873 	* c-omp.c (c_omp_split_clauses): Put OMP_CLAUSE_REDUCTION_INSCAN
   4874 	clauses on OMP_FOR rather than OMP_PARALLEL when OMP_FOR is combined
   4875 	with OMP_PARALLEL.
   4876 
   4877 2019-07-02  qing zhao  <qing.zhao (a] oracle.com>
   4878 
   4879 	PR preprocessor/90581
   4880 	* c-opts.c (c_common_handle_option): Handle -fmax-include-depth.
   4881 	* c.opt: Add new option -fmax-include-depth.
   4882 
   4883 2019-06-26  Jason Merrill  <jason (a] redhat.com>
   4884 
   4885 	PR c++/55442 - memory-hog with highly recursive constexpr.
   4886 	* c.opt (fconstexpr-loop-limit): New.
   4887 
   4888 2019-06-25  Jakub Jelinek  <jakub (a] redhat.com>
   4889 
   4890 	PR sanitizer/90954
   4891 	* c-omp.c (c_finish_omp_atomic): Allow tree_invariant_p in addition
   4892 	to SAVE_EXPR in first operand of a COMPOUND_EXPR.
   4893 
   4894 2019-06-25  Jozef Lawrynowicz  <jozef.l (a] mittosystems.com>
   4895 
   4896 	* c-common.c (c_common_nodes_and_builtins): Define
   4897 	alternate "__intN__" name for "__intN" types.
   4898 
   4899 2019-06-24  Jan Hubicka  <jh (a] suse.cz>
   4900 
   4901 	* c-common.c (braced_lists_to_strings): Check that
   4902 	type is array or integer prior checking string flag.
   4903 
   4904 2019-06-21  Matthew Beliveau  <mbelivea (a] redhat.com>
   4905 
   4906 	PR c++/90875 - added -Wswitch-outside-range option
   4907 	* c.opt (Wswitch-outside-range): Added new option.
   4908 	* c-warn.c (c_do_switch_warnings): Use OPT_Wswitch-outside-range.
   4909 
   4910 2019-06-21  Marek Polacek  <polacek (a] redhat.com>
   4911 
   4912 	PR c++/90953 - ICE with -Wmissing-format-attribute.
   4913 	* c-common.c (check_function_arguments_recurse): Use
   4914 	get_attribute_name.
   4915 	(check_missing_format_attribute): Likewise.
   4916 
   4917 2019-06-19  Marek Polacek  <polacek (a] redhat.com>
   4918 
   4919 	PR c++/60364 - noreturn after first decl not diagnosed.
   4920 	* c-attribs.c (handle_noreturn_attribute): No longer static.
   4921 	* c-common.h (handle_noreturn_attribute, attr_noreturn_exclusions):
   4922 	Declare.
   4923 	* c-format.c (check_function_format): Use get_attribute_name.
   4924 
   4925 2019-06-19  Martin Sebor  <msebor (a] redhat.com>
   4926 
   4927 	PR translation/90156
   4928 	* c-format.c (function_format_info::format_type): Adjust type.
   4929 	(function_format_info::is_raw): New member.
   4930 	(decode_format_type): Adjust signature.  Handle "raw" diag attributes.
   4931 	(decode_format_attr): Adjust call to decode_format_type.
   4932 	Avoid a redundant call to convert_format_name_to_system_name.
   4933 	Avoid abbreviating the word "arguments" in a diagnostic.
   4934 	(format_warning_substr): New function.
   4935 	(avoid_dollar_number): Quote dollar sign in a diagnostic.
   4936 	(finish_dollar_format_checking): Same.
   4937 	(check_format_info): Same.
   4938 	(struct baltoks_t): New.
   4939 	(c_opers, c_keywords, cxx_keywords, badwords, contrs): New arrays.
   4940 	(maybe_diag_unbalanced_tokens, check_tokens, check_plain): New
   4941 	functions.
   4942 	(check_format_info_main): Call check_plain.  Use baltoks_t.  Call
   4943 	maybe_diag_unbalanced_tokens.
   4944 	(handle_format_attribute): Spell out the word "arguments" in
   4945 	a diagnostic.
   4946 
   4947 2019-06-11  Matthew Beliveau  <mbelivea (a] redhat.com>
   4948 
   4949 	PR c++/90449 - add -Winaccessible-base option.
   4950 	* c.opt (Winaccessible-base): New option.
   4951 
   4952 2019-06-10  Jakub Jelinek  <jakub (a] redhat.com>
   4953 
   4954 	* c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_SCAN.
   4955 	* c-pragma.c (omp_pragmas_simd): Add #pragma omp scan.
   4956 	* c-omp.c (c_omp_split_clauses): Diagnose inscan reductions on
   4957 	combined/composite constructs where it is not allowed.  Copy over
   4958 	OMP_CLAUSE_REDUCTION_INSCAN.
   4959 
   4960 2019-06-05  Martin Sebor  <msebor (a] redhat.com>
   4961 
   4962 	* c-attribs.c (handle_mode_attribute): Adjust quoting and hyphenation.
   4963 	(handle_alias_ifunc_attribute): Same.
   4964 	(handle_copy_attribute): Same.
   4965 	(handle_weakref_attribute): Same.
   4966 	(handle_nonnull_attribute): Same.
   4967 	* c-warn.c (warn_for_sign_compare): Same.
   4968 	(warn_for_restrict): Same.
   4969 	* c.opt: Same.
   4970 
   4971 2019-06-05  Martin Sebor  <msebor (a] redhat.com>
   4972 
   4973 	* c-pragma.c (handle_pragma_weak): Adjust quoting in a diagnostic.
   4974 	* c.opt (-Wformat-diag): Remove a spurious period.
   4975 
   4976 2019-05-29  Jakub Jelinek  <jakub (a] redhat.com>
   4977 
   4978 	PR c/90628
   4979 	* c-common.c (check_builtin_function_arguments)
   4980 	<case BUILTIN_*_OVERFLOW>: Diagnose pointer to const qualified integer
   4981 	as last argument.
   4982 
   4983 2019-05-23  Eric Botcazou  <ebotcazou (a] adacore.com>
   4984 
   4985 	* c-ada-spec.c (compare_node): Compare the DECL_UIDs as a last resort.
   4986 
   4987 2019-05-22  Martin Liska  <mliska (a] suse.cz>
   4988 
   4989 	PR lto/90500
   4990 	* c-attribs.c (handle_copy_attribute): Do not copy
   4991 	target_clones attribute.
   4992 
   4993 2019-05-21  Eric Botcazou  <ebotcazou (a] adacore.com>
   4994 
   4995 	* c-ada-spec.h (enum cpp_operation): Add IS_ASSIGNMENT_OPERATOR.
   4996 	* c-ada-spec.c (print_assignment_operator): New function.
   4997 	(dump_ada_declaration) <FUNCTION_DECL>: Call it do dump explicit copy
   4998 	assignment operators declared as methods and filter out the others.
   4999 
   5000 2019-05-17  Thomas Schwinge  <thomas (a] codesourcery.com>
   5001 
   5002 	PR c/89433
   5003 	* c-attribs.c (c_common_attribute_table): Set min_len to -1 for
   5004 	"omp declare target".
   5005 
   5006 2019-05-16  Martin Sebor  <msebor (a] redhat.com>
   5007 
   5008 	* c-attribs.c (handle_no_sanitize_attribute): Quote identifiers,
   5009 	keywords, operators, and types in diagnostics.
   5010 	(handle_scalar_storage_order_attribute): Same.
   5011 	(handle_mode_attribute): Same.
   5012 	(handle_visibility_attribute): Same.
   5013 	(handle_assume_aligned_attribute): Same.
   5014 	(handle_no_split_stack_attribute): Same.
   5015 	* c-common.c (shorten_compare): Same.
   5016 	(c_common_truthvalue_conversion): Same.
   5017 	(cb_get_source_date_epoch): Same.
   5018 	* c-lex.c (cb_def_pragma): Quote keywords, operators, and types
   5019 	in diagnostics.
   5020 	(interpret_float): Same.
   5021 	* c-omp.c (c_finish_omp_for): Same.
   5022 	* c-opts.c (c_common_post_options): Same.
   5023 	* c-pch.c (c_common_pch_pragma): Same.
   5024 	* c-pragma.c (pop_alignment): Same.
   5025 	(handle_pragma_pack): Same.
   5026 	(apply_pragma_weak): Same.
   5027 	(handle_pragma_weak): Same.
   5028 	(handle_pragma_scalar_storage_order): Same.
   5029 	(handle_pragma_redefine_extname): Same.
   5030 	(add_to_renaming_pragma_list): Same.
   5031 	(maybe_apply_renaming_pragma): Same.
   5032 	(push_visibility): Same.
   5033 	(handle_pragma_visibility): Same.
   5034 	(handle_pragma_optimize): Same.
   5035 	(handle_pragma_message): Same.
   5036 	* c-warn.c (warn_for_omitted_condop): Same.
   5037 	(lvalue_error): Same.
   5038 
   5039 2019-05-15  Richard Biener  <rguenther (a] suse.de>
   5040 
   5041 	PR c/90474
   5042 	* c-common.c (c_common_mark_addressable_vec): Also mark
   5043 	a COMPOUND_LITERAL_EXPR_DECL addressable similar to
   5044 	c_mark_addressable.
   5045 
   5046 2019-05-06  Nathan Sidwell  <nathan (a] acm.org>
   5047 
   5048 	* c-opts.c (handle_defered_opts): Rename struct deps to struc mkdeps.
   5049 
   5050 2019-04-30  Nathan Sidwell  <nathan (a] acm.org>
   5051 
   5052 	* c-common.c (c_common_init_ts): Use MARK_TS_EXP.  Mark SIZEOF_EXPR.
   5053 
   5054 2019-04-30  Martin Liska  <mliska (a] suse.cz>
   5055 
   5056 	* c-pragma.c (handle_pragma_diagnostic): Provide hints
   5057 	for unknown options.
   5058 
   5059 2019-04-26  Richard Sandiford  <richard.sandiford (a] arm.com>
   5060 
   5061 	* c-warn.c (strict_aliasing_warning): Apply COMPLETE_TYPE_P to
   5062 	the pointer target rather than the pointer itself.
   5063 
   5064 2019-04-19  Jakub Jelinek  <jakub (a] redhat.com>
   5065 
   5066 	PR c/89888
   5067 	* c-common.h (c_add_case_label): Remove orig_type and outside_range_p
   5068 	arguments.
   5069 	(c_do_switch_warnings): Remove outside_range_p argument.
   5070 	* c-common.c (check_case_bounds): Removed.
   5071 	(c_add_case_label): Remove orig_type and outside_range_p arguments.
   5072 	Don't call check_case_bounds.  Fold low_value as well as high_value.
   5073 	* c-warn.c (c_do_switch_warnings): Remove outside_range_p argument.
   5074 	Check for case labels outside of range of original type here and
   5075 	adjust them.
   5076 
   5077 2019-04-12  Jakub Jelinek  <jakub (a] redhat.com>
   5078 
   5079 	PR translation/90041
   5080 	* c.opt (-fhandle-exceptions): Use %< and %> around option names
   5081 	in the Warn diagnostics.
   5082 
   5083 	PR c/89946
   5084 	* c-attribs.c (handle_patchable_function_entry_attribute): Add
   5085 	function comment.  Warn if arguments of the attribute are not positive
   5086 	integer constants.
   5087 
   5088 2019-04-09  Eric Botcazou  <ebotcazou (a] adacore.com>
   5089 
   5090 	* c-ada-spec.c (print_destructor): Deal with deleting destructors.
   5091 	(dump_ada_declaration) <FUNCTION_DECL>: Likewise.
   5092 
   5093 2019-04-07  Eric Botcazou  <ebotcazou (a] adacore.com>
   5094 
   5095 	* c-ada-spec.c (is_float128): New predicate extracted from...
   5096 	(dump_ada_node) <COMPLEX_TYPE>: Use it to recognize __cfloat128.
   5097 	<REAL_TYPE>: ...here.  Call it.
   5098 
   5099 2019-04-05  David Malcolm  <dmalcolm (a] redhat.com>
   5100 
   5101 	PR c/89985
   5102 	* c-warn.c (check_address_or_pointer_of_packed_member): Add
   5103 	auto_diagnostic_group.  Guard inform calls by result of
   5104 	warning_at call.
   5105 
   5106 2019-04-05  Marek Polacek  <polacek (a] redhat.com>
   5107 
   5108 	PR c++/89973 - -Waddress-of-packed-member ICE with invalid conversion.
   5109 	* c-warn.c (check_address_or_pointer_of_packed_member): Check the type
   5110 	of RHS.
   5111 
   5112 2019-04-03  Jason Merrill  <jason (a] redhat.com>
   5113 
   5114 	PR c++/86586 - -fcompare-debug=-Wsign-compare.
   5115 	* c-warn.c (warn_for_sign_compare): Call fold_for_warn.
   5116 
   5117 2019-04-01  Martin Sebor  <msebor (a] redhat.com>
   5118 
   5119 	PR c/89685
   5120 	* c-attribs.c (handle_copy_attribute): Handle references and
   5121 	non-constant expressions.
   5122 
   5123 2019-03-22  Jakub Jelinek  <jakub (a] redhat.com>
   5124 
   5125 	PR c++/87481
   5126 	* c.opt (-fconstexpr-ops-limit=): New option.
   5127 
   5128 2019-03-21  Jakub Jelinek  <jakub (a] redhat.com>
   5129 
   5130 	* c-common.c (per_file_includes_t): Use false as Lazy in hash_set
   5131 	template param.
   5132 
   5133 2019-03-19  Martin Sebor  <msebor (a] redhat.com>
   5134 
   5135 	PR tree-optimization/89688
   5136 	* c-common.c (braced_list_to_string): Make static.
   5137 	(braced_lists_to_strings): Define new function.
   5138 	* c-common.h (braced_list_to_string): Remove.
   5139 	(braced_lists_to_strings): Declare.
   5140 
   5141 2019-03-12  Martin Liska  <mliska (a] suse.cz>
   5142 
   5143 	* c-opts.c (c_common_handle_option): Wrap option with %< and %>.
   5144 
   5145 2019-03-11  Martin Liska  <mliska (a] suse.cz>
   5146 
   5147 	* c-opts.c (c_common_post_options): Wrap apostrophes
   5148 	in gcc internal format with %'.
   5149 
   5150 2019-03-11  Martin Liska  <mliska (a] suse.cz>
   5151 
   5152 	* c-attribs.c (handle_nocf_check_attribute): Wrap an option name
   5153 	in a string format message and fix GNU coding style.
   5154 	* c-common.c (vector_types_convertible_p): Likewise.
   5155 	(c_build_vec_perm_expr): Likewise.
   5156 	* c-indentation.c (get_visual_column): Likewise.
   5157 	* c-opts.c (c_common_handle_option): Likewise.
   5158 	(c_common_post_options): Likewise.
   5159 	(sanitize_cpp_opts): Likewise.
   5160 	* c-pch.c (c_common_pch_pragma): Likewise.
   5161 	* c-pragma.c (handle_pragma_pack): Likewise.
   5162 
   5163 2019-03-08  Jakub Jelinek  <jakub (a] redhat.com>
   5164 
   5165 	PR tree-optimization/89550
   5166 	* c-common.c (c_common_truthvalue_conversion): Only set
   5167 	TREE_NO_WARNING if warning_at returned true.
   5168 	* c-warn.c (overflow_warning, warn_logical_operator): Likewise.
   5169 
   5170 2019-02-25  Sandra Loosemore  <sandra (a] codesourcery.com>
   5171 	    Martin Sebor  <msebor (a] gmail.com>
   5172 
   5173 	* c.opt (Wmissing-attributes): Clean up doc string.
   5174 
   5175 2019-02-25  Jakub Jelinek  <jakub (a] redhat.com>
   5176 
   5177 	PR c/89495
   5178 	* c-format.c (maybe_read_dollar_number): Compute nargnum in
   5179 	HOST_WIDE_INT type to avoid overflows and change overflow_flag
   5180 	checking.
   5181 
   5182 2019-02-22  Richard Biener  <rguenther (a] suse.de>
   5183 
   5184 	* c-pch.c (no_checksum): Remove.
   5185 	(pch_init): Remove assertion that executable_checksum is not
   5186 	all zero.
   5187 	(c_common_valid_pch): Likewise.
   5188 
   5189 2019-02-18  Martin Sebor  <msebor (a] redhat.com>
   5190 
   5191 	PR middle-end/89294
   5192 	* c-common.c (invalid_array_size_error): Handle cst_size_not_constant.
   5193 
   5194 2019-02-16  David Malcolm  <dmalcolm (a] redhat.com>
   5195 
   5196 	PR c++/88680
   5197 	* c-common.c (shorten_compare): Call fold_for_warn on op0 when
   5198 	implementing -Wtype-limits.
   5199 
   5200 2019-02-11  Martin Sebor  <msebor (a] redhat.com>
   5201 
   5202 	PR c++/87996
   5203 	* c-common.c (invalid_array_size_error): New function.
   5204 	(valid_array_size_p): Call it.  Handle size as well as type.
   5205 	* c-common.h (valid_constant_size_p): New function.
   5206 	(enum cst_size_error): New type.
   5207 
   5208 2019-01-31  David Malcolm  <dmalcolm (a] redhat.com>
   5209 
   5210 	PR c/89122
   5211 	* known-headers.cc (get_stdlib_header_for_name): Add
   5212 	{FLT|DBL|LDBL}_{MAX|MIN} to "hints" array.
   5213 
   5214 2019-01-31  Jakub Jelinek  <jakub (a] redhat.com>
   5215 
   5216 	PR libstdc++/88170
   5217 	* c-pretty-print.c (pp_c_enumeration_constant): Print always as
   5218 	a C cast in pp_c_flag_gnu_v3 mode.
   5219 
   5220 2019-01-29  Jakub Jelinek  <jakub (a] redhat.com>
   5221 
   5222 	PR c/86125
   5223 	* c-common.c (c_common_nodes_and_builtins): Build type variants for
   5224 	builtin_structptr_types types even for C.
   5225 
   5226 2019-01-28  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   5227 
   5228 	* c-warn.c (check_address_or_pointer_of_packed_member): Handle the case
   5229 	when rhs is of array type correctly.  Fix handling of nested structures.
   5230 	Fix handling of indirect_ref together with nop_expr and/or addr_expr.
   5231 	(check_and_warn_address_or_pointer_of_packed_member): Fix handling of
   5232 	type casts within nested compound expressions.
   5233 
   5234 2019-01-22  Jakub Jelinek  <jakub (a] redhat.com>
   5235 
   5236 	PR middle-end/88968
   5237 	* c-omp.c (c_finish_omp_atomic): For bitfield atomics, update type
   5238 	variable after using BIT_FIELD_REF.
   5239 
   5240 2019-01-18  H.J. Lu  <hongjiu.lu (a] intel.com>
   5241 
   5242 	PR c/51628
   5243 	PR c/88664
   5244 	* c-common.h (warn_for_address_or_pointer_of_packed_member):
   5245 	Remove the boolean argument.
   5246 	* c-warn.c (check_address_of_packed_member): Renamed to ...
   5247 	(check_address_or_pointer_of_packed_member): This.  Also
   5248 	warn pointer conversion.
   5249 	(check_and_warn_address_of_packed_member): Renamed to ...
   5250 	(check_and_warn_address_or_pointer_of_packed_member): This.
   5251 	Also warn pointer conversion.
   5252 	(warn_for_address_or_pointer_of_packed_member): Remove the
   5253 	boolean argument.  Don't check pointer conversion here.
   5254 
   5255 2019-01-15  Richard Sandiford  <richard.sandiford (a] arm.com>
   5256 
   5257 	PR inline-asm/52813
   5258 	* c.opt (Wdeprecated): Move documentation and variable to common.opt.
   5259 
   5260 2019-01-14  Jakub Jelinek  <jakub (a] redhat.com>
   5261 
   5262 	* c-cppbuiltin.c (c_cpp_builtin): Define __cpp_guaranteed_copy_elision
   5263 	and __cpp_nontype_template_parameter_auto.  Add a comment that
   5264 	__cpp_template_auto is deprecated.
   5265 
   5266 2019-01-14  Tom Honermann  <tom (a] honermann.net>
   5267 
   5268 	Implement P0482R5, char8_t: A type for UTF-8 characters and strings
   5269 	* c-common.c (c_common_reswords): Add char8_t.
   5270 	(fix_string_type): Use char8_t for the type of u8 string literals.
   5271 	(c_common_get_alias_set): char8_t doesn't alias.
   5272 	(c_common_nodes_and_builtins): Define char8_t as a builtin type in
   5273 	C++.
   5274 	(c_stddef_cpp_builtins): Add __CHAR8_TYPE__.
   5275 	(keyword_begins_type_specifier): Add RID_CHAR8.
   5276 	* c-common.h (rid): Add RID_CHAR8.
   5277 	(c_tree_index): Add CTI_CHAR8_TYPE and CTI_CHAR8_ARRAY_TYPE.
   5278 	Define D_CXX_CHAR8_T and D_CXX_CHAR8_T_FLAGS.
   5279 	Define char8_type_node and char8_array_type_node.
   5280 	* c-cppbuiltin.c (cpp_atomic_builtins): Predefine
   5281 	__GCC_ATOMIC_CHAR8_T_LOCK_FREE.
   5282 	(c_cpp_builtins): Predefine __cpp_char8_t.
   5283 	* c-lex.c (lex_string): Use char8_array_type_node as the type of
   5284 	CPP_UTF8STRING.
   5285 	(lex_charconst): Use char8_type_node as the type of CPP_UTF8CHAR.
   5286 	* c-opts.c: If not otherwise specified, enable -fchar8_t when
   5287 	targeting C++2a.
   5288 	* c.opt: Add the -fchar8_t command line option.
   5289 
   5290 2019-01-14  Martin Sebor  <msebor (a] redhat.com>
   5291 
   5292 	PR target/88638
   5293 	* c-attribs.c (positional_argument): Call valid_format_string_type_p
   5294 	and issue errors if it fails.
   5295 	* c-common.h (valid_format_string_type_p): Declare.
   5296 	* c-format.c (valid_stringptr_type_p): Rename...
   5297 	(valid_format_string_type_p): ...to this and make extern.
   5298 	(handle_format_arg_attribute): Adjust to new name.
   5299 	(check_format_string): Same.
   5300 
   5301 2019-01-13  H.J. Lu  <hongjiu.lu (a] intel.com>
   5302 
   5303 	* c-warn.c (warn_for_address_or_pointer_of_packed_member):
   5304 	Replace "may may" with "may" in warning message.
   5305 
   5306 2019-01-07  Jakub Jelinek  <jakub (a] redhat.com>
   5307 
   5308 	PR c++/85052
   5309 	* c-common.h (enum rid): Add RID_BUILTIN_CONVERTVECTOR.
   5310 	(c_build_vec_convert): Declare.
   5311 	* c-common.c (c_build_vec_convert): New function.
   5312 
   5313 2019-01-04  Martin Sebor  <msebor (a] redhat.com>
   5314 
   5315 	PR c/88546
   5316 	* c-attribs.c (handle_copy_attribute): Avoid copying attribute leaf.
   5317 	Handle C++ empty throw specification and C11 _Noreturn.
   5318 	(has_attribute): Also handle C11 _Noreturn.
   5319 
   5320 2019-01-04  Martin Sebor  <msebor (a] redhat.com>
   5321 
   5322 	PR c/88363
   5323 	* c-attribs.c (positional_argument): Also accept enumerated types.
   5324 
   5325 2019-01-01  Jakub Jelinek  <jakub (a] redhat.com>
   5326 
   5327 	Update copyright years.
   5328 
   5329 2018-12-20  H.J. Lu  <hongjiu.lu (a] intel.com>
   5330 
   5331 	PR c/51628
   5332 	* c-common.h (warn_for_address_or_pointer_of_packed_member): New.
   5333 	* c-warn.c (check_alignment_of_packed_member): New function.
   5334 	(check_address_of_packed_member): Likewise.
   5335 	(check_and_warn_address_of_packed_member): Likewise.
   5336 	(warn_for_address_or_pointer_of_packed_member): Likewise.
   5337 	* c.opt: Add -Wno-address-of-packed-member.
   5338 
   5339 2018-12-20  David Malcolm  <dmalcolm (a] redhat.com>
   5340 
   5341 	PR c++/87504
   5342 	* c-warn.c (get_outermost_macro_expansion): New function.
   5343 	(spelled_the_same_p): Use it to unwind the macro expansions, and
   5344 	compare the outermost macro in each nested expansion, rather than
   5345 	the innermost.
   5346 
   5347 2018-12-19  David Malcolm  <dmalcolm (a] redhat.com>
   5348 
   5349 	PR c++/87504
   5350 	* c-common.h (warn_tautological_cmp): Convert 1st param from
   5351 	location_t to const op_location_t &.
   5352 	* c-warn.c (find_array_ref_with_const_idx_r): Call fold_for_warn
   5353 	when testing for INTEGER_CST.
   5354 	(warn_tautological_bitwise_comparison): Convert 1st param from
   5355 	location_t to const op_location_t &; use it to build a
   5356 	binary_op_rich_location, and use this.
   5357 	(spelled_the_same_p): New function.
   5358 	(warn_tautological_cmp): Convert 1st param from location_t to
   5359 	const op_location_t &.  Warn for macro expansions if
   5360 	spelled_the_same_p.  Use binary_op_rich_location.
   5361 
   5362 2018-12-19  David Malcolm  <dmalcolm (a] redhat.com>
   5363 
   5364 	PR c++/43064
   5365 	PR c++/43486
   5366 	* c-common.c (unsafe_conversion_p): Fold any location wrapper.
   5367 	(verify_tree): Handle location wrappers.
   5368 	(c_common_truthvalue_conversion): Strip any location wrapper.
   5369 	Handle CONST_DECL.
   5370 	(fold_offsetof): Strip any location wrapper.
   5371 	(complete_array_type): Likewise for initial_value.
   5372 	(convert_vector_to_array_for_subscript): Call fold_for_warn on the
   5373 	index before checking for INTEGER_CST.
   5374 	* c-pretty-print.c (c_pretty_printer::primary_expression): Don't
   5375 	print parentheses around location wrappers.
   5376 	* c-warn.c (warn_logical_operator): Call fold_for_warn on op_right
   5377 	before checking for INTEGER_CST.
   5378 	(warn_tautological_bitwise_comparison): Call
   5379 	tree_strip_any_location_wrapper on lhs, rhs, and bitop's operand
   5380 	before checking for INTEGER_CST.
   5381 	(readonly_error): Strip any location wrapper.
   5382 	(warn_array_subscript_with_type_char): Strip location wrappers
   5383 	before checking for INTEGER_CST.  Use the location of the index if
   5384 	available.
   5385 
   5386 2018-12-06  Jason Merrill  <jason (a] redhat.com>
   5387 
   5388 	PR c++/88136 - -Wdeprecated-copy false positives
   5389 	* c.opt (Wdeprecated-copy-dtor): New.
   5390 	(Wdeprecated-copy): Move to -Wextra.
   5391 
   5392 2018-11-29  Martin Sebor  <msebor (a] redhat.com>
   5393 
   5394 	PR c/88172
   5395 	PR testsuite/88208
   5396 	* c-attribs.c (common_handle_aligned_attribute): Silently avoid setting
   5397 	alignments to values less than the target requires.
   5398 	(has_attribute): For attribute aligned consider both the attribute
   5399 	and the alignment bits.
   5400 	* c-common.c (c_init_attributes): Optionally issue a warning for
   5401 	zero alignment.
   5402 
   5403 2018-11-28  Martin Sebor  <msebor (a] redhat.com>
   5404 
   5405 	PR c/88065
   5406 	PR c/87297
   5407 	* c-warn.c (sizeof_pointer_memaccess_warning): Bail if source
   5408 	or destination is an error.
   5409 
   5410 2018-11-28  Jakub Jelinek  <jakub (a] redhat.com>
   5411 
   5412 	PR c++/88215
   5413 	* c-ubsan.c: Include langhooks.h.
   5414 	(ubsan_instrument_division): Change gcc_assert that main variants
   5415 	of op0 and op1 types are equal to gcc_checking_assert that the
   5416 	main variants are compatible types.
   5417 
   5418 2018-11-27  Eric Botcazou  <ebotcazou (a] adacore.com>
   5419 
   5420 	* c-ada-spec.c: Include stringpool.h.
   5421 	(has_static_fields): Return false for incomplete types.
   5422 	(is_tagged_type): Likewise.
   5423 	(has_nontrivial_methods): Likewise.
   5424 	(dump_ada_node) <INTEGER_TYPE>: Deal specifically with __int128.
   5425 	(struct overloaded_name_hash): New structure.
   5426 	(struct overloaded_name_hasher): Likewise.
   5427 	(overloaded_names): New global variable.
   5428 	(init_overloaded_names): New static function.
   5429 	(overloaded_name_p): New predicate.
   5430 	(dump_ada_declaration) <TYPE_DECL>: Tidy up and set TREE_VISITED
   5431 	on the TYPE_STUB_DECL of the original type of a typedef, if any.
   5432 	<FUNCTION_DECL>: Bail out for an unsupported overloaded name.
   5433 	Remove always-true condition and dump forward types.
   5434 	(dump_ada_specs): Delete overloaded_names.
   5435 
   5436 2018-11-20  Martin Sebor  <msebor (a] redhat.com>
   5437 
   5438 	* c-attribs.c (type_for_vector_size): New function.
   5439 	(type_valid_for_vector_size): Same.
   5440 	(handle_vector_size_attribute): Move code to the functions above
   5441 	and call them.
   5442 	(validate_attribute, has_attribute): New functions.
   5443 	* c-common.h (has_attribute): Declare.
   5444 	(rid): Add RID_HAS_ATTRIBUTE_EXPRESSION.
   5445 	* c-common.c (c_common_resword): Same.
   5446 
   5447 2018-11-16  Jason Merrill  <jason (a] redhat.com>
   5448 
   5449 	* c-lex.c (c_common_has_attribute): Handle likely/unlikely.
   5450 	* c-attribs.c (attr_cold_hot_exclusions): Make public.
   5451 
   5452 2018-11-16  Jakub Jelinek  <jakub (a] redhat.com>
   5453 
   5454 	PR middle-end/87854
   5455 	* c-common.c (fix_string_type): Reject string literals larger than
   5456 	TYPE_MAX_VALUE (ssizetype) bytes.
   5457 
   5458 2018-11-15  Martin Sebor  <msebor (a] redhat.com>
   5459 
   5460 	PR c++/87541
   5461 	PR c++/87542
   5462 	* c-attribs.c (positional_argument): New function.
   5463 	(handle_alloc_size_attribute): Use it and simplify.
   5464 	(handle_alloc_align_attribute): Same.
   5465 	(handle_assume_aligned_attribute): Same.
   5466 	(handle_nonnull_attribute): Same.
   5467 	* c-common.c (check_function_arguments): Pass fntype to
   5468 	check_function_format.
   5469 	* c-common.h (check_function_format): Add an argument.
   5470 	(PosArgFlags, positional_argument): Declare new type and function.
   5471 	* c-format.c (decode_format_attr): Add arguments.
   5472 	(check_format_string, get_constant): Same.
   5473 	(convert_format_name_to_system_name): Adjust.
   5474 
   5475 2018-11-15  David Malcolm  <dmalcolm (a] redhat.com>
   5476 
   5477 	PR other/19165
   5478 	* c-opts.c (c_diagnostic_finalizer): Add diagnostic_t param.
   5479 
   5480 2018-11-14  Jakub Jelinek  <jakub (a] redhat.com>
   5481 
   5482 	P1236R1 - Signed integers are two's complement
   5483 	* c-warn.c (maybe_warn_shift_overflow): Don't warn for c++2a.
   5484 	* c-ubsan.c (ubsan_instrument_shift): Make signed shifts
   5485 	with in-range second operand well defined for -std=c++2a.
   5486 
   5487 	PR other/88007
   5488 	* c-common.c (parse_optimize_options): Allocate option string from
   5489 	opts_obstack rather than as GC memory.  Move the allocation after
   5490 	warning for invalid option.
   5491 
   5492 2018-11-13  David Malcolm  <dmalcolm (a] redhat.com>
   5493 
   5494 	* c-common.c (c_get_substring_location): Update for renaming of
   5495 	get_source_location_for_substring to get_location_within_string.
   5496 	* c-lex.c: Replace "source_location" with "location_t".
   5497 	* c-opts.c: Likewise.
   5498 	* c-ppoutput.c: Likewise.
   5499 
   5500 2018-11-13  Martin Sebor  <msebor (a] redhat.com>
   5501 
   5502 	PR middle-end/81824
   5503 	* c-attribs.c (handle_copy_attribute): Exclude inlining attributes.
   5504 	(handle_tls_model_attribute): Improve diagnostics.
   5505 
   5506 2018-11-12  Jason Merrill  <jason (a] redhat.com>
   5507 
   5508 	* c-cppbuiltin.c (c_cpp_builtins): Define
   5509 	__cpp_impl_destroying_delete.
   5510 
   5511 	* c-cppbuiltin.c (c_cpp_builtins): Change __cpp_explicit_bool to
   5512 	__cpp_conditional_explicit.
   5513 
   5514 2018-11-09  Martin Sebor  <msebor (a] redhat.com>
   5515 
   5516 	PR middle-end/81824
   5517 	* c-attribs.c (handle_copy_attribute): New function.
   5518 
   5519 2018-11-09  Martin Sebor  <msebor (a] redhat.com>
   5520 
   5521 	PR c/87795
   5522 	* c-common.c (check_user_alignment): Use MAX_OFILE_ALIGNMENT.
   5523 
   5524 2018-11-08  Jakub Jelinek  <jakub (a] redhat.com>
   5525 
   5526 	* c-common.h (c_finish_omp_taskgroup): Add CLAUSES argument.
   5527 	(c_finish_omp_atomic): Replace bool SEQ_CST argument with
   5528 	enum omp_memory_order MEMORY_ORDER.
   5529 	(c_finish_omp_flush): Add MO argument.
   5530 	(c_omp_depend_t_p, c_finish_omp_depobj): Declare.
   5531 	(c_finish_omp_for): Add FINAL_P argument.
   5532 	* c-omp.c: Include memmodel.h.
   5533 	(c_finish_omp_taskgroup): Add CLAUSES argument.  Set
   5534 	OMP_TASKGROUP_CLAUSES to it.
   5535 	(c_finish_omp_atomic): Replace bool SEQ_CST argument with
   5536 	enum omp_memory_order MEMORY_ORDER.  Set OMP_ATOMIC_MEMORY_ORDER
   5537 	instead of OMP_ATOMIC_SEQ_CST.
   5538 	(c_omp_depend_t_p, c_finish_omp_depobj): New functions.
   5539 	(c_finish_omp_flush): Add MO argument, if not MEMMODEL_LAST, emit
   5540 	__atomic_thread_fence call with the given value.
   5541 	(check_omp_for_incr_expr): Formatting fixes.
   5542 	(c_finish_omp_for): Add FINAL_P argument.  Allow NE_EXPR
   5543 	even in OpenMP loops, diagnose if NE_EXPR and incr expression
   5544 	is not constant expression 1 or -1.  Transform NE_EXPR loops
   5545 	with iterators pointers to VLA into LT_EXPR or GT_EXPR loops.
   5546 	(c_omp_check_loop_iv_r): Look for orig decl of C++ range for
   5547 	loops too.
   5548 	(c_omp_split_clauses): Add support for combined
   5549 	#pragma omp parallel master and
   5550 	#pragma omp {,parallel }master taskloop{, simd} constructs.
   5551 	Handle OMP_CLAUSE_IN_REDUCTION.  Handle OMP_CLAUSE_REDUCTION_TASK.
   5552 	Handle OMP_CLAUSE_NONTEMPORAL.  Handle splitting OMP_CLAUSE_IF
   5553 	also to OMP_SIMD.  Copy OMP_CLAUSE_LASTPRIVATE_CONDITIONAL.
   5554 	(c_omp_predetermined_sharing): Don't return
   5555 	OMP_CLAUSE_DEFAULT_SHARED for const qualified decls.
   5556 	* c-pragma.c (omp_pragmas): Add PRAGMA_OMP_DEPOBJ and
   5557 	PRAGMA_OMP_REQUIRES.
   5558 	* c-pragma.h (enum pragma_kind): Likewise.
   5559 	(enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_NONTEMPORAL
   5560 	and PRAGMA_OMP_CLAUSE_{IN,TASK}_REDUCTION.
   5561 
   5562 2018-11-08  David Malcolm  <dmalcolm (a] redhat.com>
   5563 
   5564 	* c-format.c (gcc_dump_printf_char_table): Add entry for %f.
   5565 
   5566 2018-11-08  David Malcolm  <dmalcolm (a] redhat.com>
   5567 
   5568 	* c-format.c (local_cgraph_node_ptr_node): New variable.
   5569 	(gcc_dump_printf_char_table): Add entry for %C.
   5570 	(get_pointer_to_named_type): New function, taken from the handling
   5571 	code for "gimple *" from...
   5572 	(init_dynamic_diag_info): ...here.  Add handling for
   5573 	"cgraph_node *".
   5574 	* c-format.h (T_CGRAPH_NODE): New.
   5575 
   5576 2018-10-19  Jason Merrill  <jason (a] redhat.com>
   5577 
   5578 	* c-cppbuiltin.c (c_cpp_builtins): Add
   5579 	__cpp_nontype_template_parameter_class.
   5580 
   5581 2018-10-31  Nathan Sidwell  <nathan (a] acm.org>
   5582 
   5583 	* c-opts.c (c_finish_options): Force command line macro
   5584 	location.  Refactor to avoid repeating main debug hook.
   5585 	(push_command_line_include): Clarify comment.
   5586 
   5587 	* c-opts.c (c_finish_options): Adjust cpp_force_token_locations call.
   5588 
   5589 2018-10-30  Martin Sebor  <msebor (a] redhat.com>
   5590 
   5591 	PR middle-end/87041
   5592 	* c-format.c (check_format_types): Avoid diagnosing null pointer
   5593 	arguments to printf-family of functions.
   5594 
   5595 2018-10-30  Marek Polacek  <polacek (a] redhat.com>
   5596 
   5597 	Implement P0892R2, explicit(bool).
   5598 	* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_explicit_bool.
   5599 
   5600 2018-10-29  David Malcolm  <dmalcolm (a] redhat.com>
   5601 
   5602 	* name-hint.h (name_hint::take_deferred): New member function.
   5603 
   5604 2018-10-29  David Malcolm  <dmalcolm (a] redhat.com>
   5605 
   5606 	PR c++/56856
   5607 	* c-common.c (check_function_sentinel): Call fold_for_warn on the
   5608 	argument.
   5609 	(check_function_restrict): Rename param "argarray" to
   5610 	"unfolded_argarray", and make a copy named "argarray", calling
   5611 	fold_for_warn on each argument.
   5612 	(check_function_arguments): Add note about responsibility for
   5613 	folding the arguments.
   5614 
   5615 2018-10-17  Joseph Myers  <joseph (a] codesourcery.com>
   5616 
   5617 	* c-common.c (flag_isoc2x): New variable.
   5618 	* c-common.h (clk_c): Update comment to reference C2X.
   5619 	(flag_isoc99, flag_isoc11): Update comments to reference future
   5620 	standard versions in general.
   5621 	(flag_isoc2x): Declare.
   5622 	* c-opts.c (set_std_c2x): New function.
   5623 	(c_common_handle_option): Handle -std=c2x and -std=gnu2x.
   5624 	(set_std_c89, set_std_c99, set_std_c11, set_std_c17): Set
   5625 	flag_isoc2x to 0.
   5626 	* c.opt (Wc11-c2x-compat, std=c2x, std=gnu2x): New options.
   5627 
   5628 2018-10-17  Joseph Myers  <joseph (a] codesourcery.com>
   5629 
   5630 	* c.opt (std=c17, std=c18, std=gnu17, std=gnu18, std=iso9899:2017)
   5631 	(std=iso9899:2018): Document C17 as published in 2018.
   5632 
   5633 2018-10-12  Christophe Lyon  <christophe.lyon (a] linaro.org>
   5634 
   5635 	PR c++/87364
   5636 	* c-pretty-print.c (c_pretty_printer::constant): Fix typo.
   5637 
   5638 2018-10-11  Will Wray  <wjwray (a] gmail.com>
   5639 
   5640 	PR c++/87364
   5641 	* c-pretty-print.h (pp_c_type_cast): Prototype.
   5642 	(pp_c_integer_constant): Likewise.
   5643 	* c-pretty-print.c (pp_c_type_cast): No longer static.
   5644 	(pp_c_integer_constant): Likewise.
   5645 	(pp_c_enumeration_constant): Fix loop termination when finding
   5646 	name of constant.  No longer returns a value.  Call
   5647 	pp_c_integer_constant.
   5648 	(c_pretty_printer::constant): Update for changes to
   5649 	pp_c_enumeration_constant.
   5650 
   5651 2018-10-11  Jakub Jelinek  <jakub (a] redhat.com>
   5652 
   5653 	* c-lex.c (c_common_has_attribute): Return 201803 instead of 20180312
   5654 	for no_unique_address.
   5655 
   5656 2018-10-09  David Malcolm  <dmalcolm (a] redhat.com>
   5657 
   5658 	* c-common.c (c_option_controlling_cpp_error): Rename to...
   5659 	(c_option_controlling_cpp_diagnostic): ...this, and convert
   5660 	"reason" from int to enum.
   5661 	(c_cpp_error): Rename to...
   5662 	(c_cpp_diagnostic): ...this, converting level and reason to enums.
   5663 	* c-common.h (c_cpp_error): Rename to...
   5664 	(c_cpp_diagnostic): ...this, converting level and reason to enums.
   5665 	* c-opts.c (c_common_init_options): Update for renaming.
   5666 
   5667 2018-10-08  Richard Sandiford  <richard.sandiford (a] arm.com>
   5668 
   5669 	PR c/87286
   5670 	* c-common.c (vector_types_compatible_elements_p): Use
   5671 	INTEGRAL_TYPE_P instead of checking only for INTEGER_TYPE.
   5672 
   5673 2018-10-04  Vinay Kumar  <vinay.kumar (a] blackfigtech.com>
   5674 
   5675 	* c-attribs.c (get_priority): Add a warning flag warn_prio_ctor_dtor
   5676 	to generate constructor destructor priority warning.
   5677 	* c.opt (-Wprio-ctor-dtor): New option.
   5678 
   5679 2018-10-01  Jason Merrill  <jason (a] redhat.com>
   5680 
   5681 	* c-lex.c (c_common_has_attribute): Add no_unique_address.
   5682 
   5683 2018-10-01  Eric Botcazou  <ebotcazou (a] adacore.com>
   5684 
   5685 	* c-ada-spec.c (get_underlying_decl): Get to the main type variant.
   5686 	(dump_ada_node): Add const keyword.
   5687 
   5688 2018-09-25  Martin Liska  <mliska (a] suse.cz>
   5689 
   5690 	* c-common.c (c_common_truthvalue_conversion):
   5691 	Remove Pascal from documentation.
   5692 
   5693 2018-09-21  Eric Botcazou  <ebotcazou (a] adacore.com>
   5694 
   5695 	* c-ada-spec.c: Include diagnostic.h.
   5696 	(dump_ada_declaration) <RECORD_TYPE>: Issue a warning on packed layout.
   5697 
   5698 2018-09-19  Marek Polacek  <polacek (a] redhat.com>
   5699 
   5700 	* c.opt (Wclass-conversion): New.
   5701 
   5702 2018-09-17  David Malcolm  <dmalcolm (a] redhat.com>
   5703 
   5704 	* c-format.c (range_label_for_format_type_mismatch::get_text):
   5705 	Update for new param.
   5706 
   5707 2018-09-17  David Malcolm  <dmalcolm (a] redhat.com>
   5708 
   5709 	* c-format.c (format_warning_at_char): Update for introduction of
   5710 	format_string_diagnostic_t.
   5711 	(format_type_warning): Likewise.
   5712 
   5713 2018-09-17  Martin Jambor  <mjambor (a] suse.cz>
   5714 
   5715 	PR c/63886
   5716 	* c.opt (Wabsolute-value): New.
   5717 
   5718 2018-09-06  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   5719 
   5720 	* c-common.c (complete_flexible_array_elts): New helper function.
   5721 	* c-common.h (complete_flexible_array_elts): Declare.
   5722 
   5723 2018-09-02  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   5724 
   5725 	* c-common.c (braced_list_to_string): Remove eval parameter.
   5726 	Add some more checks.  Always create zero-terminated STRING_CST.
   5727 	* c-common.h (braced_list_to_string): Adjust prototype.
   5728 
   5729 2018-08-27  David Malcolm  <dmalcolm (a] redhat.com>
   5730 
   5731 	PR 87091
   5732 	* c-common.c (c_cpp_error): Update for conversion of show_caret_p
   5733 	to a tri-state.
   5734 	(maybe_suggest_missing_token_insertion): Likewise.
   5735 	(maybe_add_include_fixit): Add param "override_location".  If set,
   5736 	and source-printing is enabled, then override the rich_location's
   5737 	primary location with that of the insertion point for the fix-it
   5738 	hint, marking it with SHOW_LINES_WITHOUT_RANGE.
   5739 	* c-common.h (extern void maybe_add_include_fixit): Add bool
   5740 	param.
   5741 	* c-format.c (selftest::test_type_mismatch_range_labels): Update
   5742 	for conversion of show_caret_p to a tri-state.
   5743 	* c-warn.c (warn_for_restrict): Likewise.
   5744 	* known-headers.cc
   5745 	(suggest_missing_header::~suggest_missing_header): Update call to
   5746 	maybe_add_include_fixit to suggest overriding the location, as it
   5747 	is for a note.
   5748 
   5749 2018-08-27  Martin Liska  <mliska (a] suse.cz>
   5750 
   5751 	* c-common.c (check_function_restrict): Use new function
   5752 	fndecl_built_in_p and remove check for FUNCTION_DECL if
   5753 	possible.
   5754 	(check_builtin_function_arguments): Likewise.
   5755 	(reject_gcc_builtin): Likewise.
   5756 	* c-warn.c (sizeof_pointer_memaccess_warning): Likewise.
   5757 
   5758 2018-08-26  Marek Polacek  <polacek (a] redhat.com>
   5759 
   5760 	PR c++/87029, Implement -Wredundant-move.
   5761 	* c.opt (Wredundant-move): New option.
   5762 
   5763 2018-08-21  Marek Polacek  <polacek (a] redhat.com>
   5764 
   5765 	PR c++/86981, Implement -Wpessimizing-move.
   5766 	* c.opt (Wpessimizing-move): New option.
   5767 
   5768 2018-08-20  David Malcolm  <dmalcolm (a] redhat.com>
   5769 
   5770 	PR other/84889
   5771 	* c-attribs.c (common_handle_aligned_attribute): Add
   5772 	auto_diagnostic_group instance.
   5773 	* c-indentation.c (warn_for_misleading_indentation): Likewise.
   5774 	* c-opts.c (c_common_post_options): Likewise.
   5775 	* c-warn.c (warn_logical_not_parentheses): Likewise.
   5776 	(warn_duplicated_cond_add_or_warn): Likewise.
   5777 	(warn_for_multistatement_macros): Likewise.
   5778 
   5779 2018-08-20  Nathan Sidwell  <nathan (a] acm.org>
   5780 
   5781 	* c-ada-spec.c (macro_length, dump_ada_macros): Adjust macro parm
   5782 	access.
   5783 
   5784 2018-08-17  Nathan Sidwell  <nathan (a] acm.org>
   5785 
   5786 	* c-cppbuiltin.c (struct lazy_hex_fp_value_struct): Remove macro
   5787 	field.
   5788 	(laxy_hex_fp_value_count): Make unsigned.
   5789 	(lazy_hex_fp_value): Provided with macro & lazy number.  Directly
   5790 	manipulate the macro.
   5791 	(builtin_defin_with_hex_fp_value): Adjust callback name, use
   5792 	cpp_define_lazily.
   5793 
   5794 2018-08-17  David Malcolm  <dmalcolm (a] redhat.com>
   5795 
   5796 	* c-format.c (enum format_type): Add gcc_dump_printf_format_type.
   5797 	(gcc_dump_printf_length_specs): New.
   5798 	(gcc_dump_printf_flag_pairs): New.
   5799 	(gcc_dump_printf_flag_specs): New.
   5800 	(gcc_dump_printf_char_table): New.
   5801 	(format_types_orig): Add entry for "gcc_dump_printf".
   5802 	(init_dynamic_diag_info): Set up length_char_specs and
   5803 	conversion_specs for gcc_dump_printf_format_type.
   5804 	(handle_format_attribute): Handle gcc_dump_printf_format_type.
   5805 
   5806 2018-08-17  Nathan Sidwell  <nathan (a] acm.org>
   5807 
   5808 	* c-ada-spec.c (macro_length, dump_ada_macros): Constify.
   5809 
   5810 	* c-ada-spec.c: Don't #include "cpp-id-data.h"
   5811 	* c-cppbuiltin.c: Likewise.
   5812 
   5813 2018-08-17  Martin Liska  <mliska (a] suse.cz>
   5814 
   5815 	* c.opt: Remove Warn, Init and Report for options with
   5816 	Ignore/Deprecated flag. Warning is done automatically for
   5817 	Deprecated flags.
   5818 
   5819 2018-08-16  David Malcolm  <dmalcolm (a] redhat.com>
   5820 
   5821 	PR c++/70693
   5822 	* c-common.c (selftest::c_family_tests): Call
   5823 	selftest::c_indentation_c_tests.
   5824 	* c-common.h (selftest::c_indentation_c_tests): New decl.
   5825 	* c-indentation.c: Include "selftest.h".
   5826 	(next_tab_stop): Add "tab_width" param, rather than accessing
   5827 	cpp_opts.
   5828 	(get_visual_column): Likewise.  Clarify comment.  Bulletproof
   5829 	against reading past the end of the line.
   5830 	(get_first_nws_vis_column): Add "tab_width" param.
   5831 	(detect_intervening_unindent): Likewise.
   5832 	(should_warn_for_misleading_indentation): Read tab width from
   5833 	cpp_opts and pass around.
   5834 	(selftest::test_next_tab_stop): New test.
   5835 	(selftest::assert_get_visual_column_succeeds): New function.
   5836 	(ASSERT_GET_VISUAL_COLUMN_SUCCEEDS): New macro.
   5837 	(selftest::assert_get_visual_column_fails): New function.
   5838 	(ASSERT_GET_VISUAL_COLUMN_FAILS): New macro.
   5839 	(selftest::test_get_visual_column): New test.
   5840 	(selftest::c_indentation_c_tests): New function.
   5841 
   5842 2018-08-16  Nathan Sidwell  <nathan (a] acm.org>
   5843 
   5844 	* c-ada-spec.c (count_ada_macro): Use cpp_user_macro_p.
   5845 	(store_ada_macro): Likewise.
   5846 	* c-ppoutput.c (cb_used_define, dump_macro): Likewise.
   5847 	* c-spellcheck.cc (should-suggest_as_macro_p): Likewise,
   5848 
   5849 2018-08-15  David Malcolm  <dmalcolm (a] redhat.com>
   5850 
   5851 	* c-format.c: Include "selftest-diagnostic.h" and
   5852 	"gcc-rich-location.h".
   5853 	(format_warning_at_char): Pass NULL for new label params of
   5854 	format_warning_va.
   5855 	(class indirection_suffix): New class.
   5856 	(class range_label_for_format_type_mismatch): New class.
   5857 	(format_type_warning): Move logic for generating "*" suffix to
   5858 	class indirection_suffix.  Create "fmt_label" and "param_label"
   5859 	to show their types, and pass them to the
   5860 	format_warning_at_substring calls.
   5861 	(selftest::test_type_mismatch_range_labels): New test.
   5862 	(selftest::c_format_c_tests): Call it.
   5863 
   5864 2018-08-13  Martin Sebor  <msebor (a] redhat.com>
   5865 
   5866 	PR tree-optimization/71625
   5867 	* c-common.c (braced_list_to_string): New function.
   5868 	* c-common.h (braced_list_to_string): Declare it.
   5869 
   5870 2018-08-08  Nathan Sidwell  <nathan (a] acm.org>
   5871 
   5872 	* c-common.c (try_to_locate_new_include_inertion_point): Use
   5873 	linemap_included_from_linemap.
   5874 	* c-lex.c (fe_file_change): Use linemap_included_from.
   5875 	* c-ppoutput.c (pp_file_change): Likewise.
   5876 
   5877 2018-08-01  Martin Sebor  <msebor (a] redhat.com>
   5878 
   5879 	PR tree-optimization/86650
   5880 	* c-format.c (gcc_tdiag_char_table): Update comment for "%G".
   5881 	(gcc_cdiag_char_table, gcc_cxxdiag_char_table): Same.
   5882  	(init_dynamic_diag_info): Update from "gcall *" to "gimple *".
   5883  	* c-format.h (T89_G): Update to be "gimple *" rather than
   5884  	"gcall *".
   5885 	(local_gcall_ptr_node): Rename...
   5886  	(local_gimple_ptr_node): ...to this.
   5887 
   5888 2018-07-31  David Malcolm  <dmalcolm (a] redhat.com>
   5889 
   5890 	* c-format.c (PP_FORMAT_CHAR_TABLE): New macro, based on existing
   5891 	table entries for gcc_diag_char_table, and the 'Z' entry from
   5892 	gcc_tdiag_char_table, changing the "chain" entry for 'Z' from
   5893 	&gcc_tdiag_char_table[0] to &gcc_diag_char_table[0].
   5894 	(gcc_diag_char_table): Use PP_FORMAT_CHAR_TABLE, implicitly
   5895 	adding missing "Z" for this table.  Remove erroneous "G" and "K"
   5896 	entries.
   5897 	(gcc_tdiag_char_table): Use PP_FORMAT_CHAR_TABLE.  Remove "v".
   5898 	(gcc_cdiag_char_table): Use PP_FORMAT_CHAR_TABLE.
   5899 	(gcc_cxxdiag_char_table): Use PP_FORMAT_CHAR_TABLE.  Remove "v".
   5900 
   5901 2018-07-31  Richard Earnshaw  <rearnsha (a] arm.com>
   5902 
   5903 	* c-common.c (speculation_safe_resolve_call): New function.
   5904 	(speculation_safe_resolve_params): New function.
   5905 	(speculation_safe_resolve_return): New function.
   5906 	(resolve_overloaded_builtin): Handle __builtin_speculation_safe_value.
   5907 	* c-cppbuiltin.c (c_cpp_builtins): Add pre-define for
   5908 	__HAVE_SPECULATION_SAFE_VALUE.
   5909 
   5910 2018-07-20  David Malcolm  <dmalcolm (a] redhat.com>
   5911 
   5912 	* c-common.c (c_cpp_error): Remove redundant "line_table"
   5913 	parameter from call to rich_location::set_range.
   5914 	(maybe_suggest_missing_token_insertion): Likewise.
   5915 
   5916 2018-07-20  Martin Sebor  <msebor (a] redhat.com>
   5917 
   5918 	PR middle-end/82063
   5919 	* c.opt (-Warray-bounds): Remove redundant -Wall.
   5920 
   5921 2018-07-20  Martin Sebor  <msebor (a] redhat.com>
   5922 
   5923 	PR middle-end/82063
   5924 	* c-common.h (c_common_handle_option): Change function argument
   5925 	to HOST_WIDE_INT.
   5926 	* c-opts.c (c_common_init_options): Same.
   5927 	(c_common_handle_option): Same.  Remove special handling of
   5928 	OPT_Walloca_larger_than_ and OPT_Wvla_larger_than_.
   5929 	* c.opt (-Walloc-size-larger-than, -Walloca-larger-than): Change
   5930 	options to take a HOST_WIDE_INT argument and accept a byte-size
   5931 	suffix.  Initialize.
   5932 	(-Wvla-larger-than): Same.
   5933 	(-Wno-alloc-size-larger-than, -Wno-alloca-larger-than): New.
   5934 	(-Wno-vla-larger-than): Same.
   5935 
   5936 2018-07-12  Jakub Jelinek  <jakub (a] redhat.com>
   5937 
   5938 	* c-attribs.c (c_common_attribute_table): Add
   5939 	"omp declare target implicit" attribute.
   5940 
   5941 2018-07-12  Richard Biener  <rguenther (a] suse.de>
   5942 
   5943 	PR c/86453
   5944 	* c-attribs.c (handle_packed_attribute): Do not build a variant
   5945 	type with TYPE_PACKED, instead ignore the attribute if we may
   5946 	not apply to the original type.
   5947 
   5948 2018-07-10  Jakub Jelinek  <jakub (a] redhat.com>
   5949 
   5950 	PR c++/86443
   5951 	* c-omp.c (c_omp_check_loop_iv_r, c_omp_check_loop_iv): Allow declv
   5952 	to contain TREE_LIST for both the original class iterator and the
   5953 	"last" helper var.
   5954 
   5955 2018-07-07  Eric Botcazou  <ebotcazou (a] adacore.com>
   5956 
   5957 	* c-ada-spec.c (to_ada_name): Remove index parameter.
   5958 	(pp_ada_tree_identifier): Likewise.
   5959 	(dump_ada_macros): Adjust call to to_ada_name.
   5960 	(struct overloaded_name_hash): Delete.
   5961 	(struct overloaded_name_hasher): Likewise.
   5962 	(overloaded_names): Likewise.
   5963 	(compute_overloading_index): Likewise.
   5964 	(dump_ada_decl_name): Do not call compute_overloading_index and
   5965 	adjust calls to pp_ada_tree_identifier.
   5966 	(dump_ada_double_name): Adjust calls to pp_ada_tree_identifier.
   5967 	(dump_ada_import): Add spc parameter and switch to aspect syntax.
   5968 	(dump_ada_function_declaration): Adjust call to pp_ada_tree_identifier.
   5969 	(dump_ada_enum_type): Remove type and display_convention parameters.
   5970 	Adjust calls to pp_ada_tree_identifier.
   5971 	(dump_ada_node): Likewise and for dump_ada_structure.
   5972 	(dump_nested_type) <ENUMERAL_TYPE>: Adjust call to dump_ada_enum_type
   5973 	and tidy up.
   5974 	<RECORD_TYPE>: Adjust call to dump_ada_structure and switch to aspect
   5975 	syntax.
   5976 	(print_constructor): Adjust call to pp_ada_tree_identifier.
   5977 	(print_destructor): Likewise.
   5978 	(dump_ada_declaration): Switch to aspect syntax.
   5979 	(dump_ada_structure): Likewise and tidy up.  Replace display_convention
   5980 	parameter with nested parameter.
   5981 	(dump_ads): Emit pragma Ada_2012 in lieu of pragma Ada_2005.
   5982 	(dump_ada_specs): Do not delete overloaded_names table.
   5983 
   5984 2018-07-06  Peter Bergner  <bergner (a] linux.ibm.com>
   5985 
   5986 	PR target/86324
   5987 	* c-attribs.c (handle_mode_attribute): Call translate_mode_attribute
   5988 	target hook.
   5989 
   5990 2018-07-05  Nathan Sidwell  <nathan (a] acm.org>
   5991 
   5992 	* c-lex.c (fe_file_change): Check SYSTEM_IMPLICIT_EXTERN_C not
   5993 	NO_IMPLICIT_EXTERN_C.
   5994 
   5995 2018-06-28  Martin Liska  <mliska (a] suse.cz>
   5996 
   5997 	* cppspec.c: Include opt-suggestions.h.
   5998 
   5999 2018-06-20  Chung-Lin Tang  <cltang (a] codesourcery.com>
   6000 	    Thomas Schwinge  <thomas (a] codesourcery.com>
   6001 	    Cesar Philippidis  <cesar (a] codesourcery.com>
   6002 
   6003 	* c-pragma.h (enum pragma_omp_clause): Add
   6004 	PRAGMA_OACC_CLAUSE_{FINALIZE,IF_PRESENT}. Remove
   6005 	PRAGMA_OACC_CLAUSE_PRESENT_OR_{COPY,COPYIN,COPYOUT,CREATE}.
   6006 
   6007 2018-06-20  Jakub Jelinek  <jakub (a] redhat.com>
   6008 
   6009 	PR c++/86210
   6010 	* c-common.c (check_nonnull_arg): Use fold_for_warn.  Adjust obsolete
   6011 	comment.
   6012 
   6013 2018-06-18  Martin Sebor  <msebor (a] redhat.com>
   6014 
   6015 	PR middle-end/85602
   6016 	* c-warn.c (sizeof_pointer_memaccess_warning): Check for attribute
   6017 	nonstring.
   6018 
   6019 2018-06-16  Kugan Vivekanandarajah  <kuganv (a] linaro.org>
   6020 
   6021 	* c-common.c (c_common_truthvalue_conversion): Handle ABSU_EXPR.
   6022 
   6023 2018-06-13  Jason Merrill  <jason (a] redhat.com>
   6024 
   6025 	* c-opts.c (c_common_post_options): Warn about useless -Wabi.
   6026 	(c_common_handle_option) [OPT_Wabi_]: Remove flag_abi_compat_version
   6027 	handling.
   6028 
   6029 	PR c++/86094 - wrong code with defaulted move ctor.
   6030 	* c-opts.c (c_common_post_options): Bump the current ABI version to
   6031 	13.  Set warn_abi_version and flag_abi_compat_version to the current
   6032 	version rather than 0.  Fix defaulting flag_abi_compat_version from
   6033 	warn_abi_version.
   6034 
   6035 2018-06-12  Martin Sebor  <msebor (a] redhat.com>
   6036 
   6037 	PR c/85931
   6038 	* c-warn.c (sizeof_pointer_memaccess_warning): Avoid warning when
   6039 	sizeof source and destination yields the same value.
   6040 
   6041 2018-06-12  Martin Liska  <mliska (a] suse.cz>
   6042 
   6043 	* c.opt: Make MPX-related options as Deprecated.
   6044 
   6045 2018-06-08  David Malcolm  <dmalcolm (a] redhat.com>
   6046 
   6047 	* c-pretty-print.c (c_pretty_printer::statement): Use TDF_NONE
   6048 	rather than 0.
   6049 
   6050 2018-06-08  Martin Liska  <mliska (a] suse.cz>
   6051 
   6052 	* c-attribs.c (handle_bnd_variable_size_attribute): Remove support
   6053 	for MPX (macros, related functions, fields in cgraph_node, ...).
   6054 	(handle_bnd_legacy): Likewise.
   6055 	(handle_bnd_instrument): Likewise.
   6056 	* c.opt: Likewise.
   6057 
   6058 2018-06-06  Jakub Jelinek  <jakub (a] redhat.com>
   6059 
   6060 	PR c++/86068
   6061 	* c-cppbuiltin.c (c_cpp_builtins): Fix a typo, set
   6062 	__cpp_transactional_memory to 201500 instead of 210500.
   6063 
   6064 2018-06-06  Jason Merrill  <jason (a] redhat.com>
   6065 
   6066 	PR c++/85710 - ICE with -Wmemset-elt-size.
   6067 	* c-warn.c (warn_for_memset): Don't crash on incomplete element type.
   6068 
   6069 2018-06-01  Jason Merrill  <jason (a] redhat.com>
   6070 
   6071 	* c-cppbuiltin.c (c_cpp_builtins): Bump __cpp_deduction_guides to
   6072 	201703.
   6073 
   6074 2018-06-01  Eric Botcazou  <ebotcazou (a] adacore.com>
   6075 
   6076 	* c-ada-spec.c (dump_ada_declaration) <TYPE_DECL>: Generate a forward
   6077 	declaration for a typedef independently of whether the declaration of
   6078 	the subtype is generated.
   6079 
   6080 2018-05-31  Martin Sebor  <msebor (a] redhat.com>
   6081 
   6082 	PR c/82063
   6083 	* c.opt (-Wno-alloc-size-larger-than): New option.
   6084 
   6085 2018-04-22  David Pagan  <dave.pagan (a] oracle.com>
   6086 
   6087 	PR c/55976
   6088 	* c-opts.c (c_common_post_options): Set default for warn_return_type
   6089 	for C++/C++ with ObjC extensions only. For C, makes it possible to
   6090 	differentiate between default (no option), -Wreturn-type, and
   6091 	-Wno-return-type.
   6092 
   6093 2018-05-29  Jason Merrill  <jason (a] redhat.com>
   6094 
   6095 	* c.opt (Winit-list-lifetime): New flag.
   6096 
   6097 2018-05-28  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   6098 
   6099 	* c-lex.c (get_fileinfo): Use splay_tree_compare_strings and
   6100 	splay_tree_delete_pointers.
   6101 
   6102 2018-05-26  Jakub Jelinek  <jakub (a] redhat.com>
   6103 
   6104 	PR bootstrap/85921
   6105 	* c-warn.c (diagnose_mismatched_attributes): Remove unnecessary
   6106 	noinline variable to workaround broken kernel headers.
   6107 
   6108 2018-05-18  Jason Merrill  <jason (a] redhat.com>
   6109 
   6110 	* c.opt (Wdeprecated-copy): New flag.
   6111 
   6112 2018-05-17  Martin Liska  <mliska (a] suse.cz>
   6113 
   6114 	* c-warn.c (overflow_warning): Do not use
   6115 	space in between 'G_' and '('.
   6116 
   6117 2018-05-09  Jason Merrill  <jason (a] redhat.com>
   6118 
   6119 	* c-common.c (valid_array_size_p): Add complain parameter.
   6120 	* c-common.h: ...which defaults to true.
   6121 
   6122 2018-05-11  Jakub Jelinek  <jakub (a] redhat.com>
   6123 
   6124 	PR c/85696
   6125 	* c-omp.c (c_omp_predetermined_sharing): Return
   6126 	OMP_CLAUSE_DEFAULT_SHARED for artificial vars with integral type.
   6127 
   6128 2018-05-11  Martin Liska  <mliska (a] suse.cz>
   6129 
   6130 	PR sanitizer/85556
   6131 	* c-attribs.c (handle_no_sanitize_attribute): Iterate all
   6132 	TREE_LIST values.
   6133 
   6134 2018-05-10  Jakub Jelinek  <jakub (a] redhat.com>
   6135 
   6136 	PR c++/85662
   6137 	* c-common.h (fold_offsetof_1): Removed.
   6138 	(fold_offsetof): Add TYPE argument defaulted to size_type_node and
   6139 	CTX argument defaulted to ERROR_MARK.
   6140 	* c-common.c (fold_offsetof_1): Renamed to ...
   6141 	(fold_offsetof): ... this.  Remove wrapper function.  Add TYPE
   6142 	argument, convert the pointer constant to TYPE and use size_binop
   6143 	with PLUS_EXPR instead of fold_build_pointer_plus if type is not
   6144 	a pointer type.  Adjust recursive calls.
   6145 
   6146 2018-05-10  Eric Botcazou  <ebotcazou (a] adacore.com>
   6147 
   6148 	PR c++/85400
   6149 	* c-attribs.c (handle_visibility_attribute): Do not set no_add_attrs.
   6150 
   6151 2018-05-07  Nathan Sidwell  <nathan (a] acm.org>
   6152 
   6153 	* c.opt (ffor-scope): Remove functionality, issue warning.
   6154 
   6155 2018-05-03  Nathan Sidwell  <nathan (a] acm.org>
   6156 
   6157 	* c.opt (ffriend-injection): Remove functionality, issue warning.
   6158 
   6159 2018-05-01  David Malcolm  <dmalcolm (a] redhat.com>
   6160 
   6161 	PR c/84258
   6162 	* c-format.c (struct format_check_results): Add field
   6163 	"number_non_char".
   6164 	(check_format_info): Initialize it, and warn if encountered.
   6165 	(check_format_arg): Distinguish between wide char and
   6166 	everything else when detecting arrays of non-char.
   6167 
   6168 2018-04-30  David Malcolm  <dmalcolm (a] redhat.com>
   6169 
   6170 	* c-format.c (get_corrected_substring): Update for
   6171 	location_get_source_line returning a char_span.  Use a char_span
   6172 	when handling the prefix of the correction.
   6173 	* c-indentation.c (get_visual_column): Update for
   6174 	location_get_source_line returning a char_span.
   6175 	(get_first_nws_vis_column): Likewise.
   6176 
   6177 2018-03-29  David Malcolm  <dmalcolm (a] redhat.com>
   6178 
   6179 	PR c++/84269
   6180 	* known-headers.cc (get_stdlib_header_for_name): Add various names
   6181 	from <assert.h>, <string.h>, and <memory.h>; add more names from
   6182 	<stdio.h>.
   6183 
   6184 2018-03-27  Jakub Jelinek  <jakub (a] redhat.com>
   6185 
   6186 	PR c++/85061
   6187 	* c-common.c (fold_offsetof_1) <case COMPOUND_EXPR>: Assert that
   6188 	get_base_address of the second operand is a VAR_P, rather than the
   6189 	operand itself, and use gcc_checking_assert instead of gcc_assert.
   6190 
   6191 2018-03-23  Marek Polacek  <polacek (a] redhat.com>
   6192 
   6193 	PR c++/85045
   6194 	* c-pretty-print.c (c_pretty_printer::multiplicative_expression)
   6195 	<case RDIV_EXPR>: Tweak condition.
   6196 
   6197 2018-03-20  Eric Botcazou  <ebotcazou (a] adacore.com>
   6198 
   6199 	* c-ada-spec.c (pp_ada_tree_identifier): Deal specifically with _Bool.
   6200 
   6201 2018-03-16  Jakub Jelinek  <jakub (a] redhat.com>
   6202 
   6203 	PR c/84909
   6204 	* c-warn.c (conversion_warning): Replace "to to" with "to" in
   6205 	diagnostics.
   6206 
   6207 	PR c/84910
   6208 	* c-warn.c (diagnose_mismatched_attributes): Remove trailing space from
   6209 	diagnostics.
   6210 
   6211 2018-03-16  Richard Biener  <rguenther (a] suse.de>
   6212 
   6213 	PR c/84873
   6214 	* c-gimplify.c (c_gimplify_expr): Revert previous change.  Instead
   6215 	unshare the possibly folded expression.
   6216 
   6217 2018-03-15  Richard Biener  <rguenther (a] suse.de>
   6218 
   6219 	PR c/84873
   6220 	* c-gimplify.c (c_gimplify_expr): Do not fold expressions.
   6221 
   6222 2018-03-13  Martin Sebor  <msebor (a] redhat.com>
   6223 
   6224 	PR tree-optimization/84725
   6225 	* c-attribs.c (handle_nonstring_attribute): Allow attribute nonstring
   6226 	with all three narrow character types, including their qualified forms.
   6227 
   6228 2018-03-12  Martin Sebor  <msebor (a] redhat.com>
   6229 
   6230 	PR tree-optimization/83456
   6231 	* c-common.c (check_function_restrict): Return bool.
   6232 	Restore checking of bounded built-in functions.
   6233 	(check_function_arguments): Also return the result
   6234 	of warn_for_restrict.
   6235 	* c-common.c (check_function_restrict): Return bool.
   6236 	* c-warn.c (warn_for_restrict): Return bool.
   6237 
   6238 2018-03-02  Marek Polacek  <polacek (a] redhat.com>
   6239 
   6240 	PR c++/84171
   6241 	* c-warn.c (warn_for_sign_compare): Bail out if any of the operands
   6242 	is erroneous.
   6243 
   6244 2018-03-02  Thomas Schwinge  <thomas (a] codesourcery.com>
   6245 
   6246 	* c-attribs.c (c_common_attribute_table): Remove "cilk simd
   6247 	function".
   6248 
   6249 2018-03-01  Marek Polacek  <polacek (a] redhat.com>
   6250 
   6251 	PR c++/84639
   6252 	* c-attribs.c (common_handle_aligned_attribute): Don't use invalid
   6253 	alignment in computation.
   6254 
   6255 2018-02-28  Eric Botcazou  <ebotcazou (a] adacore.com>
   6256 
   6257 	* c-ada-spec.c (dump_ada_node) <NULLPTR_TYPE>: New case.
   6258 	<REAL_TYPE>: Deal specifically with _Float128/__float128.
   6259 
   6260 2018-02-28  Eric Botcazou  <ebotcazou (a] adacore.com>
   6261 
   6262 	* c-ada-spec.c (dump_ada_double_name) <ENUMERAL_TYPE>: New case.
   6263 	(is_char_array): Take a type instead of a declaration.
   6264 	(dump_ada_array_type): Likewise.
   6265 	(is_simple_enum): Minor tweak.
   6266 	(dump_ada_enum_type): New function extracted from...
   6267 	(dump_ada_node) <ENUMERAL_TYPE>: ...here.  Invoke it.
   6268 	<INTEGER_TYPE>: Remove unreachable code.
   6269 	<RECORD_TYPE>: Likewise.  Minor tweaks.
   6270 	(dump_nested_type) <ARRAY_TYPE>: Adjust to above changes.
   6271 	<ENUMERAL_TYPE>: New case.
   6272 	<RECORD_TYPE>: Factor out common code.
   6273 	(dump_ada_declaration) <ARRAY_TYPE>: Adjust to above changes.
   6274 	Minor tweaks.  Deal with enumeral types.
   6275 	(dump_ada_structure): Minor tweaks.
   6276 
   6277 2018-02-28  Eric Botcazou  <ebotcazou (a] adacore.com>
   6278 
   6279 	* c-ada-spec.c (dump_ada_node) <POINTER_TYPE>: Do not use generic
   6280 	address for incomplete structures.
   6281 	(dump_forward_type): Do not bail out for incomplete structures.
   6282 	(dump_ada_declaration): Do not special-case incomplete structures
   6283 	for subtypes.  Dump them as null records for types.
   6284 
   6285 2018-02-28  Eric Botcazou  <ebotcazou (a] adacore.com>
   6286 
   6287 	* c-ada-spec.c (dump_ada_import): Use boolean and fix formatting.
   6288 	(is_char_array): Fix formatting.
   6289 	(dump_template_types): Likewise.
   6290 	(dump_generic_ada_node): Rename into...
   6291 	(dump_ada_node): ...this.
   6292 	<POINTER_TYPE>: Remove superfluous space.  Use generic address for
   6293 	incomplete structures and not for empty structures.  Do not use it
   6294 	when forward declarations are needed.
   6295 	(dump_forward_type): New function.
   6296 	(dump_nested_types): Remove FORWARD parameter.  Do not consider
   6297 	TREE_VISITED and do not generate a forward declaration.  Only dump
   6298 	original nested types for nested declaration.
   6299 	(dump_nested_type) <POINTER_TYPE>: Call dump_forward_type.
   6300 	<ARRAY_TYPE>: Likewise if the component type is an anonymous pointer.
   6301 	<RECORD_TYPE>: Do not consider TREE_VISITED.
   6302 	(dump_ada_declaration): Use booleans and fix formatting throughout.
   6303 	<TYPE_DECL>: Skip incomplete structures and not empty structures.
   6304 	Call dump_forward_type instead of dump_nested_types for a typedef.
   6305 	Remove superfluous check and adjust call to dump_nested_types.
   6306 	<POINTER_TYPE>: Call dump_forward_type and fall through.
   6307 	(dump_ada_struct_decl): Rename into...
   6308 	(dump_ada_structure): ...this.  Do not special-case empty structures.
   6309 
   6310 2018-02-27  Martin Sebor  <msebor (a] redhat.com>
   6311 
   6312 	PR c++/83871
   6313 	* c.opt (-Wmissing-attributes): New option.
   6314 
   6315 2018-02-21  Martin Liska  <mliska (a] suse.cz>
   6316 
   6317 	* c.opt (Wcatch-value=): Add IntegerRange.
   6318 
   6319 2018-02-15  Jason Merrill  <jason (a] redhat.com>
   6320 
   6321 	* c-cppbuiltin.c (c_cpp_builtins): Update __cpp_deduction_guides.
   6322 
   6323 2018-02-09  Nathan Sidwell  <nathan (a] acm.org>
   6324 
   6325 	PR c/84293
   6326 	* c-common.h (strict_aliasing_warning): Drop OTYPE arg, insert LOC
   6327 	arg.
   6328 	* c-warn.c (strict_aliasing_warning): Drop OTYPE arg, require LOC
   6329 	arg.  Adjust.
   6330 
   6331 2018-02-09  Martin Sebor  <msebor (a] redhat.com>
   6332 
   6333 	PR lto/84212
   6334 	* c.opt (-Wstringop-overflow, -Warray-bounds): Add LTO.
   6335 	(-Walloc-size-larger-than, -Wformat-truncation=): Same.
   6336 	(-Wmaybe-uninitialized, -Wnonnull, -Wrestrict): Same.
   6337 	(-Wstrict-overflow, -Wsuggest-attribute): Same.
   6338 	(-Wuninitialized): Same.
   6339 
   6340 2018-02-09  Eric Botcazou  <ebotcazou (a] adacore.com>
   6341 
   6342 	* c-ada-spec.c (dump_ada_declaration): Do not generate the 'constant'
   6343 	keyword for components.
   6344 
   6345 2018-02-02  Paolo Carlini  <paolo.carlini (a] oracle.com>
   6346 
   6347 	* c-common.h (DECL_UNNAMED_BIT_FIELD): New.
   6348 
   6349 2018-02-02  Julia Koval  <julia.koval (a] intel.com>
   6350 
   6351 	* c-common.h (omp_clause_mask): Move to wide_int_bitmask.h.
   6352 
   6353 2018-01-29  Marek Polacek  <polacek (a] redhat.com>
   6354 
   6355 	PR c/83966
   6356 	* c-format.c (check_function_format): Check current_function_decl.
   6357 
   6358 2018-01-27  Jakub Jelinek  <jakub (a] redhat.com>
   6359 
   6360 	* c-cppbuiltin.c (c_cpp_builtins): Use ggc_strdup for the fp_suffix
   6361 	argument.
   6362 	(LAZY_HEX_FP_VALUES_CNT): Define.
   6363 	(lazy_hex_fp_values): Allow up to LAZY_HEX_FP_VALUES_CNT lazy hex fp
   6364 	values rather than just 12.
   6365 	(builtin_define_with_hex_fp_value): Likewise.
   6366 
   6367 2018-01-18  Boris Kolpackov  <boris (a] codesynthesis.com>
   6368 
   6369 	PR other/70268
   6370 	* c.opt (-fmacro-prefix-map): New option.
   6371 	* c-opts.c (c_common_handle_option): Handle it.
   6372 	* c-lex.c (init_c_lex): Set remap_filename cpp callback.
   6373 	* c-ppoutput.c (init_pp_output): Likewise.
   6374 
   6375 2018-01-17  David Malcolm  <dmalcolm (a] redhat.com>
   6376 
   6377 	PR c++/83814
   6378 	* c-common.c (fold_for_warn): Move to c/c-fold.c and cp/expr.c.
   6379 
   6380 2018-01-10  Eric Botcazou  <ebotcazou (a] adacore.com>
   6381 
   6382 	* c-ada-spec.c (dump_number): Add FLOAT_P parameter.
   6383 	Skip 'f' and 'F' characters if it is true.
   6384 	(store_ada_macro): Minor tweak.
   6385 	(dump_ada_macros) <CPP_COMMENT>: Likewise.
   6386 	<CPP_WSTRING>: Likewise.
   6387 	<CPP_STRING>: Output '&' in the buffer if not the first string.
   6388 	<CPP_NUMBER>: Adjust calls to dump_number.
   6389 
   6390 2018-01-10  David Malcolm  <dmalcolm (a] redhat.com>
   6391 
   6392 	PR c++/43486
   6393 	* c-common.c: Include "selftest.h".
   6394 	(get_atomic_generic_size): Perform the test for integral type
   6395 	before the range test for any integer constant, fixing indentation
   6396 	of braces.  Call fold_for_warn before testing for an INTEGER_CST.
   6397 	(reject_gcc_builtin): Strip any location wrapper from EXPR.
   6398 	(selftest::test_fold_for_warn): New function.
   6399 	(selftest::c_common_c_tests): New function.
   6400 	(selftest::c_family_tests): Call it, and
   6401 	selftest::c_pretty_print_c_tests.
   6402 	* c-common.h (selftest::c_pretty_print_c_tests): New decl.
   6403 	* c-format.c (check_format_arg): Convert VAR_P check to a
   6404 	fold_for_warn.
   6405 	* c-pretty-print.c: Include "selftest.h".
   6406 	(pp_c_cast_expression): Don't print casts for location wrappers.
   6407 	(selftest::assert_c_pretty_printer_output): New function.
   6408 	(ASSERT_C_PRETTY_PRINTER_OUTPUT): New macro.
   6409 	(selftest::test_location_wrappers): New function.
   6410 	(selftest::c_pretty_print_c_tests): New function.
   6411 	* c-warn.c (warn_for_memset): Call fold_for_warn on the arguments.
   6412 
   6413 2018-01-03  Richard Sandiford  <richard.sandiford (a] linaro.org>
   6414 	    Alan Hayward  <alan.hayward (a] arm.com>
   6415 	    David Sherwood  <david.sherwood (a] arm.com>
   6416 
   6417 	* c-common.c (c_common_type_for_mode): Handle MODE_VECTOR_BOOL.
   6418 
   6419 2018-01-03  Richard Sandiford  <richard.sandiford (a] linaro.org>
   6420 	    Alan Hayward  <alan.hayward (a] arm.com>
   6421 	    David Sherwood  <david.sherwood (a] arm.com>
   6422 
   6423 	* c-ubsan.c (ubsan_instrument_shift): Treat GET_MODE_BITSIZE
   6424 	as polynomial.
   6425 
   6426 2018-01-03  Richard Sandiford  <richard.sandiford (a] linaro.org>
   6427 	    Alan Hayward  <alan.hayward (a] arm.com>
   6428 	    David Sherwood  <david.sherwood (a] arm.com>
   6429 
   6430 	* c-common.c (vector_types_convertible_p, c_build_vec_perm_expr)
   6431 	(convert_vector_to_array_for_subscript): Handle polynomial
   6432 	TYPE_VECTOR_SUBPARTS.
   6433 	(c_common_type_for_mode): Check valid_vector_subparts_p.
   6434 	* c-pretty-print.c (pp_c_initializer_list): Handle polynomial
   6435 	VECTOR_CST_NELTS.
   6436 
   6437 2018-01-03  Jakub Jelinek  <jakub (a] redhat.com>
   6438 
   6439 	Update copyright years.
   6440 
   6441 2017-12-22  Mike Stump  <mikestump (a] comcast.net>
   6442 	    Eric Botcazou  <ebotcazou (a] adacore.com>
   6443 
   6444 	* c-pragma.c (init_pragma): Register pragma GCC unroll.
   6445 	* c-pragma.h (enum pragma_kind): Add PRAGMA_UNROLL.
   6446 
   6447 2017-12-22  Alexandre Oliva  <aoliva (a] redhat.com>
   6448 
   6449 	PR debug/83527
   6450 	PR debug/83419
   6451 	* c-semantics.c (only_debug_stmts_after_p): New.
   6452 	(pop_stmt_list): Clear side effects in debug-only stmt list.
   6453 	Check for single nondebug stmt followed by debug stmts only.
   6454 
   6455 2017-12-21  Alexandre Oliva  <aoliva (a] redhat.com>
   6456 
   6457 	PR debug/83419
   6458 	* c-semantics.c (pop_stmt_list): Propagate side effects from
   6459 	single nondebug stmt to container list.
   6460 
   6461 2017-12-19  Jakub Jelinek  <jakub (a] redhat.com>
   6462 
   6463 	* known-headers.cc (get_stdlib_header_for_name): Replace Yoda
   6464 	conditions with typical order conditions.
   6465 
   6466 2017-12-18  Marek Polacek  <polacek (a] redhat.com>
   6467 
   6468 	* c-warn.c (warn_logical_operator): Return early if -Wlogical-op is
   6469 	not in effect.
   6470 
   6471 2017-12-17  Martin Sebor  <msebor (a] redhat.com>
   6472 
   6473 	* c-attribs.c (common_handle_aligned_attribute): Avoid issuing
   6474 	an error for attribute warn_if_not_aligned.
   6475 
   6476 2017-12-16  Martin Sebor  <msebor (a] redhat.com>
   6477 
   6478 	PR tree-optimization/78918
   6479 	* c-common.c (check_function_restrict): Avoid checking built-ins.
   6480 	* c.opt (-Wrestrict): Include in -Wall.
   6481 
   6482 2017-12-15  Jakub Jelinek  <jakub (a] redhat.com>
   6483 
   6484 	* c-attribs.c (c_common_attribute_table,
   6485 	c_common_format_attribute_table): Swap affects_type_identity
   6486 	and handler fields, adjust comments.
   6487 
   6488 2017-12-14  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   6489 
   6490 	* c.opt (Wcast-function-type): New warning option.
   6491 	* c-lex.c (get_fileinfo): Avoid warning.
   6492 	* c-ppoutput.c (scan_translation_unit_directives_only): Remove cast.
   6493 
   6494 2017-12-14  Qing Zhao  <qing.zhao (a] oracle.com>
   6495 
   6496 	PR middle_end/79538
   6497 	* c-cppbuiltin.c (builtin_define_with_hex_fp_value):
   6498 	Adjust the size of buf1 and buf2, add a new buf to avoid
   6499 	format-overflow warning.
   6500 
   6501 2017-12-12  Alexandre Oliva  <aoliva (a] redhat.com>
   6502 
   6503 	* c-semantics.c (pop_stmt_list): Move begin stmt marker into
   6504 	subsequent statement list.
   6505 
   6506 2017-12-07  Martin Sebor  <msebor (a] redhat.com>
   6507 
   6508 	PR c/81544
   6509 	PR c/81566
   6510 	* c-attribs.c (attr_aligned_exclusions): New array.
   6511 	(attr_alloc_exclusions, attr_cold_hot_exclusions): Same.
   6512 	(attr_common_exclusions, attr_const_pure_exclusions): Same.
   6513 	(attr_gnu_inline_exclusions, attr_inline_exclusions): Same.
   6514 	(attr_noreturn_exclusions, attr_returns_twice_exclusions): Same.
   6515 	(attr_warn_unused_result_exclusions): Same.
   6516 	(handle_hot_attribute, handle_cold_attribute): Simplify.
   6517 	(handle_const_attribute): Warn on function returning void.
   6518 	(handle_pure_attribute): Same.
   6519 	(handle_aligned_attribute): Diagnose conflicting attribute
   6520 	specifications.
   6521 	* c-warn.c (diagnose_mismatched_attributes): Simplify.
   6522 
   6523 2017-12-06  David Malcolm  <dmalcolm (a] redhat.com>
   6524 
   6525 	PR c/83236
   6526 	* c-common.c (selftest::c_family_tests): Call
   6527 	selftest::c_spellcheck_cc_tests.
   6528 	* c-common.h (selftest::c_spellcheck_cc_tests): New decl.
   6529 	* c-spellcheck.cc: Include "selftest.h".
   6530 	(name_reserved_for_implementation_p): New function.
   6531 	(should_suggest_as_macro_p): New function.
   6532 	(find_closest_macro_cpp_cb): Move the check for NT_MACRO to
   6533 	should_suggest_as_macro_p and call it.
   6534 	(selftest::test_name_reserved_for_implementation_p): New function.
   6535 	(selftest::c_spellcheck_cc_tests): New function.
   6536 	* c-spellcheck.h (name_reserved_for_implementation_p): New decl.
   6537 
   6538 2017-12-06  David Malcolm  <dmalcolm (a] redhat.com>
   6539 
   6540 	* c-spellcheck.cc: New file, taken from macro-handling code in
   6541 	spellcheck-tree.c.
   6542 	* c-spellcheck.h: New file, taken from macro-handling code in
   6543 	spellcheck-tree.h.
   6544 
   6545 2017-12-01  Jakub Jelinek  <jakub (a] redhat.com>
   6546 
   6547 	* c-attribs.c (c_common_attribute_table): Remove "cilk simd function"
   6548 	attribute.
   6549 	(handle_simd_attribute): Don't check for "cilk simd function"
   6550 	attribute.  Reindent, formatting changes.
   6551 
   6552 2017-11-30  Julia Koval  <julia.koval (a] intel.com>
   6553 
   6554 	* c-common.h (inv_list): Remove.
   6555 
   6556 2017-11-28  Jakub Jelinek  <jakub (a] redhat.com>
   6557 
   6558 	PR sanitizer/81275
   6559 	* c-common.c (c_switch_covers_all_cases_p_1,
   6560 	c_switch_covers_all_cases_p): New functions.
   6561 	* c-common.h (c_switch_covers_all_cases_p): Declare.
   6562 
   6563 2017-11-28  Julia Koval  <julia.koval (a] intel.com>
   6564 	    Sebastian Peryt  <sebastian.peryt (a] intel.com>
   6565 
   6566 	* array-notation-common.c: Delete.
   6567 	* c-cilkplus.c: Ditto.
   6568 	* c-common.c (_Cilk_spawn, _Cilk_sync, _Cilk_for): Remove.
   6569 	* c-common.def (ARRAY_NOTATION_REF): Remove.
   6570 	* c-common.h (RID_CILK_SPAWN, build_array_notation_expr,
   6571 	build_array_notation_ref, C_ORT_CILK, c_check_cilk_loop,
   6572 	c_validate_cilk_plus_loop, cilkplus_an_parts,
   6573 	cilk_ignorable_spawn_rhs_op,
   6574 	cilk_recognize_spawn): Remove.
   6575 	* c-gimplify.c (CILK_SPAWN_STMT): Remove.
   6576 	* c-omp.c: Remove CILK_SIMD check.
   6577 	* c-pragma.c: Ditto.
   6578 	* c-pragma.h: Remove CILK related pragmas.
   6579 	* c-pretty-print.c (c_pretty_printer::postfix_expression): Remove
   6580 	ARRAY_NOTATION_REF condition.
   6581 	(c_pretty_printer::expression): Ditto.
   6582 	* c.opt (fcilkplus): Remove.
   6583 	* cilk.c: Delete.
   6584 
   6585 2017-11-21  Marc Glisse  <marc.glisse (a] inria.fr>
   6586 
   6587 	* c-pretty-print.c (pp_c_additive_expression,
   6588 	c_pretty_printer::expression): Handle POINTER_DIFF_EXPR.
   6589 
   6590 2017-11-21  Jakub Jelinek  <jakub (a] redhat.com>
   6591 
   6592 	* c-common.c (get_nonnull_operand): Use tree_to_uhwi.
   6593 
   6594 	PR c++/83059
   6595 	* c-common.c (get_atomic_generic_size): Use TREE_INT_CST_LOW
   6596 	instead of tree_to_uhwi, formatting fix.
   6597 
   6598 2017-11-20  David Malcolm  <dmalcolm (a] redhat.com>
   6599 
   6600 	PR c/81404
   6601 	* known-headers.cc: New file, based on material from c/c-decl.c.
   6602 	(suggest_missing_header): Copied as-is.
   6603 	(get_stdlib_header_for_name): New, based on get_c_name_hint but
   6604 	heavily edited to add C++ support.  Add some knowledge about
   6605 	<limits.h>, <stdint.h>, and <wchar.h>.
   6606 	* known-headers.h: Likewise.
   6607 
   6608 2017-11-20  David Malcolm  <dmalcolm (a] redhat.com>
   6609 
   6610 	* c-common.h (enum lookup_name_fuzzy_kind): Move to name-hint.h.
   6611 	(lookup_name_fuzzy): Likewise.  Convert return type from
   6612 	const char * to name_hint.  Add location_t param.
   6613 	* name-hint.h: New header.
   6614 
   6615 2017-11-19  Jakub Jelinek  <jakub (a] redhat.com>
   6616 
   6617 	PR c/66618
   6618 	PR c/69960
   6619 	* c-common.h (c_fully_fold): Add LVAL argument defaulted to false.
   6620 
   6621 2017-11-16  Joseph Myers  <joseph (a] codesourcery.com>
   6622 
   6623 	* c.opt (-std=c17, std=gnu17, -std=iso9899:2017): Refer to 2018
   6624 	expected publication date of C17.
   6625 	(-std=c18, -std=gnu18, -std=iso9899:2018): New option aliases.
   6626 
   6627 2017-11-15  Joseph Myers  <joseph (a] codesourcery.com>
   6628 
   6629 	PR c/81156
   6630 	* c-common.c (c_common_reswords): Add __builtin_tgmath.
   6631 	* c-common.h (enum rid): Add RID_BUILTIN_TGMATH.
   6632 
   6633 2017-11-10  Martin Sebor  <msebor (a] redhat.com>
   6634 
   6635 	PR c/81117
   6636 	* c-common.c (catenate_strings): Use memcpy instead of strncpy.
   6637 	* c-warn.c (sizeof_pointer_memaccess_warning): Handle arrays.
   6638 	* c.opt (-Wstringop-truncation): New option.
   6639 
   6640 2017-11-06  Martin Liska  <mliska (a] suse.cz>
   6641 
   6642 	PR middle-end/82404
   6643 	* c-opts.c (c_common_post_options): Set -Wreturn-type for C++
   6644 	FE.
   6645 	* c.opt: Set default value of warn_return_type.
   6646 
   6647 2017-10-31  David Malcolm  <dmalcolm (a] redhat.com>
   6648 
   6649 	* c-common.c (binary_op_error): Update for renaming of
   6650 	error_at_rich_loc.
   6651 	(c_parse_error): Likewise.
   6652 	* c-warn.c (warn_logical_not_parentheses): Likewise for
   6653 	renaming of inform_at_rich_loc.
   6654 	(warn_for_restrict): Likewise for renaming of
   6655 	warning_at_rich_loc_n.
   6656 
   6657 2017-10-30  Joseph Myers  <joseph (a] codesourcery.com>
   6658 
   6659 	* c.opt (std=c17, std=gnu17, std=iso9899:2017): New options.
   6660 	* c-opts.c (set_std_c17): New function.
   6661 	(c_common_init_options): Use gnu17 as default C version.
   6662 	(c_common_handle_option): Handle -std=c17 and -std=gnu17.
   6663 
   6664 2017-10-27  Michael Meissner  <meissner (a] linux.vnet.ibm.com>
   6665 
   6666 	* c-cppbuiltin.c (mode_has_fma): Add support for PowerPC KFmode.
   6667 	(c_cpp_builtins): If a machine has a fast fma _Float<N> and
   6668 	_Float<N>X variant, define __FP_FAST_FMA<N> and/or
   6669 	__FP_FAST_FMA<N>X.
   6670 
   6671 2017-10-23  Marek Polacek  <polacek (a] redhat.com>
   6672 
   6673 	PR c/82681
   6674 	* c-warn.c (warnings_for_convert_and_check): Fix typos.
   6675 
   6676 2017-10-19  Eric Botcazou  <ebotcazou (a] adacore.com>
   6677 
   6678 	* c-common.c (check_builtin_function_arguments): Also check arguments
   6679 	of __builtin_alloca_with_align_and_max.
   6680 
   6681 2017-10-17  David Malcolm  <dmalcolm (a] redhat.com>
   6682 
   6683 	* c-format.c (format_warning_at_char): Pass UNKNOWN_LOCATION
   6684 	rather than NULL to format_warning_va.
   6685 	(check_format_types): Likewise when calling format_type_warning.
   6686 	Remove code to extract source_ranges and source_range * in favor
   6687 	of just a location_t.
   6688 	(format_type_warning): Convert source_range * param to a
   6689 	location_t.
   6690 
   6691 2017-10-13  Jakub Jelinek  <jakub (a] redhat.com>
   6692 
   6693 	* c-gimplify.c (c_gimplify_expr): Handle [LR]ROTATE_EXPR like
   6694 	[LR]SHIFT_EXPR.
   6695 
   6696 2017-10-12  David Malcolm  <dmalcolm (a] redhat.com>
   6697 
   6698 	* c-common.c (enum missing_token_insertion_kind): New enum.
   6699 	(get_missing_token_insertion_kind): New function.
   6700 	(maybe_suggest_missing_token_insertion): New function.
   6701 	* c-common.h (maybe_suggest_missing_token_insertion): New decl.
   6702 
   6703 2017-10-11  Nathan Sidwell  <nathan (a] acm.org>
   6704 
   6705 	* c-opts.c (add_prefixed_path): Change chain to incpath_kind.
   6706 	(c_common_handle_option): Update incpath_kind names.
   6707 
   6708 2017-10-11  Martin Liska  <mliska (a] suse.cz>
   6709 
   6710 	PR sanitizer/82490
   6711 	* c-attribs.c (handle_no_sanitize_attribute): Report directly
   6712 	Wattributes warning.
   6713 
   6714 2017-10-10  Richard Sandiford  <richard.sandiford (a] linaro.org>
   6715 
   6716 	* c-ada-spec.c (dump_generic_ada_node): Use wi::to_wide when
   6717 	operating on trees as wide_ints.
   6718 	* c-common.c (pointer_int_sum): Likewise.
   6719 	* c-pretty-print.c (pp_c_integer_constant): Likewise.
   6720 	* c-warn.c (match_case_to_enum_1): Likewise.
   6721 	(c_do_switch_warnings): Likewise.
   6722 	(maybe_warn_shift_overflow): Likewise.
   6723 
   6724 2017-10-10  Jakub Jelinek  <jakub (a] redhat.com>
   6725 
   6726 	PR c/82437
   6727 	* c-warn.c (warn_tautological_bitwise_comparison): Use wi::to_wide
   6728 	instead of wide_int::from.
   6729 
   6730 2017-10-06  Jakub Jelinek  <jakub (a] redhat.com>
   6731 
   6732 	PR c/82437
   6733 	* c-warn.c (warn_tautological_bitwise_comparison): Instead of
   6734 	using to_widest use wide_int with the larger of the two precisions.
   6735 
   6736 2017-10-05  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   6737 
   6738 	* c-pretty-print.c (pp_c_parameter_type_list): Print ... for variadic
   6739 	functions.
   6740 
   6741 2017-10-02  Richard Sandiford  <richard.sandiford (a] linaro.org>
   6742 
   6743 	* c-warn.c (warn_tautological_bitwise_comparison): Use wi::to_widest
   6744 	when combining the original unconverted comparison operands.
   6745 
   6746 2017-09-29  Jakub Jelinek  <jakub (a] redhat.com>
   6747 
   6748 	* c-attribs.c (handle_noipa_attribute): Don't add "stack_protect"
   6749 	attribute.
   6750 
   6751 2017-09-29  Eric Botcazou  <ebotcazou (a] adacore.com>
   6752 
   6753 	* c-ada-spec.c (to_ada_name): Add index parameter.
   6754 	(pp_ada_tree_identifier): Likewise.
   6755 	(dump_ada_macros): Adjust call to to_ada_name.
   6756 	(struct overloaded_name_hash): New type.
   6757 	(struct overloaded_name_hasher): Likewise.
   6758 	(overloaded_names): New hash table.
   6759 	(compute_overloading_index): New function.
   6760 	(dump_ada_decl_name): Call it and pass the result to
   6761 	pp_ada_tree_identifier.
   6762 	(dump_ada_double_name): Adjust calls to pp_ada_tree_identifier.
   6763 	(dump_ada_function_declaration): Likewise.
   6764 	(dump_generic_ada_node): Likewise.
   6765 	(print_constructor): Likewise.
   6766 	(print_destructor): Likewise.
   6767 	(dump_ada_specs): Delete overloaded_names table.
   6768 
   6769 2017-09-29  Eric Botcazou  <ebotcazou (a] adacore.com>
   6770 
   6771 	* c-ada-spec.c (max_ada_macros): Move around.
   6772 	(store_ada_macro_index): Likewise.
   6773 	(source_file): Rename into...
   6774 	(macro_source_file): ...this.
   6775 	(count_ada_macro): Move around.
   6776 	(store_ada_macro): Likewise.
   6777 	(compare_macro): Likewise.
   6778 	(print_ada_macros): Merge in...
   6779 	(dump_ada_macros): ...this.
   6780 	(source_file_base): Rename into...
   6781 	(current_source_file): ...this.
   6782 	(print_comment): Move around.
   6783 	(dump_ada_nodes): Call dump_ada_declaration directly.
   6784 	(struct with): Change type of limited field to bool.
   6785 	(append_withs): Change type of limited_access parameter to bool.
   6786 	(pp_ada_tree_identifie): Likewise.
   6787 	(dump_ada_decl_nam): Likewise.
   6788 	(dump_generic_ada_node): Likewise.  Do not print the return type.
   6789 	(to_ada_name): Change type of space_found parameter to bool.
   6790 	(dump_ada_function_declaration): Return void and change type of
   6791 	parameters to bool.  Also print the return type for a function.
   6792 	(print_ada_methods): Rename into...
   6793 	(dump_ada_methods): ...this.
   6794 	(print_ada_declaration): Rename into ...
   6795 	(dump_ada_declaration): ...this.  Do not print the return type.
   6796 	(print_ada_struct_decl): Rename into...
   6797 	(dump_ada_struct_decl): ...this.
   6798 
   6799 2017-09-29  Jakub Jelinek  <jakub (a] redhat.com>
   6800 
   6801 	* c-attribs.c (handle_packed_attribute): Test DECL_C_BIT_FIELD
   6802 	rather than DECL_INITIAL.
   6803 	(common_handle_aligned_attribute): Likewise.
   6804 
   6805 2017-09-20  Alexandre Oliva  <aoliva (a] redhat.com>
   6806 
   6807 	* c.opt (gen-decls): Add RejectNegative.
   6808 
   6809 2017-09-15  Andrew Sutton  <andrew.n.sutton (a] gmail.com>
   6810 	    Jakub Jelinek  <jakub (a] redhat.com>
   6811 
   6812 	Add support for -std=c++2a.
   6813 	* c-common.h (cxx_dialect): Add cxx2a as a dialect.
   6814 	* opt.c: Add options for -std=c++2a and -std=gnu++2a.
   6815 	* c-opts.c (set_std_cxx2a): New.
   6816 	(c_common_handle_option): Set options when -std=c++2a is enabled.
   6817 	(c_common_post_options): Adjust comments.
   6818 	(set_std_cxx14, set_std_cxx17): Likewise.
   6819 
   6820 2017-09-15  Eric Botcazou  <ebotcazou (a] adacore.com>
   6821 
   6822 	* c-pragma.c (handle_pragma_scalar_storage_order): Expand on error
   6823 	message for non-uniform endianness and issue a warning in C++.
   6824 
   6825 2017-09-15  Jakub Jelinek  <jakub (a] redhat.com>
   6826 
   6827 	* c.opt (Wc++1z-compat): Change from option to undocumented alias.
   6828 	(Wc++17-compat): Change from undocumented alias to option.
   6829 	(Wnoexcept-type): Enable by Wc++17-compat instead of Wc++1z-compat,
   6830 	change C++1z to C++17 in description.
   6831 	(std=c++1z, std=gnu++1z): Change from option to undocumented
   6832 	deprecated alias.
   6833 	(std=c++17, std=gnu++17): Change from undocumented alias to option.
   6834 	Adjust description.
   6835 	* c-common.h (enum cxx_dialect): Rename cxx1z to cxx17.
   6836 	* c-opts.c (set_std_cxx1z): Rename to ...
   6837 	(set_std_cxx17): ... this.
   6838 	(c_common_handle_option): Rename OPT_std_c__1z to OPT_std_c__17
   6839 	and OPT_std_gnu__1z to OPT_std_gnu__17.  Adjust set_std_cxx1z
   6840 	caller.
   6841 	(c_common_post_options): Use cxx17 instead of cxx1z.  Adjust
   6842 	comments.
   6843 
   6844 2017-09-12  H.J. Lu  <hongjiu.lu (a] intel.com>
   6845 
   6846 	* c-attribs.c (common_handle_aligned_attribute): Don't warn
   6847 	function alignment if warn_if_not_aligned_p is true.
   6848 
   6849 2017-09-12  Nathan Sidwell  <nathan (a] acm.org>
   6850 
   6851 	* c-common.c (field_decl_cmp, resort_data, resort_field_decl_cmp,
   6852 	resort_sorted_fields): Move to c/c-decl.c.
   6853 	* c-common.h (field_decl_cmp, resort_sorted_fields): Delete.
   6854 	(struct sorted_fields_type): Move to c/c-lang.h.
   6855 
   6856 2017-09-09  Jonathan Wakely  <jwakely (a] redhat.com>
   6857 
   6858 	PR c++/81852
   6859 	* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_threadsafe_static_init.
   6860 
   6861 2017-09-04  Marek Polacek  <polacek (a] redhat.com>
   6862 
   6863 	PR c/81783
   6864 	* c-warn.c (warn_tautological_bitwise_comparison): New function.
   6865 	(warn_tautological_cmp): Call it.
   6866 
   6867 2017-09-01  Boris Kolpackov  <boris (a] codesynthesis.com>
   6868 
   6869 	* c-opts.c (c_common_finish): Write dependency information even if
   6870 	there are errors.
   6871 
   6872 2017-09-01  Jakub Jelinek  <jakub (a] redhat.com>
   6873 
   6874 	PR c/81887
   6875 	* c-pragma.c (omp_pragmas): Move "ordered" entry from here to ...
   6876 	(omp_pragmas_simd): ... here.
   6877 	* c-omp.c (c_finish_omp_ordered): If clauses isn't simd clause alone,
   6878 	create new clauses list containing just simd clause.
   6879 
   6880 2017-08-30  Richard Sandiford  <richard.sandiford (a] linaro.org>
   6881 	    Alan Hayward  <alan.hayward (a] arm.com>
   6882 	    David Sherwood  <david.sherwood (a] arm.com>
   6883 
   6884 	* c-attribs.c (vector_mode_valid_p) Fold GET_MODE_INNER call
   6885 	into scalar_mode_supported_p call.
   6886 	(handle_mode_attribute): Update call to scalar_mode_supported_p.
   6887 
   6888 2017-08-30  Richard Sandiford  <richard.sandiford (a] linaro.org>
   6889 	    Alan Hayward  <alan.hayward (a] arm.com>
   6890 	    David Sherwood  <david.sherwood (a] arm.com>
   6891 
   6892 	* c-common.c (c_common_fixed_point_type_for_size): Use opt_scalar_mode
   6893 	for the mode iterator.
   6894 
   6895 2017-08-30  Richard Sandiford  <richard.sandiford (a] linaro.org>
   6896 	    Alan Hayward  <alan.hayward (a] arm.com>
   6897 	    David Sherwood  <david.sherwood (a] arm.com>
   6898 
   6899 	* c-lex.c (interpret_fixed): Use SCALAR_TYPE_MODE.
   6900 	* c-common.c (c_build_vec_perm_expr): Likewise.
   6901 
   6902 2017-08-30  Richard Sandiford  <richard.sandiford (a] linaro.org>
   6903 	    Alan Hayward  <alan.hayward (a] arm.com>
   6904 	    David Sherwood  <david.sherwood (a] arm.com>
   6905 
   6906 	* c-common.c (c_common_type_for_mode): Use as_a <scalar_int_mode>.
   6907 
   6908 2017-08-30  Richard Sandiford  <richard.sandiford (a] linaro.org>
   6909 	    Alan Hayward  <alan.hayward (a] arm.com>
   6910 	    David Sherwood  <david.sherwood (a] arm.com>
   6911 
   6912 	* c-attribs.c (handle_mode_attribute): Check for a scalar_int_mode
   6913 	before calling targetm.addr_space.valid_pointer_mode.
   6914 
   6915 2017-08-30  Richard Sandiford  <richard.sandiford (a] linaro.org>
   6916 	    Alan Hayward  <alan.hayward (a] arm.com>
   6917 	    David Sherwood  <david.sherwood (a] arm.com>
   6918 
   6919 	* c-cppbuiltin.c (c_cpp_builtins): Use opt_scalar_float_mode.
   6920 
   6921 2017-08-30  Richard Sandiford  <richard.sandiford (a] linaro.org>
   6922 	    Alan Hayward  <alan.hayward (a] arm.com>
   6923 	    David Sherwood  <david.sherwood (a] arm.com>
   6924 
   6925 	* c-common.c (c_common_fixed_point_type_for_size): Use new mode
   6926 	iterators.
   6927 	* c-cppbuiltin.c (c_cpp_builtins): Likewise.
   6928 
   6929 2017-08-30  Richard Sandiford  <richard.sandiford (a] linaro.org>
   6930 	    Alan Hayward  <alan.hayward (a] arm.com>
   6931 	    David Sherwood  <david.sherwood (a] arm.com>
   6932 
   6933 	* c-cppbuiltin.c (mode_has_fma): Prefix mode names with E_ in
   6934 	case statements.
   6935 
   6936 2017-08-29  Martin Liska  <mliska (a] suse.cz>
   6937 
   6938 	PR other/39851
   6939 	* c-common.c (parse_optimize_options): Add argument to function
   6940 	call.
   6941 	* c-pragma.c (handle_pragma_diagnostic): Likewise.
   6942 
   6943 2017-08-24  David Malcolm  <dmalcolm (a] redhat.com>
   6944 
   6945 	* c-lex.c (interpret_float): Use token location
   6946 	when building an EXCESS_PRECISION_EXPR.
   6947 
   6948 2017-08-21  David Malcolm  <dmalcolm (a] redhat.com>
   6949 
   6950 	* c-common.c (check_function_arguments): Add "arglogs" param; pass
   6951 	it to check_function_format.
   6952 	* c-common.h (check_function_arguments): Add vec<location_t> *
   6953 	param.
   6954 	(check_function_format): Likewise.
   6955 	* c-format.c (struct format_check_context): Add field "arglocs".
   6956 	(check_function_format): Add param "arglocs"; pass it to
   6957 	check_format_info.
   6958 	(check_format_info): Add param "arglocs"; use it to initialize
   6959 	new field of format_ctx.
   6960 	(check_format_arg): Pass format_ctx->arglocs to new param of
   6961 	check_format_info_main.
   6962 	(class argument_parser): New field "arglocs".
   6963 	(argument_parser::argument_parser): Add "arglocs_" param and use
   6964 	it to initialize new field.
   6965 	(argument_parser::check_argument_type): Pass new arglocs field to
   6966 	check_format_types.
   6967 	(check_format_info_main): Add param "arglocs", and use it when
   6968 	constructing arg_parser.
   6969 	(check_format_types): Add param "arglocs"; use it if non-NULL when
   6970 	!EXPR_HAS_LOCATION (cur_param) to get at location information.
   6971 
   6972 2017-08-18  H.J. Lu  <hongjiu.lu (a] intel.com>
   6973 
   6974 	PR c/53037
   6975 	* c-attribs.c (handle_warn_if_not_aligned_attribute): New.
   6976 	(c_common_attribute_table): Add warn_if_not_aligned.
   6977 	(handle_aligned_attribute): Renamed to ...
   6978 	(common_handle_aligned_attribute): Remove argument, name, and add
   6979 	argument, warn_if_not_aligned.  Handle warn_if_not_aligned.
   6980 	(handle_aligned_attribute): New.
   6981 	* c.opt: Add -Wif-not-aligned and -Wpacked-not-aligned.
   6982 
   6983 2017-08-14  Martin Sebor  <msebor (a] redhat.com>
   6984 
   6985 	PR c/81117
   6986 	* c-attribs.c (c_common_attribute_table): Add nonstring entry.
   6987 	(handle_nonstring_attribute): New function.
   6988 
   6989 2017-08-14  Martin Sebor  <msebor (a] redhat.com>
   6990 
   6991 	PR c/81117
   6992 	* c-format.h (T89_G): New macro.
   6993 	* c-format.c (local_gcall_ptr_node): New variable.
   6994 	(init_dynamic_diag_info): Initialize it.
   6995 
   6996 2017-08-11  Martin Liska  <mliska (a] suse.cz>
   6997 
   6998 	* c-opts.c (c_common_post_options): Replace ASM_OUTPUT_DEF with
   6999 	TARGET_SUPPORTS_ALIASES.
   7000 
   7001 2017-08-10  David Malcolm  <dmalcolm (a] redhat.com>
   7002 
   7003 	* c-common.c (c_parse_error): Add rich_location * param, using it
   7004 	rather implicitly using input_location.
   7005 	* c-common.h (c_parse_error): Add rich_location * param.
   7006 
   7007 2017-08-09  Marek Polacek  <polacek (a] redhat.com>
   7008 
   7009 	* c-common.c (pointer_int_sum): Use true/false instead of 1/0.
   7010 	(c_common_truthvalue_conversion): Likewise.
   7011 	* c-omp.c (c_finish_omp_atomic): Likewise.
   7012 	* c-common.h (build_binary_op): Update declaration.
   7013 
   7014 2017-08-08  Martin Liska  <mliska (a] suse.cz>
   7015 
   7016 	* c-ada-spec.c: Include header files.
   7017 	* c-ubsan.c: Likewise.
   7018 	* c-warn.c: Likewise.
   7019 
   7020 2017-08-07  Jakub Jelinek  <jakub (a] redhat.com>
   7021 
   7022 	PR c/69389
   7023 	* c-omp.c (c_finish_omp_atomic): Handle atomics on bitfields.
   7024 
   7025 2017-08-07  Eric Botcazou  <ebotcazou (a] adacore.com>
   7026 
   7027 	* c-ada-spec.c (has_nontrivial_methods): Test for FUNCTION_DECL.
   7028 	(print_ada_methods): Likewise.
   7029 	(print_ada_declaration): Likewise.
   7030 
   7031 2017-08-07  Martin Liska  <mliska (a] suse.cz>
   7032 
   7033 	* array-notation-common.c: Add new includes.
   7034 	* c-format.c( handle_format_attribute): Canonicalize a format
   7035 	function name.
   7036 	* c-lex.c (c_common_has_attribute): Canonicalize name of an
   7037 	attribute.
   7038 	* c-pretty-print.c: Add new include.
   7039 
   7040 2017-08-05  Eric Botcazou  <ebotcazou (a] adacore.com>
   7041 
   7042 	* c-ada-spec.c (has_static_fields): Look only into variables.
   7043 	(print_constructor): Add TYPE parameter and use it for the name.
   7044 	(print_destructor): Likewise.
   7045 	(print_ada_declaration): Adjust to new constructor/destructor names.
   7046 	Adjust calls to print_constructor and print_destructor.
   7047 	(print_ada_struct_decl): Do not test TREE_STATIC on FIELD_DECL.
   7048 	Look only into variables in the final loop.
   7049 
   7050 2017-08-01  Eric Botcazou  <ebotcazou (a] adacore.com>
   7051 
   7052 	* c-ada-spec.c (has_static_fields): Look only into fields.
   7053 	(dump_generic_ada_node): Small tweak.
   7054 	(dump_nested_types): Look only into fields.
   7055 	(print_ada_declaration): Look only into methods.  Small tweak.
   7056 	(print_ada_struct_decl): Look only into fields.  Use DECL_VIRTUAL_P.
   7057 
   7058 2017-08-01  Eric Botcazou  <ebotcazou (a] adacore.com>
   7059 
   7060 	* c-ada-spec.c (print_generic_ada_decl): Pass correctly-typed constant.
   7061 	(dump_ada_function_declaration): Likewise.
   7062 	(dump_generic_ada_node): Likewise.
   7063 	(print_ada_declaration): Add support for const-qualified variables.
   7064 
   7065 2017-07-31  Martin Liska  <mliska (a] suse.cz>
   7066 
   7067 	PR sanitize/81530
   7068 	* c-ubsan.c (ubsan_maybe_instrument_array_ref):
   7069 	Guard condition with flag_sanitize_p also with current_function_decl
   7070 	non-null equality.
   7071 	(ubsan_maybe_instrument_reference_or_call): Likewise.
   7072 
   7073 2017-07-30  Uros Bizjak  <ubizjak (a] gmail.com>
   7074 
   7075 	* c-format.c (asm_fprintf_char_table): Add 'z' to format_chars.
   7076 
   7077 2017-07-29  Eric Botcazou  <ebotcazou (a] adacore.com>
   7078 
   7079 	* c-ada-spec.c (dump_generic_ada_node): Take into account signedness
   7080 	for enumeral types.
   7081 	(print_ada_declaration): Add missing guard for record types.
   7082 
   7083 2017-07-27  Jakub Jelinek  <jakub (a] redhat.com>
   7084 
   7085 	PR c/45784
   7086 	* c-omp.c (c_finish_omp_for): If the condition is wrapped in
   7087 	rhs of COMPOUND_EXPR(s), skip them and readd their lhs into
   7088 	new COMPOUND_EXPRs around the rhs of the comparison.
   7089 
   7090 2017-07-27  Marek Polacek  <polacek (a] redhat.com>
   7091 
   7092 	PR c/81417
   7093 	* c-warn.c (warn_for_sign_compare): Tweak the warning message.  Print
   7094 	the types.
   7095 
   7096 2017-07-27  Jakub Jelinek  <jakub (a] redhat.com>
   7097 
   7098 	* c-attribs.c (c_common_attribute_table): Add noipa attribute.
   7099 	(handle_noipa_attribute): New function.
   7100 
   7101 2017-07-07  Torsten Duwe  <duwe (a] suse.de>
   7102 
   7103 	* c-attribs.c (c_common_attribute_table): Add entry for
   7104 	"patchable_function_entry".
   7105 
   7106 2017-07-20  Nathan Sidwell  <nathan (a] acm.org>
   7107 
   7108 	Remove TYPE_METHODS.
   7109 	* c-ada-spec.c (is_tagged_type, has_nontrivial_methods,
   7110 	dump_ada_template, print_ada_methods,
   7111 	print_ada_declaration): Member fns are on TYPE_FIELDS.
   7112 
   7113 2017-07-18  Nathan Sidwell  <nathan (a] acm.org>
   7114 
   7115 	* c-warn.c (warn_for_memset): Use TYPE_{MIN,MAX}_VALUE.
   7116 
   7117 2017-07-14  David Malcolm  <dmalcolm (a] redhat.com>
   7118 
   7119 	* c-common.c (try_to_locate_new_include_insertion_point): New
   7120 	function.
   7121 	(per_file_includes_t): New typedef.
   7122 	(added_includes_t): New typedef.
   7123 	(added_includes): New variable.
   7124 	(maybe_add_include_fixit): New function.
   7125 	* c-common.h (maybe_add_include_fixit): New decl.
   7126 
   7127 2017-07-10  Martin Sebor  <msebor (a] redhat.com>
   7128 
   7129 	PR other/81345
   7130 	* c.opt (-Wstringop-overflow): Set defaults in LangEnabledBy.
   7131 
   7132 2017-07-06  David Malcolm  <dmalcolm (a] redhat.com>
   7133 
   7134 	* c-common.c (selftest::c_family_tests): New.
   7135 	* c-common.h (selftest::run_c_tests): Move decl to c/c-lang.h.
   7136 	(selftest::c_family_tests): New decl.
   7137 
   7138 2017-07-04  Marek Polacek  <polacek (a] redhat.com>
   7139 
   7140 	PR c/81231
   7141 	* c-common.c (sync_resolve_size): Give error for pointers to incomplete
   7142 	types.
   7143 
   7144 2017-07-04  Marek Polacek  <polacek (a] redhat.com>
   7145 
   7146 	* c-warn.c (warn_if_unused_value): Remove WITH_CLEANUP_EXPR handling.
   7147 
   7148 2017-06-28  Martin Liska  <mliska (a] suse.cz>
   7149 
   7150 	PR ipa/81128
   7151 	* c-attribs.c (handle_alias_ifunc_attribute): Append ifunc alias
   7152 	to a function declaration.
   7153 
   7154 2017-06-28  Martin Liska  <mliska (a] suse.cz>
   7155 
   7156 	PR driver/79659
   7157 	* c.opt: Add IntegerRange to various options.
   7158 
   7159 2017-06-26  Marek Polacek  <polacek (a] redhat.com>
   7160 
   7161 	PR c/80116
   7162 	* c-common.h (warn_for_multistatement_macros): Declare.
   7163 	* c-warn.c: Include "c-family/c-indentation.h".
   7164 	(warn_for_multistatement_macros): New function.
   7165 	* c.opt (Wmultistatement-macros): New option.
   7166 	* c-indentation.c (guard_tinfo_to_string): No longer static.
   7167 	Change the parameter type to "enum rid".  Handle RID_SWITCH.
   7168 	* c-indentation.h (guard_tinfo_to_string): Declare.
   7169 
   7170 2017-06-23  Marc Glisse  <marc.glisse (a] inria.fr>
   7171 
   7172 	* c-common.c (c_common_nodes_and_builtins): Use builtin_structptr_types.
   7173 
   7174 2017-06-15  Martin Sebor  <msebor (a] redhat.com>
   7175 
   7176 	PR c++/80560
   7177 	* c.opt (-Wclass-memaccess): New option.
   7178 
   7179 2017-06-14  Boris Kolpackov  <boris (a] codesynthesis.com>
   7180 
   7181 	* c-opts.c (c_common_finish): Handle '-' special value to -MF.
   7182 
   7183 2017-06-13  Marek Polacek  <polacek (a] redhat.com>
   7184 
   7185 	PR objc/80949
   7186 	* c-warn.c (do_warn_duplicated_branches): Return if any of the
   7187 	branches is null.
   7188 
   7189 2017-06-13  Martin Liska  <mliska (a] suse.cz>
   7190 
   7191 	PR sanitize/78204
   7192 	* c-attribs.c (add_no_sanitize_value): New function.
   7193 	(handle_no_sanitize_attribute): Likewise.
   7194 	(handle_no_sanitize_address_attribute): Use the function.
   7195 	(handle_no_sanitize_thread_attribute): New function.
   7196 	(handle_no_address_safety_analysis_attribute): Use
   7197 	add_no_sanitize_value.
   7198 	(handle_no_sanitize_undefined_attribute): Likewise.
   7199 	* c-common.h: Declare new functions.
   7200 	* c-ubsan.c (ubsan_instrument_division): Use sanitize_flags_p.
   7201 	(ubsan_instrument_shift): Likewise.
   7202 	(ubsan_instrument_bounds): Likewise.
   7203 	(ubsan_maybe_instrument_array_ref): Likewise.
   7204 	(ubsan_maybe_instrument_reference_or_call): Likewise.
   7205 
   7206 2017-06-11  Jason Merrill  <jason (a] redhat.com>
   7207 
   7208 	* c-ada-spec.c, c-pragma.c: Use id_equal.
   7209 
   7210 2017-06-04  Marek Polacek  <polacek (a] redhat.com>
   7211 
   7212 	PR c/80919
   7213 	* c-format.c (matching_type_p): Return false if any of the types
   7214 	requires structural equality.
   7215 
   7216 2017-06-02  Martin Sebor  <msebor (a] redhat.com>
   7217 
   7218 	PR c/80892
   7219 	* c-warn.c (conversion_warning): Use -Wconversion for integer
   7220 	conversion and -Wfloat-conversion for floating one.
   7221 
   7222 2017-06-02  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   7223 
   7224 	* c.opt (Wsizeof-pointer-div): New warning option.
   7225 
   7226 2017-06-01  Volker Reichelt  <v.reichelt (a] netcologne.de>
   7227 
   7228 	* c.opt (Wcatch-value): New shortcut for Wcatch-value=1.
   7229 	(Wcatch-value=1): Enable by -Wall.
   7230 
   7231 2017-05-30  David Malcolm  <dmalcolm (a] redhat.com>
   7232 
   7233 	* c-format.c (gcc_cxxdiag_char_table): Add 'H' and 'I' to
   7234 	format_chars.
   7235 	* c.opt (fdiagnostics-show-template-tree): New option.
   7236 	(felide-type): New option.
   7237 
   7238 2017-05-25  Volker Reichelt  <v.reichelt (a] netcologne.de>
   7239 
   7240 	* c.opt (Wcatch-value=): New C++ warning flag.
   7241 
   7242 2017-05-24  Nathan Sidwell  <nathan (a] acm.org>
   7243 
   7244 	* c=common.c (field_decl_cmp, resort_field_decl_cmp): Adjust T
   7245 	const casts to avoid warning.
   7246 
   7247 2017-05-24  Martin Sebor  <msebor (a] redhat.com>
   7248 
   7249 	PR c/80731
   7250 	* c-common.h (unsafe_conversion_p): Add a function argument.
   7251 	* c-common.c (unsafe_conversion_p): Same.
   7252 	Add type names and values to diagnostics.
   7253 	(scalar_to_vector): Adjust.
   7254 	* c-warn.c (constant_expression_error): Add a function argument.
   7255 	Add type names and values to diagnostics.
   7256 	(conversion_warning): Add a function argument.
   7257 	Add type names and values to diagnostics.
   7258 	(warnings_for_convert_and_check): Same.
   7259 
   7260 2017-05-19  Jason Merrill  <jason (a] redhat.com>
   7261 
   7262 	* c-warn.c (match_case_to_enum_1): Don't warn about enums with no
   7263 	enumerators.
   7264 
   7265 2017-05-19  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   7266 
   7267 	* c-format.c (locus): Move out of function scope,
   7268 	add GTY attribute.
   7269 
   7270 2017-05-19  Nathan Sidwell  <nathan (a] acm.org>
   7271 
   7272 	* c-opts.c (class_dump_file, class_dump_flags): Delete.
   7273 	(c_common_parse_file): Remove class dump handling.
   7274 	(get_dump_info): Likewise.
   7275 
   7276 2017-05-19  Richard Biener  <rguenther (a] suse.de>
   7277 
   7278 	PR c++/80593
   7279 	* c-warn.c (strict_aliasing_warning): Do not warn for accesses
   7280 	to alias-set zero memory.
   7281 
   7282 2017-05-18  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   7283 
   7284 	* c-format.c (local_tree_type_node): Add GTY attribute.
   7285 
   7286 2017-05-18  Marek Polacek  <polacek (a] redhat.com>
   7287 
   7288 	* c-common.c (c_common_type_for_size): Use NULL_TREE instead of 0.
   7289 	(c_common_fixed_point_type_for_size): Likewise.
   7290 	(c_common_type_for_mode): Likewise.
   7291 	(shorten_compare): Likewise.
   7292 	(c_promoting_integer_type_p): Use false/true instead of 0/1.
   7293 	* c-pragma.c (maybe_apply_renaming_pragma): Use NULL_TREE instead of 0.
   7294 
   7295 2017-05-18  Marek Polacek  <polacek (a] redhat.com>
   7296 
   7297 	* c-common.c (self_promoting_args_p): Change the return type to bool.
   7298 	Use false/true instead of 0/1.
   7299 	* c-common.h (self_promoting_args_p): Update.
   7300 
   7301 2017-05-17  Marek Polacek  <polacek (a] redhat.com>
   7302 
   7303 	* c-common.c: Use NULL_TREE instead of 0 where appropriate.
   7304 	* c-warn.c: Likewise.
   7305 
   7306 2017-05-17  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   7307 
   7308 	Implement new C++ intrinsics __is_assignable and __is_constructible.
   7309 	* c-common.c (__is_assignable, __is_constructible): New.
   7310 	* c-common.h (RID_IS_ASSIGNABLE, RID_IS_CONSTRUCTIBLE): Likewise.
   7311 
   7312 2017-05-17  Martin Liska  <mliska (a] suse.cz>
   7313 
   7314 	* c-common.h: Introduce dump_flags_t type and
   7315 	use it instead of int type.
   7316 	* c-gimplify.c (c_genericize): Likewise.
   7317 	* c-opts.c: Likewise.
   7318 
   7319 2017-05-17  Marek Polacek  <polacek (a] redhat.com>
   7320 
   7321 	* c-common.c (c_save_expr): Remove.
   7322 	(c_common_truthvalue_conversion): Remove a call to c_save_expr.
   7323 	* c-common.h (c_save_expr): Remove declaration.
   7324 
   7325 2017-05-09  Volker Reichelt  <v.reichelt (a] netcologne.de>
   7326 
   7327 	PR c/35441
   7328 	* c-pretty-print.c (c_pretty_printer::expression): Handle MAX_EXPR,
   7329 	MIN_EXPR, EXACT_DIV_EXPR, RDIV_EXPR, LROTATE_EXPR, RROTATE_EXPR.
   7330 	(c_pretty_printer::postfix_expression): Handle MAX_EXPR, MIN_EXPR.
   7331 	(c_pretty_printer::multiplicative_expression): Handle EXACT_DIV_EXPR,
   7332 	RDIV_EXPR.
   7333 	(pp_c_shift_expression): Handle LROTATE_EXPR, RROTATE_EXPR.
   7334 
   7335 2017-05-09  Marek Polacek  <polacek (a] redhat.com>
   7336 
   7337 	PR c/80525
   7338 	* c-warn.c (unwrap_c_maybe_const): New.
   7339 	(warn_logical_operator): Call it.
   7340 
   7341 2017-05-09  Nathan Sidwell  <nathan (a] acm.org>
   7342 
   7343 	* c-common.c (c_register_builtin_type): Use pushdecl lang_hook.
   7344 	* c-common.h (pushdecl_top_level, pushdecl): Don't declare here.
   7345 
   7346 2017-05-08  Martin Sebor  <msebor (a] redhat.com>
   7347 
   7348 	PR translation/80280
   7349 	* c-format.h (struct format_flag_spec): Add new member.
   7350 	(T89_T): New macro.
   7351 	* c-format.c (local_tree_type_node): New global.
   7352 	(printf_flag_specs, asm_fprintf_flag_spec): Initialize new data.
   7353 	(gcc_diag_flag_specs, scanf_flag_specs, strftime_flag_specs): Ditto.
   7354 	(strfmon_flag_specs): Likewise.
   7355 	(gcc_diag_char_table, gcc_cdiag_char_table): Split up specifiers
   7356 	with distinct quoting properties.
   7357 	(gcc_tdiag_char_table, gcc_cxxdiag_char_table): Same.
   7358 	(flag_chars_t::validate): Add argument and handle bad quoting.
   7359 	(check_format_info_main): Handle quoting problems.
   7360 	(init_dynamic_diag_info): Simplify.
   7361 
   7362 2017-05-08  Jason Merrill  <jason (a] redhat.com>
   7363 
   7364 	* c-opts.c (c_common_post_options): Update defaults for
   7365 	flag_abi_version and flag_abi_compat_version.
   7366 
   7367 2017-05-05  David Malcolm  <dmalcolm (a] redhat.com>
   7368 
   7369 	* c-common.c (c_cpp_error): Replace report_diagnostic
   7370 	with diagnostic_report_diagnostic.
   7371 
   7372 2017-05-04  Martin Sebor  <msebor (a] redhat.com>
   7373 
   7374 	PR translation/80280
   7375 	* c-attribs.c (handle_alias_ifunc_attribute): Quote a %D directive.
   7376 	(handle_weakref_attribute): Same.
   7377 
   7378 2017-05-03  Nathan Sidwell  <nathan (a] acm.org>
   7379 
   7380 	Canonicalize canonical type hashing
   7381 	* c-common.c (complete_array_type): Use type_hash_canon.
   7382 
   7383 2017-05-01  Xi Ruoyao  <ryxi (a] stu.xidian.edu.cn>
   7384 
   7385 	PR c++/80038
   7386 	* c-common.h (cilk_gimplify_call_params_in_spawned_fn): Remove
   7387 	prototype.
   7388 	(cilk_install_body_pedigree_operations): Likewise.
   7389 	* cilk.c (cilk_set_spawn_marker): Mark functions that should be
   7390 	detatched.
   7391 	(cilk_gimplify_call_params_in_spawned_fn): Remove.
   7392 	(cilk_install_body_pedigree_operations): Likewise.
   7393 	(gimplify_cilk_spawn): Add EXPR_STMT and CLEANUP_POINT_EXPR
   7394 	unwrapping.
   7395 
   7396 2017-04-27  Jakub Jelinek  <jakub (a] redhat.com>
   7397 
   7398 	PR c++/80534
   7399 	* c-common.c (complete_array_type): Only hash TYPE_TYPELESS_STORAGE
   7400 	flag on non-aggregate element types.
   7401 
   7402 2017-04-25  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   7403 
   7404 	* c-common.c (c_type_hasher, type_hash_table): Remove.
   7405 	(c_common_get_alias_set): Remove unreachable code.
   7406 	* c-opts.c (c_common_post_options): Make sure cc1 takes only one file.
   7407 
   7408 2017-04-20  Volker Reichelt  <v.reichelt (a] netcologne.de>
   7409 
   7410 	* c.opt (Wextra-semi): New C++ warning flag.
   7411 
   7412 2017-04-20  Jakub Jelinek  <jakub (a] redhat.com>
   7413 
   7414 	PR middle-end/80423
   7415 	* c-common.c (complete_array_type): Preserve TYPE_TYPELESS_STORAGE.
   7416 
   7417 2017-04-18  Jakub Jelinek  <jakub (a] redhat.com>
   7418 
   7419 	PR middle-end/79788
   7420 	PR middle-end/80375
   7421 	* c-common.c (c_common_type_for_mode): Don't handle
   7422 	widest_*_literal_type_node here.
   7423 	c_common_signed_or_unsigned_type): Likewise.
   7424 	(c_common_nodes_and_builtins): Set widest_*_literal_type_node
   7425 	to *intTI_type_node or *intDI_type_node depending on whether
   7426 	TImode is supported by the target or not.
   7427 
   7428 2017-04-10  Martin Liska  <mliska (a] suse.cz>
   7429 
   7430 	PR sanitizer/80350
   7431 	* c-ubsan.c (ubsan_instrument_shift): Evaluate RHS before
   7432 	doing an UBSAN check.
   7433 
   7434 2017-04-03  Jonathan Wakely  <jwakely (a] redhat.com>
   7435 
   7436 	* c-warn.c (do_warn_double_promotion): Fix typo in comment.
   7437 
   7438 2017-03-31  Jakub Jelinek  <jakub (a] redhat.com>
   7439 
   7440 	PR c++/79572
   7441 	* c-ubsan.h (ubsan_maybe_instrument_reference): Change argument to
   7442 	tree *.
   7443 	* c-ubsan.c (ubsan_maybe_instrument_reference): Likewise.  Handle
   7444 	not just NOP_EXPR to REFERENCE_TYPE, but also INTEGER_CST with
   7445 	REFERENCE_TYPE.
   7446 
   7447 2017-03-31  David Malcolm  <dmalcolm (a] redhat.com>
   7448 
   7449 	PR documentation/78732
   7450 	* c.opt (Wendif-labels): Fix description to refer to
   7451 	#else rather than #elif.
   7452 
   7453 2017-03-31  Jakub Jelinek  <jakub (a] redhat.com>
   7454 
   7455 	PR libstdc++/80251
   7456 	* c-common.h (enum rid): Add RID_IS_AGGREGATE.
   7457 	* c-common.c (c_common_reswords): Add __is_aggregate trait.
   7458 
   7459 2017-03-27  Jakub Jelinek  <jakub (a] redhat.com>
   7460 
   7461 	PR middle-end/80162
   7462 	* c-common.c (c_common_mark_addressable_vec): Don't set
   7463 	TREE_ADDRESSABLE on DECL_HARD_REGISTER.
   7464 
   7465 2017-03-21  Martin Sebor  <msebor (a] redhat.com>
   7466 
   7467 	PR c++/79548
   7468 	* c-common.c (set_underlying_type): Mark type used only when
   7469 	original del is declared unused.
   7470 
   7471 2017-03-10  David Malcolm  <dmalcolm (a] redhat.com>
   7472 
   7473 	PR translation/79848
   7474 	* c-format.c (check_format_string): Simplify uses of "%<%s%>" to
   7475 	"%qs".
   7476 
   7477 2017-03-10  David Malcolm  <dmalcolm (a] redhat.com>
   7478 
   7479 	PR c/79921
   7480 	* c-indentation.c (warn_for_misleading_indentation): Remove parens
   7481 	from inform's message, so that xgettext can locate it.
   7482 
   7483 2017-03-09  Marek Polacek  <polacek (a] redhat.com>
   7484 
   7485 	PR c++/79962
   7486 	PR c++/79984
   7487 	* c-attribs.c (handle_nonnull_attribute): Save the result of default
   7488 	conversion to the attribute list.
   7489 
   7490 2017-03-09  Martin Liska  <mliska (a] suse.cz>
   7491 
   7492 	* c-ada-spec.c (macro_length): Increment value instead of a pointer.
   7493 
   7494 2017-03-03  Jason Merrill  <jason (a] redhat.com>
   7495 
   7496 	* c.opt (Wnoexcept-type): New.
   7497 
   7498 2017-03-02  Richard Biener  <rguenther (a] suse.de>
   7499 
   7500 	PR c/79756
   7501 	* c-common.c (c_common_mark_addressable_vec): Look through
   7502 	C_MAYBE_CONST_EXPR.
   7503 
   7504 2017-02-28  Martin Liska  <mliska (a] suse.cz>
   7505 
   7506 	* c.opt: Replace space with tabular for options of <number>
   7507 	type.
   7508 
   7509 2017-02-28  Martin Liska  <mliska (a] suse.cz>
   7510 
   7511 	* c.opt: Fix --help=option -Q for options which are of
   7512 	an enum type.
   7513 
   7514 2017-02-24  Jakub Jelinek  <jakub (a] redhat.com>
   7515 
   7516 	PR c++/79588
   7517 	* c-common.c (check_function_restrict): New function.
   7518 	(check_function_arguments): Add FNDECL argument.  Call
   7519 	check_function_restrict if -Wrestrict.
   7520 	* c-warn.c (warn_for_restrict): Remove ARGS argument, add ARGARRAY
   7521 	and NARGS.  Use auto_vec for ARG_POSITIONS, simplify.
   7522 	* c-common.h (check_function_arguments): Add FNDECL argument.
   7523 	(warn_for_restrict): Remove ARGS argument, add ARGARRAY and NARGS.
   7524 
   7525 2017-02-24  Eric Botcazou  <ebotcazou (a] adacore.com>
   7526 
   7527 	* c-ada-spec.c (dump_ada_function_declaration): Add comment about the
   7528 	treatment of parameters with pointer-to-tagged type and tidy up.
   7529 	(print_ada_methods): Remove the special treatment of C++ static member
   7530 	functions.
   7531 
   7532 2017-02-22  Martin Liska  <mliska (a] suse.cz>
   7533 
   7534 	* c.opt: Replace inequality signs with square brackets
   7535 	for -Wnornalized.
   7536 
   7537 2017-02-21  Jakub Jelinek  <jakub (a] redhat.com>
   7538 
   7539 	PR c++/79641
   7540 	* c-attribs.c (handle_mode_attribute): Use build_qualified_type to
   7541 	preserve quals.
   7542 
   7543 2017-02-17  Joseph Myers  <joseph (a] codesourcery.com>
   7544 
   7545 	* c-cppbuiltin.c (builtin_define_float_constants): Define
   7546 	__DECIMAL_DIG__ to the value for long double.
   7547 
   7548 2017-02-15  Marek Polacek  <polacek (a] redhat.com>
   7549 
   7550 	PR c/79515
   7551 	* c-warn.c (do_warn_double_promotion): Don't warn if an invalid
   7552 	conversion has occured.
   7553 
   7554 2017-01-24  David Malcolm  <dmalcolm (a] redhat.com>
   7555 
   7556 	* c-common.c (c_common_reswords): Add "__RTL".
   7557 	* c-common.h (enum rid): Add RID_RTL.
   7558 
   7559 2017-01-20  Marek Polacek  <polacek (a] redhat.com>
   7560 
   7561 	PR c/64279
   7562 	* c-common.h (do_warn_duplicated_branches_r): Declare.
   7563 	* c-gimplify.c (c_genericize): Walk the function tree calling
   7564 	do_warn_duplicated_branches_r.
   7565 	* c-warn.c (expr_from_macro_expansion_r): New.
   7566 	(do_warn_duplicated_branches): New.
   7567 	(do_warn_duplicated_branches_r): New.
   7568 	* c.opt (Wduplicated-branches): New option.
   7569 
   7570 2017-01-17  David Malcolm  <dmalcolm (a] redhat.com>
   7571 
   7572 	PR c++/71497
   7573 	* c-indentation.c (warn_for_misleading_indentation): Use the past
   7574 	subjunctive in the note.
   7575 
   7576 2017-01-17  Aldy Hernandez  <aldyh (a] redhat.com>
   7577 
   7578 	PR c/79116
   7579 	* array-notation-common.c (cilkplus_extract_an_triplets): Convert
   7580 	start type to integer_type.
   7581 
   7582 2017-01-16  Jakub Jelinek  <jakub (a] redhat.com>
   7583 
   7584 	PR driver/49726
   7585 	* c.opt (gen-decls): Add Driver flag.
   7586 
   7587 2017-01-16  Paolo Carlini  <paolo.carlini (a] oracle.com>
   7588 
   7589 	Revert:
   7590      	2017-01-16  Paolo Carlini  <paolo.carlini (a] oracle.com>
   7591 
   7592 	PR c++/71737
   7593 	* c-common.c (set_underlying_type): Always set DECL_ORIGINAL_TYPE.
   7594 
   7595 2017-01-16  Paolo Carlini  <paolo.carlini (a] oracle.com>
   7596 
   7597 	PR c++/71737
   7598 	* c-common.c (set_underlying_type): Always set DECL_ORIGINAL_TYPE.
   7599 
   7600 2017-01-12  Martin Sebor  <msebor (a] redhat.com>
   7601 
   7602 	(-Wformat-overflow): ...to this.
   7603 
   7604 2017-01-11  Martin Sebor  <msebor (a] redhat.com>
   7605 
   7606 	PR c/78768
   7607 	* c.opt (-Walloca-larger-than, -Wformat-length, -Wformat-truncation):
   7608 	Also enable for LTO.
   7609 
   7610 2017-01-10  Jason Merrill  <jason (a] redhat.com>
   7611 
   7612 	Implement P0195R2, C++17 variadic using.
   7613 	* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_variadic_using.
   7614 
   7615 2017-01-09  Jakub Jelinek  <jakub (a] redhat.com>
   7616 
   7617 	PR translation/79019
   7618 	PR translation/79020
   7619 	* c.opt (Wnormalized=): Fix typo in description.
   7620 
   7621 2017-01-08  Martin Sebor  <msebor (a] redhat.com>
   7622 
   7623 	PR middle-end/77708
   7624 	* c.opt (-Wformat-truncation): New option.
   7625 
   7626 2017-01-06  Alexandre Oliva  <aoliva (a] redhat.com>
   7627 
   7628 	* c-pretty-print.c (pp_c_tree_decl_identifier): Convert 16-bit
   7629 	value to unsigned short to fit in 4 hex digits without
   7630 	warnings.
   7631 
   7632 2017-01-05  Eric Botcazou  <ebotcazou (a] adacore.com>
   7633 
   7634 	* c.opt (fsso-struct): Add 'native' value.
   7635 
   7636 2017-01-05  Martin Liska  <mliska (a] suse.cz>
   7637 
   7638 	PR pch/78970
   7639 	* c-opts.c (c_common_post_options): Reject '-' filename for a precompiled
   7640 	header.
   7641 
   7642 2017-01-04  Marek Polacek  <polacek (a] redhat.com>
   7643 
   7644 	PR c++/64767
   7645 	* c.opt (Wpointer-compare): New option.
   7646 
   7647 2017-01-04  Jakub Jelinek  <jakub (a] redhat.com>
   7648 
   7649 	PR driver/78957
   7650 	* c.opt (fsso-struct=): Add RejectNegative.
   7651 
   7652 2017-01-01  Jakub Jelinek  <jakub (a] redhat.com>
   7653 
   7654 	Update copyright years.
   7655 
   7656 2016-12-29  Martin Liska  <mliska (a] suse.cz>
   7657 
   7658 	PR c/78933
   7659 	* c.opt (strong-eval-order): Add RejectNegative keyword.
   7660 
   7661 2016-12-22  Jason Merrill  <jason (a] redhat.com>
   7662 
   7663 	Implement P0522R0, matching of template template arguments.
   7664 	* c-cppbuiltin.c (c_cpp_builtins): Define
   7665 	__cpp_template_template_args.
   7666 
   7667 2016-12-21  Jakub Jelinek  <jakub (a] redhat.com>
   7668 
   7669 	PR bootstrap/78817
   7670 	* c-common.c (struct nonnull_arg_ctx): New type.
   7671 	(check_function_nonnull): Return bool instead of void.  Use
   7672 	nonnull_arg_ctx as context rather than just location_t.
   7673 	(check_nonnull_arg): Adjust for the new context type, set
   7674 	warned_p to true if a warning has been diagnosed.
   7675 	(check_function_arguments): Return bool instead of void.
   7676 	* c-common.h (check_function_arguments): Adjust prototype.
   7677 
   7678 2016-12-21  Jason Merrill  <jason (a] redhat.com>
   7679 
   7680 	* c.opt (-fnew-ttp-matching): New flag.
   7681 	* c-opts.c (c_common_post_options): Default on if -std=c++1z.
   7682 
   7683 2016-12-14  Martin Jambor  <mjambor (a] suse.cz>
   7684 
   7685 	* c-omp.c: Include omp-general.h instead of omp-low.h.
   7686 	(c_finish_oacc_wait): Adjusted call to find_omp_clause to use its new
   7687 	name.
   7688 
   7689 2016-12-14  Martin Sebor  <msebor (a] redhat.com>
   7690 
   7691 	PR c/17308
   7692 	* c-common.c (check_nonnull_arg): Disable when optimization
   7693 	is enabled.
   7694 
   7695 2016-12-12  Marek Polacek  <polacek (a] redhat.com>
   7696 
   7697 	PR c++/78647
   7698 	* c-common.c (attribute_fallthrough_p): Return false for
   7699 	error_mark_node.
   7700 
   7701 2016-12-08  Martin Sebor  <msebor (a] redhat.com>
   7702 
   7703 	PR c/78284
   7704 	* c.opt (-Walloc-zero, -Walloc-size-larger-than): New options.
   7705 
   7706 2016-12-08  Martin Sebor  <msebor (a] redhat.com>
   7707 
   7708 	PR c/78165
   7709 	* c-pretty-print (pp_c_integer_constant): Avoid formatting type
   7710 	suffix.
   7711 
   7712 2016-12-07  Martin Sebor  <msebor (a] redhat.com>
   7713 
   7714 	PR c/53562
   7715 	PR middle-end/77784
   7716 	PR middle-end/78149
   7717 	PR middle-end/78138
   7718 	* c.opt (-Wstringop-overflow): New option.
   7719 
   7720 2016-12-02  Maxim Ostapenko  <m.ostapenko (a] samsung.com>
   7721 
   7722 	* c-attribs.c (asan odr indicator): New attribute.
   7723 	(handle_asan_odr_indicator_attribute): New function.
   7724 
   7725 2016-11-26  Prathamesh Kulkarni  <prathamesh.kulkarni (a] linaro.org>
   7726 
   7727 	* c-common.c (c_common_nodes_and_builtins): Remove initialization of
   7728 	ptrdiff_type_node;
   7729 
   7730 2016-11-23  James Greenhalgh  <james.greenhalgh (a] arm.com>
   7731 
   7732 	* c-common.c (excess_precision_mode_join): New.
   7733 	(c_ts18661_flt_eval_method): New.
   7734 	(c_c11_flt_eval_method): Likewise.
   7735 	(c_flt_eval_method): Likewise.
   7736 	* c-common.h (excess_precision_mode_join): New.
   7737 	(c_flt_eval_method): Likewise.
   7738 	* c-cppbuiltin.c (c_cpp_flt_eval_method_iec_559): New.
   7739 	(cpp_iec_559_value): Call it.
   7740 	(c_cpp_builtins): Modify logic for __LIBGCC_*_EXCESS_PRECISION__,
   7741 	call c_flt_eval_method to set __FLT_EVAL_METHOD__ and
   7742 	__FLT_EVAL_METHOD_TS_18661_3__.
   7743 
   7744 2016-11-23  James Greenhalgh  <james.greenhalgh (a] arm.com>
   7745 
   7746 	* c-opts.c (c_common_post_options): Add logic to handle the default
   7747 	case for -fpermitted-flt-eval-methods.
   7748 
   7749 2016-11-23  Paolo Bonzini  <bonzini (a] gnu.org>
   7750 
   7751 	* c.opt (Wexpansion-to-defined): New.
   7752 
   7753 2016-11-23  Jakub Jelinek  <jakub (a] redhat.com>
   7754 
   7755 	PR target/78451
   7756 	* c-pragma.c (handle_pragma_target): Don't replace
   7757 	current_target_pragma, but chainon the new args to the current one.
   7758 
   7759 2016-11-22  Nathan Sidwell  <nathan (a] acm.org>
   7760 
   7761 	* array-notation-common.c (cilkplus_extract_an_trplets): Fix
   7762 	indentation and formatting.
   7763 
   7764 2016-11-21  Martin Sebor  <msebor (a] redhat.com>
   7765 
   7766 	* c.opt (-fprintf-return-value): Enable by default.
   7767 
   7768 2016-11-21  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   7769 
   7770 	PR c++/71973
   7771 	* c.opt (-Wbuiltin-declaration-mismatch): New warning.
   7772 	* c-common.c (c_common_nodes_and_builtins): Initialize
   7773 	const_tm_ptr_type_node.
   7774 
   7775 2016-11-16  Marek Polacek  <polacek (a] redhat.com>
   7776 
   7777 	PR c/78285
   7778 	* c-common.c (c_add_case_label): Turn error_at calls into inform.
   7779 
   7780 2016-11-14  Jakub Jelinek  <jakub (a] redhat.com>
   7781 
   7782 	* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_structured_bindings.
   7783 
   7784 2016-11-14  Prasad Ghangal  <prasad.ghangal (a] gmail.com>
   7785 	    Richard Biener  <rguenther (a] suse.de>
   7786 
   7787 	* c-common.h (c_common_resword): Add RID_GIMPLE, RID_PHI types.
   7788 	* c-common.h (enum rid): Add RID_GIMPLE, RID_PHI.
   7789 	* c.opt (fgimple): New option.
   7790 
   7791 2016-11-13  Prathamesh Kulkarni  <prathamesh.kulkarni (a] linaro.org>
   7792 
   7793 	PR c/35503
   7794 	* c-common.h (warn_for_restrict): Declare.
   7795 	* c-warn.c: Include gcc-rich-location.h.
   7796 	(warn_for_restrict): New function.
   7797 	* c-format.c (gcc_tdiag_char_table): Add entry for "Z" specifier.
   7798 	(gcc_cdiag_char_table): Likewise.
   7799 	(gcc_cxxdiag_char_table): Likewise.
   7800 	* c.opt (Wrestrict): New option.
   7801 
   7802 2016-11-13  Eric Botcazou  <ebotcazou (a] adacore.com>
   7803 
   7804 	* c-ada-spec.c (print_ada_declaration): For typedef declarations, look
   7805 	for nested types only if the type is a record or union and dump SLOC.
   7806 
   7807 2016-11-09  Jason Merrill  <jason (a] redhat.com>
   7808 
   7809 	* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_template_auto.
   7810 
   7811 2016-11-09  Jakub Jelinek  <jakub (a] redhat.com>
   7812 
   7813 	* c-ubsan.c (ubsan_instrument_shift): Handle split
   7814 	-fsanitize=shift-base and -fsanitize=shift-exponent.
   7815 
   7816 2016-11-07  Jason Merrill  <jason (a] redhat.com>
   7817 
   7818 	* c.opt (Wc++1z-compat): New.
   7819 	* c-cppbuiltin.c (c_cpp_builtins): Add __cpp_noexcept_function_type.
   7820 
   7821 2016-11-07  Martin Liska  <mliska (a] suse.cz>
   7822 
   7823 	* c-warn.c (warn_for_unused_label): Save all labels used
   7824 	in goto or in &label.
   7825 
   7826 2016-11-03  Jason Merrill  <jason (a] redhat.com>
   7827 
   7828 	* c-cppbuiltin.c (c_cpp_builtins): Correct
   7829 	__cpp_inheriting_constructors.
   7830 
   7831 2016-11-01  Jason Merrill  <jason (a] redhat.com>
   7832 
   7833 	* c-cppbuiltin.c (c_cpp_builtins): Update
   7834 	__cpp_inheriting_constructors.
   7835 
   7836 	* c.opt (-fnew-inheriting-ctors): New.
   7837 	* c-opts.c: Default to on for ABI 11+.
   7838 
   7839 2016-10-31  Jakub Jelinek  <jakub (a] redhat.com>
   7840 
   7841 	PR c++/77948
   7842 	* c.opt (fext-numeric-literals): Add Var and Init.
   7843 	* c-opts.c (c_common_handle_option): Don't clear
   7844 	cpp_opts->ext_numeric_literals for -std=c++{11,14,1z}.
   7845 	(c_common_post_options): Clear it here if not set
   7846 	explicitly.
   7847 
   7848 2016-10-28  Aldy Hernandez  <aldyh (a] redhat.com>
   7849 
   7850 	PR debug/77773
   7851 	* c-pretty-print.c (simple_type_specifier): Do not dereference `t'
   7852 	if NULL.
   7853 
   7854 2016-10-25  Jakub Jelinek  <jakub (a] redhat.com>
   7855 
   7856 	* c-common.h (enum rid): Add RID_BUILTIN_LAUNDER.
   7857 	* c-common.c (c_common_reswords): Add __builtin_launder.
   7858 
   7859 2016-10-24  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   7860 
   7861 	* c-common.c (c_common_truthvalue_conversion): Warn for
   7862 	multiplications in boolean context.  Fix the quoting of '<<' and '<'
   7863 	in the shift warning.
   7864 
   7865 2016-10-20  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   7866 
   7867 	* c-common.c (c_common_truthvalue_conversion): Fix the comment.
   7868 
   7869 2016-10-20  Jason Merrill  <jason (a] redhat.com>
   7870 
   7871 	* c-cppbuiltin.c (c_cpp_builtins): Update __cpp_concepts value.
   7872 
   7873 2016-10-19  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   7874 
   7875 	* c-common.c (c_common_truthvalue_conversion): Warn only for signed
   7876 	integer shift ops in boolean context.
   7877 
   7878 2016-10-18  Aldy Hernandez  <aldyh (a] redhat.com>
   7879 
   7880 	* c.opt (Walloca): New.
   7881 	(Walloca-larger-than=): New.
   7882 	(Wvla-larger-than=): New.
   7883 
   7884 2016-10-17  Marek Polacek  <polacek (a] redhat.com>
   7885 
   7886 	* c-warn.c (find_array_ref_with_const_idx_r): Remove parameter names.
   7887 	Return immediately when finding a match.
   7888 	(warn_tautological_cmp): Remove a boolean variable that is no longer
   7889 	needed.
   7890 
   7891 2016-10-17  Marek Polacek  <polacek (a] redhat.com>
   7892 
   7893 	* c-attribs.c: New file.
   7894 	* c-common.c: Move attributes handling to c-attribs.c.
   7895 	(get_nonnull_operand): No longer static.
   7896 	* c-common.h: Move the declarations from c-attribs.c to its own section.
   7897 
   7898 2016-10-14  Jason Merrill  <jason (a] redhat.com>
   7899 
   7900 	* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_aggregate_bases
   7901 	and __cpp_deduction_guides.
   7902 
   7903 2016-10-13  Jason Merrill  <jason (a] redhat.com>
   7904 
   7905 	* c-cppbuiltin.c (c_cpp_builtins): Add __cpp_inline_variables.
   7906 
   7907 2016-10-13  Thomas Preud'homme  <thomas.preudhomme (a] arm.com>
   7908 
   7909 	* c-cppbuiltin.c: Include memmodel.h.
   7910 	* c-opts.c: Likewise.
   7911 	* c-pragma.c: Likewise.
   7912 	* c-warn.c: Likewise.
   7913 
   7914 2016-10-12  Jakub Jelinek  <jakub (a] redhat.com>
   7915 
   7916 	* c.opt (Wextra): Add as C/C++/ObjC/ObjC++ option.
   7917 	(Wimplicit-fallthrough=): Enable for these languages by -Wextra.
   7918 	* c-opts.c (sanitize_cpp_opts): Initialize
   7919 	cpp_opts->cpp_warn_implicit_fallthrough.
   7920 
   7921 2016-10-11  Marek Polacek  <polacek (a] redhat.com>
   7922 
   7923 	* c-common.c (warning_candidate_p): Change the return type to bool
   7924 	and return true/false instead of 1/0.
   7925 	(vector_mode_valid_p): Likewise.
   7926 
   7927 2016-10-11  Marek Polacek  <polacek (a] redhat.com>
   7928 
   7929 	* c-common.c (fold_for_warn): No longer static.
   7930 	(bool_promoted_to_int_p): Likewise.
   7931 	(c_common_get_narrower): Likewise.
   7932 	(constant_expression_warning): Move to c-warn.c.
   7933 	(constant_expression_error): Likewise.
   7934 	(overflow_warning): Likewise.
   7935 	(warn_logical_operator): Likewise.
   7936 	(find_array_ref_with_const_idx_r): Likewise.
   7937 	(warn_tautological_cmp): Likewise.
   7938 	(expr_has_boolean_operands_p): Likewise.
   7939 	(warn_logical_not_parentheses): Likewise.
   7940 	(warn_if_unused_value): Likewise.
   7941 	(strict_aliasing_warning): Likewise.
   7942 	(sizeof_pointer_memaccess_warning): Likewise.
   7943 	(check_main_parameter_types): Likewise.
   7944 	(conversion_warning): Likewise.
   7945 	(warnings_for_convert_and_check): Likewise.
   7946 	(match_case_to_enum_1): Likewise.
   7947 	(match_case_to_enum): Likewise.
   7948 	(c_do_switch_warnings): Likewise.
   7949 	(warn_for_omitted_condop): Likewise.
   7950 	(readonly_error): Likewise.
   7951 	(lvalue_error): Likewise.
   7952 	(invalid_indirection_error): Likewise.
   7953 	(warn_array_subscript_with_type_char): Likewise.
   7954 	(warn_about_parentheses): Likewise.
   7955 	(warn_for_unused_label): Likewise.
   7956 	(warn_for_div_by_zero): Likewise.
   7957 	(warn_for_memset): Likewise.
   7958 	(warn_for_sign_compare): Likewise.
   7959 	(do_warn_double_promotion): Likewise.
   7960 	(do_warn_unused_parameter): Likewise.
   7961 	(record_locally_defined_typedef): Likewise.
   7962 	(maybe_record_typedef_use): Likewise.
   7963 	(maybe_warn_unused_local_typedefs): Likewise.
   7964 	(maybe_warn_bool_compare): Likewise.
   7965 	(maybe_warn_shift_overflow): Likewise.
   7966 	(warn_duplicated_cond_add_or_warn): Likewise.
   7967 	(diagnose_mismatched_attributes): Likewise.
   7968 	* c-common.h: Move the declarations from c-warn.c to its own section.
   7969 	* c-warn.c: New file.
   7970 
   7971 2016-10-08  Jason Merrill  <jason (a] redhat.com>
   7972 
   7973 	* c-common.c (c_common_truthvalue_conversion): Don't distribute
   7974 	into COND_EXPR in C++.
   7975 
   7976 2016-10-08  Jakub Jelinek  <jakub (a] redhat.com>
   7977 
   7978 	* c-lex.c (c_lex_with_flags) <case CPP_COMMENT>: For CPP_COMMENT
   7979 	token with PREV_FALLTHROUGH, skip all following CPP_PADDING and
   7980 	CPP_COMMENT tokens and set add_flags to PREV_FALLTHROUGH afterwards.
   7981 
   7982 2016-10-07  Jakub Jelinek  <jakub (a] redhat.com>
   7983 
   7984 	Implement LWG2296 helper intrinsic
   7985 	* c-common.h (enum rid): Add RID_ADDRESSOF.
   7986 	* c-common.c (c_common_reswords): Add __builtin_addressof.
   7987 
   7988 2016-10-07  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   7989 
   7990 	PR c++/77700
   7991 	* c-common.c (c_common_truthvalue_conversion): Warn also for
   7992 	suspicious enum values in boolean context.
   7993 
   7994 2016-10-06  Jakub Jelinek  <jakub (a] redhat.com>
   7995 
   7996 	Implement P0258R2 - helper for C++17
   7997 	std::has_unique_object_representations trait
   7998 	* c-common.h (enum rid): Add RID_HAS_UNIQUE_OBJ_REPRESENTATIONS.
   7999 	* c-common.c (c_common_reswords): Add
   8000 	__has_unique_object_representations.
   8001 
   8002 2016-10-05  Jakub Jelinek  <jakub (a] redhat.com>
   8003 
   8004 	PR sanitizer/66343
   8005 	* c-ubsan.c (ubsan_instrument_return): Don't call
   8006 	initialize_sanitizer_builtins here.
   8007 
   8008 2016-10-05  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   8009 
   8010 	* c-common.c (c_common_truthvalue_conversion): Warn also for suspicious
   8011 	conditional expression in boolean context when only one arm is
   8012 	non-boolean.
   8013 
   8014 2016-10-05  Jakub Jelinek  <jakub (a] redhat.com>
   8015 
   8016 	PR sanitizer/77823
   8017 	* c-ubsan.c (ubsan_instrument_shift): Return NULL_TREE if type0
   8018 	is not integral.
   8019 
   8020 	* c-common.c (c_common_reswords): Update comment for C++11.
   8021 
   8022 2016-10-04  Jason Merrill  <jason (a] redhat.com>
   8023 
   8024 	* c-common.c (make_tree_vector_from_ctor): New.
   8025 	* c-common.h: Declare it.
   8026 
   8027 2016-10-04  Jakub Jelinek  <jakub (a] redhat.com>
   8028 
   8029 	* c-cppbuiltin.c (c_cpp_builtins): Don't define
   8030 	__LIBGCC_JCR_SECTION_NAME__.
   8031 
   8032 2016-10-03  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   8033 
   8034 	* c-common.c (c_common_truthvalue_conversion): Warn for suspicious
   8035 	left shift in boolean context.
   8036 
   8037 2016-09-29  Jakub Jelinek  <jakub (a] redhat.com>
   8038 
   8039 	Implement P0001R1 - C++17 removal of register storage class specifier
   8040 	* c.opt (Wregister): New warning.
   8041 	* c-opts.c (c_common_post_options): Enable -Wregister by
   8042 	default for C++17.
   8043 
   8044 2016-09-29  James Greenhalgh  <james.greenhalgh (a] arm.com>
   8045 
   8046 	* c-opts.c (c_common_post_options): Remove special case for
   8047 	TARGET_FLT_EVAL_METHOD_NON_DEFAULT with -fexcess-precision=standard
   8048 	in C++.
   8049 
   8050 2016-09-27  Jakub Jelinek  <jakub (a] redhat.com>
   8051 
   8052 	* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_capture_star_this for
   8053 	-std=c++1z.
   8054 
   8055 	* c-ada-spec.c (print_ada_declaration): Remove break after return.
   8056 
   8057 2016-09-26  Thomas Preud'homme  <thomas.preudhomme (a] arm.com>
   8058 
   8059 	* c-common.c: Include memmodel.h.
   8060 
   8061 2016-09-26  Marek Polacek  <polacek (a] redhat.com>
   8062 
   8063 	* c-lex.c (c_common_has_attribute): Handle attribute fallthrough.
   8064 
   8065 2016-09-26  Marek Polacek  <polacek (a] redhat.com>
   8066 
   8067 	PR c/7652
   8068 	* c-common.c (c_common_attribute_table): Add fallthrough attribute.
   8069 	(handle_fallthrough_attribute): New function.
   8070 	(attribute_fallthrough_p): New function.
   8071 	* c-common.h (attribute_fallthrough_p): Declare.
   8072 
   8073 2016-09-24  Marek Polacek  <polacek (a] redhat.com>
   8074 
   8075 	PR c/77490
   8076 	* c.opt (Wbool-operation): New.
   8077 
   8078 2016-09-21  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   8079 
   8080 	* c-common.c (c_common_truthvalue_conversion): Inhibit
   8081 	Wint-in-bool-context warning with from_macro_definition_at.
   8082 	Mention the expression will always evaluate to true.
   8083 
   8084 2016-09-21  Martin Sebor  <msebor (a] redhat.com>
   8085 
   8086 	PR bootstrap/77676
   8087 	* c.opt (fprintf-return-value): Temporarily initialize to zero
   8088 	to unblock bootstrap failures.
   8089 
   8090 2016-09-21  Jakub Jelinek  <jakub (a] redhat.com>
   8091 
   8092 	PR c++/77651
   8093 	* c.opt (Waligned-new=): Add RejectNegative.
   8094 	(faligned-new=): Likewise.  Spelling fix - change
   8095 	aligned_new_threshhold to aligned_new_threshold.
   8096 	* c-cppbuiltin.c (c_cpp_builtins): Change aligned_new_threshhold
   8097 	to aligned_new_threshold.
   8098 
   8099 2016-09-20  Martin Sebor  <msebor (a] redhat.com>
   8100 
   8101 	PR middle-end/49905
   8102 	* c.opt: Add -Wformat-length and -fprintf-return-value.
   8103 
   8104 2016-09-19  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   8105 
   8106 	PR c++/77434
   8107 	* c.opt (Wint-in-bool-context): New warning.
   8108 	* c-common.c (c_common_truthvalue_conversion): Warn on integer
   8109 	constants in boolean context.
   8110 
   8111 2016-09-19  Joseph Myers  <joseph (a] codesourcery.com>
   8112 
   8113 	* c-common.c (max_align_t_align): Also consider alignment of
   8114 	float128_type_node.
   8115 
   8116 2016-09-15  Jason Merrill  <jason (a] redhat.com>
   8117 
   8118 	* c-common.c (check_cxx_fundamental_alignment_constraints): Check
   8119 	DECL_EXTERNAL.
   8120 
   8121 2016-09-14  Jason Merrill  <jason (a] redhat.com>
   8122 
   8123 	* c-common.c (check_cxx_fundamental_alignment_constraints): Don't
   8124 	limit FIELD_DECL, either.
   8125 
   8126 2016-09-14  Marek Polacek  <polacek (a] redhat.com>
   8127 
   8128 	* c-common.c (c_common_truthvalue_conversion): Use false instead of 0.
   8129 	* c-common.h (build_unary_op): Change nonconvert parameter type to bool.
   8130 	* c-omp.c (c_finish_omp_atomic): Use false instead of 0.
   8131 
   8132 2016-09-13  David Malcolm  <dmalcolm (a] redhat.com>
   8133 
   8134 	* c-common.c (warn_logical_not_parentheses): Replace
   8135 	rich_location::add_fixit_insert calls with add_fixit_insert_before
   8136 	and add_fixit_insert_after, eliminating the "next_loc" calculation.
   8137 
   8138 2016-09-13  Jason Merrill  <jason (a] redhat.com>
   8139 	    Tom de Vries  <tom (a] codesourcery.com>
   8140 
   8141 	PR c++/77427
   8142 	* c-common.c (set_underlying_type): Don't treat array as builtin type.
   8143 
   8144 2016-09-13  Jason Merrill  <jason (a] redhat.com>
   8145 
   8146 	* c-common.c (check_cxx_fundamental_alignment_constraints): Don't
   8147 	limit types at all.
   8148 
   8149 2016-09-12  Jason Merrill  <jason (a] redhat.com>
   8150 
   8151 	* c-common.c (check_cxx_fundamental_alignment_constraints): Fix
   8152 	bit/byte confusion, allow large alignment for types.
   8153 
   8154 2016-09-12  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   8155 
   8156 	PR c++/77496
   8157 	* c-common.c (warn_for_omitted_condop): Also warn for boolean data.
   8158 
   8159 2016-09-12  David Malcolm  <dmalcolm (a] redhat.com>
   8160 
   8161 	PR c/72858
   8162 	* c-format.c (argument_parser::check_argument_type): Add params
   8163 	"type_start" and "conversion_char".  Use the former to generate
   8164 	offset_to_type_start and pass it and conversion_char to
   8165 	check_format_types.
   8166 	(check_format_info_main): Capture the start of the type
   8167 	information as "type_start", and pass it an format_char
   8168 	to arg_parser.check_argument_type.
   8169 	(check_format_types): Provide an example in the leading comment.
   8170 	Add params "offset_to_type_start" and "conversion_char"; pass
   8171 	them to format_type_warning calls.
   8172 	(test_get_modifier_for_format_len): Likewise.
   8173 	(matching_type_p): New function.
   8174 	(get_format_for_type): Add param "conversion_char" and move
   8175 	implementation into...
   8176 	(get_format_for_type_1): ...new function, called twice.
   8177 	Use new function matching_type_p rather than checking for
   8178 	TYPE_CANONICAL equality.
   8179 	(get_corrected_substring): New function.
   8180 	(format_type_warning): Provide an example in the leading comment.
   8181 	Add params "offset_to_type_start" and "conversion_char".  Replace
   8182 	call to get_format_for_type with call to get_corrected_substring
   8183 	and move rejection of hints for widths/precisions there.
   8184 	(assert_format_for_type_streq): Add param "conversion_char".
   8185 	(ASSERT_FORMAT_FOR_TYPE_STREQ): Add param CONVERSION_CHAR.
   8186 	(test_get_format_for_type_printf): Add conversion chars to the
   8187 	tests, adding coverage for various combinations of integer
   8188 	vs double conversions, and for preserving octal and hexadecimal
   8189 	conversions.
   8190 	(test_get_format_for_type_scanf): Add conversion chars to the
   8191 	tests.
   8192 
   8193 2016-09-10  Tom de Vries  <tom (a] codesourcery.com>
   8194 
   8195 	PR C/71602
   8196 	* c-common.c (build_va_arg): Handle more strict
   8197 	targetm.canonical_va_list_type.  Replace first argument type error with
   8198 	assert.
   8199 
   8200 2016-09-09  Martin Sebor  <msebor (a] redhat.com>
   8201 
   8202 	PR c/77520
   8203 	PR c/77521
   8204 	* c-format.c (argument_parser::find_format_char_info): Use %qc
   8205 	format directive unconditionally.
   8206 
   8207 2016-09-09  Jason Merrill  <jason (a] redhat.com>
   8208 
   8209 	Implement C++17 new of over-aligned types.
   8210 	* c.opt: Add -faligned-new and -Waligned-new.
   8211 	* c-common.c (max_align_t_align): Split out from...
   8212 	(cxx_fundamental_alignment_p): ...here.
   8213 	* c-common.h: Declare it.
   8214 	* c-cppbuiltin.c (c_cpp_builtins): Handle aligned new.
   8215 
   8216 2016-09-09  Joseph Myers  <joseph (a] codesourcery.com>
   8217 
   8218 	* c-cppbuiltin.c (builtin_define_type_width): New function.
   8219 	(builtin_define_stdint_macros, c_cpp_builtins): Define type width
   8220 	macros.
   8221 
   8222 2016-09-07  David Malcolm  <dmalcolm (a] redhat.com>
   8223 
   8224 	* c-common.c (get_cpp_ttype_from_string_type): Handle being passed
   8225 	a POINTER_TYPE.
   8226 	(substring_loc::get_location): Move to substring-locations.c,
   8227 	keeping implementation as...
   8228 	(c_get_substring_location): New function, from the above, reworked
   8229 	to use accessors rather than member lookup.
   8230 	* c-common.h (class substring_loc): Move to substring-locations.h,
   8231 	replacing with a forward decl.
   8232 	(c_get_substring_location): New decl.
   8233 	* c-format.c: Include "substring-locations.h".
   8234 	(format_warning_va): Move to substring-locations.c.
   8235 	(format_warning_at_substring): Likewise.
   8236 
   8237 2016-09-06  Martin Sebor  <msebor (a] redhat.com>
   8238 
   8239 	PR c/77336
   8240 	* c-format.c (check_function_format): Avoid issuing warnings for
   8241 	functions unless they call format functions with non-constant
   8242 	format strings.
   8243 
   8244 2016-09-06  Richard Biener  <rguenther (a] suse.de>
   8245 
   8246 	PR c/77450
   8247 	* c-common.c (c_common_mark_addressable_vec): Handle
   8248 	COMPOUND_LITERAL_EXPR.
   8249 
   8250 2016-09-05  Marek Polacek  <polacek (a] redhat.com>
   8251 
   8252 	PR c/77423
   8253 	* c-common.c (bool_promoted_to_int_p): New function.
   8254 	(expr_has_boolean_operands_p): New function.
   8255 	(warn_logical_not_parentheses): Return if expr_has_boolean_operands_p.
   8256 	(maybe_warn_bool_compare): Use bool_promoted_to_int_p.
   8257 
   8258 2016-09-04  Tom de Vries  <tom (a] codesourcery.com>
   8259 
   8260 	revert:
   8261 	2016-08-29  Tom de Vries  <tom (a] codesourcery.com>
   8262 
   8263 	* c-common.c (build_va_arg): Replace first argument type error
   8264 	with assert.
   8265 
   8266 2016-09-02  Jakub Jelinek  <jakub (a] redhat.com>
   8267 
   8268 	PR c/65467
   8269 	* c-omp.c (c_finish_omp_atomic): Reject _Atomic qualified expressions.
   8270 	(c_finish_omp_for): Reject _Atomic qualified iterators.
   8271 
   8272 2016-09-01  Martin Sebor  <msebor (a] redhat.com>
   8273 
   8274 	* c-ada-spec.c (dump_ada_function_declaration): Increase buffer
   8275 	size to guarantee it fits the output of the formatted function
   8276 	regardless of its arguments.
   8277 
   8278 2016-09-01  Marek Polacek  <polacek (a] redhat.com>
   8279 
   8280 	PR c/7652
   8281 	* c-common.c (resolve_overloaded_builtin): Fix formatting.  Add
   8282 	FALLTHRU comments.
   8283 
   8284 2016-08-29  Marek Polacek  <polacek (a] redhat.com>
   8285 
   8286 	PR c/77292
   8287 	* c-common.c (warn_logical_not_parentheses): Don't warn for
   8288 	a comparison or a logical operator.
   8289 
   8290 2016-08-29  Tom de Vries  <tom (a] codesourcery.com>
   8291 
   8292 	* c-common.c (build_va_arg): Fix type comparison assert.
   8293 
   8294 2016-08-29  Tom de Vries  <tom (a] codesourcery.com>
   8295 
   8296 	* c-common.c (build_va_arg): Replace first argument type error
   8297 	with assert.
   8298 
   8299 2016-08-29  Tom de Vries  <tom (a] codesourcery.com>
   8300 
   8301 	PR c/77398
   8302 	* c-common.c (build_va_arg): Add first argument error.  Build va_arg
   8303 	with error_mark_node as va_list instead of with illegal va_list.
   8304 
   8305 2016-08-25  Marek Polacek  <polacek (a] redhat.com>
   8306 	    David Malcolm  <dmalcolm (a] redhat.com>
   8307 
   8308 	* c-common.c (warn_logical_not_parentheses): Print fixit hints.
   8309 	* c-common.h (warn_logical_not_parentheses): Update declaration.
   8310 
   8311 2016-08-22  Marek Polacek  <polacek (a] redhat.com>
   8312 
   8313 	PR c++/77321
   8314 	* c-common.c (warn_for_memset): Check type for null.
   8315 
   8316 2016-08-22  Joseph Myers  <joseph (a] codesourcery.com>
   8317 
   8318 	* c-cppbuiltin.c (c_cpp_builtins): Check _FloatN and
   8319 	_FloatNx types for suffixes for built-in functions.
   8320 
   8321 2016-08-19  Joseph Myers  <joseph (a] codesourcery.com>
   8322 
   8323 	PR c/32187
   8324 	* c-common.h (RID_FLOAT16, RID_FLOATN_NX_FIRST, RID_FLOAT32)
   8325 	(RID_FLOAT64, RID_FLOAT128, RID_FLOAT32X, RID_FLOAT64X)
   8326 	(RID_FLOAT128X): New enum rid values.
   8327 	(CASE_RID_FLOATN_NX): New macro.
   8328 	* c-common.c (c_common_reswords): Add _FloatN and _FloatNx
   8329 	keywords.
   8330 	(c_common_type_for_mode): Check for _FloatN and _FloatNx and
   8331 	corresponding complex types.
   8332 	(c_common_nodes_and_builtins): For non-C++, register _FloatN and
   8333 	_FloatNx and corresponding complex types.
   8334 	(keyword_begins_type_specifier): Use CASE_RID_FLOATN_NX.
   8335 	* c-cppbuiltin.c (builtin_define_float_constants): Check _FloatN
   8336 	and _FloatNx types for the widest type for determining
   8337 	DECIMAL_DIG.  Define __LDBL_DECIMAL_DIG__ as well as
   8338 	__DECIMAL_DIG__ for long double.  Handle FMA_SUFFIX being NULL.
   8339 	(c_cpp_builtins): Call builtin_define_float_constants for _FloatN
   8340 	and _FloatNx types.
   8341 	* c-lex.c (interpret_float): Handle _FloatN and _FloatNx
   8342 	constants.
   8343 	* c-pretty-print.c (pp_c_floating_constant): Handle _FloatN and
   8344 	_FloatNx types.
   8345 
   8346 2016-08-18  David Malcolm  <dmalcolm (a] redhat.com>
   8347 
   8348 	* c-opts.c (c_diagnostic_finalizer): Update for change to
   8349 	diagnostic_show_locus.
   8350 
   8351 2016-08-18  David Malcolm  <dmalcolm (a] redhat.com>
   8352 
   8353 	* c-common.c: Include "spellcheck.h".
   8354 	(cb_get_suggestion): New function.
   8355 	* c-common.h (cb_get_suggestion): New decl.
   8356 	* c-lex.c (init_c_lex): Initialize cb->get_suggestion to
   8357 	cb_get_suggestion.
   8358 
   8359 2016-08-18  Marek Polacek  <polacek (a] redhat.com>
   8360 
   8361 	PR c/71514
   8362 	* c-common.c (get_atomic_generic_size): Disallow pointer-to-function
   8363 	and pointer-to-VLA.
   8364 
   8365 2016-08-16  David Malcolm  <dmalcolm (a] redhat.com>
   8366 
   8367 	PR c/72857
   8368 	* c-common.c (substring_loc::get_range): Rename to...
   8369 	(substring_loc::get_location): ...this, converting param from a
   8370 	source_range * to a location_t *.  Call
   8371 	get_source_location_for_substring rather than
   8372 	get_source_range_for_substring, and pass in m_caret_idx.
   8373 	* c-common.h (substring_loc::substring_loc): Add param "caret_idx".
   8374 	(substring_loc::get_range): Replace with...
   8375 	(substring_loc::get_location): ...this.
   8376 	(substring_loc::set_caret_index): New method.
   8377 	(substring_loc): Add field m_caret_idx.
   8378 	* c-format.c (format_warning_va): Update for above changes.
   8379 	Rename local "substring_loc" to "fmt_substring_loc" to avoid
   8380 	clashing with type name.
   8381 	(format_warning_at_char): Add caret_idx param to substring_loc ctor.
   8382 	(check_argument_type): Likewise.
   8383 	(format_type_warning): Rename param "fmt_loc" to "whole_fmt_loc"
   8384 	Use a copy when emitting warnings, setting the caret index from TYPE.
   8385 
   8386 2016-08-16  Eric Botcazou  <ebotcazou (a] adacore.com>
   8387 	    Arnaud Charlet  <charlet (a] adacore.com>
   8388 
   8389 	* c-ada-spec.c (dump_number): New function.
   8390 	(handle_escape_character): Likewise.
   8391 	(print_ada_macros): Add handling of constant integers and strings.
   8392 
   8393 2016-08-12  Marek Polacek  <polacek (a] redhat.com>
   8394 
   8395 	PR c/7652
   8396 	* c-common.c (scalar_to_vector): Adjust fall through comment.
   8397 	* c-opts.c (c_common_handle_option): Likewise.
   8398 	* c-pragma.c (handle_pragma_pack): Add FALLTHRU.
   8399 	* c-pretty-print.c (c_pretty_printer::postfix_expression): Adjust
   8400 	fall through comment.
   8401 	* cilk.c (extract_free_variables): Add FALLTHRU.
   8402 
   8403 2016-08-10  Jason Merrill  <jason (a] redhat.com>
   8404 
   8405 	* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_if_constexpr.
   8406 
   8407 2016-08-09  Jason Merrill  <jason (a] redhat.com>
   8408 
   8409 	* c-common.c (c_common_attribute_table): vector_size affects type
   8410 	identity.
   8411 
   8412 2016-08-09  Marek Polacek  <polacek (a] redhat.com>
   8413 
   8414 	PR c/7652
   8415 	* c-ada-spec.c (dump_generic_ada_node): Add return.
   8416 
   8417 2016-08-09  Jason Merrill  <jason (a] redhat.com>
   8418 
   8419 	* c-cppbuiltin.c (c_cpp_builtins): Update __cpp_constexpr for
   8420 	C++17 constexpr lambdas.
   8421 
   8422 2016-08-08  David Malcolm  <dmalcolm (a] redhat.com>
   8423 
   8424 	PR c/64955
   8425 	* c-common.h (selftest::c_format_c_tests): New declaration.
   8426 	(selftest::run_c_tests): New declaration.
   8427 	* c-format.c: Include "selftest.h.
   8428 	(format_warning_va): Add param "corrected_substring" and use
   8429 	it to add a replacement fix-it hint.
   8430 	(format_warning_at_substring): Likewise.
   8431 	(format_warning_at_char): Update for new param of
   8432 	format_warning_va.
   8433 	(argument_parser::check_argument_type): Pass "fki" to
   8434 	check_format_types.
   8435 	(check_format_types): Add param "fki" and pass it to
   8436 	format_type_warning.
   8437 	(deref_n_times): New function.
   8438 	(get_modifier_for_format_len): New function.
   8439 	(selftest::test_get_modifier_for_format_len): New function.
   8440 	(get_format_for_type): New function.
   8441 	(format_type_warning): Add param "fki" and use it to attempt
   8442 	to provide hints for argument types when calling
   8443 	format_warning_at_substring.
   8444 	(selftest::get_info): New function.
   8445 	(selftest::assert_format_for_type_streq): New function.
   8446 	(ASSERT_FORMAT_FOR_TYPE_STREQ): New macro.
   8447 	(selftest::test_get_format_for_type_printf): New function.
   8448 	(selftest::test_get_format_for_type_scanf): New function.
   8449 	(selftest::c_format_c_tests): New function.
   8450 
   8451 2016-08-08  David Malcolm  <dmalcolm (a] redhat.com>
   8452 
   8453 	PR c/52952
   8454 	* c-format.c: Include "diagnostic.h".
   8455 	(location_column_from_byte_offset): Delete.
   8456 	(location_from_offset): Delete.
   8457 	(format_warning_va): New function.
   8458 	(format_warning_at_substring): New function.
   8459 	(format_warning_at_char): New function.
   8460 	(check_format_arg): Capture location of format_tree and pass to
   8461 	check_format_info_main.
   8462 	(argument_parser): Add fields "start_of_this_format" and
   8463 	"format_string_cst".
   8464 	(flag_chars_t::validate): Add param "format_string_cst".  Convert
   8465 	warning_at call using location_from_offset to call to
   8466 	format_warning_at_char.
   8467 	(argument_parser::argument_parser): Add param "format_string_cst_"
   8468 	and use use it to initialize field "format_string_cst".
   8469 	Initialize new field "start_of_this_format".
   8470 	(argument_parser::read_format_flags): Convert warning_at call
   8471 	using location_from_offset to a call to format_warning_at_char.
   8472 	(argument_parser::read_any_format_left_precision): Likewise.
   8473 	(argument_parser::read_any_format_precision): Likewise.
   8474 	(argument_parser::read_any_other_modifier): Likewise.
   8475 	(argument_parser::find_format_char_info): Likewise, in three places.
   8476 	(argument_parser::parse_any_scan_set): Likewise, in one place.
   8477 	(argument_parser::handle_conversions): Likewise, in two places.
   8478 	(argument_parser::check_argument_type): Add param "fmt_param_loc"
   8479 	and use it to make a substring_loc.  Pass the latter to
   8480 	check_format_types.
   8481 	(check_format_info_main): Add params "fmt_param_loc" and
   8482 	"format_string_cst".  Convert warning_at calls using
   8483 	location_from_offset to calls to format_warning_at_char.  Pass the
   8484 	new params to the arg_parser ctor.  Pass "format_string_cst" to
   8485 	flag_chars.validate.  Pass "fmt_param_loc" to
   8486 	arg_parser.check_argument_type.
   8487 	(check_format_types): Convert first param from a location_t
   8488 	to a const substring_loc & and rename to "fmt_loc".  Attempt
   8489 	to extract the range of the relevant parameter and pass it
   8490 	to format_type_warning.
   8491 	(format_type_warning): Convert first param from a location_t
   8492 	to a const substring_loc & and rename to "fmt_loc".  Add
   8493 	params "param_range" and "type".  Replace calls to warning_at
   8494 	with calls to format_warning_at_substring.
   8495 
   8496 2016-08-08  David Malcolm  <dmalcolm (a] redhat.com>
   8497 
   8498 	* c-format.c (class flag_chars_t): New class.
   8499 	(struct length_modifier): New struct.
   8500 	(class argument_parser): New class.
   8501 	(flag_chars_t::flag_chars_t): New ctor.
   8502 	(flag_chars_t::has_char_p): New method.
   8503 	(flag_chars_t::add_char): New method.
   8504 	(flag_chars_t::validate): New method.
   8505 	(flag_chars_t::get_alloc_flag): New method.
   8506 	(flag_chars_t::assignment_suppression_p): New method.
   8507 	(argument_parser::argument_parser): New ctor.
   8508 	(argument_parser::read_any_dollar): New method.
   8509 	(argument_parser::read_format_flags): New method.
   8510 	(argument_parser::read_any_format_width): New method.
   8511 	(argument_parser::read_any_format_left_precision): New method.
   8512 	(argument_parser::read_any_format_precision): New method.
   8513 	(argument_parser::handle_alloc_chars): New method.
   8514 	(argument_parser::read_any_length_modifier): New method.
   8515 	(argument_parser::read_any_other_modifier): New method.
   8516 	(argument_parser::find_format_char_info): New method.
   8517 	(argument_parser::validate_flag_pairs): New method.
   8518 	(argument_parser::give_y2k_warnings): New method.
   8519 	(argument_parser::parse_any_scan_set): New method.
   8520 	(argument_parser::handle_conversions): New method.
   8521 	(argument_parser::check_argument_type): New method.
   8522 	(check_format_info_main): Introduce classes argument_parser
   8523 	and flag_chars_t, moving the code within the loop into methods
   8524 	of these classes.  Make various locals "const".
   8525 
   8526 2016-08-05  David Malcolm  <dmalcolm (a] redhat.com>
   8527 
   8528 	* c-common.c: Include "substring-locations.h".
   8529 	(get_cpp_ttype_from_string_type): New function.
   8530 	(g_string_concat_db): New global.
   8531 	(substring_loc::get_range): New method.
   8532 	* c-common.h (g_string_concat_db): New declaration.
   8533 	(class substring_loc): New class.
   8534 	* c-lex.c (lex_string): When concatenating strings, capture the
   8535 	locations of all tokens using a new obstack, and record the
   8536 	concatenation locations within g_string_concat_db.
   8537 	* c-opts.c (c_common_init_options): Construct g_string_concat_db
   8538 	on the ggc-heap.
   8539 
   8540 2016-07-29  Marek Polacek  <polacek (a] redhat.com>
   8541 
   8542 	PR c/71926
   8543 	* c-common.c (c_common_truthvalue_conversion): Use LOCATION for the
   8544 	parentheses warning.
   8545 
   8546 	PR c/71574
   8547 	* c-common.c (handle_alloc_align_attribute): Also check FUNCTION_DECL.
   8548 
   8549 2016-07-28  Martin Liska  <mliska (a] suse.cz>
   8550 
   8551 	PR gcov-profile/68025
   8552 	* c-common.c (handle_no_profile_instrument_function_attribute):
   8553 
   8554 2016-07-27  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   8555 
   8556 	* c-common.c (check_user_alignment): Use LOG2_BITS_PER_UNIT instead of
   8557 	BITS_PER_UNIT_LOG.
   8558 
   8559 2016-07-25  Jason Merrill  <jason (a] redhat.com>
   8560 
   8561 	PR c++/65970
   8562 	* c.opt (fconstexpr-loop-limit): New.
   8563 
   8564 2016-07-22  Martin Sebor  <msebor (a] redhat.com>
   8565 
   8566 	PR c++/71675
   8567 	* c-common.c (resolve_overloaded_builtin): Avoid converting
   8568 	__atomic_compare_exchange_n return type to that of what its
   8569 	first argument points to.
   8570 
   8571 2016-07-22  Uros Bizjak  <ubizjak (a] gmail.com>
   8572 
   8573 	* c-common.c: Use HOST_WIDE_INT_M1U instead of
   8574 	~(unsigned HOST_WIDE_INT) 0.
   8575 
   8576 2016-07-22  Martin Liska  <mliska (a] suse.cz>
   8577 
   8578 	PR gcov-profile/69028
   8579 	PR gcov-profile/62047
   8580 	* cilk.c (create_cilk_helper_decl): Set location of a new decl
   8581 	to the current_function_decl.
   8582 
   8583 2016-07-21  Jason Merrill  <jason (a] redhat.com>
   8584 
   8585 	PR c++/65168
   8586 	* c-common.c (c_common_truthvalue_conversion): Check
   8587 	c_inhibit_evaluation_warnings for warning about address of
   8588 	reference.
   8589 
   8590 2016-07-20  David Malcolm  <dmalcolm (a] redhat.com>
   8591 
   8592 	* c-common.h (lookup_name_fuzzy): Convert return type from tree to
   8593 	const char *.
   8594 
   8595 2016-07-15  Jason Merrill  <jason (a] redhat.com>
   8596 
   8597 	* c-opts.c (c_common_post_options): Update -fabi-version default to 11.
   8598 
   8599 2016-07-15  Jakub Jelinek  <jakub (a] redhat.com>
   8600 
   8601 	PR c/71858
   8602 	* c-common.h (enum lookup_name_fuzzy_kind): Add
   8603 	FUZZY_LOOKUP_FUNCTION_NAME.
   8604 
   8605 2016-07-08  Jason Merrill  <jason (a] redhat.com>
   8606 
   8607 	P0145: Refining Expression Order for C++.
   8608 	* c.opts (-fargs-in-order): Rename to -fstrong-eval-order.
   8609 	* c-opts.c: Adjust.
   8610 
   8611 2016-07-05  Markus Trippelsdorf  <markus (a] trippelsdorf.de>
   8612 
   8613 	PR c++/71214
   8614 	* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_rvalue_references.
   8615 
   8616 2016-06-29  Thomas Schwinge  <thomas (a] codesourcery.com>
   8617 
   8618 	* c-pragma.h (enum pragma_kind): Rename
   8619 	PRAGMA_OMP_DECLARE_REDUCTION to PRAGMA_OMP_DECLARE.  Adjust all
   8620 	users.
   8621 
   8622 2016-06-29  Richard Biener  <rguenther (a] suse.de>
   8623 
   8624 	PR middle-end/71002
   8625 	* c-common.c (c_common_get_alias_set): Remove union type punning case.
   8626 
   8627 2016-06-24  Jason Merrill  <jason (a] redhat.com>
   8628 
   8629 	P0145R2: Refining Expression Order for C++.
   8630 	* c-common.c (verify_tree) [COMPOUND_EXPR]: Fix handling on LHS of
   8631 	MODIFY_EXPR.
   8632 
   8633 2016-06-24  Jakub Jelinek  <jakub (a] redhat.com>
   8634 
   8635 	* c-common.c (check_builtin_function_arguments): Require last
   8636 	argument of BUILT_IN_*_OVERFLOW_P to have INTEGER_TYPE type.
   8637 	Adjust wording of diagnostics for BUILT_IN_*_OVERLFLOW
   8638 	if the last argument is pointer to enumerated or boolean type.
   8639 
   8640 2016-06-22  David Malcolm  <dmalcolm (a] redhat.com>
   8641 
   8642 	PR c/70339
   8643 	* c-common.h (enum lookup_name_fuzzy_kind): New enum.
   8644 	(lookup_name_fuzzy): New prototype.
   8645 
   8646 2016-06-21  John David Anglin  <danglin (a] gcc.gnu.org>
   8647 
   8648 	* c-common.c (get_source_date_epoch): Use int64_t instead of long long.
   8649 
   8650 2016-06-14  Jason Merrill  <jason (a] redhat.com>
   8651 
   8652 	P0145R2: Refining Expression Order for C++.
   8653 	* c.opt (fargs-in-order): New.
   8654 	* c-opts.c (c_common_post_options): Adjust flag_args_in_order.
   8655 
   8656 2016-06-13  Jakub Jelinek  <jakub (a] redhat.com>
   8657 
   8658 	PR sanitizer/71498
   8659 	* c-gimplify.c (ubsan_walk_array_refs_r): Set *walk_subtrees = 0 on
   8660 	all BIND_EXPRs, and on all BIND_EXPRs recurse also on BIND_EXPR_BODY.
   8661 
   8662 	PR preprocessor/71183
   8663 	* c-ppoutput.c (init_pp_output): Set cb->get_source_date_epoch
   8664 	to cb_get_source_date_epoch.
   8665 
   8666 2016-06-10  Jakub Jelinek  <jakub (a] redhat.com>
   8667 
   8668 	PR c/68657
   8669 	* c.opt (Wpsabi): Add Warning flag.
   8670 
   8671 2016-06-10  Martin Sebor  <msebor (a] redhat.com>
   8672 
   8673 	PR c/71392
   8674 	* c-common.c (handle_nonnull_attribute): Accept
   8675 	the nonnull attribute in type-generic builtins.
   8676 
   8677 2016-06-09  Martin Sebor  <msebor (a] redhat.com>
   8678 
   8679 	PR c/70883
   8680 	* c-common.c (builtin_function_validate_nargs): Make text of error
   8681 	message consistent with others like it.
   8682 
   8683 2016-06-08  Martin Sebor  <msebor (a] redhat.com>
   8684 	    Jakub Jelinek  <jakub (a] redhat.com>
   8685 
   8686 	PR c++/70507
   8687 	PR c/68120
   8688 	* c-common.c (check_builtin_function_arguments): Handle
   8689 	BUILT_IN_{ADD,SUB,MUL}_OVERFLOW_P.
   8690 
   8691 2016-06-08  Richard Biener  <rguenther (a] suse.de>
   8692 
   8693 	* c-common.c (parse_optimize_options): Improve diagnostic messages.
   8694 
   8695 2016-06-07  Richard Biener  <rguenther (a] suse.de>
   8696 
   8697 	PR c/61564
   8698 	* c-common.c (parse_optimize_options): Only apply CL_OPTIMIZATION
   8699 	options and warn about others.
   8700 
   8701 2016-06-01  Eduard Sanou  <dhole (a] openmailbox.org>
   8702 
   8703 	* c-common.c (get_source_date_epoch): Rename to
   8704 	cb_get_source_date_epoch.
   8705 	* c-common.c (cb_get_source_date_epoch): Use a single generic erorr
   8706 	message when the parsing fails.  Use error_at instead of fatal_error.
   8707 	* c-common.h (get_source_date_epoch): Rename to
   8708 	cb_get_source_date_epoch.
   8709 	* c-common.h (cb_get_source_date_epoch): Prototype.
   8710 	* c-common.h (MAX_SOURCE_DATE_EPOCH): Define.
   8711 	* c-common.h (c_omp_region_type): Remove trailing comma.
   8712 	* c-lex.c (init_c_lex): Set cb->get_source_date_epoch callback.
   8713 	* c-lex.c (c_lex_with_flags): Remove initialization of
   8714 	pfile->source_date_epoch.
   8715 
   8716 2016-05-30  Jakub Jelinek  <jakub (a] redhat.com>
   8717 
   8718 	PR c++/71349
   8719 	* c-omp.c (c_omp_split_clauses): Put OMP_CLAUSE_DEPEND to
   8720 	C_OMP_CLAUSE_SPLIT_TARGET.  Put OMP_CLAUSE_NOWAIT to
   8721 	C_OMP_CLAUSE_SPLIT_TARGET if combined with target construct,
   8722 	instead of C_OMP_CLAUSE_SPLIT_FOR.
   8723 
   8724 2016-05-24  Richard Biener  <rguenther (a] suse.de>
   8725 
   8726 	PR middle-end/70434
   8727 	PR c/69504
   8728 	* c-common.h (convert_vector_to_pointer_for_subscript): Rename to ...
   8729 	(convert_vector_to_array_for_subscript): ... this.
   8730 	* c-common.c (convert_vector_to_pointer_for_subscript): Use a
   8731 	VIEW_CONVERT_EXPR to an array type.  Rename to ...
   8732 	(convert_vector_to_array_for_subscript): ... this.
   8733 
   8734 2016-05-12  Marek Polacek  <polacek (a] redhat.com>
   8735 
   8736 	PR c/70756
   8737 	* c-common.c (pointer_int_sum): Call size_in_bytes_loc instead of
   8738 	size_in_bytes and pass LOC to it.
   8739 
   8740 2016-05-11  Mikhail Maltsev  <maltsevm (a] gmail.com>
   8741 
   8742 	PR c/43651
   8743 	* c.opt (Wduplicate-decl-specifier): New option.
   8744 
   8745 2016-05-11  Marek Polacek  <polacek (a] redhat.com>
   8746 
   8747 	PR c++/71024
   8748 	* c-common.c (diagnose_mismatched_attributes): New function.
   8749 	* c-common.h (diagnose_mismatched_attributes): Declare.
   8750 
   8751 2016-05-04  Marek Polacek  <polacek (a] redhat.com>
   8752 
   8753 	* c.opt (Wdangling-else): New option.
   8754 
   8755 2016-05-03  Marek Polacek  <polacek (a] redhat.com>
   8756 
   8757 	PR c/70859
   8758 	* c-common.c (builtin_function_validate_nargs): Add location
   8759 	parameter.  Use it.
   8760 	(check_builtin_function_arguments): Add location and arguments
   8761 	parameters.  Use them.
   8762 	* c-common.h (check_builtin_function_arguments): Update declaration.
   8763 
   8764 2016-05-03  Richard Biener  <rguenther (a] suse.de>
   8765 
   8766 	* cilk.c (cilk_gimplify_call_params_in_spawned_fn): Do not
   8767 	allow call args to gimplify to SSA names.
   8768 
   8769 2016-05-03  Marek Polacek  <polacek (a] redhat.com>
   8770 
   8771 	* c-common.h (enum c_omp_region_type): Remove stray comma.
   8772 
   8773 2016-05-02  Cesar Philippidis  <cesar (a] codesourcery.com>
   8774 
   8775 	* c-common.h (enum c_omp_region_type): Define.
   8776 
   8777 2016-05-02  Richard Sandiford  <richard.sandiford (a] arm.com>
   8778 
   8779 	* c-common.c (shorten_compare): Use wi::to_wide.
   8780 
   8781 2016-04-29  Cesar Philippidis  <cesar (a] codesourcery.com>
   8782 
   8783 	PR middle-end/70626
   8784 	* c-common.h (c_oacc_split_loop_clauses): Add boolean argument.
   8785 	* c-omp.c (c_oacc_split_loop_clauses): Use it to duplicate
   8786 	reduction clauses in acc parallel loops.
   8787 
   8788 2016-04-29  Marek Polacek  <polacek (a] redhat.com>
   8789 
   8790 	PR c/70852
   8791 	* c-common.c (warn_for_memset): Check domain before accessing it.
   8792 
   8793 2016-04-29  Dominik Vogt  <vogt (a] linux.vnet.ibm.com>
   8794 
   8795 	PR/69089
   8796 	* c-common.c (handle_aligned_attribute): Allow 0 as an argument to the
   8797 	"aligned" attribute.
   8798 
   8799 2016-04-28  Jason Merrill  <jason (a] redhat.com>
   8800 
   8801 	* c-lex.c (c_common_has_attribute): Handle nodiscard.
   8802 
   8803 2016-04-28  Eduard Sanou  <dhole (a] openmailbox.org>
   8804 	    Matthias Klose  <doko (a] debian.org>
   8805 
   8806 	* c-common.c (get_source_date_epoch): New function, gets the environment
   8807 	variable SOURCE_DATE_EPOCH and parses it as long long with error
   8808 	handling.
   8809 	* c-common.h (get_source_date_epoch): Prototype.
   8810 	* c-lex.c (c_lex_with_flags): set parse_in->source_date_epoch.
   8811 
   8812 2015-04-27  Ryan Burn  <contact (a] rnburn.com>
   8813 
   8814 	PR c++/69024
   8815 	PR c++/68997
   8816 	* cilk.c (cilk_ignorable_spawn_rhs_op): Change to external linkage.
   8817 	(cilk_recognize_spawn): Renamed from recognize_spawn and change to
   8818 	external linkage.
   8819 	(cilk_detect_and_unwrap): Corresponding changes.
   8820 	(extract_free_variables): Don't extract free variables from
   8821 	AGGR_INIT_EXPR slot.
   8822 	* c-common.h (cilk_ignorable_spawn_rhs_op): Prototype.
   8823 	(cilk_recognize_spawn): Likewise.
   8824 
   8825 2016-04-27  Bernd Schmidt  <bschmidt (a] redhat.com>
   8826 
   8827 	* c.opt (Wmemset-elt-size): New option.
   8828 	* c-common.c (warn_for_memset): New function.
   8829 	* c-common.h (warn_for_memset): Declare.
   8830 
   8831 2016-04-25  Jason Merrill  <jason (a] redhat.com>
   8832 
   8833 	* c-common.c (handle_unused_attribute): Accept CONST_DECL.
   8834 	No longer static.
   8835 	* c-common.h: Declare it.
   8836 	* c-lex.c (c_common_has_attribute): Add maybe_unused.
   8837 
   8838 2016-04-22  Jason Merrill  <jason (a] redhat.com>
   8839 
   8840 	* c-cppbuiltin.c (c_cpp_builtins): Fix __cpp_range_based_for.
   8841 
   8842 2016-04-20  Ilya Verbin  <ilya.verbin (a] intel.com>
   8843 
   8844 	PR c++/69363
   8845 	* c-cilkplus.c (c_finish_cilk_clauses): Remove function.
   8846 	* c-common.h (c_finish_cilk_clauses): Remove declaration.
   8847 
   8848 2016-04-18  Michael Matz  <matz (a] suse.de>
   8849 
   8850 	* c-common.c (handle_aligned_attribute): Use SET_TYPE_ALIGN
   8851 	and SET_DECL_ALIGN.
   8852 
   8853 2016-04-17  Eric Botcazou  <ebotcazou (a] adacore.com>
   8854 
   8855 	* c-ada-spec.c (get_underlying_decl): Return the typedef, if any.
   8856 	(dump_generic_ada_node) <POINTER_TYPE>: Clean up handling of access
   8857 	to incomplete types.
   8858 	(dump_nested_type): Remove redundant tests and tidy up.
   8859 	(print_ada_declaration): Also set TREE_VISITED on the declaration of
   8860 	a type which is the typedef of an original type.
   8861 
   8862 2016-04-15  Marek Polacek  <polacek (a] redhat.com>
   8863 
   8864 	PR c/70651
   8865 	* c-common.c (build_va_arg): Change two asserts into errors and return
   8866 	error_mark_node.
   8867 
   8868 2016-04-13  Marek Polacek  <polacek (a] redhat.com>
   8869 
   8870 	PR c++/70639
   8871 	* c-indentation.c (should_warn_for_misleading_indentation): Bail out
   8872 	for switch statements, too.
   8873 
   8874 2016-03-28  Jason Merrill  <jason (a] redhat.com>
   8875 
   8876 	* c-cppbuiltin.c (c_cpp_builtins): Update __cpp_range_based_for.
   8877 
   8878 2016-03-23  Marek Polacek  <polacek (a] redhat.com>
   8879 
   8880 	PR c++/69884
   8881 	* c.opt (Wignored-attributes): New option.
   8882 
   8883 2016-03-22  David Malcolm  <dmalcolm (a] redhat.com>
   8884 
   8885 	PR c/69993
   8886 	* c-indentation.c (warn_for_misleading_indentation): Rewrite the
   8887 	diagnostic text, reversing the order of the warning and note so
   8888 	that they appear in source order.
   8889 
   8890 2016-03-17  Marek Polacek  <polacek (a] redhat.com>
   8891 
   8892 	PR c/69407
   8893 	* c-common.c (resolve_overloaded_builtin): Set TREE_USED for the fetch
   8894 	operations.
   8895 
   8896 2016-03-14  Jason Merrill  <jason (a] redhat.com>
   8897 
   8898 	* c-cppbuiltin.c (c_cpp_builtins): Set __cpp_hex_float.
   8899 
   8900 	* c-cppbuiltin.c (c_cpp_builtins): Bump __cpp_range_based_for.
   8901 
   8902 2016-03-09  Richard Biener  <rguenther (a] suse.de>
   8903 
   8904 	PR c/70143
   8905 	* c-common.c (strict_aliasing_warning): Add back
   8906 	alias_sets_conflict_p check.
   8907 
   8908 2016-03-08  Jason Merrill  <jason (a] redhat.com>
   8909 
   8910 	* c-opts.c (set_std_cxx1z): Don't enable concepts.
   8911 
   8912 2016-03-04  David Malcolm  <dmalcolm (a] redhat.com>
   8913 
   8914 	PR c/68187
   8915 	* c-indentation.c (get_visual_column): Move code to determine next
   8916 	tab stop to...
   8917 	(next_tab_stop): ...this new function.
   8918 	(line_contains_hash_if): Delete function.
   8919 	(detect_preprocessor_logic): Delete function.
   8920 	(get_first_nws_vis_column): New function.
   8921 	(detect_intervening_unindent): New function.
   8922 	(should_warn_for_misleading_indentation): Replace call to
   8923 	detect_preprocessor_logic with a call to
   8924 	detect_intervening_unindent.
   8925 
   8926 2016-03-04  David Malcolm  <dmalcolm (a] redhat.com>
   8927 
   8928 	PR c/68187
   8929 	* c-indentation.c (should_warn_for_misleading_indentation): When
   8930 	suppressing warnings about cases where the guard and body are on
   8931 	the same column, only use the first non-whitespace column in place
   8932 	of the guard token column when dealing with "else" clauses.
   8933 	When rejecting aligned BODY and NEXT, loosen the requirement
   8934 	from equality with the first non-whitespace of guard to simply
   8935 	that they not be indented relative to it.
   8936 
   8937 2016-03-04  Richard Biener  <rguenther (a] suse.de>
   8938 
   8939 	PR c++/70054
   8940 	* c-common.c (strict_aliasing_warning): Use alias_set_subset_of
   8941 	instead of alias_sets_conflict_p.
   8942 
   8943 2016-03-01  Marek Polacek  <polacek (a] redhat.com>
   8944 
   8945 	PR c++/69795
   8946 	* c-common.c (reject_gcc_builtin): Check for FUNCTION_DECL rather than
   8947 	any DECL.
   8948 
   8949 2016-02-22  Martin Sebor  <msebor (a] redhat.com>
   8950 
   8951 	PR middle-end/69780
   8952 	* c-common.c (check_builtin_function_arguments): Validate and
   8953 	reject invalid arguments to __builtin_alloca_with_align.
   8954 
   8955 2016-02-20  Mark Wielaard  <mjw (a] redhat.com>
   8956 
   8957 	PR c/28901
   8958 	* c.opt (Wunused-const-variable): Turn into Alias for...
   8959 	(Wunused-const-variable=): New option.
   8960 
   8961 2016-02-19  Bernd Edlinger  <bernd.edlinger (a] hotmail.de>
   8962 
   8963 	PR c++/69865
   8964 	* c-opts.c (c_common_post_options): Move call to set_std_cxx14 from
   8965 	here...
   8966 	(c_common_init_options): ...to here.
   8967 	(set_std_cxx98): Initialize flag_isoc94 and flag_isoc99.
   8968 
   8969 2016-02-19  Jakub Jelinek  <jakub (a] redhat.com>
   8970 
   8971 	PR c++/69826
   8972 	* c-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_GRAINSIZE.
   8973 	(init_pragma): Register PRAGMA_CILK_GRAINSIZE even for
   8974 	flag_preprocess_only.
   8975 
   8976 2016-02-16  Jakub Jelinek  <jakub (a] redhat.com>
   8977 
   8978 	PR c/69835
   8979 	* c.opt (Wnonnull-compare): Enable for -Wall.
   8980 
   8981 2016-02-15  Jakub Jelinek  <jakub (a] redhat.com>
   8982 
   8983 	PR c++/69797
   8984 	* c-common.c (sync_resolve_size): Diagnose too few arguments
   8985 	even when params is non-NULL empty vector.
   8986 
   8987 2016-02-08  Bernd Schmidt  <bschmidt (a] redhat.com>
   8988 
   8989 	PR target/60410
   8990 	* c.opt (fshort-double): Remove.
   8991 
   8992 2016-02-05  Martin Sebor  <msebor (a] redhat.com>
   8993 
   8994 	PR c++/69662
   8995 	* c.opt (Warning options): Update -Wplacement-new to take
   8996 	an optional argument.
   8997 
   8998 2016-02-01  Jakub Jelinek  <jakub (a] redhat.com>
   8999 
   9000 	PR preprocessor/69543
   9001 	PR c/69558
   9002 	* c-pragma.c (handle_pragma_diagnostic): Pass input_location
   9003 	instead of loc to control_warning_option.
   9004 
   9005 2016-02-01  Nathan Sidwell  <nathan (a] codesourcery.com>
   9006 
   9007 	* c.opt (fopenacc-dim=): New option.
   9008 
   9009 2016-01-27  Ryan Burn  <contact (a] rnburn.com>
   9010 
   9011 	PR cilkplus/69267
   9012 	* cilk.c (cilk_gimplify_call_params_in_spawned_fn): Change to use
   9013 	gimplify_arg. Removed superfluous post_p argument.
   9014 	* c-family.h (cilk_gimplify_call_params_in_spawned_fn): Removed
   9015 	superfluous post_p argument.
   9016 	* c-gimplify.c (c_gimplify_expr): Likewise.
   9017 
   9018 2016-01-26  David Malcolm  <dmalcolm (a] redhat.com>
   9019 
   9020 	PR other/69006
   9021 	* c-opts.c (c_diagnostic_finalizer): Replace invocation of
   9022 	pp_newline_and_flush with pp_flush.
   9023 
   9024 2016-01-20  Martin Sebor  <msebor (a] redhat.com>
   9025 
   9026 	PR c/69405
   9027 	* c-common.c (sync_resolve_size): Avoid printing diagnostic about
   9028 	an incompatible argument when the argument isn't a valid tree node.
   9029 
   9030 2016-01-18  Jason Merrill  <jason (a] redhat.com>
   9031 
   9032 	PR c++/68767
   9033 	* c-common.c (check_function_arguments_recurse): Fold the whole
   9034 	COND_EXPR, not just the condition.
   9035 
   9036 2016-01-18  Tom de Vries  <tom (a] codesourcery.com>
   9037 
   9038 	* c-omp.c (c_oacc_split_loop_clauses): Don't copy OMP_CLAUSE_REDUCTION,
   9039 	classify as loop clause.
   9040 
   9041 2016-01-15  Jakub Jelinek  <jakub (a] redhat.com>
   9042 
   9043 	PR bootstrap/68271
   9044 	* c-pragma.c (c_register_pragma_1): Adjust comment to note that
   9045 	C++ FE no longer has limit on number of pragmas.
   9046 
   9047 2015-01-14  Ryan Burn  <contact (a] rnburn.com>
   9048 
   9049 	PR c++/69048
   9050 	* cilk.c (create_cilk_wrapper_body): Call fold_build_cleanup_point_expr
   9051 	to add missing cleanup point.
   9052 
   9053 2016-01-14  David Malcolm  <dmalcolm (a] redhat.com>
   9054 
   9055 	PR c++/68819
   9056 	* c-indentation.c (get_visual_column): Add location_t param.
   9057 	Handle the column number being zero by effectively disabling the
   9058 	warning, with an "inform".
   9059 	(should_warn_for_misleading_indentation): Add location_t argument
   9060 	for all uses of get_visual_column.
   9061 
   9062 2016-01-10  Patrick Palka  <ppalka (a] gcc.gnu.org>
   9063 
   9064 	PR c++/69029
   9065 	* c-indentation.c (should_warn_for_misleading_indentation):
   9066 	Don't warn about do-while statements.
   9067 
   9068 2016-01-07  Martin Sebor  <msebor (a] redhat.com>
   9069 
   9070 	PR c/68966
   9071 	* c-common.c (sync_resolve_size): Reject first argument when it's
   9072 	a pointer to _Bool.
   9073 
   9074 2016-01-05  David Malcolm  <dmalcolm (a] redhat.com>
   9075 
   9076 	PR c/69122
   9077 	* c-indentation.c (get_visual_column): Remove default argument.
   9078 	(should_warn_for_misleading_indentation): For the multiline case,
   9079 	update call to get_visual_column for next_stmt_exploc so that it
   9080 	captures the location of the first non-whitespace character in the
   9081 	relevant line.  Don't issue warnings if there is non-whitespace
   9082 	before the next statement.
   9083 
   9084 2016-01-04  Jakub Jelinek  <jakub (a] redhat.com>
   9085 
   9086 	Update copyright years.
   9087 
   9088 2015-12-21  David Malcolm  <dmalcolm (a] redhat.com>
   9089 
   9090 	* c-common.c (binary_op_error): Convert first param from
   9091 	location_t to rich_location * and use it when emitting an error.
   9092 	* c-common.h (binary_op_error): Convert first param from
   9093 	location_t to rich_location *.
   9094 
   9095 2015-12-16  David Malcolm  <dmalcolm (a] redhat.com>
   9096 
   9097 	* c-common.h (conflict_marker_get_final_tok_kind): New prototype.
   9098 	* c-lex.c (conflict_marker_get_final_tok_kind): New function.
   9099 
   9100 2015-12-15  Ilya Verbin  <ilya.verbin (a] intel.com>
   9101 
   9102 	* c-common.c (c_common_attribute_table): Handle "omp declare target
   9103 	link" attribute.
   9104 
   9105 2015-12-14  Jakub Jelinek  <jakub (a] redhat.com>
   9106 
   9107 	PR c/68833
   9108 	* c.opt (Wmissing-format-attribute, Wnormalized): Add Warning option.
   9109 
   9110 2014-12-12  Tobias Burnus  <burnus (a] net-b.de>
   9111 
   9112 	PR fortran/68815
   9113 	* c-format.c (gcc_gfc_char_table): Add 'q' flag to remaining
   9114 	specifiers (%d, %i,%u and %c).
   9115 
   9116 2015-12-10  David Malcolm  <dmalcolm (a] redhat.com>
   9117 
   9118 	* c.opt (Wmisleading-indentation): Add to -Wall for C and C++.
   9119 
   9120 2015-12-08  Jakub Jelinek  <jakub (a] redhat.com>
   9121 
   9122 	PR c/48088
   9123 	PR c/68657
   9124 	* c.opt (Wfloat-conversion, Wsign-conversion): Add Warning.
   9125 	* c-pragma.c (handle_pragma_diagnostic): Adjust
   9126 	control_warning_option caller.
   9127 
   9128 2015-12-07  David Malcolm  <dmalcolm (a] redhat.com>
   9129 
   9130 	* c-common.c (c_cpp_error): Update for change to
   9131 	rich_location::set_range.
   9132 
   9133 2015-12-04  Paolo Bonzini  <bonzini (a] gnu.org>
   9134 
   9135 	* c-common.c (maybe_warn_shift_overflow): Warn on all overflows if
   9136 	shifting 1 out of the sign bit.
   9137 
   9138 2015-12-04  Kirill Yukhin  <kirill.yukhin (a] intel.com>
   9139 
   9140 	* c-common.c (c_common_attribute_table[]): Update max arguments
   9141 	count for "simd" attribute.
   9142 	(handle_simd_attribute): Parse "notinbranch" and "inbranch" arguments.
   9143 
   9144 2015-12-03  Jakub Jelinek  <jakub (a] redhat.com>
   9145 
   9146 	PR preprocessor/57580
   9147 	* c-ppoutput.c (print): Change printed field to bool.
   9148 	Move src_file last for smaller padding.
   9149 	(init_pp_output): Set print.printed to false instead of 0.
   9150 	(scan_translation_unit): Fix up formatting.  Set print.printed
   9151 	to true after printing something other than newline.
   9152 	(scan_translation_unit_trad): Set print.printed to true instead of 1.
   9153 	(maybe_print_line_1): Set print.printed to false instead of 0.
   9154 	(print_line_1): Likewise.
   9155 	(do_line_change): Set print.printed to true instead of 1.
   9156 	(cb_define, dump_queued_macros, cb_include, cb_def_pragma,
   9157 	dump_macro): Set print.printed to false after printing newline.
   9158 
   9159 2015-12-02  Jason Merrill  <jason (a] redhat.com>
   9160 
   9161 	* c-common.c (fold_for_warn): New.
   9162 	(warn_logical_operator, warn_tautological_cmp)
   9163 	(check_function_arguments_recurse, maybe_warn_bool_compare): Use it.
   9164 
   9165 	* c-common.c (c_disable_warnings, c_enable_warnings, c_fully_fold)
   9166 	(c_fully_fold_internal, decl_constant_value_for_optimization):
   9167 	Move to c/c-fold.c.
   9168 	* c-common.h: Don't declare decl_constant_value_for_optimization.
   9169 
   9170 2015-12-02  Joseph Myers  <joseph (a] codesourcery.com>
   9171 
   9172 	PR c/68162
   9173 	* c-common.h (c_build_qualified_type): Add extra default
   9174 	arguments.
   9175 
   9176 2015-12-01  Julian Brown  <julian (a] codesourcery.com>
   9177 	    Cesar Philippidis  <cesar (a] codesourcery.com>
   9178 	    James Norris  <James_Norris (a] mentor.com>
   9179 
   9180 	* c-pragma.c (oacc_pragmas): Add PRAGMA_OACC_HOST_DATA.
   9181 	* c-pragma.h (pragma_kind): Add PRAGMA_OACC_HOST_DATA.
   9182 	(pragma_omp_clause): Add PRAGMA_OACC_CLAUSE_USE_DEVICE.
   9183 
   9184 2015-11-30  Eric Botcazou  <ebotcazou (a] adacore.com>
   9185 
   9186 	* c-ada-spec.c (print_ada_macros): Remove redundant blank line.
   9187 	(decl_sloc_common): Delete and move bulk of processing to...
   9188 	(decl_sloc): ...here.
   9189 	(pp_ada_tree_identifier): Remove reference to QUAL_UNION_TYPE.
   9190 	(dump_ada_double_name): Remove S parameter and compute the suffix.
   9191 	(dump_ada_array_type): Add PARENT parameter.  Simplify computation of
   9192 	element type and deal with an anonymous one.
   9193 	(dump_ada_template): Use RECORD_OR_UNION_TYPE_P macro.
   9194 	(dump_generic_ada_node): Tweak.  Adjust call to dump_ada_array_type
   9195 	and remove reference to QUAL_UNION_TYPE.
   9196 	(dump_nested_types): Make 2 passes on the fields and move bulk to...
   9197 	(dump_nested_type): ...here.  New function extracted from above.
   9198 	Generate a full declaration for anonymous element type of arrays.
   9199 	(print_ada_declaration): Really skip anonymous declarations.  Remove
   9200 	references to QUAL_UNION_TYPE.  Adjust call to dump_ada_array_type.
   9201 	Clean up processing of declarations of array types and objects.
   9202 	(print_ada_struct_decl): Remove reference to QUAL_UNION_TYPE.
   9203 	Remove obsolete code and tidy up.
   9204 
   9205 2015-11-29  Jan Hubicka  <hubicka (a] ucw.cz>
   9206 
   9207 	PR c/67581
   9208 	* c-common.c (handle_transparent_union_attribute): Update
   9209 	also type variants.
   9210 
   9211 2015-11-27  Martin Liska  <mliska (a] suse.cz>
   9212 
   9213 	PR c++/68312
   9214 	* array-notation-common.c (cilkplus_extract_an_triplets):
   9215 	Release vector of vectors.
   9216 	* cilk.c (gimplify_cilk_spawn): Free allocated memory.
   9217 
   9218 2015-11-26  Eric Botcazou  <ebotcazou (a] adacore.com>
   9219 
   9220 	PR c++/68527
   9221 	* c-ada-spec.c (dump_nested_types): Add guard for error_mark_node.
   9222 	(print_ada_struct_decl): Likewise.
   9223 
   9224 2015-11-23  Igor Zamyatin  <igor.zamyatin (a] intel.com>
   9225 
   9226 	PR c++/68001
   9227 	* c-gimplify.c (c_gimplify_expr): Stop the process if see an error.
   9228 	* cilk.c (recognize_spawn): Determine location in a more precise
   9229 	way.
   9230 
   9231 2015-11-19  Jason Merrill  <jason (a] redhat.com>
   9232 
   9233 	* c-common.c (shorten_compare): But look through macros from
   9234 	system headers.
   9235 
   9236 2015-11-18  Jason Merrill  <jason (a] redhat.com>
   9237 
   9238 	* c-common.c (shorten_compare): Don't -Wtype-limits if the
   9239 	non-constant operand comes from a macro.
   9240 
   9241 2015-11-17  Jason Merrill  <jason (a] redhat.com>
   9242 
   9243 	PR bootstrap/68346
   9244 	* c-common.c (warn_tautological_cmp): Fold before checking for
   9245 	constants.
   9246 
   9247 2015-11-16  Marek Polacek  <polacek (a] redhat.com>
   9248 
   9249 	PR c++/68362
   9250 	* c-common.c (check_case_bounds): Fold low and high cases.
   9251 
   9252 2015-11-16  Marek Polacek  <polacek (a] redhat.com>
   9253 
   9254 	* c-ada-spec.c (dump_ada_template): Use RECORD_OR_UNION_TYPE_P.
   9255 	* c-common.c (c_common_get_alias_set): Likewise.
   9256 	(handle_visibility_attribute): Likewise.
   9257 
   9258 2015-11-16  Kirill Yukhin  <kirill.yukhin (a] intel.com>
   9259 
   9260 	* c-common.c (handle_simd_attribute): New.
   9261 	(struct attribute_spec): Add entry for "simd".
   9262 	(handle_simd_attribute): New.
   9263 
   9264 2015-11-13  Kai Tietz  <ktietz70 (a] googlemail.com>
   9265 
   9266 	* c-lex.c (interpret_float): Use fold_convert.
   9267 
   9268 2015-11-13  David Malcolm  <dmalcolm (a] redhat.com>
   9269 
   9270 	* c-common.c (c_fully_fold_internal): Capture existing souce_range,
   9271 	and store it on the result.
   9272 	* c-opts.c (c_common_init_options): Set
   9273 	global_dc->colorize_source_p.
   9274 
   9275 2015-11-12  James Norris  <jnorris (a] codesourcery.com>
   9276 	    Joseph Myers  <joseph (a] codesourcery.com>
   9277 
   9278 	* c-pragma.c (oacc_pragmas): Add entry for declare directive.
   9279 	* c-pragma.h (enum pragma_kind): Add PRAGMA_OACC_DECLARE.
   9280 	(enum pragma_omp_clause): Add PRAGMA_OACC_CLAUSE_DEVICE_RESIDENT and
   9281 	PRAGMA_OACC_CLAUSE_LINK.
   9282 
   9283 2015-11-11  Marek Polacek  <polacek (a] redhat.com>
   9284 
   9285 	PR c/68107
   9286 	PR c++/68266
   9287 	* c-common.c (valid_array_size_p): New function.
   9288 	* c-common.h (valid_array_size_p): Declare.
   9289 
   9290 2015-11-11  Dominique d'Humieres  <dominiq (a] lps.ens.fr>
   9291 
   9292 	PR bootstrap/68271
   9293 	* c-pragma.c (c_register_pragma_1): Update the gcc_assert to 256.
   9294 
   9295 2015-11-11  Andrew MacLeod  <amacleod (a] redhat.com>
   9296 
   9297 	* array-notation-common.c: Remove unused header files.
   9298 	* c-ada-spec.c: Likewise.
   9299 	* c-cilkplus.c: Likewise.
   9300 	* c-common.c: Likewise.
   9301 	* c-cppbuiltin.c: Likewise.
   9302 	* c-dump.c: Likewise.
   9303 	* c-format.c: Likewise.
   9304 	* c-gimplify.c: Likewise.
   9305 	* c-indentation.c: Likewise.
   9306 	* c-lex.c: Likewise.
   9307 	* c-omp.c: Likewise.
   9308 	* c-opts.c: Likewise.
   9309 	* c-pch.c: Likewise.
   9310 	* c-ppoutput.c: Likewise.
   9311 	* c-pragma.c: Likewise.
   9312 	* c-pretty-print.c: Likewise.
   9313 	* c-semantics.c: Likewise.
   9314 	* c-ubsan.c: Likewise.
   9315 	* cilk.c: Likewise.
   9316 	* stub-objc.c: Likewise.
   9317 
   9318 2015-11-09  Thomas Schwinge  <thomas (a] codesourcery.com>
   9319 	    Cesar Philippidis  <cesar (a] codesourcery.com>
   9320 	    James Norris  <jnorris (a] codesourcery.com>
   9321 	    Julian Brown  <julian (a] codesourcery.com>
   9322 	    Nathan Sidwell  <nathan (a] codesourcery.com>
   9323 
   9324 	* c-pragma.c (oacc_pragmas): Add "routine".
   9325 	* c-pragma.h (pragma_kind): Add PRAGMA_OACC_ROUTINE.
   9326 
   9327 2015-11-08  Eric Botcazou  <ebotcazou (a] adacore.com>
   9328 
   9329 	* c-common.c (c_common_attributes): Add scalar_storage_order.
   9330 	(handle_scalar_storage_order_attribute): New function.
   9331 	* c-pragma.c (global_sso): New variable.
   9332 	(maybe_apply_pragma_scalar_storage_order): New function.
   9333 	(handle_pragma_scalar_storage_order): Likewise.
   9334 	(init_pragma): Register scalar_storage_order.
   9335 	* c-pragma.h (maybe_apply_pragma_scalar_storage_order): Declare.
   9336 	* c.opt (Wscalar-storage-order): New warning.
   9337 	(fsso-struct=): New option.
   9338 
   9339 2015-11-08  Martin Sebor  <msebor (a] redhat.com>
   9340 
   9341 	* c.opt (Wplacement-new): Add a period to the end of a sentence.
   9342 
   9343 2015-11-07  Richard Sandiford  <richard.sandiford (a] arm.com>
   9344 
   9345 	* c-common.c: Don't undef DEF_BUILTIN.
   9346 
   9347 2015-11-06  David Malcolm  <dmalcolm (a] redhat.com>
   9348 
   9349 	* c-common.c (c_cpp_error): Convert parameter from location_t to
   9350 	rich_location *.  Eliminate the "column_override" parameter and
   9351 	the call to diagnostic_override_column.
   9352 	Update the "done_lexing" clause to set range 0
   9353 	on the rich_location, rather than overwriting a location_t.
   9354 	* c-common.h (c_cpp_error): Convert parameter from location_t to
   9355 	rich_location *.  Eliminate the "column_override" parameter.
   9356 
   9357 2015-11-05  Cesar Philippidis  <cesar (a] codesourcery.com>
   9358 	    Thomas Schwinge  <thomas (a] codesourcery.com>
   9359 	    James Norris  <jnorris (a] codesourcery.com>
   9360 
   9361 	* c-omp.c (c_oacc_split_loop_clauses): Make TILE, GANG, WORKER, VECTOR,
   9362 	AUTO, SEQ, INDEPENDENT and PRIVATE loop clauses.  Associate REDUCTION
   9363 	clauses with parallel and kernels and loops.
   9364 	* c-pragma.h (enum pragma_omp_clause): Add entries for
   9365 	PRAGMA_OACC_CLAUSE_{INDEPENDENT,TILE,DEFAULT}.
   9366 	* pt.c (tsubst_omp_clauses): Add support for OMP_CLAUSE_{NUM_GANGS,
   9367 	NUM_WORKERS,VECTOR_LENGTH,GANG,WORKER,VECTOR,ASYNC,WAIT,TILE,AUTO,
   9368 	INDEPENDENT,SEQ}.
   9369 	(tsubst_expr): Add support for OMP_CLAUSE_{KERNELS,PARALLEL,LOOP}.
   9370 
   9371 2015-11-05  Martin Sebor  <msebor (a] redhat.com>
   9372 
   9373 	PR c++/67942
   9374 	* c.opt (-Wplacement-new): New option.
   9375 
   9376 2015-11-05  Jakub Jelinek  <jakub (a] redhat.com>
   9377 
   9378 	* c-common.h (c_finish_omp_atomic): Add TEST argument.
   9379 	(c_omp_check_loop_iv, c_omp_check_loop_iv_exprs): New prototypes.
   9380 	* c-omp.c (c_finish_omp_atomic): Add TEST argument.  Don't call
   9381 	save_expr or create_tmp_var* if TEST is true.
   9382 	(c_finish_omp_for): Store OMP_FOR_ORIG_DECLS always.
   9383 	Don't call add_stmt here.
   9384 	(struct c_omp_check_loop_iv_data): New type.
   9385 	(c_omp_check_loop_iv_r, c_omp_check_loop_iv,
   9386 	c_omp_check_loop_iv_exprs): New functions.
   9387 	(c_omp_split_clauses): Adjust for lastprivate being allowed on
   9388 	distribute.
   9389 	(c_omp_declare_simd_clauses_to_numbers): Change
   9390 	OMP_CLAUSE_LINEAR_VARIABLE_STRIDE OMP_CLAUSE_LINEAR_STEP into numbers.
   9391 	(c_omp_declare_simd_clauses_to_decls): Similarly change those
   9392 	from numbers to PARM_DECLs.
   9393 
   9394 2015-11-04  Mikhail Maltsev  <maltsevm (a] gmail.com>
   9395 
   9396 	* c-omp.c (c_omp_split_clauses): Remove conditional compilation. Use
   9397 	flag_checking.
   9398 
   9399 2015-11-03  Bernd Schmidt  <bschmidt (a] redhat.com>
   9400 
   9401 	PR c++-common/67882
   9402 	* c-common.h (fold_offsetof_1): Add argument.
   9403 	* c-common.c (fold_offsetof_1): Diagnose more invalid
   9404 	offsetof expressions that reference elements past the end of
   9405 	an array.
   9406 
   9407 2015-11-03  Thomas Schwinge  <thomas (a] codesourcery.com>
   9408 	    Chung-Lin Tang  <cltang (a] codesourcery.com>
   9409 
   9410 	* c-pragma.c (oacc_pragmas): Add "atomic".
   9411 	* c-pragma.h (pragma_kind): Add PRAGMA_OACC_ATOMIC.
   9412 
   9413 2015-10-30  Evgeny Stupachenko  <evstupac (a] gmail.com>
   9414 
   9415 	* c-common.c (handle_target_clones_attribute): New.
   9416 	(c_common_attribute_table): Add handle_target_clones_attribute.
   9417 	(handle_always_inline_attribute): Add check on target_clones attribute.
   9418 	(handle_target_attribute): Ditto.
   9419 
   9420 2015-10-29  Andrew MacLeod  <amacleod (a] redhat.com>
   9421 
   9422 	* array-notation-common.c: Reorder #include's and remove duplicates.
   9423 	* c-ada-spec.c: Likewise.
   9424 	* c-cilkplus.c: Likewise.
   9425 	* c-common.c: Likewise.
   9426 	* c-cppbuiltin.c: Likewise.
   9427 	* c-dump.c: Likewise.
   9428 	* c-format.c: Likewise.
   9429 	* c-gimplify.c: Likewise.
   9430 	* c-indentation.c: Likewise.
   9431 	* c-lex.c: Likewise.
   9432 	* c-omp.c: Likewise.
   9433 	* c-opts.c: Likewise.
   9434 	* c-pch.c: Likewise.
   9435 	* c-ppoutput.c: Likewise.
   9436 	* c-pragma.c: Likewise.
   9437 	* c-pretty-print.c: Likewise.
   9438 	* c-semantics.c: Likewise.
   9439 	* c-ubsan.c: Likewise.
   9440 	* cilk.c: Likewise.
   9441 	* stub-objc.c: Likewise.
   9442 
   9443 2015-10-28  Jason Merrill  <jason (a] redhat.com>
   9444 
   9445 	* c-common.c (pointer_int_sum): Fold the MULT_EXPR.
   9446 
   9447 2015-10-27  Thomas Schwinge  <thomas (a] codesourcery.com>
   9448 	    James Norris  <jnorris (a] codesourcery.com>
   9449 	    Cesar Philippidis  <cesar (a] codesourcery.com>
   9450 
   9451 	PR c/64765
   9452 	PR c/64880
   9453 	* c-common.h (c_oacc_split_loop_clauses): Declare function.
   9454 	* c-omp.c (c_oacc_split_loop_clauses): New function.
   9455 
   9456 2015-10-21  Martin Sebor  <msebor (a] redhat.com>
   9457 
   9458 	PR driver/68043
   9459 	* c.opt: End each sentence that describes an option with a period.
   9460 
   9461 2015-10-20  Marek Polacek  <polacek (a] redhat.com>
   9462 
   9463 	* array-notation-common.c (is_cilkplus_vector_p): Define.
   9464 	* c-common.h (is_cilkplus_vector_p): Declare.
   9465 
   9466 2015-10-20  Marek Polacek  <polacek (a] redhat.com>
   9467 
   9468 	* c.opt (std=gnu++11): Do not describe as experimental.
   9469 	(std=gnu++14): Likewise.
   9470 
   9471 2015-10-19  Jason Merrill  <jason (a] redhat.com>
   9472 
   9473 	* c-cppbuiltin.c (c_cpp_builtins): Define
   9474 	__cpp_nontype_template_args.
   9475 
   9476 2015-10-19  Jason Merrill  <jason (a] redhat.com>
   9477 
   9478 	* c-cppbuiltin.c (c_cpp_builtins): Define
   9479 	__cpp_enumerator_attributes, __cpp_fold_expressions,
   9480 	__cpp_unicode_characters.
   9481 
   9482 2015-10-13  Jakub Jelinek  <jakub (a] redhat.com>
   9483 	    Aldy Hernandez  <aldyh (a] redhat.com>
   9484 
   9485 	* c-common.c (enum c_builtin_type): Define DEF_FUNCTION_TYPE_9,
   9486 	DEF_FUNCTION_TYPE_10 and DEF_FUNCTION_TYPE_11.
   9487 	(c_define_builtins): Likewise.
   9488 	* c-common.h (enum c_omp_clause_split): Add
   9489 	C_OMP_CLAUSE_SPLIT_TASKLOOP.
   9490 	(c_finish_omp_critical, c_finish_omp_ordered): Add CLAUSES argument.
   9491 	(c_finish_omp_for): Add ORIG_DECLV argument.
   9492 	* c-cppbuiltin.c (c_cpp_builtins): Predefine _OPENMP as
   9493 	201511 instead of 201307.
   9494 	* c-omp.c (c_finish_omp_critical): Add CLAUSES argument, set
   9495 	OMP_CRITICAL_CLAUSES to it.
   9496 	(c_finish_omp_ordered): Add CLAUSES argument, set
   9497 	OMP_ORDERED_CLAUSES to it.
   9498 	(c_finish_omp_for): Add ORIG_DECLV argument, set OMP_FOR_ORIG_DECLS
   9499 	to it if OMP_FOR.  Clear DECL_INITIAL on the IVs.
   9500 	(c_omp_split_clauses): Handle OpenMP 4.5 combined/composite
   9501 	constructs and new OpenMP 4.5 clauses.  Clear
   9502 	OMP_CLAUSE_SCHEDULE_SIMD if not combined with OMP_SIMD.  Add
   9503 	verification code.
   9504 	* c-pragma.c (omp_pragmas_simd): Add taskloop.
   9505 	* c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKLOOP.
   9506 	(enum pragma_omp_clause): Add
   9507 	PRAGMA_OMP_CLAUSE_{DEFAULTMAP,GRAINSIZE,HINT,{IS,USE}_DEVICE_PTR}
   9508 	and PRAGMA_OMP_CLAUSE_{LINK,NOGROUP,NUM_TASKS,PRIORITY,SIMD,THREADS}.
   9509 
   9510 2015-10-05  Richard Sandiford  <richard.sandiford (a] arm.com>
   9511 
   9512 	* c-lex.c (interpret_float): Use real_equal instead of
   9513 	REAL_VALUES_EQUAL.
   9514 
   9515 2015-10-04  Jason Merrill  <jason (a] redhat.com>
   9516 
   9517 	Implement N4514, C++ Extensions for Transactional Memory.
   9518 	* c-common.c (c_common_reswords): Add C++ TM TS keywords.
   9519 	(c_common_attribute_table): Add transaction_safe_dynamic.
   9520 	transaction_safe now affects type identity.
   9521 	(handle_tm_attribute): Handle transaction_safe_dynamic.
   9522 	* c-common.h (enum rid): Add RID_ATOMIC_NOEXCEPT,
   9523 	RID_ATOMIC_CANCEL, RID_SYNCHRONIZED.
   9524 	(OBJC_IS_CXX_KEYWORD): Add RID_SYNCHRONIZED.
   9525 	(D_TRANSMEM): New.
   9526 	* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_transactional_memory.
   9527 	* c-pretty-print.c (pp_c_attributes_display): Don't print
   9528 	transaction_safe in C++.
   9529 
   9530 2015-10-02  Marek Polacek  <polacek (a] redhat.com>
   9531 
   9532 	* c.opt (Wduplicated-cond): Don't enable by -Wall anymore.
   9533 
   9534 2015-10-02  Marek Polacek  <polacek (a] redhat.com>
   9535 
   9536 	PR c/64249
   9537 	* c-common.c (warn_duplicated_cond_add_or_warn): New function.
   9538 	* c-common.h (warn_duplicated_cond_add_or_warn): Declare.
   9539 	* c.opt (Wduplicated-cond): New option.
   9540 
   9541 2015-10-01  Joseph Myers  <joseph (a] codesourcery.com>
   9542 
   9543 	* c.opt (std=c11): Do not describe as experimental.
   9544 	(std=gnu11): Likewise.
   9545 	(std=iso9899:2011): Likewise.
   9546 
   9547 2015-09-28  Nathan Sidwell  <nathan (a] codesourcery.com>
   9548 
   9549 	* c-common.c (DEF_FUNCTION_TYPE_VAR_6): New.
   9550 	(DEF_FUNCTION_TYPE_VAR_11): Delete.
   9551 
   9552 2015-09-25  Marek Polacek  <polacek (a] redhat.com>
   9553 
   9554 	* c-ubsan.c (ubsan_instrument_division): Remove unnecessary code.
   9555 	(ubsan_instrument_shift): Likewise.
   9556 
   9557 2015-09-25  Marek Polacek  <polacek (a] redhat.com>
   9558 
   9559 	PR sanitizer/64906
   9560 	* c-ubsan.c (ubsan_instrument_division): Also pre-evaluate OP1.
   9561 
   9562 2015-09-24  Patrick Palka  <ppalka (a] gcc.gnu.org>
   9563 
   9564 	* c-indentation.c (should_warn_for_misleading_indentation):
   9565 	Compare next_stmt_vis_column with guard_line_first_nws instead
   9566 	of with guard_line_vis_column.
   9567 
   9568 2015-09-23  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   9569 
   9570 	PR c/49654
   9571 	PR c/49655
   9572 	* c-pragma.c (handle_pragma_diagnostic): Detect non-warning
   9573 	options and options not valid for the current language.
   9574 
   9575 2015-09-22  Patrick Palka  <ppalka (a] gcc.gnu.org>
   9576 
   9577 	* c-indentation.c (should_warn_for_misleading_indentation):
   9578 	Float out and consolidate the calls to get_visual_column that
   9579 	are passed guard_exploc as an argument.  Compare
   9580 	next_stmt_vis_column with guard_line_first_nws instead of with
   9581 	body_line_first_nws.
   9582 
   9583 2015-09-22  Nathan Sidwell  <nathan (a] codesourcery.com>
   9584 
   9585 	* c.opt (Wmultiple-inheritance, Wvirtual-inheritance, Wtemplates,
   9586 	Wnamespaces): New C++ warnings.
   9587 
   9588 2015-09-22  Jason Merrill  <jason (a] redhat.com>
   9589 
   9590 	* c-common.h (abi_compat_version_crosses): New.
   9591 	(warn_abi_version): Declare.
   9592 	* c-common.c: Define it.
   9593 	* c-opts.c (c_common_post_options): Handle it.
   9594 	flag_abi_compat_version defaults to 8.
   9595 
   9596 2015-09-21  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   9597 
   9598 	Complete the implementation of N4230, Nested namespace definition.
   9599 	* c-cppbuiltin.c: Add __cpp_namespace_attributes and
   9600 	__cpp_nested_namespace_definitions.
   9601 
   9602 2015-09-18  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   9603 
   9604 	* c-pragma.c (handle_pragma_diagnostic): Fix wrong return.
   9605 
   9606 2015-09-18  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   9607 
   9608 	* c-pragma.c (handle_pragma_diagnostic): Use explicit location
   9609 	when warning.
   9610 	* c-pragma.h (pragma_lex): Add optional loc argument.
   9611 
   9612 2015-09-16  Mikhail Maltsev  <maltsevm (a] gmail.com>
   9613 
   9614 	* c-format.c (check_format_arg): Adjust to use common block size in all
   9615 	object pools.
   9616 
   9617 2015-09-15  David Malcolm  <dmalcolm (a] redhat.com>
   9618 
   9619 	* c-format.c (location_from_offset): Update for change in
   9620 	signature of location_get_source_line.
   9621 	* c-indentation.c (get_visual_column): Likewise.
   9622 	(line_contains_hash_if): Likewise.
   9623 
   9624 2015-09-14  Marek Polacek  <polacek (a] redhat.com>
   9625 
   9626 	* c-opts.c (c_common_post_options): Set C++ standard earlier, before
   9627 	setting various warnings.
   9628 
   9629 2015-09-14  Marek Polacek  <polacek (a] redhat.com>
   9630 
   9631 	* c-common.c (warn_for_sign_compare): Cast to unsigned when shifting
   9632 	a negative value.
   9633 
   9634 2015-09-11  Mark Wielaard  <mjw (a] redhat.com>
   9635 
   9636 	PR c/28901
   9637 	* c.opt (Wunused-variable): Option from common.opt.
   9638 	(Wunused-const-variable): New option.
   9639 
   9640 2015-09-09  Paolo Carlini  <paolo.carlini (a] oracle.com>
   9641 
   9642 	PR c++/53184
   9643 	* c.opt ([Wsubobject-linkage]): Add.
   9644 
   9645 2015-09-03  Martin Sebor  <msebor (a] redhat.com>
   9646 
   9647 	PR c/66516
   9648 	* c-common.h (c_decl_implicit, reject_gcc_builtin): Declare new
   9649 	functions.
   9650 	* c-common.c (reject_gcc_builtin): Define.
   9651 
   9652 2015-09-02  Balaji V. Iyer  <balaji.v.iyer (a] intel.com>
   9653 
   9654 	PR middle-end/60586
   9655 	* c-common.h (cilk_gimplify_call_params_in_spawned_fn): New
   9656 	prototype.
   9657 	* c-gimplify.c (c_gimplify_expr): Added a call to the function
   9658 	cilk_gimplify_call_params_in_spawned_fn.
   9659 	* cilk.c (cilk_gimplify_call_params_in_spawned_fn): New function.
   9660 	(gimplify_cilk_spawn): Removed EXPR_STMT and CLEANUP_POINT_EXPR
   9661 	unwrapping.
   9662 
   9663 2015-08-25  Marek Polacek  <polacek (a] redhat.com>
   9664 
   9665 	PR middle-end/67330
   9666 	* c-common.c (handle_weak_attribute): Don't check whether the
   9667 	visibility can be changed here.
   9668 
   9669 2015-08-22  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   9670 
   9671 	* c-lex.c (c_lex_with_flags): Use explicit locations.
   9672 
   9673 2015-08-18  Trevor Saunders  <tbsaunde (a] tbsaunde.org>
   9674 
   9675 	* c-ada-spec.h, c-common.c, c-common.h, c-format.c, c-format.h,
   9676 	c-objc.h, c-ppoutput.c, c-pragma.c, c-pragma.h: Remove useless
   9677 
   9678 2015-08-18  Francois-Xavier Coudert  <fxcoudert (a] gcc.gnu.org>
   9679 
   9680 	PR middle-end/36757
   9681 	* c-common.c (check_builtin_function_arguments): Add check
   9682 	for BUILT_IN_SIGNBIT argument.
   9683 
   9684 2015-08-18  Paolo Carlini  <paolo.carlini (a] oracle.com>
   9685 
   9686 	PR c++/67160
   9687 	* c-cppbuiltin.c (c_cpp_builtins): Fix __cpp_static_assert value
   9688 	in c++1z mode.
   9689 
   9690 2015-08-17  Marek Polacek  <polacek (a] redhat.com>
   9691 
   9692 	* c-pretty-print.c (pp_c_cv_qualifiers): Remove code dealing
   9693 	with whitespaces before qualifier names.
   9694 
   9695 2015-08-12  Marek Polacek  <polacek (a] redhat.com>
   9696 
   9697 	PR c++/55095
   9698 	* c-common.c (maybe_warn_shift_overflow): Properly handle
   9699 	left-shifting 1 into the sign bit.
   9700 
   9701 2015-08-09  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   9702 
   9703 	* c.opt (Wchkp): Use LangEnabledBy instead of EnabledBy.
   9704 
   9705 2015-08-06  Andrew Sutton  <andrew.n.sutton (a] gmail.com>
   9706 	    Braden Obrzut  <admin (a] maniacsvault.net>
   9707 	    Jason Merrill  <jason (a] redhat.com>
   9708 
   9709 	Add C++ Concepts TS support.
   9710 	* c-common.c (c_common_reswords): Add __is_same_as, concept, requires.
   9711 	* c-common.h (enum rid): Add RID_IS_SAME_AS, RID_CONCEPT, RID_REQUIRES.
   9712 	(D_CXX_CONCEPTS, D_CXX_CONCEPTS_FLAGS): New.
   9713 	* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_concepts.
   9714 	* c-opts.c (set_std_cxx1z): Set flag_concepts.
   9715 	* c.opt (fconcepts): New.
   9716 
   9717 2015-08-02  Martin Sebor  <msebor (a] redhat.com>
   9718 
   9719 	* c.opt (-Wframe-address): New warning option.
   9720 
   9721 2015-08-02  Patrick Palka  <ppalka (a] gcc.gnu.org>
   9722 
   9723 	* c-indentation.c (should_warn_for_misleading_indentation):
   9724 	Improve heuristics.
   9725 
   9726 2015-08-02  Patrick Palka  <ppalka (a] gcc.gnu.org>
   9727 
   9728 	* c-indentation.c (get_visual_column): Add parameter first_nws,
   9729 	use it.  Update comment documenting the function.
   9730 	(is_first_nonwhitespace_on_line): Remove.
   9731 	(should_warn_for_misleading_indentation): Replace usage of
   9732 	of is_first_nonwhitespace_on_line with get_visual_column.
   9733 
   9734 2015-08-02  Patrick Palka  <ppalka (a] gcc.gnu.org>
   9735 
   9736 	* c-indentation.h (struct token_indent_info): Define.
   9737 	(get_token_indent_info): Define.
   9738 	(warn_for_misleading_information): Declare.
   9739 	* c-common.h (warn_for_misleading_information): Remove.
   9740 	* c-identation.c (warn_for_misleading_indentation):
   9741 	Change declaration to take three token_indent_infos.  Adjust
   9742 	accordingly.
   9743 	* c-identation.c (should_warn_for_misleading_indentation):
   9744 	Likewise.  Bail out early if the body is a compound statement.
   9745 	(guard_tinfo_to_string): Define.
   9746 
   9747 2015-07-30  Jason Merrill  <jason (a] redhat.com>
   9748 
   9749 	* c-pretty-print.c (unary_expression) [INDIRECT_REF]: Don't print
   9750 	'*' for reference decay.
   9751 
   9752 2015-07-30  Marek Polacek  <polacek (a] redhat.com>
   9753 
   9754 	* c-common.c (warn_tautological_cmp): Bail for float types.
   9755 
   9756 2015-07-27  Marek Polacek  <polacek (a] redhat.com>
   9757 
   9758 	PR bootstrap/67030
   9759 	* c-common.c (warn_tautological_cmp): Don't warn for macro expansion.
   9760 
   9761 2015-07-27  Marek Polacek  <polacek (a] redhat.com>
   9762 
   9763 	PR c++/66555
   9764 	PR c/54979
   9765 	* c-common.c (find_array_ref_with_const_idx_r): New function.
   9766 	(warn_tautological_cmp): New function.
   9767 	* c-common.h (warn_tautological_cmp): Declare.
   9768 	* c.opt (Wtautological-compare): New option.
   9769 
   9770 2015-07-23  Marek Polacek  <polacek (a] redhat.com>
   9771 
   9772 	* c-ubsan.c (ubsan_instrument_division): Use unshare_expr throughout.
   9773 	(ubsan_instrument_shift): Likewise.
   9774 
   9775 2015-07-23  Marek Polacek  <polacek (a] redhat.com>
   9776 
   9777 	PR sanitizer/66908
   9778 	* c-ubsan.c: Include gimplify.h.
   9779 	(ubsan_instrument_division): Unshare OP0 and OP1.
   9780 	(ubsan_instrument_shift): Likewise.
   9781 
   9782 2015-07-20  Marek Polacek  <polacek (a] redhat.com>
   9783 	    Richard Sandiford  <richard.sandiford (a] arm.com>
   9784 
   9785 	PR c++/55095
   9786 	* c-common.c (c_fully_fold_internal): Warn about left shift overflows.
   9787 	Use EXPR_LOC_OR_LOC.
   9788 	(maybe_warn_shift_overflow): New function.
   9789 	* c-common.h (maybe_warn_shift_overflow): Declare.
   9790 	* c-opts.c (c_common_post_options): Set warn_shift_overflow.
   9791 	* c.opt (Wshift-overflow): New option.
   9792 
   9793 2015-07-16  Martin Liska  <mliska (a] suse.cz>
   9794 
   9795 	* c-format.c (static void check_format_info_main): Use
   9796 	object_allocator instead of pool_allocator.
   9797 	(check_format_arg): Likewise.
   9798 	(check_format_info_main): Likewise.
   9799 
   9800 2015-07-15  Andrew MacLeod  <amacleod (a] redhat.com>
   9801 
   9802 	* c-opts.c: Remove multiline #include comment.
   9803 
   9804 2015-07-12  Aldy Hernandez  <aldyh (a] redhat.com>
   9805 
   9806 	* c-common.c: Fix double word typos.
   9807 
   9808 2015-07-10  Eric Botcazou  <ebotcazou (a] adacore.com>
   9809 
   9810 	* c-ada-spec.h (cpp_operation): Revert latest change.
   9811 	* c-ada-spec.c (print_ada_declaration): Likewise.  Skip implicit
   9812 	constructors and destructors.
   9813 
   9814 2015-07-09  Andrew MacLeod  <amacleod (a] redhat.com>
   9815 
   9816 	* c-common.h: Adjust includes for flags.h changes.
   9817 	* stub-objc.c: Likewise.
   9818 
   9819 2015-07-08  Eric Botcazou  <ebotcazou (a] adacore.com>
   9820 
   9821 	* c-ada-spec.h (cpp_operation): Add IS_CONSTEXPR.
   9822 	* c-ada-spec.c (print_ada_declaration): Skip constexpr constructors.
   9823 
   9824 2015-07-08  Jakub Jelinek  <jakub (a] redhat.com>
   9825 
   9826 	* c-omp.c (c_omp_declare_simd_clauses_to_numbers): If all clauses
   9827 	are to be removed, return NULL rather than original clauses list.
   9828 
   9829 2015-07-07  Andrew MacLeod  <amacleod (a] redhat.com>
   9830 
   9831 	* array-notation-common.c: Adjust includes.
   9832 	* c-ada-spec.c: Likewise.
   9833 	* c-cilkplus.c: Likewise.
   9834 	* c-common.h: Likewise.
   9835 	* c-cppbuiltin.c: Likewise.
   9836 	* c-dump.c: Likewise.
   9837 	* c-format.c: Likewise.
   9838 	* c-gimplify.c: Likewise.
   9839 	* c-indentation.c: Likewise.
   9840 	* c-lex.c: Likewise.
   9841 	* c-omp.c: Likewise.
   9842 	* c-opts.c: Likewise.
   9843 	* c-pch.c: Likewise.
   9844 	* c-ppoutput.c: Likewise.
   9845 	* c-pragma.c: Likewise.
   9846 	* c-pretty-print.c: Likewise.
   9847 	* c-semantics.c: Likewise.
   9848 	* c-ubsan.c: Likewise.
   9849 	* cilk.c: Likewise.
   9850 	* stub-objc.c: Likewise.
   9851 
   9852 2015-07-07  Eric Botcazou  <ebotcazou (a] adacore.com>
   9853 
   9854 	* c-ada-spec.h (cpp_operation): Add IS_MOVE_CONSTRUCTOR.
   9855 	* c-ada-spec.c (print_ada_declaration): Skip move constructors.
   9856 
   9857 2015-07-01  Jason Merrill  <jason (a] redhat.com>
   9858 
   9859 	* c-common.h (D_CXX11): Rename from D_CXX0X.
   9860 	(RID_FIRST_CXX11, RID_LAST_CXX11): Rename from *_CXX0X.
   9861 	* c-common.c: Adjust.
   9862 
   9863 	* c-opts.c (c_common_post_options): Default to C++14.
   9864 
   9865 	* c-opts.c (c_common_post_options): Highest ABI level is now 10.
   9866 
   9867 2015-06-30  Edward Smith-Rowland  <3dw4rd (a] verizon.net>
   9868 
   9869 	Implement N4197 - Adding u8 character literals
   9870 	* c-ada-spec.c (print_ada_macros): Treat CPP_UTF8CHAR like
   9871 	CPP_CHAR.
   9872 	* c-common.c (c_parse_error): Print CPP_UTF8CHAR and
   9873 	CPP_UTF8CHAR_USERDEF tokens.
   9874 	* c-lex.c (c_lex_with_flags): Treat CPP_UTF8CHAR_USERDEF
   9875 	and CPP_UTF8CHAR tokens.
   9876 	(lex_charconst): Treat CPP_UTF8CHAR token.
   9877 
   9878 2015-06-29  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   9879 
   9880 	PR fortran/66605
   9881 	* c-common.c (do_warn_unused_parameter): Move here.
   9882 	* c-common.h (do_warn_unused_parameter): Declare.
   9883 
   9884 2015-06-29  Marek Polacek  <polacek (a] redhat.com>
   9885 
   9886 	PR c/66322
   9887 	* c-common.c (check_case_bounds): Add bool * parameter.  Set
   9888 	OUTSIDE_RANGE_P.
   9889 	(c_add_case_label): Add bool * parameter.  Pass it down to
   9890 	check_case_bounds.
   9891 	(c_do_switch_warnings): Add bool parameters.  Implement -Wswitch-bool
   9892 	warning here.
   9893 	* c-common.h (c_add_case_label, c_do_switch_warnings): Update
   9894 	declarations.
   9895 
   9896 2015-06-27  Marek Polacek  <polacek (a] redhat.com>
   9897 
   9898 	* c-common.c (check_main_parameter_types): Use VECTOR_TYPE_P
   9899 	or VECTOR_INTEGER_TYPE_P throughout.
   9900 	* c-gimplify.c: Likewise.
   9901 
   9902 2015-06-26  Marek Polacek  <polacek (a] redhat.com>
   9903 
   9904 	* array-notation-common.c (find_rank): Use INDIRECT_REF_P.
   9905 	* c-common.c (c_fully_fold_internal): Likewise.
   9906 	(c_alignof_expr): Likewise.
   9907 	* c-pretty-print.c (c_pretty_printer::postfix_expression): Likewise.
   9908 	* c-ubsan.c (ubsan_instrument_bounds): Likewise.
   9909 	* cilk.c (create_parm_list): Likewise.
   9910 
   9911 2015-06-26  Marek Polacek  <polacek (a] redhat.com>
   9912 
   9913 	* c-common.c (handle_unused_attribute): Use VAR_OR_FUNCTION_DECL_P.
   9914 
   9915 2015-06-25  Andrew MacLeod  <amacleod (a] redhat.com>
   9916 
   9917 	* c-common.c: Remove ipa-ref.h and plugin-api.h from include list.
   9918 	* c-gimplify.c: Likewise.
   9919 	* c-pragma.c: Likewise.
   9920 	* c-ubsan.c: Likewise.
   9921 	* cilk.c: Likewise.
   9922 
   9923 2015-06-25  Richard Sandiford  <richard.sandiford (a] arm.com>
   9924 
   9925 	* c-common.c (c_type_hasher): Inherit from ggc_ptr_hash rather than
   9926 	ggc_hasher.
   9927 
   9928 2015-06-25  Andrew MacLeod  <amacleod (a] redhat.com>
   9929 
   9930 	* cilk.c: Move calls.h after tm.h in the include chain.
   9931 
   9932 2015-06-25  Marek Polacek  <polacek (a] redhat.com>
   9933 
   9934 	* array-notation-common.c: Use VAR_P throughout.
   9935 	* c-ada-spec.c: Likewise.
   9936 	* c-common.c: Likewise.
   9937 	* c-format.c: Likewise.
   9938 	* c-gimplify.c: Likewise.
   9939 	* c-omp.c: Likewise.
   9940 	* c-pragma.c: Likewise.
   9941 	* c-pretty-print.c: Likewise.
   9942 	* cilk.c: Likewise.
   9943 
   9944 2015-06-25  Marek Polacek  <polacek (a] redhat.com>
   9945 
   9946 	* cilk.c (extract_free_variables): Use is_global_var.
   9947 
   9948 2015-06-23  Richard Sandiford  <richard.sandiford (a] arm.com>
   9949 
   9950 	* c-common.c: Don't include target-def.h.
   9951 
   9952 2015-06-23  Marek Polacek  <polacek (a] redhat.com>
   9953 
   9954 	* c-common.c (warn_logical_operator): Use tree_int_cst_equal
   9955 	when comparing INTEGER_CSTs.
   9956 
   9957 2015-06-22  Pierre-Marie de Rodat  <derodat (a] adacore.com>
   9958 
   9959 	* c-ada-spec.h (cpp_operation): Add HAS_DEPENDENT_TEMPLATE_ARGS.
   9960 	* c-ada-spec.c (collect_ada_nodes): Skip NAMESPACE_DECL
   9961 	(dump_ada_template): Skip partially specialized types.
   9962 
   9963 2015-06-22  Mikhail Maltsev  <maltsevm (a] gmail.com>
   9964 
   9965 	* c-common.c (scalar_to_vector): Use std::swap instead of manually
   9966 	swapping.
   9967 
   9968 2015-06-17  Andrew MacLeod  <amacleod (a] redhat.com>
   9969 
   9970 	* array-notation-common.c: Do not include input.h, line-map.h or is-a.h.
   9971 	* c-ada-spec.c: Likewise.
   9972 	* c-cilkplus.c: Likewise.
   9973 	* c-common.c: Likewise.
   9974 	* c-common.h: Likewise.
   9975 	* c-cppbuiltin.c: Likewise.
   9976 	* c-dump.c: Likewise.
   9977 	* c-format.c: Likewise.
   9978 	* c-gimplify.c: Likewise.
   9979 	* c-indentation.c: Likewise.
   9980 	* c-lex.c: Likewise.
   9981 	* c-omp.c: Likewise.
   9982 	* c-opts.c: Likewise.
   9983 	* c-pch.c: Likewise.
   9984 	* c-ppoutput.c: Likewise.
   9985 	* c-pragma.c: Likewise.
   9986 	* c-pretty-print.c: Likewise.
   9987 	* c-semantics.c: Likewise.
   9988 	* c-ubsan.c: Likewise.
   9989 	* cilk.c: Likewise.
   9990 	* stub-objc.c: Likewise.
   9991 
   9992 2015-06-13  Patrick Palka  <ppalka (a] gcc.gnu.org>
   9993 
   9994 	PR c++/65168
   9995 	* c-common.c (c_common_truthvalue_conversion): Warn when
   9996 	converting an address of a reference to a truth value.
   9997 
   9998 2015-06-08  Andrew MacLeod  <amacleod (a] redhat.com>
   9999 
   10000 	* array-notation-common.c : Adjust include files.
   10001 	* c-ada-spec.c : Likewise.
   10002 	* c-cilkplus.c : Likewise.
   10003 	* c-common.c : Likewise.
   10004 	* c-common.h : Likewise.
   10005 	* c-cppbuiltin.c : Likewise.
   10006 	* c-dump.c : Likewise.
   10007 	* c-format.c : Likewise.
   10008 	* c-gimplify.c : Likewise.
   10009 	* c-indentation.c : Likewise.
   10010 	* c-lex.c : Likewise.
   10011 	* c-omp.c : Likewise.
   10012 	* c-opts.c : Likewise.
   10013 	* c-pch.c : Likewise.
   10014 	* c-ppoutput.c : Likewise.
   10015 	* c-pragma.c : Likewise.
   10016 	* c-pretty-print.c : Likewise.
   10017 	* c-semantics.c : Likewise.
   10018 	* c-ubsan.c : Likewise.
   10019 	* cilk.c : Likewise.
   10020 	* stub-objc.c : Likewise.
   10021 
   10022 2015-06-08  Marek Polacek  <polacek (a] redhat.com>
   10023 
   10024 	PR c/66415
   10025 	* c-format.c (location_from_offset): Return LOC if LINE is null.
   10026 
   10027 2015-06-05  Aldy Hernandez  <aldyh (a] redhat.com>
   10028 
   10029 	* c-common.h (c_parse_final_cleanups): New prototype.
   10030 	* c-opts.c (c_common_parse_file): Call c_parse_final_cleanups.
   10031 
   10032 2015-06-04  Sriraman Tallam  <tmsriram (a] google.com>
   10033 
   10034 	* c-common.c (noplt): New attribute.
   10035 	(handle_noplt_attribute): New handler.
   10036 
   10037 2015-06-04  Andrew MacLeod  <amacleod (a] redhat.com>
   10038 
   10039 	* array-notation-common.c: Adjust includes for restructured coretypes.h.
   10040 	* c-ada-spec.c: Likewise.
   10041 	* c-cilkplus.c: Likewise.
   10042 	* c-common.c: Likewise.
   10043 	* c-common.h: Likewise.
   10044 	* c-cppbuiltin.c: Likewise.
   10045 	* c-dump.c: Likewise.
   10046 	* c-format.c: Likewise.
   10047 	* c-gimplify.c: Likewise.
   10048 	* c-indentation.c: Likewise.
   10049 	* c-lex.c: Likewise.
   10050 	* c-omp.c: Likewise.
   10051 	* c-opts.c: Likewise.
   10052 	* c-pch.c: Likewise.
   10053 	* c-ppoutput.c: Likewise.
   10054 	* c-pragma.c: Likewise.
   10055 	* c-pretty-print.c: Likewise.
   10056 	* c-semantics.c: Likewise.
   10057 	* c-ubsan.c: Likewise.
   10058 	* cilk.c: Likewise.
   10059 	* stub-objc.c: Likewise.
   10060 
   10061 2015-06-02  David Malcolm  <dmalcolm (a] redhat.com>
   10062 
   10063 	PR c/66220:
   10064 	* c-indentation.c (should_warn_for_misleading_indentation): Use
   10065 	expand_location rather than expand_location_to_spelling_point.
   10066 	Don't warn if the guarding statement is more indented than the
   10067 	next/body stmts.
   10068 
   10069 2015-06-02  David Malcolm  <dmalcolm (a] redhat.com>
   10070 
   10071 	* c-indentation.c (warn_for_misleading_indentation): Bail out
   10072 	immediately if -Wmisleading-indentation isn't enabled.
   10073 
   10074 2015-06-01  Martin Liska  <mliska (a] suse.cz>
   10075 
   10076 	* c-format.c (check_format_arg):Use new type-based pool allocator.
   10077 	(check_format_info_main) Likewise.
   10078 
   10079 2015-05-31  Eric Botcazou  <ebotcazou (a] adacore.com>
   10080 
   10081 	* c-ada-spec.c (is_tagged_type): Test for TYPE_METHODS on main variant.
   10082 	(has_nontrivial_methods): Likewise.
   10083 
   10084 2015-05-25  Marek Polacek  <polacek (a] redhat.com>
   10085 
   10086 	* c-ubsan.c (ubsan_instrument_shift): Use type0.
   10087 
   10088 2015-05-22  Marek Polacek  <polacek (a] redhat.com>
   10089 
   10090 	PR c/47043
   10091 	* c-common.c (handle_deprecated_attribute): Allow CONST_DECL.
   10092 
   10093 2015-05-21  Trevor Saunders  <tbsaunde+gcc (a] tbsaunde.org>
   10094 
   10095 	* c-cppbuiltin.c (c_cpp_builtins): Use if instead of #if with
   10096 	STACK_GROWS_DOWNWARD.
   10097 
   10098 2015-05-21  Trevor Saunders  <tbsaunde+gcc (a] tbsaunde.org>
   10099 
   10100 	* c-cppbuiltin.c (c_cpp_builtins): Check the value of
   10101 	STACK_GROWS_DOWNWARD rather than if it is defined.
   10102 
   10103 2015-05-21  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   10104 
   10105 	PR c/52952
   10106 	* c-format.c (location_column_from_byte_offset): New.
   10107 	(location_from_offset): New.
   10108 	(struct format_wanted_type): Add offset_loc field.
   10109 	(check_format_info): Move handling of location for extra arguments
   10110 	closer to the point of warning.
   10111 	(check_format_info_main): Pass the result of location_from_offset
   10112 	to warning_at.
   10113 	(format_type_warning): Pass the result of location_from_offset
   10114 	to warning_at.
   10115 
   10116 2015-05-20  Marek Polacek  <polacek (a] redhat.com>
   10117 
   10118 	* c-omp.c (check_omp_for_incr_expr): Use BINARY_CLASS_P.
   10119 
   10120 2015-05-20  Marek Polacek  <polacek (a] redhat.com>
   10121 
   10122 	* c-ada-spec.c (dump_sloc): Use DECL_P.
   10123 
   10124 2015-05-20  Marek Polacek  <polacek (a] redhat.com>
   10125 
   10126 	* c-pragma.c: Use VAR_OR_FUNCTION_DECL_P throughout.
   10127 	* c-common.c: Likewise.
   10128 
   10129 2015-05-19  David Malcolm  <dmalcolm (a] redhat.com>
   10130 
   10131 	* c-common.h (fe_file_change): Strengthen param from
   10132 	const line_map * to const line_map_ordinary *.
   10133 	(pp_file_change): Likewise.
   10134 	* c-lex.c (fe_file_change): Likewise.
   10135 	(cb_define): Use linemap_check_ordinary when invoking
   10136 	SOURCE_LINE.
   10137 	(cb_undef): Likewise.
   10138 	* c-opts.c (c_finish_options): Use linemap_check_ordinary when
   10139 	invoking cb_file_change.
   10140 	(c_finish_options): Likewise.
   10141 	(push_command_line_include): Likewise.
   10142 	(cb_file_change): Strengthen param "new_map" from
   10143 	const line_map * to const line_map_ordinary *.
   10144 	* c-ppoutput.c (cb_define): Likewise for local "map".
   10145 	(pp_file_change): Likewise for param "map" and local "from".
   10146 
   10147 2015-05-19  Mikhail Maltsev  <maltsevm (a] gmail.com>
   10148 
   10149 	* c-common.c (shorten_compare): Use std::swap instead of explicit swaps.
   10150 
   10151 2015-05-18  Tom de Vries  <tom (a] codesourcery.com>
   10152 
   10153 	* c-common.c (build_va_arg_1): New function.
   10154 	(build_va_arg): Add address operator to va_list operand if necessary.
   10155 
   10156 2015-05-15  Mikhail Maltsev  <maltsevm (a] gmail.com>
   10157 
   10158 	PR c/48956
   10159 	* c-common.c (int_safely_convertible_to_real_p): Define.
   10160 	(unsafe_conversion_p): Check conversions involving complex types.
   10161 	(conversion_warning): Add new warning message for conversions which
   10162 	discard imaginary component.
   10163 	* c-common.h: (enum conversion_safety): Add new enumerator for such
   10164 	conversions.
   10165 
   10166 2015-05-14  Marek Polacek  <polacek (a] redhat.com>
   10167 
   10168 	PR c/66066
   10169 	PR c/66127
   10170 	* c-common.c (c_fully_fold): Pass false down to c_fully_fold_internal.
   10171 	(c_fully_fold_internal): Fold C_MAYBE_CONST_EXPRs with
   10172 	C_MAYBE_CONST_EXPR_INT_OPERANDS set.  Add FOR_INT_CONST argument and
   10173 	use it.  If FOR_INT_CONST, require that all evaluated operands be
   10174 	INTEGER_CSTs.
   10175 
   10176 2015-05-12  David Malcolm  <dmalcolm (a] redhat.com>
   10177 
   10178 	* c-common.h (warn_for_misleading_indentation): New prototype.
   10179 	* c-indentation.c: New file.
   10180 	* c.opt (Wmisleading-indentation): New option.
   10181 
   10182 2015-05-12  Tom de Vries  <tom (a] codesourcery.com>
   10183 
   10184 	PR tree-optimization/66010
   10185 	* c-common.c (build_va_arg): Don't mark ap addressable unless necessary.
   10186 
   10187 2015-05-09  Jason Merrill  <jason (a] redhat.com>
   10188 
   10189 	* c-opts.c (c_common_post_options): Also clear
   10190 	cpp_opts->cpp_warn_cxx11_compat.
   10191 
   10192 	* c-common.h (enum cxx_dialect): Add cxx_unset.
   10193 	* c-common.c (cxx_dialect): Initialize to cxx_unset.
   10194 	* c-opts.c (c_common_post_options): Set C++ dialect to C++98 if unset.
   10195 
   10196 	* c.opt (std=c++14): Remove Undocumented flag and experimental warning.
   10197 	(std=gnu++0x): Mark as Undocumented.
   10198 	(std=gnu++1y): Add deprecated message.
   10199 
   10200 2015-05-08  Jason Merrill  <jason (a] redhat.com>
   10201 
   10202 	* c.opt (Wc++11-compat): Make primary.  Rename var warn_cxx11_compat.
   10203 	* c-opts.c: Adjust.
   10204 
   10205 	* c.opt (Wc++0x-compat): Also set cpp_warn_cxx11_compat.
   10206 
   10207 2015-05-08  Marek Polacek  <polacek (a] redhat.com>
   10208 
   10209 	PR c/64918
   10210 	* c.opt (Woverride-init-side-effects): New option.
   10211 
   10212 2015-05-07  Marek Polacek  <polacek (a] redhat.com>
   10213 
   10214 	PR c/65179
   10215 	* c-common.c (c_fully_fold_internal): Warn when left shifting a
   10216 	negative value.
   10217 	* c.opt (Wshift-negative-value): New option.
   10218 	* c-opts.c (c_common_post_options): Set warn_shift_negative_value
   10219 	when -Wextra and C99/C++11 mode.
   10220 
   10221 2015-05-07  Marek Polacek  <polacek (a] redhat.com>
   10222 	    Martin Uecker  <uecker (a] eecs.berkeley.edu>
   10223 
   10224 	* c-ubsan.c (ubsan_instrument_bounds): Don't skip instrumenting
   10225 	flexible member array-like members if SANITIZE_BOUNDS_STRICT.
   10226 
   10227 2015-05-05  Jason Merrill  <jason (a] redhat.com>
   10228 
   10229 	* c.opt (Wterminate): New.
   10230 
   10231 2015-04-30  Marek Polacek  <polacek (a] redhat.com>
   10232 
   10233 	* c-common.c (maybe_warn_bool_compare): When comparing with 0/1,
   10234 	require that the non-constant be of a boolean type.
   10235 
   10236 2015-04-29  Josh Triplett  <josh (a] joshtriplett.org>
   10237 
   10238 	* c-common.c (handle_section_attribute): Refactor to reduce
   10239 	nesting and distinguish between error cases.
   10240 
   10241 2015-04-29  Marek Polacek  <polacek (a] redhat.com>
   10242 
   10243 	PR c/64610
   10244 	* c-common.c (maybe_warn_bool_compare): Warn when comparing a boolean
   10245 	with 0/1.
   10246 
   10247 2015-04-29  Jakub Jelinek  <jakub (a] redhat.com>
   10248 
   10249 	* c-common.h (omp_clause_mask): Unconditionally define as a class.
   10250 	Use uint64_t instead of unsigned HOST_WIDE_INT and 64 instead of
   10251 	HOST_BITS_PER_WIDE_INT.
   10252 
   10253 2015-04-28  Tom de Vries  <tom (a] codesourcery.com>
   10254 
   10255 	PR tree-optimization/65887
   10256 	* c-common.c (build_va_arg): Mark va_arg ap argument as addressable.
   10257 
   10258 2015-04-28  Eric Botcazou  <ebotcazou (a] adacore.com>
   10259 	    Pierre-Marie de Rodat  <derodat (a] adacore.com>
   10260 
   10261 	* c-ada-spec.c (in_function): Delete.
   10262 	(dump_generic_ada_node): Do not change in_function and remove the
   10263 	redundant code dealing with it.
   10264 	(print_ada_declaration): Do not change in_function.  Use INDENT_INCR.
   10265 	(print_ada_methods): Output the static member functions in a nested
   10266 	package after the regular methods as well as associated renamings.
   10267 
   10268 2015-04-24  Marek Polacek  <polacek (a] redhat.com>
   10269 
   10270 	PR c/65830
   10271 	* c-common.c (c_fully_fold_internal): Use OPT_Wshift_count_negative
   10272 	and OPT_Wshift_count_overflow.
   10273 
   10274 	PR c/63357
   10275 	* c-common.c (warn_logical_operator): Warn if the operands have the
   10276 	same expressions.
   10277 
   10278 2015-04-24  Marek Polacek  <polacek (a] redhat.com>
   10279 
   10280 	PR c/61534
   10281 	* c-common.c (warn_logical_operator): Bail if either operand comes
   10282 	from a macro expansion.
   10283 
   10284 2015-04-10  Bernhard Reutner-Fischer  <aldot (a] gcc.gnu.org>
   10285 
   10286 	PR target/55143
   10287 	* c-common.c (c_default_pointer_mode): Add definition.
   10288 	* c-common.h (c_default_pointer_mode): Add declaration.
   10289 
   10290 2015-03-11  Jakub Jelinek  <jakub (a] redhat.com>
   10291 
   10292 	* c-common.c (c_common_nodes_and_builtins): Don't call xstrdup
   10293 	on record_builtin_type argument.
   10294 
   10295 2015-03-10  Jakub Jelinek  <jakub (a] redhat.com>
   10296 
   10297 	PR c/65120
   10298 	* c-common.c (warn_logical_not_parentheses): Don't warn for
   10299 	!x == 0 or !x != 0.
   10300 
   10301 2015-03-07  Marek Polacek  <polacek (a] redhat.com>
   10302 
   10303 	PR sanitizer/65280
   10304 	* c-ubsan.c (ubsan_instrument_bounds): Check for COMPONENT_REF
   10305 	before trying to figure out whether we have a flexible array member.
   10306 
   10307 2015-03-06  Eric Botcazou  <ebotcazou (a] adacore.com>
   10308 	    Jonathan Wakely  <jwakely.gcc (a] gmail.com>
   10309 
   10310 	* c-ada-spec.c (dump_ada_double_name): Fix pasto.
   10311 
   10312 2015-03-05  Eric Botcazou  <ebotcazou (a] adacore.com>
   10313 
   10314 	PR ada/65319
   10315 	* c-ada-spec.c (print_destructor): Remove obsolete code.
   10316 
   10317 2015-03-01  Eric Botcazou  <ebotcazou (a] adacore.com>
   10318 
   10319 	* c-ada-spec.c (is_tagged_type): Add guard for DECL_VINDEX.
   10320 	(dump_template_types): Adjust DECL_TEMPLATE_INSTANTIATIONS and
   10321 	DECL_TEMPLATE_RESULT emulations.
   10322 	(dump_ada_template)): Add guard for TYPE_METHODS.
   10323 
   10324 2015-02-27  Marek Polacek  <polacek (a] redhat.com>
   10325 
   10326 	PR c/65040
   10327 	* c.opt (Wformat-signedness): Don't enable by -Wformat=2.
   10328 
   10329 2015-02-27  Kai Tietz  <ktietz (a] redhat.com>
   10330 
   10331 	PR c/35330
   10332 	* c-pragma.c (handle_pragma_weak): Do not try to create
   10333 	weak/alias of declarations not being function, or variable
   10334 	declarations.
   10335 
   10336 2015-02-24  Thomas Schwinge  <thomas (a] codesourcery.com>
   10337 
   10338 	PR libgomp/64625
   10339 	* c-common.c (DEF_FUNCTION_TYPE_VAR_8, DEF_FUNCTION_TYPE_VAR_12):
   10340 	Remove macros.
   10341 	(DEF_FUNCTION_TYPE_VAR_7, DEF_FUNCTION_TYPE_VAR_11): New macros.
   10342 
   10343 2015-02-16  Marek Polacek  <polacek (a] redhat.com>
   10344 
   10345 	PR c/65066
   10346 	* c-format.c (check_format_types): Handle null param.
   10347 
   10348 2015-02-13  Marek Polacek  <polacek (a] redhat.com>
   10349 
   10350 	PR c/65040
   10351 	* c-format.c (check_format_types): Don't warn about different
   10352 	signedness if the original value is in the range of WANTED_TYPE.
   10353 
   10354 2015-02-12  Jason Merrill  <jason (a] redhat.com>
   10355 
   10356 	PR c++/64956
   10357 	* c-opts.c (c_common_post_options): Change flag_abi_version from 0
   10358 	to the current highest version.
   10359 	* c-cppbuiltin.c (c_cpp_builtins): Assert that it isn't 0.
   10360 
   10361 2015-02-04  Jakub Jelinek  <jakub (a] redhat.com>
   10362 
   10363 	PR c/64824
   10364 	PR c/64868
   10365 	* c-omp.c (c_finish_omp_atomic): Use TRUNC_DIV_EXPR
   10366 	instead of RDIV_EXPR.  Use build_binary_op instead of
   10367 	build2_loc.
   10368 
   10369 2015-01-30  Joseph Myers  <joseph (a] codesourcery.com>
   10370 
   10371 	* c-opts.c, c-pch.c, cppspec.c: All callers of fatal_error changed
   10372 	to pass input_location as first argument.
   10373 
   10374 2015-01-23  Tom de Vries  <tom (a] codesourcery.com>
   10375 
   10376 	PR libgomp/64672
   10377 	* c.opt (fopenacc): Mark as LTO option.
   10378 
   10379 2015-01-23  Tom de Vries  <tom (a] codesourcery.com>
   10380 
   10381 	PR libgomp/64707
   10382 	* c.opt (fopenmp): Mark as LTO option.
   10383 
   10384 2015-01-21  Jakub Jelinek  <jakub (a] redhat.com>
   10385 
   10386 	PR c/63307
   10387 	* cilk.c (fill_decls_vec): Only put decls into vector v.
   10388 	(compare_decls): Fix up formatting.
   10389 
   10390 2015-01-21  Igor Zamyatin  <igor.zamyatin (a] intel.com>
   10391 
   10392 	PR c/63307
   10393 	* cilk.c: Include vec.h.
   10394 	(struct cilk_decls): New structure.
   10395 	(wrapper_parm_cb): Split this function to...
   10396 	(fill_decls_vec): ...this...
   10397 	(create_parm_list): ...and this.
   10398 	(compare_decls): New function.
   10399 	(for_local_cb): Remove.
   10400 	(wrapper_local_cb): Ditto.
   10401 	(build_wrapper_type): For now first traverse and fill vector of
   10402 	declarations then sort it and then deal with sorted vector.
   10403 	(cilk_outline): Ditto.
   10404 	(declare_one_free_variable): Ditto.
   10405 
   10406 2015-01-21  Jason Merrill  <jason (a] redhat.com>
   10407 
   10408 	PR c++/64629
   10409 	* c-format.c (check_format_arg): Call decl_constant_value.
   10410 
   10411 2015-01-19  Martin Liska  <mliska (a] suse.cz>
   10412 
   10413 	* c-common.c (handle_noicf_attribute): New function.
   10414 
   10415 2015-01-15  Thomas Schwinge  <thomas (a] codesourcery.com>
   10416 	    Bernd Schmidt  <bernds (a] codesourcery.com>
   10417 	    James Norris  <jnorris (a] codesourcery.com>
   10418 	    Cesar Philippidis  <cesar (a] codesourcery.com>
   10419 	    Ilmir Usmanov  <i.usmanov (a] samsung.com>
   10420 	    Jakub Jelinek  <jakub (a] redhat.com>
   10421 
   10422 	* c.opt (fopenacc): New option.
   10423 	* c-cppbuiltin.c (c_cpp_builtins): Conditionally define _OPENACC.
   10424 	* c-common.c (DEF_FUNCTION_TYPE_VAR_8, DEF_FUNCTION_TYPE_VAR_12):
   10425 	New macros.
   10426 	* c-common.h (c_finish_oacc_wait): New prototype.
   10427 	* c-omp.c: Include "omp-low.h" and "gomp-constants.h".
   10428 	(c_finish_oacc_wait): New function.
   10429 	* c-pragma.c (oacc_pragmas): New variable.
   10430 	(c_pp_lookup_pragma, init_pragma): Handle it.
   10431 	* c-pragma.h (enum pragma_kind): Add PRAGMA_OACC_CACHE,
   10432 	PRAGMA_OACC_DATA, PRAGMA_OACC_ENTER_DATA, PRAGMA_OACC_EXIT_DATA,
   10433 	PRAGMA_OACC_KERNELS, PRAGMA_OACC_LOOP, PRAGMA_OACC_PARALLEL,
   10434 	PRAGMA_OACC_UPDATE, PRAGMA_OACC_WAIT.
   10435 	(enum pragma_omp_clause): Add PRAGMA_OACC_CLAUSE_ASYNC,
   10436 	PRAGMA_OACC_CLAUSE_AUTO, PRAGMA_OACC_CLAUSE_COLLAPSE,
   10437 	PRAGMA_OACC_CLAUSE_COPY, PRAGMA_OACC_CLAUSE_COPYIN,
   10438 	PRAGMA_OACC_CLAUSE_COPYOUT, PRAGMA_OACC_CLAUSE_CREATE,
   10439 	PRAGMA_OACC_CLAUSE_DELETE, PRAGMA_OACC_CLAUSE_DEVICE,
   10440 	PRAGMA_OACC_CLAUSE_DEVICEPTR, PRAGMA_OACC_CLAUSE_FIRSTPRIVATE,
   10441 	PRAGMA_OACC_CLAUSE_GANG, PRAGMA_OACC_CLAUSE_HOST,
   10442 	PRAGMA_OACC_CLAUSE_IF, PRAGMA_OACC_CLAUSE_NUM_GANGS,
   10443 	PRAGMA_OACC_CLAUSE_NUM_WORKERS, PRAGMA_OACC_CLAUSE_PRESENT,
   10444 	PRAGMA_OACC_CLAUSE_PRESENT_OR_COPY,
   10445 	PRAGMA_OACC_CLAUSE_PRESENT_OR_COPYIN,
   10446 	PRAGMA_OACC_CLAUSE_PRESENT_OR_COPYOUT,
   10447 	PRAGMA_OACC_CLAUSE_PRESENT_OR_CREATE, PRAGMA_OACC_CLAUSE_PRIVATE,
   10448 	PRAGMA_OACC_CLAUSE_REDUCTION, PRAGMA_OACC_CLAUSE_SELF,
   10449 	PRAGMA_OACC_CLAUSE_SEQ, PRAGMA_OACC_CLAUSE_VECTOR,
   10450 	PRAGMA_OACC_CLAUSE_VECTOR_LENGTH, PRAGMA_OACC_CLAUSE_WAIT,
   10451 	PRAGMA_OACC_CLAUSE_WORKER.
   10452 
   10453 2015-01-14  Marcos Diaz  <marcos.diaz (a] tallertechnologies.com>
   10454 
   10455 	* c-cppbuiltin.c (c_cpp_builtins): New cpp define __SSP_EXPLICIT__
   10456 	for the new option fstack-protector_explicit.
   10457 	* c-common.c (c_common_attribute_table): Add stack_protect attribute.
   10458 	(handle_stack_protect_attribute): New function.
   10459 
   10460 2015-01-13  Martin Uecker  <uecker (a] eecs.berkeley.edu>
   10461 
   10462 	* c.opt: New option -Warray-bounds=.
   10463 
   10464 2015-01-09  Michael Collison  <michael.collison (a] linaro.org>
   10465 
   10466 	* array-notation-common.c: Include hash-set.h, machmode.h,
   10467 	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
   10468 	fold-const.h, wide-int.h, and inchash.h due to flattening of tree.h.
   10469 	* c-ada-spec.c: Ditto.
   10470 	* c-cilkplus.c: Ditto.
   10471 	* c-common.c: Include input.h due to flattening of tree.h.
   10472 	Define macro GCC_C_COMMON_C.
   10473 	* c-common.h: Flatten tree.h header files into c-common.h.
   10474 	Remove include of tree-core.h.
   10475 	* c-cppbuiltin.c: Include hash-set.h, machmode.h,
   10476 	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
   10477 	fold-const.h, wide-int.h, and inchash.h due to
   10478 	flattening of tree.h.
   10479 	* c-dump.c: Ditto.
   10480 	* c-format.c: Flatten tree.h header files into c-common.h.
   10481 	* c-cppbuiltin.c: Include hash-set.h, machmode.h,
   10482 	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
   10483 	fold-const.h, wide-int.h, and inchash.h due to
   10484 	flattening of tree.h.
   10485 	* c-dump.c: Include hash-set.h, machmode.h,
   10486 	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
   10487 	fold-const.h, wide-int.h, and inchash.h due to
   10488 	flattening of tree.h.
   10489 	* c-format.c: Include hash-set.h, machmode.h,
   10490 	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
   10491 	fold-const.h, wide-int.h, inchash.h and real.h due to
   10492 	flattening of tree.h.
   10493 	* c-gimplify.c: Include hash-set.h, machmode.h,
   10494 	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
   10495 	fold-const.h, wide-int.h, and inchash.h due to
   10496 	flattening of tree.h.
   10497 	* cilk.c: Ditto.
   10498 	* c-lex.c: Ditto.
   10499 	* c-omp.c: Ditto.
   10500 	* c-opts.c: Ditto.
   10501 	* c-pch.c: Ditto.
   10502 	* c-ppoutput.c: Ditto.
   10503 	* c-pragma.c: Ditto.
   10504 	* c-pretty-print.c: Ditto.
   10505 	* c-semantics.c: Ditto.
   10506 	* c-ubsan.c: Ditto.
   10507 	* stub-objc.c: Ditto.
   10508 
   10509 2015-01-08  Jason Merrill  <jason (a] redhat.com>
   10510 
   10511 	* c-ubsan.c (ubsan_maybe_instrument_array_ref): Use
   10512 	do_ubsan_in_current_function.
   10513 	(ubsan_maybe_instrument_reference_or_call): Likewise.
   10514 	* c-ubsan.h: Declare it.
   10515 
   10516 2015-01-08  Mike Stump  <mikestump (a] comcast.net>
   10517 
   10518 	* c-common.c (c_common_attribute_table): Add no_sanitize_thread.
   10519 
   10520 2015-01-07  Marek Polacek  <polacek (a] redhat.com>
   10521 
   10522 	PR c/64440
   10523 	* c-common.c (c_fully_fold_internal): Warn for division and modulo
   10524 	if orig_op1 isn't INTEGER_CST, op1 is INTEGER_CST and is zero.
   10525 
   10526 2015-01-05  Trevor Saunders  <tsaunders (a] mozilla.com>
   10527 
   10528 	PR c++/31397
   10529 	* c.opt (Wsuggest-override): New option.
   10530 
   10531 2015-01-05  Jakub Jelinek  <jakub (a] redhat.com>
   10532 
   10533 	Update copyright years.
   10534 
   10535 2015-01-05  Marek Polacek  <polacek (a] redhat.com>
   10536 
   10537 	PR c/64423
   10538 	* c-common.c (warn_array_subscript_with_type_char): Add location_t
   10539 	parameter.  Use it.
   10540 	* c-common.h (warn_array_subscript_with_type_char): Update
   10541 	declaration.
   10542 
   10543 2014-12-20  Edward Smith-Rowland  <3dw4rd (a] verizon.net>
   10544 
   10545 	* c-cppbuiltin.c (__cpp_sized_deallocation): Uncomment and move macro.
   10546 	Control macro with flag_sized_deallocation.
   10547 
   10548 2014-12-20  Martin Uecker  <uecker (a] eecs.berkeley.edu>
   10549 
   10550 	* c.opt (Wdiscarded-array-qualifiers): New option.
   10551 
   10552 2014-12-19  Jakub Jelinek  <jakub (a] redhat.com>
   10553 
   10554 	PR preprocessor/63831
   10555 	* c-cppbuiltin.c (c_cpp_builtins): Don't define __has_attribute
   10556 	and __has_cpp_attribute here.
   10557 	* c-ppoutput.c (init_pp_output): Set cb->has_attribute to
   10558 	c_common_has_attribute.
   10559 	* c-common.h (c_common_has_attribute): New prototype.
   10560 	* c-lex.c (init_c_lex): Set cb->has_attribute to
   10561 	c_common_has_attribute instead of cb_has_attribute.
   10562 	(get_token_no_padding): New function.
   10563 	(cb_has_attribute): Renamed to ...
   10564 	(c_common_has_attribute): ... this.  No longer static.  Use
   10565 	get_token_no_padding, require ()s, don't build TREE_LIST
   10566 	unnecessarily, fix up formatting, adjust diagnostics, call
   10567 	init_attributes.
   10568 
   10569 2014-12-15  Jason Merrill  <jason (a] redhat.com>
   10570 
   10571 	* c.opt (-fsized-deallocation, -Wc++14-compat): New.
   10572 	(-Wsized-deallocation): New.
   10573 	* c-opts.c (c_common_post_options): -fsized-deallocation defaults
   10574 	to on in C++14 and up.
   10575 
   10576 2014-12-11  Jason Merrill  <jason (a] redhat.com>
   10577 
   10578 	* c-cppbuiltin.c (c_cpp_builtins): Enable C++14 __cpp_constexpr.
   10579 
   10580 	* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_runtime_arrays if
   10581 	we aren't complaining about VLAs.
   10582 
   10583 2014-12-06  Marek Polacek  <polacek (a] redhat.com>
   10584 
   10585 	PR tree-optimization/64183
   10586 	* c-gimplify.c (c_gimplify_expr): Don't convert the RHS of a
   10587 	shift-expression if it is integer_type_node.  Use types_compatible_p.
   10588 
   10589 2014-11-29  Jakub Jelinek  <jakub (a] redhat.com>
   10590 
   10591 	* c-common.c (convert_vector_to_pointer_for_subscript): Remove NULL
   10592 	last argument from create_tmp_var_raw and create_tmp_var calls.
   10593 	* cilk.c (gimplify_cilk_spawn): Likewise.
   10594 	* c-omp.c (c_finish_omp_atomic): Likewise.
   10595 
   10596 2014-11-28  Marek Polacek  <polacek (a] redhat.com>
   10597 
   10598 	* c-ubsan.c (ubsan_instrument_shift): Use op1_utype for MINUS_EXPR
   10599 	instead of unsigned_type_node.
   10600 
   10601 2014-11-28  Marek Polacek  <polacek (a] redhat.com>
   10602 
   10603 	PR c/63862
   10604 	* c-ubsan.c (ubsan_instrument_shift): Change the type of a MINUS_EXPR
   10605 	to op1_utype.
   10606 	* c-gimplify.c (c_gimplify_expr): Convert right operand of a shift
   10607 	expression to unsigned_type_node.
   10608 
   10609 2014-11-20  Mark Wielaard  <mjw (a] redhat.com>
   10610 
   10611 	PR debug/38757
   10612 	* c-opts.c (set_std_c89): Set lang_hooks.name.
   10613 	(set_std_c99): Likewise.
   10614 	(set_std_c11): Likewise.
   10615 	(set_std_cxx98): Likewise.
   10616 	(set_std_cxx11): Likewise.
   10617 	(set_std_cxx14): Likewise.
   10618 	(set_std_cxx1z): Likewise.
   10619 
   10620 2014-11-21  Jakub Jelinek  <jakub (a] redhat.com>
   10621 
   10622 	PR target/63764
   10623 	* c-common.h (convert_vector_to_pointer_for_subscript): Change
   10624 	return type to bool.
   10625 	* c-common.c: Include gimple-expr.h.
   10626 	(convert_vector_to_pointer_for_subscript): Change return type to
   10627 	bool.  If *vecp is not lvalue_p and has VECTOR_TYPE, return true
   10628 	and copy it into a TARGET_EXPR and use that instead of *vecp
   10629 	directly.
   10630 
   10631 2014-11-19  David Malcolm  <dmalcolm (a] redhat.com>
   10632 
   10633 	Merger of git branch "gimple-classes-v2-option-3".
   10634 	* ChangeLog.gimple-classes: New.
   10635 	* c-gimplify.c (add_block_to_enclosing): Strengthen local "stack"
   10636 	from being just a vec<gimple> to a vec<gbind *>.
   10637 
   10638 2014-11-18  Jakub Jelinek  <jakub (a] redhat.com>
   10639 
   10640 	PR sanitizer/63813
   10641 	* c-ubsan.c (ubsan_maybe_instrument_reference_or_call): Change type
   10642 	argument to ptype, set type to TREE_TYPE (ptype).  Don't call
   10643 	get_pointer_alignment for non-pointers.  Use ptype, or if it is
   10644 	reference type, corresponding pointer type, as type of kind
   10645 	argument.
   10646 	(ubsan_maybe_instrument_reference,
   10647 	ubsan_maybe_instrument_member_call): Adjust callers.
   10648 
   10649 2014-11-15  Marek Polacek  <polacek (a] redhat.com>
   10650 
   10651 	PR middle-end/63884
   10652 	* array-notation-common.c (is_sec_implicit_index_fn): Return false
   10653 	for NULL fndecl.
   10654 	(extract_array_notation_exprs): Return for NULL node.
   10655 
   10656 2014-11-12  Joseph Myers  <joseph (a] codesourcery.com>
   10657 
   10658 	* c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Define and
   10659 	undefine __NO_MATH_ERRNO__ based on changes to -fmath-errno state.
   10660 
   10661 2014-11-12  Jakub Jelinek  <jakub (a] redhat.com>
   10662 
   10663 	PR c/59708
   10664 	* c-common.c (check_builtin_function_arguments): Handle
   10665 	BUILT_IN_{ADD,SUB,MUL}_OVERFLOW.
   10666 
   10667 2014-11-10  Andi Kleen  <ak (a] linux.intel.com>
   10668 
   10669 	PR c/60804
   10670 	* c-common.h (check_no_cilk): Declare.
   10671 	* cilk.c (get_error_location): New function.
   10672 	(check_no_cilk): Dito.
   10673 
   10674 2014-11-10  Andi Kleen  <ak (a] linux.intel.com>
   10675 
   10676 	* cilk.c (recognize_spawn): Use expression location
   10677 	for error message.
   10678 
   10679 2014-11-10  Paolo Carlini  <paolo.carlini (a] oracle.com>
   10680 
   10681 	* c.opt ([Wshift-count-negative, Wshift-count-overflow]): Add.
   10682 
   10683 2014-11-10  Edward Smith-Rowland  <3dw4rd (a] verizon.net>
   10684 
   10685 	* c-cppbuiltin.c (__has_attribute, __has_cpp_attribute): New macros;
   10686 	(__cpp_rtti, __cpp_exceptions): New macros for C++98;
   10687 	(__cpp_range_based_for, __cpp_initializer_lists,
   10688 	__cpp_delegating_constructors, __cpp_nsdmi,
   10689 	__cpp_inheriting_constructors, __cpp_ref_qualifiers): New macros
   10690 	for C++11; (__cpp_attribute_deprecated): Remove in favor of
   10691 	__has_cpp_attribute.
   10692 	* c-lex.c (cb_has_attribute): New callback CPP function;
   10693 	(init_c_lex): Set has_attribute callback.
   10694 
   10695 2014-11-04  Richard Biener  <rguenther (a] suse.de>
   10696 
   10697 	* c-common.c (shorten_compare): Do not shorten mixed
   10698 	DFP and non-DFP compares.
   10699 
   10700 2014-11-01  Edward Smith-Rowland  <3dw4rd (a] verizon.net>
   10701 
   10702 	* g++.dg/cpp1y/feat-cxx11.C: Commentary and rearrangement of tests.
   10703 	* g++.dg/cpp1y/feat-cxx11-neg.C: Add aggregate NSDMI test.
   10704 	Commentary and rearrangement of tests.
   10705 	* g++.dg/cpp1y/feat-cxx14.C: Enable aggregate NSDMI test.
   10706 	Commentary and rearrangement of tests.
   10707 	* g++.dg/cpp1y/feat-cxx98-neg.C: Ditto.
   10708 	* g++.dg/cpp1y/feat-cxx98.C: Commentary.
   10709 
   10710 2014-10-29  Richard Sandiford  <richard.sandiford (a] arm.com>
   10711 
   10712 	* c-common.c, c-common.h, c-cppbuiltin.c, c-lex.c: Remove redundant
   10713 	enum from machine_mode.
   10714 
   10715 2014-10-28  Andrew MacLeod  <amacleod (a] redhat.com>
   10716 
   10717 	* c-common.c: Adjust include files.
   10718 	* c-gimplify.c: Ditto.
   10719 	* cilk.c: Ditto.
   10720 	* c-pragma.c: Ditto.
   10721 	* c-ubsan.c: Ditto.
   10722 
   10723 2014-10-27  Andrew MacLeod  <amacleod (a] redhat.com>
   10724 
   10725 	* c-gimplify.c: Adjust include files.
   10726 
   10727 2014-10-26  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   10728 
   10729 	PR c++/53061
   10730 	* c-opts.c (c_common_diagnostics_set_defaults): Renamed from
   10731 	c_common_initialize_diagnostics.
   10732 	* c-common.h: Likewise.
   10733 
   10734 2014-10-24  Marek Polacek  <polacek (a] redhat.com>
   10735 
   10736 	PR c/56980
   10737 	* c-pretty-print.c (c_pretty_printer::simple_type_specifier): Don't
   10738 	print "struct"/"union"/"enum" for typedefed names.
   10739 
   10740 2014-10-23  Marek Polacek  <polacek (a] redhat.com>
   10741 
   10742 	* c-ubsan.c (ubsan_instrument_shift): Perform the MINUS_EXPR
   10743 	in unsigned type.
   10744 
   10745 2014-10-22  Jakub Jelinek  <jakub (a] redhat.com>
   10746 	    Yury Gribov  <y.gribov (a] samsung.com>
   10747 
   10748 	* c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
   10749 	ubsan_instrument_vla): Check bits in flag_sanitize_recover bitmask
   10750 	instead of flag_sanitize_recover as bool flag.
   10751 
   10752 2014-10-21  Kirill Yukhin  <kirill.yukhin (a] intel.com>
   10753 
   10754 	* cilk.c: Revert previous change.
   10755 
   10756 2014-10-20  Igor Zamyatin  <igor.zamyatin (a] intel.com>
   10757 
   10758 	PR c/63307
   10759 	* cilk.c: Include vec.h.
   10760 	(struct cilk_decls): New structure.
   10761 	(wrapper_parm_cb): Split this function to...
   10762 	(fill_decls_vec): ...this...
   10763 	(create_parm_list): ...and this.
   10764 	(compare_decls): New function.
   10765 	(for_local_cb): Remove.
   10766 	(wrapper_local_cb): Ditto.
   10767 	(build_wrapper_type): For now first traverse and fill vector of
   10768 	declarations then sort it and then deal with sorted vector.
   10769 	(cilk_outline): Ditto.
   10770 	(declare_one_free_variable): Ditto.
   10771 
   10772 2014-10-17  Marek Polacek  <polacek (a] redhat.com>
   10773 
   10774 	* c-opts.c (c_common_post_options): Set warn_implicit_int.
   10775 	* c.opt (Wimplicit-int): Initialize to -1.
   10776 
   10777 2014-10-16  Andrew MacLeod  <amacleod (a] redhat.com>
   10778 
   10779 	* c-pragma.c: Adjust include files.
   10780 	* c-semantics.c: Likewise.
   10781 
   10782 2014-10-16  DJ Delorie  <dj (a] redhat.com>
   10783 
   10784 	* c-cppbuiltin.c (cpp_atomic_builtins): Don't assume pointers are
   10785 	multiples of bytes.
   10786 
   10787 2014-10-14  Jason Merrill  <jason (a] redhat.com>
   10788 
   10789 	PR c++/63455
   10790 	* c-common.h (CPP_PREPARSED_EXPR): New.
   10791 	(N_CP_TTYPES): Adjust.
   10792 
   10793 2014-10-15  Marek Polacek  <polacek (a] redhat.com>
   10794 
   10795 	* c-opts.c (c_common_init_options): Make -std=gnu11 the default for C.
   10796 
   10797 2014-10-14  DJ Delorie  <dj (a] redhat.com>
   10798 
   10799 	* c-pretty-print.c (pp_c_integer_constant): Check for all __intN
   10800 	types, not just __int128.
   10801 	* c-cppbuiltin.c (c_cpp_builtins): Add builtins for all __intN
   10802 	types, not just __int128.
   10803 	(cpp_atomic_builtins): Round pointer sizes up.
   10804 	(type_suffix): Use type precision, not specific types.
   10805 	* c-common.c (c_common_reswords): Remove __int128 special case.
   10806 	(c_common_type_for_size): Check for all __intN types, not just
   10807 	__int128.
   10808 	(c_common_type_for_mode): Likewise.
   10809 	(c_common_signed_or_unsigned_type): Likewise.
   10810 	(c_build_bitfield_integer_type): Likewise.
   10811 	(c_common_nodes_and_builtins): Likewise.
   10812 	(keyword_begins_type_specifier): Likewise.
   10813 	* c-common.h (rid): Remove RID_INT128 and add RID_INT_N_* for all
   10814 	__intN variants.
   10815 
   10816 2014-10-12  Trevor Saunders  <tsaunders (a] mozilla.com>
   10817 
   10818 	* c-common.c: Use hash_table instead of hashtab.
   10819 
   10820 2014-10-06  Edward Smith-Rowland  <3dw4rd (a] verizon.net>
   10821 
   10822 	* c-cppbuiltin.c: Move __cpp_attribute_deprecated to the
   10823 	C++11 section.
   10824 
   10825 2014-10-03  Marc Glisse  <marc.glisse (a] inria.fr>
   10826 
   10827 	PR c++/54427
   10828 	PR c++/57198
   10829 	PR c++/58845
   10830 	* c-common.c (warn_logical_operator): Punt for vectors.
   10831 
   10832 2014-10-01  Edward Smith-Rowland  <3dw4rd (a] verizon.net>
   10833 
   10834 	Implement SD-6: SG10 Feature Test Recommendations
   10835 	* c-cppbuiltin.c (c_cpp_builtins()): Define language feature
   10836 	macros and the __has_header macro.
   10837 
   10838 2014-09-30  Jason Merrill  <jason (a] redhat.com>
   10839 
   10840 	* c-common.h (enum rid): Add RID_IS_TRIVIALLY_ASSIGNABLE and
   10841 	RID_IS_TRIVIALLY_CONSTRUCTIBLE.
   10842 	* c-common.c (c_common_reswords): Add __is_trivially_copyable.
   10843 
   10844 	* c-common.h (enum rid): Add RID_IS_TRIVIALLY_COPYABLE.
   10845 	* c-common.c (c_common_reswords): Add __is_trivially_copyable.
   10846 
   10847 	* c-common.h (enum rid): Remove RID_IS_CONVERTIBLE_TO.
   10848 	* c-common.c (c_common_reswords): Remove __is_convertible_to.
   10849 
   10850 2014-09-24  Marek Polacek  <polacek (a] redhat.com>
   10851 
   10852 	PR c/61405
   10853 	PR c/53874
   10854 	* c-common.h (struct c_common_resword): Don't define CPP_KEYWORD.
   10855 
   10856 2014-09-23  Andi Kleen  <ak (a] linux.intel.com>
   10857 
   10858 	* c-common.c (handle_no_reorder_attribute): New function.
   10859 	(c_common_attribute_table): Add no_reorder attribute.
   10860 
   10861 2014-09-22  Joseph Myers  <joseph (a] codesourcery.com>
   10862 
   10863 	* c-cppbuiltin.c (c_cpp_builtins): Define
   10864 	__LIBGCC_*_EXCESS_PRECISION__ macros for supported floating-point
   10865 	modes.
   10866 
   10867 2014-09-18  Joseph Myers  <joseph (a] codesourcery.com>
   10868 
   10869 	* c-cppbuiltin.c (c_cpp_builtins): Define __LIBGCC_*_FUNC_EXT__
   10870 	for supported floating-point modes.
   10871 
   10872 2014-09-15  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   10873 
   10874 	* c.opt (Wpsabi): Use LangEnabledBy.
   10875 	* c-opts.c (c_common_handle_option): Do not handle here.
   10876 
   10877 2014-09-12  Joseph Myers  <joseph (a] codesourcery.com>
   10878 
   10879 	* c-cppbuiltin.c (c_cpp_builtins): Define __LIBGCC_HAS_%s_MODE__
   10880 	macros for floating-point modes.
   10881 
   10882 2014-09-11  Marc Glisse  <marc.glisse (a] inria.fr>
   10883 
   10884 	PR target/58757
   10885 	* c-cppbuiltin.c (builtin_define_float_constants): Correct
   10886 	__*_DENORM_MIN__ without denormals.
   10887 
   10888 2014-09-10  Jakub Jelinek  <jakub (a] redhat.com>
   10889 
   10890 	* c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
   10891 	ubsan_instrument_vla, ubsan_instrument_return): Adjust
   10892 	ubsan_create_data callers.
   10893 	(ubsan_instrument_bounds): Don't emit UBSAN_BOUNDS at all if
   10894 	index is constant or BIT_AND_EXPR with constant mask and is
   10895 	small enough for the bound.
   10896 	* c-gimplify.c (ubsan_walk_array_refs_r): For ADDR_EXPR of
   10897 	ARRAY_REF, make sure the inner ARRAY_REF is not walked again.
   10898 
   10899 2014-09-09  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   10900 
   10901 	* c.opt: Add CppReason to various flags.
   10902 	(Wdate-time): Re-sort.
   10903 	* c-common.c: Include c-common.h earlier.
   10904 	(struct reason_option_codes_t): Delete.
   10905 	(c_option_controlling_cpp_error): Prefix global type and struct
   10906 	with cpp_.
   10907 
   10908 2014-09-09  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   10909 
   10910 	* c.opt	(Wnormalized): New.
   10911 	(Wnormalized=): Use Enum and Reject Negative.
   10912 	* c-opts.c (c_common_handle_option): Do not handle Wnormalized here.
   10913 
   10914 2014-09-08  Joseph Myers  <joseph (a] codesourcery.com>
   10915 
   10916 	* c-cppbuiltin.c (c_cpp_builtins): Define macros for mantissa
   10917 	digits of floating-point modes if -fbuilding-libgcc.
   10918 
   10919 2014-09-05  Joseph Myers  <joseph (a] codesourcery.com>
   10920 
   10921 	* c-cppbuiltin.c (c_cpp_builtins): Also define
   10922 	__LIBGCC_EH_TABLES_CAN_BE_READ_ONLY__,
   10923 	__LIBGCC_EH_FRAME_SECTION_NAME__, __LIBGCC_JCR_SECTION_NAME__,
   10924 	__LIBGCC_CTORS_SECTION_ASM_OP__, __LIBGCC_DTORS_SECTION_ASM_OP__,
   10925 	__LIBGCC_TEXT_SECTION_ASM_OP__, __LIBGCC_INIT_SECTION_ASM_OP__,
   10926 	__LIBGCC_INIT_ARRAY_SECTION_ASM_OP__,
   10927 	__LIBGCC_STACK_GROWS_DOWNWARD__,
   10928 	__LIBGCC_DONT_USE_BUILTIN_SETJMP__,
   10929 	__LIBGCC_DWARF_ALT_FRAME_RETURN_COLUMN__,
   10930 	__LIBGCC_DWARF_FRAME_REGISTERS__,
   10931 	__LIBGCC_EH_RETURN_STACKADJ_RTX__, __LIBGCC_JMP_BUF_SIZE__,
   10932 	__LIBGCC_STACK_POINTER_REGNUM__ and
   10933 	__LIBGCC_VTABLE_USES_DESCRIPTORS__ for -fbuilding-libgcc.
   10934 	(builtin_define_with_value): Handle backslash-escaping in string
   10935 	macro values.
   10936 
   10937 2014-09-05  Richard Biener  <rguenther (a] suse.de>
   10938 
   10939 	PR middle-end/63148
   10940 	* c-format.c (check_format_arg): Properly handle
   10941 	effectively signed POINTER_PLUS_EXPR offset.
   10942 
   10943 2014-09-04  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   10944 
   10945 	* c.opt (Wc90-c99-compat,Wc++-compat,Wcomment,Wendif-labels,
   10946 	Winvalid-pch,Wlong-long,Wmissing-include-dirs,Wmultichar,Wpedantic,
   10947 	(Wdate-time,Wtraditional,Wundef,Wvariadic-macros): Add CPP, Var
   10948 	and Init.
   10949 	* c-opts.c (c_common_handle_option): Do not handle here.
   10950 	(sanitize_cpp_opts): Likewise.
   10951 	* c-common.c (struct reason_option_codes_t): Handle
   10952 	CPP_W_C90_C99_COMPAT and CPP_W_PEDANTIC.
   10953 
   10954 2014-09-03  Marek Polacek  <polacek (a] redhat.com>
   10955 
   10956 	* c.opt (Wlogical-not-parentheses): Enable by -Wall.
   10957 
   10958 2014-09-02  Jakub Jelinek  <jakub (a] redhat.com>
   10959 	    Balaji V. Iyer  <balaji.v.iyer (a] intel.com>
   10960 	    Igor Zamyatin  <igor.zamyatin (a] intel.com>
   10961 
   10962 	* c-cilkplus.c (cilk_for_number_of_iterations): New function.
   10963 	* c-common.c (c_common_reswords): Added _Cilk_for.
   10964 	* c-common.h (enum rid): Added RID_CILK_FOR.
   10965 	(cilk_for_number_of_iterations): Add declaration.
   10966 	* c-omp.c (c_finish_omp_for): Added checks for CILK_SIMD and
   10967 	CILK_FOR.
   10968 	* c-pragma.c (init_pragma): Register "grainsize" pragma.
   10969 	* c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_GRAINSIZE.
   10970 
   10971 2014-08-29  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   10972 
   10973 	* c.opt (Wbuiltin-macro-redefined,Wdeprecated,Wendif-labels,
   10974 	Winvalid-pch,Wliteral-suffix,Wmissing-include-dirs,Wtrigraphs,
   10975 	Wundef): Use CPP, Var and Init.
   10976 	* c-opts.c (c_common_handle_option): Do not handle the above flags here.
   10977 
   10978 2014-08-29  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   10979 
   10980 	* c.opt (Wbuiltin-macro-redefined): Use CPP, Var and Init.
   10981 	* c-opts.c (c_common_handle_option): Do not handle here.
   10982 
   10983 2014-08-25  Jason Merrill  <jason (a] redhat.com>
   10984 
   10985 	* c.opt: Change -std=c++1y and -std=gnu++1y to be aliases for
   10986 	-std=c++14 and -std=gnu++14, rather than the reverse.
   10987 	* c-opts.c (c_common_handle_option): Change OPT_std_c__1y and
   10988 	OPT_std_gnu__1y to OPT_std_c__14 and OPT_std_gnu__14.
   10989 	* c-common.h (cxx_dialect): Remove cxx1y.
   10990 
   10991 2014-08-23  Edward Smith-Rowland  <3dw4rd (a] verizon.net>
   10992 
   10993 	* c-common.h (enum cxx_dialect): Add cxx14.
   10994 	* c-opts.c (set_std_cxx1y): Rename to set_std_cxx14; Use cxx14.
   10995 	* c-ubsan.c (ubsan_instrument_shift): Change comment and logic from
   10996 	cxx_dialect == cxx11 || cxx_dialect == cxx1y to cxx_dialect >= cxx11.
   10997 
   10998 2014-08-22  Jason Merrill  <jason (a] redhat.com>
   10999 
   11000 	* c.opt (std=gnu++17): Fix alias.
   11001 
   11002 2014-08-22  Marek Polacek  <polacek (a] redhat.com>
   11003 
   11004 	PR c++/62199
   11005 	* c-common.c (warn_logical_not_parentheses): Don't check LHS.  Don't
   11006 	check for vector types.  Drop LHS argument.
   11007 	* c-common.h (warn_logical_not_parentheses): Adjust.
   11008 
   11009 2014-08-22  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   11010 
   11011 	* c.opt (Wcomment): Use CPP, Var and LangEnabledBy.
   11012 	(Wmultichar): Likewise.
   11013 	(Wdate-time): Use C-family languages instead of Common. Use CPP
   11014 	and Var.
   11015 	* c-opts.c (c_common_handle_option): Do not handle the above
   11016 	options here.
   11017 	(sanitize_cpp_opts): Likewise.
   11018 
   11019 2014-08-21  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   11020 
   11021 	PR fortran/44054
   11022 	* c-opts.c: Include tree-diagnostics.h.
   11023 	(c_diagnostic_finalizer): New.
   11024 	(c_common_initialize_diagnostics): Use it.
   11025 
   11026 2014-08-20  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   11027 
   11028 	PR preprocessor/51303
   11029 	* c-common.c (struct reason_option_codes_t option_codes):
   11030 	Add CPP_W_MISSING_INCLUDE_DIRS. Sort alphabetically.
   11031 
   11032 2014-08-20  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   11033 
   11034 	PR c/60975
   11035 	PR c/53063
   11036 	* c.opt (Wvariadic-macros): Use CPP and LangEnabledBy.
   11037 	* c-opts.c (c_common_handle_option): Call cpp_handle_option_auto.
   11038 	(c_common_post_options): Call init_global_opts_from_cpp.
   11039 	(sanitize_cpp_opts): Do not handle Wvariadic-macros here.
   11040 
   11041 2014-08-19  Marek Polacek  <polacek (a] redhat.com>
   11042 
   11043 	PR c++/62153
   11044 	* c-common.c (maybe_warn_bool_compare): New function.
   11045 	* c-common.h (maybe_warn_bool_compare): Declare.
   11046 	* c.opt (Wbool-compare): New option.
   11047 
   11048 2014-08-19  Marek Polacek  <polacek (a] redhat.com>
   11049 
   11050 	* c.opt (Wc99-c11-compat): New option.
   11051 
   11052 2014-08-19  Marek Polacek  <polacek (a] redhat.com>
   11053 
   11054 	* c-opts.c (sanitize_cpp_opts): Make warn_long_long be set according
   11055 	to warn_c90_c99_compat.
   11056 	* c.opt (Wc90-c99-compat, Wdeclaration-after-statement): Initialize
   11057 	to -1.
   11058 
   11059 2014-08-19  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   11060 	    Steven Bosscher  <steven (a] gcc.gnu.org>
   11061 
   11062 	PR c/52952
   11063 	* c-format.c: Add extra_arg_loc and format_string_loc to struct
   11064 	format_check_results.
   11065 	(check_function_format): Use true and add comment for boolean
   11066 	argument.
   11067 	(finish_dollar_format_checking): Use explicit location when warning.
   11068 	(check_format_info): Likewise.
   11069 	(check_format_arg): Set extra_arg_loc and format_string_loc.
   11070 	(check_format_info_main): Use explicit location when warning.
   11071 	(check_format_types): Pass explicit location.
   11072 	(format_type_warning): Likewise.
   11073 
   11074 2014-08-15  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   11075 
   11076 	PR fortran/44054
   11077 	* c-format.c: Handle Fortran flags.
   11078 
   11079 2014-08-12  Igor Zamyatin  <igor.zamyatin (a] intel.com>
   11080 
   11081 	PR other/61962
   11082 	* array-notation-common.c (find_rank): Added handling for other
   11083 	types of references.
   11084 
   11085 2014-08-10  Marek Polacek  <polacek (a] redhat.com>
   11086 
   11087 	PR c/51849
   11088 	* c-opts.c (sanitize_cpp_opts): Pass warn_c90_c99_compat to libcpp.
   11089 	* c.opt (Wc90-c99-compat): Add option.
   11090 
   11091 2014-08-07  Trevor Saunders  <tsaunders (a] mozilla.com>
   11092 
   11093 	* c-gimplify.c, cilk.c: Remove includes of pointer-set.h.
   11094 
   11095 2014-08-03  Marek Polacek  <polacek (a] redhat.com>
   11096 
   11097 	* c-common.c (check_case_value): Add location_t parameter.  Use it.
   11098 	(c_add_case_label): Pass loc to check_case_value.
   11099 
   11100 2014-08-02  Trevor Saunders  <tsaunders (a] mozilla.com>
   11101 
   11102 	* cilk.c: Use hash_map instead of pointer_map.
   11103 
   11104 2014-08-02  Trevor Saunders  <tsaunders (a] mozilla.com>
   11105 
   11106 	* c-gimplify.c: Use hash_set instead of pointer_set.
   11107 
   11108 2014-08-01  Igor Zamyatin  <igor.zamyatin (a] intel.com>
   11109 
   11110 	PR middle-end/61455
   11111 	* array-notation-common.c (extract_array_notation_exprs): Handling
   11112 	of DECL_EXPR added.
   11113 
   11114 2014-08-01  Jakub Jelinek  <jakub (a] redhat.com>
   11115 
   11116 	* c-common.h (min_align_of_type): Removed prototype.
   11117 	* c-common.c (min_align_of_type): Removed.
   11118 	* c-ubsan.h (ubsan_maybe_instrument_reference,
   11119 	ubsan_maybe_instrument_member_call): New prototypes.
   11120 	* c-ubsan.c: Include stor-layout.h and builtins.h.
   11121 	(ubsan_maybe_instrument_reference_or_call,
   11122 	ubsan_maybe_instrument_reference, ubsan_maybe_instrument_call): New
   11123 	functions.
   11124 
   11125 2014-07-31  Marc Glisse  <marc.glisse (a] inria.fr>
   11126 
   11127 	PR c++/60517
   11128 	* c.opt (-Wreturn-local-addr): Move to common.opt.
   11129 
   11130 2014-07-30  Jason Merrill  <jason (a] redhat.com>
   11131 
   11132 	PR c++/61659
   11133 	PR c++/61687
   11134 	Revert:
   11135 	* c.opt (-fuse-all-virtuals): New.
   11136 
   11137 2014-07-30  Tom Tromey  <tromey (a] redhat.com>
   11138 
   11139 	PR c/59855
   11140 	* c.opt (Wdesignated-init): New option.
   11141 	* c-common.c (c_common_attribute_table): Add "designated_init".
   11142 	(handle_designated_init): New function.
   11143 
   11144 2014-07-24  Marek Polacek  <polacek (a] redhat.com>
   11145 
   11146 	PR c/57653
   11147 	* c-opts.c (c_finish_options): If -imacros is in effect, return.
   11148 
   11149 2014-07-16  Dodji Seketeli  <dodji (a] redhat.com>
   11150 
   11151 	PR preprocessor/60723 - missing system-ness marks for macro tokens
   11152 	* c-ppoutput.c (struct print::prev_was_system_token): New data
   11153 	member.
   11154 	(init_pp_output): Initialize it.
   11155 	(maybe_print_line_1, maybe_print_line, print_line_1, print_line)
   11156 	(do_line_change): Return a flag saying if a line marker was
   11157 	emitted or not.
   11158 	(scan_translation_unit): Detect if the system-ness of the token we
   11159 	are about to emit is different from the one of the previously
   11160 	emitted token.  If so, emit a line marker.  Avoid emitting useless
   11161 	adjacent line markers.  Avoid emitting line markers for tokens
   11162 	originating from the expansion of built-in macros.
   11163 	(scan_translation_unit_directives_only): Adjust.
   11164 
   11165 2014-07-15  Marek Polacek  <polacek (a] redhat.com>
   11166 
   11167 	* c-ubsan.c (ubsan_instrument_bounds): Don't instrument if
   11168 	TYPE_MAX_VALUE is NULL.
   11169 
   11170 2014-07-14  Jakub Jelinek  <jakub (a] redhat.com>
   11171 
   11172 	PR middle-end/61294
   11173 	* c.opt (Wmemset-transposed-args): New warning.
   11174 
   11175 2014-07-10  Jason Merrill  <jason (a] redhat.com>
   11176 
   11177 	PR c++/61659
   11178 	PR c++/61687
   11179 	* c.opt (-fuse-all-virtuals): New.
   11180 
   11181 2014-07-09  Richard Biener  <rguenther (a] suse.de>
   11182 
   11183 	PR c-family/61741
   11184 	* c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
   11185 	using unsigned arithmetic if overflow does not wrap instead of
   11186 	if overflow is undefined.
   11187 
   11188 2014-07-06  Marek Polacek  <polacek (a] redhat.com>
   11189 
   11190 	PR c/6940
   11191 	* c.opt (Wsizeof-array-argument): New option.
   11192 
   11193 2014-07-03  Jakub Jelinek  <jakub (a] redhat.com>
   11194 
   11195 	* c-ada-spec.c (dump_ada_nodes): Don't call qsort if
   11196 	comments->count <= 1, as comments->entries might be NULL.
   11197 
   11198 2014-07-01  Marek Polacek  <polacek (a] redhat.com>
   11199 
   11200 	* c.opt (Wint-conversion): New option.
   11201 
   11202 2014-07-01  Marek Polacek  <polacek (a] redhat.com>
   11203 
   11204 	PR c/58286
   11205 	* c.opt (Wincompatible-pointer-types): New option.
   11206 
   11207 2014-06-30  Paolo Carlini  <paolo.carlini (a] oracle.com>
   11208 
   11209 	PR c++/51400
   11210 	* c-common.c (handle_noreturn_attribute, handle_const_attribute):
   11211 	Do not discard TYPE_QUALS of type.
   11212 
   11213 2014-06-26  Jason Merrill  <jason (a] redhat.com>
   11214 
   11215 	* c-common.h (enum cxx_dialect): Add cxx1z.
   11216 	* c.opt (std=c++1z, std=c++17, std=gnu++1z, std=gnu++17): New.
   11217 	* c-opts.c (c_common_handle_option, set_std_cxx1z): Handle it.
   11218 
   11219 2014-06-26  Teresa Johnson  <tejohnson (a] google.com>
   11220 
   11221 	* c-common.h (get_dump_info): Declare.
   11222 	* c-gimplify.c (c_genericize): Use saved dump files.
   11223 	* c-opts.c (c_common_parse_file): Begin and end dumps
   11224 	once around parsing invocation.
   11225 	(get_dump_info): New function.
   11226 
   11227 2014-06-23  Marek Polacek  <polacek (a] redhat.com>
   11228 	    Andrew MacLeod  <amacleod (a] redhat.com>
   11229 
   11230 	PR c/61553
   11231 	* c-common.c (get_atomic_generic_size): Don't segfault if the
   11232 	type doesn't have a size.
   11233 
   11234 2014-06-20  Marek Polacek  <polacek (a] redhat.com>
   11235 
   11236 	* c-gimplify.c: Include "c-ubsan.h" and "pointer-set.h".
   11237 	(ubsan_walk_array_refs_r): New function.
   11238 	(c_genericize): Instrument array bounds.
   11239 	* c-ubsan.c: Include "internal-fn.h".
   11240 	(ubsan_instrument_division): Mark instrumented arrays as having
   11241 	side effects.  Adjust ubsan_type_descriptor call.
   11242 	(ubsan_instrument_shift): Likewise.
   11243 	(ubsan_instrument_vla): Adjust ubsan_type_descriptor call.
   11244 	(ubsan_instrument_bounds): New function.
   11245 	(ubsan_array_ref_instrumented_p): New function.
   11246 	(ubsan_maybe_instrument_array_ref): New function.
   11247 	* c-ubsan.h (ubsan_instrument_bounds): Declare.
   11248 	(ubsan_array_ref_instrumented_p): Declare.
   11249 	(ubsan_maybe_instrument_array_ref): Declare.
   11250 
   11251 2014-06-20  Hale Wang  <hale.wang (a] arm.com>
   11252 
   11253 	PR lto/61123
   11254 	* c.opt (fshort-enums): Add to LTO.
   11255 	* c.opt (fshort-wchar): Likewise.
   11256 
   11257 2014-06-16  Marek Polacek  <polacek (a] redhat.com>
   11258 
   11259 	PR c/60439
   11260 	* c.opt (Wswitch-bool): Add Var.
   11261 
   11262 2014-06-12  Jakub Jelinek  <jakub (a] redhat.com>
   11263 
   11264 	PR middle-end/61486
   11265 	* c-omp.c (c_omp_split_clauses): Don't crash on firstprivate in
   11266 	#pragma omp target teams or
   11267 	#pragma omp {,target }teams distribute simd.
   11268 
   11269 2014-06-12  Jason Merrill  <jason (a] redhat.com>
   11270 
   11271 	* c.opt (Wabi=, fabi-compat-version): New.
   11272 	* c-opts.c (c_common_handle_option): Handle -Wabi=.
   11273 	(c_common_post_options): Handle flag_abi_compat_version default.
   11274 	Disallow -fabi-compat-version=1.
   11275 	* c-common.h (abi_version_crosses): New.
   11276 
   11277 2014-06-11  Jan Hubicka  <hubicka (a] ucw.cz>
   11278 
   11279 	* c-common.c (handle_section_attribute): Update handling for
   11280 	section names that are no longer trees.
   11281 
   11282 2014-06-10  Jakub Jelinek  <jakub (a] redhat.com>
   11283 
   11284 	PR fortran/60928
   11285 	* c-pragma.c (omp_pragmas_simd): Move PRAGMA_OMP_TASK...
   11286 	(omp_pragmas): ... back here.
   11287 
   11288 2014-06-05  Marek Polacek  <polacek (a] redhat.com>
   11289 
   11290 	PR c/49706
   11291 	* c-common.c (warn_logical_not_parentheses): New function.
   11292 	* c-common.h (warn_logical_not_parentheses): Declare.
   11293 	* c.opt (Wlogical-not-parentheses): New option.
   11294 
   11295 2014-06-04  Marek Polacek  <polacek (a] redhat.com>
   11296 
   11297 	PR c/30020
   11298 	* c-common.c (check_case_bounds): Add location parameter.
   11299 	Use it.
   11300 	(c_add_case_label): Pass loc to check_case_bounds.
   11301 
   11302 2014-06-03  Marek Polacek  <polacek (a] redhat.com>
   11303 
   11304 	PR c/60439
   11305 	* c.opt (Wswitch-bool): New option.
   11306 
   11307 2014-05-22  Thomas Schwinge  <thomas (a] codesourcery.com>
   11308 
   11309 	* c-common.h (c_omp_sharing_predetermined, c_omp_remap_decl):
   11310 	Remove prototypes.
   11311 	(record_types_used_by_current_var_decl): Move prototype to where
   11312 	it belongs.
   11313 
   11314 	* c-common.c (DEF_FUNCTION_TYPE_0, DEF_FUNCTION_TYPE_6)
   11315 	(DEF_FUNCTION_TYPE_7, DEF_FUNCTION_TYPE_8)
   11316 	(DEF_FUNCTION_TYPE_VAR_5): Cosmetic fixes.
   11317 
   11318 2014-05-21  Richard Sandiford  <rsandifo (a] linux.vnet.ibm.com>
   11319 
   11320 	* c-common.h (CTI_VOID_ZERO, void_zero_node): Delete.
   11321 	* c-common.c (c_common_nodes_and_builtins): Don't initialize
   11322 	void_zero_node.
   11323 	* c-pretty-print.c (pp_c_void_constant): New function.
   11324 	(c_pretty_printer::constant, c_pretty_printer::primary_expression)
   11325 	(c_pretty_printer::expression): Handle VOID_CST.
   11326 	* cilk.c (extract_free_variables): Likewise.
   11327 	* c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift)
   11328 	(ubsan_instrument_vla): Use void_node instead of void_zero_node.
   11329 
   11330 2014-05-17  Trevor Saunders  <tsaunders (a] mozilla.com>
   11331 
   11332 	* c-common.h (sorted_fields_type): Remove variable_size GTY attribute.
   11333 	* c-pragma.c (push_alignment): Adjust.
   11334 	(handle_pragma_push_options): Likewise.
   11335 
   11336 2014-05-09  Marek Polacek  <polacek (a] redhat.com>
   11337 
   11338 	PR c/50459
   11339 	* c-common.c (check_user_alignment): Return -1 if alignment is error
   11340 	node.
   11341 	(handle_aligned_attribute): Don't call default_conversion on
   11342 	FUNCTION_DECLs.
   11343 	(handle_vector_size_attribute): Likewise.
   11344 	(handle_tm_wrap_attribute): Handle case when wrap_decl is error node.
   11345 	(handle_sentinel_attribute): Call default_conversion and allow even
   11346 	integral types as an argument.
   11347 
   11348 2014-05-08  Marek Polacek  <polacek (a] redhat.com>
   11349 
   11350 	PR c/61053
   11351 	* c-common.c (min_align_of_type): New function factored out from...
   11352 	(c_sizeof_or_alignof_type): ...here.
   11353 	* c-common.h (min_align_of_type): Declare.
   11354 
   11355 2014-05-08  Marek Polacek  <polacek (a] redhat.com>
   11356 
   11357 	PR c/61077
   11358 	* c-common.c (check_main_parameter_types): Warn for _Atomic-qualified
   11359 	parameter type of main.
   11360 
   11361 2014-05-07  DJ Delorie  <dj (a] redhat.com>
   11362 
   11363 	* c-cppbuiltin.c (print_bits_of_hex): New.
   11364 	(builtin_define_type_minmax): Print values using hex so as not to
   11365 	require a pre-computed list of string values.
   11366 
   11367 2014-05-06  Kenneth Zadeck  <zadeck (a] naturalbridge.com>
   11368 	    Mike Stump  <mikestump (a] comcast.net>
   11369 	    Richard Sandiford  <rdsandiford (a] googlemail.com>
   11370 
   11371 	* c-ada-spec.c: Include wide-int.h.
   11372 	(ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Remove.
   11373 	(dump_generic_ada_node): Use wide-int interfaces.
   11374 	* c-common.c: Include wide-int-print.h.
   11375 	(shorten_compare): Use wide-int interfaces and tree_int_cst_lt.
   11376 	(pointer_int_sum): Use wide-int interfaces.
   11377 	(c_common_nodes_and_builtins): Use make_int_cst.
   11378 	(match_case_to_enum_1): Use tree_fits_uhwi_p and tree_fits_shwi_p.
   11379 	(handle_alloc_size_attribute): Use wide-int interfaces.
   11380 	(get_nonnull_operand): Likewise.
   11381 	* c-format.c (get_constant): Use tree_fits_uhwi_p.
   11382 	* c-lex.c: Include wide-int.h.
   11383 	(narrowest_unsigned_type): Take a widest_int rather than two
   11384 	HOST_WIDE_INTs.
   11385 	(narrowest_signed_type): Likewise.
   11386 	(interpret_integer): Update accordingly.  Use wide-int interfaces.
   11387 	(lex_charconst): Use wide-int interfaces.
   11388 	* c-pretty-print.c: Include wide-int.h.
   11389 	(pp_c_integer_constant): Use wide-int interfaces.
   11390 	* cilk.c (declare_one_free_variable): Use tree_int_cst_lt instead of
   11391 	INT_CST_LT_UNSIGNED.
   11392 
   11393 2014-05-06  Richard Biener  <rguenther (a] suse.de>
   11394 
   11395 	* c-opts.c (c_common_post_options): For -freestanding,
   11396 	-fno-hosted and -fno-builtin disable pattern recognition
   11397 	if not enabled explicitely.
   11398 
   11399 2014-05-02  Marek Polacek  <polacek (a] redhat.com>
   11400 
   11401 	* c.opt (Wsizeof-pointer-memaccess): Describe option.
   11402 
   11403 2014-05-01  Marek Polacek  <polacek (a] redhat.com>
   11404 
   11405 	PR c/43245
   11406 	* c.opt (Wdiscarded-qualifiers): Add.
   11407 
   11408 2014-04-30  Marek Polacek  <polacek (a] redhat.com>
   11409 
   11410 	* c-ubsan.c (ubsan_instrument_division): Handle REAL_TYPEs.  Perform
   11411 	INT_MIN / -1 sanitization only for integer types.
   11412 
   11413 2014-04-25  Marek Polacek  <polacek (a] redhat.com>
   11414 
   11415 	PR c/18079
   11416 	* c-common.c (handle_noinline_attribute): Warn if the attribute
   11417 	conflicts with always_inline attribute.
   11418 	(handle_always_inline_attribute): Warn if the attribute conflicts
   11419 	with noinline attribute.
   11420 
   11421 2014-04-25  Marek Polacek  <polacek (a] redhat.com>
   11422 
   11423 	PR c/60156
   11424 	* c-common.c (check_main_parameter_types): Warn about variadic main.
   11425 
   11426 2014-04-24  Mike Stump  <mikestump (a] comcast.net>
   11427 
   11428 	* c.opt (Wshadow-ivar): Default to on.
   11429 
   11430 2014-04-24  Dimitris Papavasiliou  <dpapavas (a] gmail.com>
   11431 
   11432 	* c.opt (Wshadow-ivar, flocal-ivars, fivar-visibility): Add.
   11433 
   11434 2014-04-23  Marek Polacek  <polacek (a] redhat.com>
   11435 
   11436 	* c-common.c (handle_tm_wrap_attribute): Tweak error message.
   11437 
   11438 2014-04-22  Jakub Jelinek  <jakub (a] redhat.com>
   11439 
   11440 	PR sanitizer/60275
   11441 	* c-ubsan.c (ubsan_instrument_return): Return __builtin_trap ()
   11442 	if flag_sanitize_undefined_trap_on_error.
   11443 	(ubsan_instrument_division, ubsan_instrument_shift,
   11444 	ubsan_instrument_vla): Likewise.  Use __ubsan_handle_*_abort ()
   11445 	if !flag_sanitize_recover.
   11446 
   11447 2014-04-22  Marc Glisse  <marc.glisse (a] inria.fr>
   11448 
   11449 	PR libstdc++/43622
   11450 	* c-common.c (registered_builtin_types): Make non-static.
   11451 	* c-common.h (registered_builtin_types): Declare.
   11452 
   11453 2014-04-14  Richard Biener  <rguenther (a] suse.de>
   11454 	    Marc Glisse  <marc.glisse (a] inria.fr>
   11455 
   11456 	PR c/60819
   11457 	* c-common.c (convert_vector_to_pointer_for_subscript): Properly
   11458 	apply may-alias the scalar pointer type when applicable.
   11459 
   11460 2014-04-12  Igor Zamyatin  <igor.zamyatin (a] intel.com>
   11461 
   11462 	PR middle-end/60467
   11463 	* cilk.c (cilk_set_spawn_marker): Remove FUNCTION_DECL
   11464 	as possible argument for Cilk_spawn.
   11465 
   11466 2014-04-11  Tobias Burnus  <burnus (a] net-b.de>
   11467 
   11468 	PR c/60194
   11469 	* c.opt (Wformat-signedness): Add
   11470 	* c-format.c(check_format_types): Use it.
   11471 
   11472 2014-04-11  Jason Merrill  <jason (a] redhat.com>
   11473 
   11474 	PR c++/57926
   11475 	* c-common.c (sync_resolve_size, get_atomic_generic_size): Call
   11476 	default_conversion for an array argument.
   11477 
   11478 2014-04-08  Marek Polacek  <polacek (a] redhat.com>
   11479 
   11480 	PR sanitizer/60745
   11481 	* c-ubsan.c: Include asan.h.
   11482 	(ubsan_instrument_return): Call initialize_sanitizer_builtins.
   11483 
   11484 2014-04-03  Nathan Sidwell  <nathan (a] codesourcery.com>
   11485 
   11486 	* c.opt (Wnon-virtual-dtor): Auto set when Weffc++.
   11487 
   11488 2014-04-02  Marek Polacek  <polacek (a] redhat.com>
   11489 
   11490 	* c-common.h (c_expand_expr): Remove declaration.
   11491 
   11492 2014-03-28  Jakub Jelinek  <jakub (a] redhat.com>
   11493 
   11494 	PR c++/60689
   11495 	* c-common.c (add_atomic_size_parameter): When creating new
   11496 	params vector, push the size argument first.
   11497 
   11498 2014-03-26  Jakub Jelinek  <jakub (a] redhat.com>
   11499 
   11500 	* c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
   11501 	ubsan_instrument_vla, ubsan_instrument_return): Adjust
   11502 	ubsan_create_data callers.
   11503 
   11504 2014-03-22  Jakub Jelinek  <jakub (a] redhat.com>
   11505 
   11506 	PR debug/60603
   11507 	* c-opts.c (c_finish_options): Restore cb_file_change call to
   11508 	<built-in>.
   11509 
   11510 2014-03-13  Jakub Jelinek  <jakub (a] redhat.com>
   11511 
   11512 	PR middle-end/36282
   11513 	* c-pragma.c (apply_pragma_weak): Only look at
   11514 	TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl)) if
   11515 	DECL_ASSEMBLER_NAME_SET_P (decl).
   11516 	(maybe_apply_pending_pragma_weaks): Exit early if
   11517 	vec_safe_is_empty (pending_weaks) rather than only when
   11518 	!pending_weaks.
   11519 	(maybe_apply_pragma_weak): Likewise.  If !DECL_ASSEMBLER_NAME_SET_P,
   11520 	set assembler name back to NULL afterwards.
   11521 
   11522 2014-03-11  Jason Merrill  <jason (a] redhat.com>
   11523 
   11524 	* c.opt: Add -std=gnu++14.
   11525 
   11526 2014-03-11  Ian Bolton  <ian.bolton (a] arm.com>
   11527 
   11528 	* c-opts.c (c_common_post_options): Don't override
   11529 	-ffp-contract=fast if unsafe-math-optimizations is on.
   11530 
   11531 2014-03-08  Paulo Matos  <paulo (a] matos-sorge.com>
   11532 
   11533 	* c.opt: Enable LTO FE for fshort-double.
   11534 
   11535 2014-03-07  Jason Merrill  <jason (a] redhat.com>
   11536 
   11537 	* c.opt: Add -std=c++14.
   11538 
   11539 2014-03-06  Marek Polacek  <polacek (a] redhat.com>
   11540 
   11541 	PR c/60197
   11542 	* cilk.c (contains_cilk_spawn_stmt): New function.
   11543 	(contains_cilk_spawn_stmt_walker): Likewise.
   11544 	(recognize_spawn): Give error on invalid use of _Cilk_spawn.
   11545 	* c-common.h (contains_cilk_spawn_stmt): Add declaration.
   11546 
   11547 2014-03-03  Jakub Jelinek  <jakub (a] redhat.com>
   11548 
   11549 	* c-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_SIMD.
   11550 	(init_pragma): Call cpp_register_deferred_pragma for PRAGMA_CILK_SIMD
   11551 	even when flag_preprocess_only.
   11552 
   11553 2014-02-26  Jason Merrill  <jason (a] redhat.com>
   11554 
   11555 	PR c++/59231
   11556 	PR c++/11586
   11557 	* c-common.c (shorten_compare): Don't check
   11558 	c_inhibit_evaluation_warnings.
   11559 
   11560 2014-02-19  Jakub Jelinek  <jakub (a] redhat.com>
   11561 
   11562 	PR c/37743
   11563 	* c-common.c (c_common_nodes_and_builtins): When initializing
   11564 	c_uint{16,32,64}_type_node, also set corresponding
   11565 	uint{16,32,64}_type_node to the same value.
   11566 
   11567 	PR c++/60267
   11568 	* c-pragma.c (init_pragma): Don't call cpp_register_deferred_pragma
   11569 	for PRAGMA_IVDEP if flag_preprocess_only.
   11570 
   11571 2014-02-12  Jakub Jelinek  <jakub (a] redhat.com>
   11572 
   11573 	PR c/60101
   11574 	* c-common.c (merge_tlist): If copy is true, call new_tlist,
   11575 	if false, add ADD itself, rather than vice versa.
   11576 	(verify_tree): For COND_EXPR, don't call merge_tlist with non-zero
   11577 	copy.  For SAVE_EXPR, only call merge_tlist once.
   11578 
   11579 2014-02-08  Jakub Jelinek  <jakub (a] redhat.com>
   11580 
   11581 	PR middle-end/60092
   11582 	* c-common.c (handle_alloc_size_attribute): Use tree_fits_uhwi_p
   11583 	and tree_to_uhwi.
   11584 	(handle_alloc_align_attribute, handle_assume_aligned_attribute): New
   11585 	functions.
   11586 	(c_common_attribute_table): Add alloc_align and assume_aligned
   11587 	attributes.
   11588 
   11589 2014-02-06  Marek Polacek  <polacek (a] redhat.com>
   11590 
   11591 	PR c/60087
   11592 	* c-common.c (warn_for_sign_compare): Call warning_at with location
   11593 	instead of warning.
   11594 
   11595 2014-02-05  Marek Polacek  <polacek (a] redhat.com>
   11596 
   11597 	PR c/53123
   11598 	* c-omp.c (c_finish_omp_atomic): Remove unreachable return
   11599 	statement.
   11600 
   11601 2014-02-04  Marek Polacek  <polacek (a] redhat.com>
   11602 
   11603 	PR c/60036
   11604 	* c-common.c (conversion_warning): Unwrap C_MAYBE_CONST_EXPR and/or
   11605 	SAVE_EXPR.
   11606 
   11607 2014-02-03  Marc Glisse  <marc.glisse (a] inria.fr>
   11608 
   11609 	PR c++/53017
   11610 	PR c++/59211
   11611 	* c-common.c (handle_aligned_attribute, handle_alloc_size_attribute,
   11612 	handle_vector_size_attribute, handle_nonnull_attribute): Call
   11613 	default_conversion on the attribute argument.
   11614 	(handle_nonnull_attribute): Increment the argument number.
   11615 
   11616 2014-01-31  Marek Polacek  <polacek (a] redhat.com>
   11617 
   11618 	PR c/59963
   11619 	* c-common.c (add_atomic_size_parameter): Pass vNULL to
   11620 	build_function_call_vec.
   11621 	(resolve_overloaded_builtin): Likewise.
   11622 	* c-common.h (build_function_call_vec): Adjust declaration.
   11623 
   11624 2014-01-30  Marek Polacek  <polacek (a] redhat.com>
   11625 
   11626 	PR c/59940
   11627 	* c-common.h (unsafe_conversion_p): Adjust declaration.
   11628 	(warnings_for_convert_and_check): Likewise.
   11629 	(convert_and_check): Likewise.
   11630 	* c-common.c (unsafe_conversion_p): Add location parameter.  Call
   11631 	expansion_point_location_if_in_system_header on it.
   11632 	(warnings_for_convert_and_check): Add location parameter.  Call
   11633 	expansion_point_location_if_in_system_header on it.  Use it.
   11634 	(convert_and_check): Add location parameter.  Use it.
   11635 	(conversion_warning): Likewise.
   11636 	(c_add_case_label): Adjust convert_and_check calls.
   11637 	(scalar_to_vector): Adjust unsafe_conversion_p calls.
   11638 
   11639 2014-01-24  Balaji V. Iyer  <balaji.v.iyer (a] intel.com>
   11640 
   11641 	* c-common.c (c_define_builtins): Replaced flag_enable_cilkplus with
   11642 	flag_cilkplus.
   11643 	* c-pragma.c (init_pragma): Likewise.
   11644 	* c.opt: Likewise.
   11645 
   11646 2014-01-23  Marek Polacek  <polacek (a] redhat.com>
   11647 
   11648 	PR c/59846
   11649 	* c-common.c (shorten_compare): Add location_t parameter.
   11650 	* c-common.h (shorten_binary_op): Adjust declaration.
   11651 
   11652 2014-01-23  Marek Polacek  <polacek (a] redhat.com>
   11653 
   11654 	PR c/58346
   11655 	* c-common.c (pointer_to_zero_sized_aggr_p): New function.
   11656 	* c-common.h: Declare it.
   11657 
   11658 2014-01-20  Eric Botcazou  <ebotcazou (a] adacore.com>
   11659 
   11660 	* c-ada-spec.h (dump_ada_specs): Revert prototype change.
   11661 	* c-ada-spec.c (dump_ads): Likewise.
   11662 	(cpp_check): Likewise.
   11663 	(dump_ada_specs): Likewise.
   11664 
   11665 2014-01-15  Laurent Alfonsi  <laurent.alfonsi (a] st.com>
   11666 
   11667 	PR c++/49718
   11668 	* c-common.c (handle_no_instrument_function_attribute): Allow
   11669 	no_instrument_function attribute in class member
   11670 	definition/declaration.
   11671 
   11672 2014-01-15  Jakub Jelinek  <jakub (a] redhat.com>
   11673 
   11674 	PR c/58943
   11675 	* c-omp.c (c_finish_omp_atomic): Set in_late_binary_op around
   11676 	build_modify_expr with non-NOP_EXPR opcode.  Handle return from it
   11677 	being COMPOUND_EXPR.
   11678 	(c_finish_omp_for): Handle incr being COMPOUND_EXPR with first
   11679 	operand a SAVE_EXPR and second MODIFY_EXPR.
   11680 
   11681 2014-01-09  Jakub Jelinek  <jakub (a] redhat.com>
   11682 
   11683 	PR target/58115
   11684 	* c-pch.c (c_common_write_pch): Call
   11685 	prepare_target_option_nodes_for_pch.
   11686 
   11687 2014-01-02  Richard Sandiford  <rdsandiford (a] googlemail.com>
   11688 
   11689 	Update copyright years
   11690 
   11691 2014-01-02  Richard Sandiford  <rdsandiford (a] googlemail.com>
   11692 
   11693 	* array-notation-common.c, c-cilkplus.c: Use the standard form for
   11694 	the copyright notice.
   11695 
   11696 2013-12-28  Eric Botcazou  <ebotcazou (a] adacore.com>
   11697 
   11698 	* c-ada-spec.c (print_constructor): New function.
   11699 	(print_destructor): Retrieve the origin of the destructor.
   11700 	(print_ada_declaration): Revamp handling of constructors/destructors.
   11701 
   11702 2013-12-23  Stuart Hastings  <stuart (a] apple.com>
   11703 	    Bill Maddox  <maddox (a] google.com>
   11704 	    Jason Merrill  <jason (a] redhat.com>
   11705 
   11706 	* c.opt: Add -fdeclone-ctor-dtor.
   11707 	* c-opts.c (c_common_post_options): Default to on iff -Os.
   11708 
   11709 2013-12-18  Balaji V. Iyer  <balaji.v.iyer (a] intel.com>
   11710 
   11711 	* c-common.c (c_common_attribute_table): Added "cilk simd function"
   11712 	attribute.
   11713 	* c-pragma.h (enum pragma_cilk_clause): Remove.
   11714 	(enum pragma_omp_clause): Added the following fields:
   11715 	PRAGMA_CILK_CLAUSE_NOMASK, PRAGMA_CILK_CLAUSE_MASK,
   11716 	PRAGMA_CILK_CLAUSE_VECTORLENGTH, PRAGMA_CILK_CLAUSE_NONE,
   11717 	PRAGMA_CILK_CLAUSE_LINEAR, PRAGMA_CILK_CLAUSE_PRIVATE,
   11718 	PRAGMA_CILK_CLAUSE_FIRSTPRIVATE, PRAGMA_CILK_CLAUSE_LASTPRIVATE,
   11719 	PRAGMA_CILK_CLAUSE_UNIFORM.
   11720 
   11721 
   11722 2013-12-11  Balaji V. Iyer  <balaji.v.iyer (a] intel.com>
   11723 
   11724 	* cilk.c (cilk_outline): Made this function non-static.
   11725 	(gimplify_cilk_spawn): Removed pre_p and post_p arguments.
   11726 	(create_cilk_wrapper): Added a new parameter: a function pointer.
   11727 	(c_install_body_w_frame_cleanup): Remove
   11728 	(extract_free_variables): Added VEC_INIT_EXPR and CONSTRUCTOR case.
   11729 	* c-common.h (cilk_outline): New prototype.
   11730 	(gimplify_cilk_spawn): Removed two parameters.
   11731 	(cilk_install_body_with_frame_cleanup): New prototype.
   11732 	* c-gimplify.c (c_gimplify_expr): Added MODIFY_EXPR, CALL_EXPR and
   11733 	CILK_SPAWN_STMT case.
   11734 
   11735 2013-12-11  Bernd Schmidt  <bernds (a] codesourcery.com>
   11736 
   11737 	* c-common.c (c_fully_fold_internal): Handle ADDR_SPACE_CONVERT_EXPR.
   11738 
   11739 	* c-common.h (enum c_tree_index): Remove CTI_INT_ARRAY_TYPE.
   11740 	(int_array_type_node): Remove.
   11741 	* c-common.c (c_common_nodes_and_builtins): Don't build it.
   11742 
   11743 2013-12-05  Marek Polacek  <polacek (a] redhat.com>
   11744 
   11745 	PR c/52023
   11746 	* c-common.c (c_sizeof_or_alignof_type): Move a declaration into
   11747 	[ADJUST_FIELD_ALIGN].
   11748 
   11749 2013-12-04  Joseph Myers  <joseph (a] codesourcery.com>
   11750 
   11751 	PR c/52023
   11752 	* c-common.c (c_sizeof_or_alignof_type): Add parameter min_alignof
   11753 	and check field alignment if set.
   11754 	* c-common.h (c_sizeof_or_alignof_type): Update prototype.
   11755 	(c_sizeof, c_alignof): Update calls to c_sizeof_or_alignof_type.
   11756 
   11757 2013-12-04  Jakub Jelinek  <jakub (a] redhat.com>
   11758 	    Marek Polacek  <polacek (a] redhat.com>
   11759 
   11760 	* c-gimplify.c (c_gimplify_expr): If doing the integer-overflow
   11761 	sanitization, call unsigned_type_for only when !TYPE_OVERFLOW_WRAPS.
   11762 
   11763 2013-11-29   H.J. Lu  <hongjiu.lu (a] intel.com>
   11764 
   11765 	PR c/59309
   11766 	* cilk.c (gimplify_cilk_spawn): Properly handle function without
   11767 	arguments.
   11768 
   11769 2013-11-29  Jakub Jelinek  <jakub (a] redhat.com>
   11770 
   11771 	PR c/59280
   11772 	* c-common.c (get_priority): If TREE_VALUE (args) is IDENTIFIER_NODE,
   11773 	goto invalid.  If it is error_mark_node, don't issue further
   11774 	diagnostics.
   11775 
   11776 2013-11-28  Sergey Ostanevich  <sergos.gnu (a] gmail.com>
   11777 
   11778 	* c.opt (Wopenmp-simd): New.
   11779 
   11780 2013-11-22  Jakub Jelinek  <jakub (a] redhat.com>
   11781 
   11782 	* c-ubsan.h (ubsan_instrument_return): New prototype.
   11783 	* c-ubsan.c (ubsan_instrument_return): New function.
   11784 
   11785 2013-11-22  Andrew MacLeod  <amacleod (a] redhat.com>
   11786 
   11787 	* c-common.c: Add required include files from gimple.h.
   11788 	* c-gimplify.c: Likewise.
   11789 	* cilk.c: Likewise.
   11790 
   11791 2013-11-22  David Malcolm  <dmalcolm (a] redhat.com>
   11792 
   11793 	* c-common.c (unsafe_conversion_p): Remove use of
   11794 	EXPR_LOC_OR_HERE macro.
   11795 	(conversion_warning): Likewise.
   11796 	(warnings_for_convert_and_check): Likewise.
   11797 	(warn_for_collisions_1): Likewise.
   11798 	(shorten_compare): Likewise, and remove use of in_system_header
   11799 	macro, using the location from the former.
   11800 	* c-lex.c (dump_one_header): Remove use of input_filename macro.
   11801 	(cb_def_pragma): Remove use of in_system_header macro.
   11802 	(lex_string): Likewise.
   11803 	* c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
   11804 
   11805 2013-11-20  Kenneth Zadeck  <zadeck (a] naturalbridge.com>
   11806 	    Mike Stump  <mikestump (a] comcast.net>
   11807 	    Richard Sandiford  <rdsandiford (a] googlemail.com>
   11808 
   11809 	* c-ada-spec.c (is_simple_enum): Use tree_to_shwi and tree_to_uhwi
   11810 	instead of TREE_INT_CST_LOW, in cases where there is a protecting
   11811 	tree_fits_shwi_p or tree_fits_uhwi_p.
   11812 	(dump_generic_ada_node): Likewise.
   11813 	* c-format.c (check_format_arg): Likewise.
   11814 	* c-pretty-print.c (pp_c_integer_constant): Likewise.
   11815 
   11816 2013-11-20  Kenneth Zadeck  <zadeck (a] naturalbridge.com>
   11817 
   11818 	* c-common.c (check_function_arguments_recurse): Use tree_to_uhwi.
   11819 
   11820 2013-11-19  Joshua J Cogliati  <jrincayc (a] yahoo.com>
   11821 
   11822 	PR c/53001
   11823 	* c-common.c (unsafe_conversion_p): Make this function
   11824 	return an enumeration with more detail.
   11825 	(conversion_warning): Use the new return type of
   11826 	unsafe_conversion_p to separately warn either about conversions
   11827 	that lower floating point number precision or about the other
   11828 	kinds of conversions.
   11829 	* c-common.h (enum conversion_safety): New enumeration.
   11830 	(unsafe_conversion_p): switching return type to
   11831 	conversion_safety enumeration.
   11832 	* c.opt: Adding new warning -Wfloat-conversion and
   11833 	enabling it with -Wconversion.
   11834 
   11835 2013-11-19  Basile Starynkevitch  <basile (a] starynkevitch.net>
   11836 
   11837 	* c-opts.c: Include plugin.h.
   11838 	(cb_file_change): Invoke plugin event PLUGIN_INCLUDE_FILE.
   11839 
   11840 2013-11-19  Marek Polacek  <polacek (a] redhat.com>
   11841 
   11842 	* c-ubsan.c (ubsan_instrument_division): Adjust ubsan_create_data
   11843 	call.
   11844 	(ubsan_instrument_shift): Likewise.
   11845 	(ubsan_instrument_vla): Likewise.
   11846 
   11847 2013-11-18  Richard Sandiford  <rdsandiford (a] googlemail.com>
   11848 
   11849 	* c-common.c (convert_vector_to_pointer_for_subscript): Remove
   11850 	cast to unsigned type.
   11851 
   11852 2013-11-18  Richard Sandiford  <rdsandiford (a] googlemail.com>
   11853 
   11854 	* c-common.c (fold_offsetof_1): Use tree_to_uhwi rather than
   11855 	tree_low_cst.
   11856 	(complete_array_type): Update comment to refer to tree_to_[su]hwi
   11857 	rather than tree_low_cst.
   11858 
   11859 2013-11-18  Richard Sandiford  <rdsandiford (a] googlemail.com>
   11860 
   11861 	* c-common.c, c-cppbuiltin.c: Replace tree_low_cst (..., 1) with
   11862 	tree_to_uhwi throughout.
   11863 
   11864 2013-11-18  Richard Sandiford  <rdsandiford (a] googlemail.com>
   11865 
   11866 	* c-common.c, c-format.c, c-omp.c, c-pretty-print.c: Replace
   11867 	tree_low_cst (..., 0) with tree_to_shwi throughout.
   11868 
   11869 2013-11-18  Richard Sandiford  <rdsandiford (a] googlemail.com>
   11870 
   11871 	* c-ada-spec.c, c-common.c, c-pretty-print.c: Replace
   11872 	host_integerp (..., 1) with tree_fits_uhwi_p throughout.
   11873 
   11874 2013-11-18  Richard Sandiford  <rdsandiford (a] googlemail.com>
   11875 
   11876 	* c-ada-spec.c, c-common.c, c-format.c, c-pretty-print.c: Replace
   11877 	host_integerp (..., 0) with tree_fits_shwi_p throughout.
   11878 
   11879 2013-11-15  Aldy Hernandez  <aldyh (a] redhat.com>
   11880 
   11881 	* c-cilkplus.c: New file.
   11882 	* c-common.c (readonly_error): Add location argument.
   11883 	* c-common.h (readonly_error): Same.
   11884 	(c_finish_cilk_clauses): Protoize.
   11885 	(c_check_cilk_loop): Same.
   11886 	c-omp.c (c_finish_omp_for): Handle CILK_SIMD nodes.
   11887 	Do not fail on error_mark_node.
   11888 	Abstract increment canonicalization to here...
   11889 	(c_omp_for_incr_canonicalize_ptr): New.
   11890 	c-pragma.c (init_pragma): Register "simd" pragma.
   11891 	c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_SIMD.
   11892 	(enum pragma_cilk_clause): New.
   11893 
   11894 2013-11-15  Richard Sandiford  <rdsandiford (a] googlemail.com>
   11895 
   11896 	* c-pretty-print.c (pp_c_character_constant): Remove unnecessary
   11897 	wchar_type and host_integerp checks.
   11898 
   11899 2013-11-14  Andrew MacLeod  <amacleod (a] redhat.com>
   11900 
   11901 	* c-common.c: Likewise.
   11902 	* c-gimplify.c: Likewise.
   11903 	* cilk.c: Likewise.
   11904 
   11905 2013-11-14  Diego Novillo  <dnovillo (a] google.com>
   11906 
   11907 	* c-common.c: Include fold-const.h.
   11908 	Include stor-layout.h.
   11909 	Include calls.h.
   11910 	Include stringpool.h.
   11911 	Include attribs.h.
   11912 	Include varasm.h.
   11913 	Include trans-mem.h.
   11914 	* c-cppbuiltin.c: Include stor-layout.h.
   11915 	Include stringpool.h.
   11916 	* c-format.c: Include stringpool.h.
   11917 	* c-lex.c: Include stringpool.h.
   11918 	Include stor-layout.h.
   11919 	* c-pragma.c: Include stringpool.h.
   11920 	Include attribs.h.
   11921 	Include varasm.h.
   11922 	Include gcc-symtab.h.
   11923 	* c-pretty-print.c: Include stor-layout.h.
   11924 	Include attribs.h.
   11925 	* cilk.c: Include stringpool.h.
   11926 	Include calls.h.
   11927 
   11928 2013-11-13  Joseph Myers  <joseph (a] codesourcery.com>
   11929 
   11930 	* c-common.h (enum rid): Add RID_AUTO_TYPE.
   11931 	* c-common.c (c_common_reswords): Add __auto_type.
   11932 	(keyword_begins_type_specifier): Handle RID_AUTO_TYPE.
   11933 
   11934 2013-11-12  Andrew MacLeod  <amacleod (a] redhat.com>
   11935 
   11936 	* c-common.c: Include gimplify.h.
   11937 	* c-gimplify.c: Likewise.
   11938 	* cilk.c: Likewise.
   11939 	* c-omp.c: Include gimple-expr.h instead of gimple.h.
   11940 	* c-ubsan.c: Don't include gimple.h.
   11941 
   11942 2013-11-12  Joseph Myers  <joseph (a] codesourcery.com>
   11943 
   11944 	* c-common.c (c_common_reswords): Add _Thread_local.
   11945 
   11946 2013-11-09  Joseph Myers  <joseph (a] codesourcery.com>
   11947 
   11948 	* c-common.c (atomic_size_supported_p): New function.
   11949 	(resolve_overloaded_atomic_exchange)
   11950 	(resolve_overloaded_atomic_compare_exchange)
   11951 	(resolve_overloaded_atomic_load, resolve_overloaded_atomic_store):
   11952 	Use it instead of comparing size with a local list of sizes.
   11953 
   11954 2013-11-07  Andrew MacLeod  <amacleod (a] redhat.com>
   11955 	    Joseph Myers  <joseph (a] codesourcery.com>
   11956 
   11957 	* c-common.h (enum rid): Add RID_ATOMIC.
   11958 	* c-common.c (c_common_reswords): Add _Atomic.
   11959 	(sync_resolve_params): Use TYPE_MAIN_VARIANT on pointer argument.
   11960 	(keyword_is_type_qualifier): Accept RID_ATOMIC.
   11961 	* c-format.c (check_format_types): Check for extra _Atomic
   11962 	qualifiers in format argument.
   11963 	* c-pretty-print.c (pp_c_cv_qualifiers): Handle atomic qualifier.
   11964 	(pp_c_type_qualifier_list): Mention _Atomic in comment.
   11965 
   11966 2013-11-06  Tobias Burnus  <burnus (a] net-b.de>
   11967 
   11968 	* c-common.c (reason_option_codes_t): Add CPP_W_DATE_TIME.
   11969 
   11970 2013-11-06  Joseph Myers  <joseph (a] codesourcery.com>
   11971 
   11972 	* c-opts.c (c_common_post_options): Set -ffp-contract=off in C
   11973 	standards modes.
   11974 	* c-cppbuiltin.c (cpp_iec_559_value): Consider -ffp-contract=fast
   11975 	to mean lack of IEEE 754 support.
   11976 
   11977 2013-11-05  Tobias Burnus  <burnus (a] net-b.de>
   11978 
   11979 	* c.opt (-Wdate-time): New option
   11980 	* c-opts.c (sanitize_cpp_opts): Pass on to libcpp.
   11981 
   11982 2013-11-05  Joseph Myers  <joseph (a] codesourcery.com>
   11983 
   11984 	* c-cppbuiltin.c (cpp_iec_559_value): Test
   11985 	flag_excess_precision_cmdline not flag_excess_precision.
   11986 
   11987 2013-11-05  Tobias Burnus  <burnus (a] net-b.de>
   11988 
   11989 	* c.opt (fopenmp-simd): New option.
   11990 	* c-pragma.c (omp_pragmas): Move pragmas which can contain simd to ...
   11991 	(omp_pragmas): ... this new struct.
   11992 	(c_pp_lookup_pragma): Also walk omp_pragmas.
   11993 	(init_pragma): Init pragmas for -fopenmp-simd.
   11994 
   11995 2013-11-04  Marek Polacek  <polacek (a] redhat.com>
   11996 
   11997 	PR c++/58979
   11998 	* c-common.c (invalid_indirection_error): Handle RO_ARROW_STAR case.
   11999 
   12000 2013-11-04  Joseph Myers  <joseph (a] codesourcery.com>
   12001 
   12002 	* c-cppbuiltin.c (cpp_iec_559_value, cpp_iec_559_complex_value):
   12003 	New functions.
   12004 	(c_cpp_builtins): Define __GCC_IEC_559 and __GCC_IEC_559_COMPLEX.
   12005 
   12006 2013-11-04  Eric Botcazou  <ebotcazou (a] adacore.com>
   12007 
   12008 	* c-ada-spec.h (cpp_operation): Add IS_TRIVIAL.
   12009 	(dump_ada_specs): Adjust prototype of second callback.
   12010 	* c-ada-spec.c (cpp_check): New global variable.
   12011 	(dump_ada_nodes): Remove cpp_check parameter and do not pass it down.
   12012 	(print_generic_ada_decl): Likewise.
   12013 	(has_static_fields): Change return type to bool and add guard.
   12014 	(has_nontrivial_methods): New predicate.
   12015 	(is_tagged_type): Change return type to bool.
   12016 	(separate_class_package): Call has_nontrivial_methods.
   12017 	(pp_ada_tree_identifier): Minor tweaks.
   12018 	(dump_ada_function_declaration): Adjust calls to dump_generic_ada_node.
   12019 	(dump_ada_array_domains): Likewise.
   12020 	(dump_ada_array_type): Likewise.
   12021 	(dump_template_types): Remove cpp_check parameter and do not pass it to
   12022 	dump_generic_ada_node.
   12023 	(dump_ada_template): Likewise.
   12024 	(dump_generic_ada_node): Remove cpp_check parameter and do not pass it
   12025 	recursively.
   12026 	(print_ada_methods): Change return type to integer.  Remove cpp_check
   12027 	parameter and do not pass it down.
   12028 	(dump_nested_types): Remove cpp_check parameter and do not pass it to
   12029 	dump_generic_ada_node.
   12030 	(print_ada_declaration): Likewise.  Test RECORD_OR_UNION_TYPE_P before
   12031 	accessing methods.
   12032 	(print_ada_struct_decl): Remove cpp_check parameter and do not pass it
   12033 	down.  Use has_nontrivial_methods to recognize C++ classes.  Use return
   12034 	value of print_ada_methods.
   12035 	(dump_ads): Rename cpp_check parameter to check and adjust prototype.
   12036 	Set cpp_check to it before invoking dump_ada_nodes.
   12037 	(dump_ada_specs): Likewise.
   12038 
   12039 2013-11-03  Marek Polacek  <polacek (a] redhat.com>
   12040 
   12041 	* c-ubsan.c: Don't include hash-table.h.
   12042 	(ubsan_instrument_vla): New function.
   12043 	* c-ubsan.h: Declare it.
   12044 
   12045 2013-10-31  David Malcolm  <dmalcolm (a] redhat.com>
   12046 
   12047 	Automated part of renaming of symtab_node_base to symtab_node.
   12048 
   12049 	Patch autogenerated by rename_symtab.py from
   12050 	https://github.com/davidmalcolm/gcc-refactoring-scripts
   12051 	revision 58bb219cc090b2f4516a9297d868c245495ee622
   12052 
   12053 	* c-pragma.c (maybe_apply_pending_pragma_weaks): Rename
   12054 	symtab_node_base to symtab_node.
   12055 
   12056 2013-10-31  Edward Smith-Rowland  <3dw4rd (a] verizon.net>
   12057 
   12058 	Implement C++14 digit separators.
   12059 	* c-lex.c (interpret_float): Remove digit separators from scratch string
   12060 	before building real literal.
   12061 
   12062 2013-10-30  Jakub Jelinek  <jakub (a] redhat.com>
   12063 
   12064 	* cilk.c (create_cilk_helper_decl): Use HOST_WIDE_INT_PRINT_DEC.
   12065 
   12066 2013-10-29  Balaji V. Iyer  <balaji.v.iyer (a] intel.com>
   12067 
   12068 	* c-common.c (c_common_reswords[]): Added _Cilk_spawn and _Cilk_sync
   12069 	fields.
   12070 	(c_define_builtins): Called cilk_init_builtins if Cilk Plus is
   12071 	enabled.
   12072 	* c-common.h (enum rid): Added RID_CILK_SPAWN and RID_CILK_SYNC.
   12073 	(insert_cilk_frame): New prototype.
   12074 	(cilk_init_builtins): Likewise.
   12075 	(gimplify_cilk_spawn): Likewise.
   12076 	(c_cilk_install_body_w_frame_cleanup): Likewise.
   12077 	(cilk_detect_spawn_and_unwrap): Likewise.
   12078 	(cilk_set_spawn_marker): Likewise.
   12079 	(build_cilk_sync): Likewise.
   12080 	(build_cilk_spawn): Likewise.
   12081 	* cilk.c: New file.
   12082 
   12083 2013-10-29  David Malcolm  <dmalcolm (a] redhat.com>
   12084 
   12085 	Patch autogenerated by refactor_symtab.py from
   12086 	https://github.com/davidmalcolm/gcc-refactoring-scripts
   12087 	revision 58bb219cc090b2f4516a9297d868c245495ee622
   12088 
   12089 	* c-gimplify.c (c_genericize): Update for conversion of symtab types
   12090 	to a true class hierarchy.
   12091 	* c-pragma.c (maybe_apply_pending_pragma_weaks): Likewise.
   12092 
   12093 2013-10-27  Richard Sandiford  <rdsandiford (a] googlemail.com>
   12094 
   12095 	* c-lex.c (interpret_integer): Remove call to cpp_num_sign_extend.
   12096 
   12097 2013-10-26  Jeff Law  <law (a] redhat.com>
   12098 
   12099 	* c-common.c (c_define_builtins): Remove mudflap support.
   12100 	* c.opt: Ignore and warn for mudflap options.
   12101 
   12102 2013-10-24  Tobias Burnus  <burnus (a] net-b.de>
   12103 
   12104 	PR other/33426
   12105 	* c-pragma.c (init_pragma) Add #pragma ivdep handling.
   12106 	* c-pragma.h (pragma_kind): Add PRAGMA_IVDEP.
   12107 
   12108 2013-10-23  Jason Merrill  <jason (a] redhat.com>
   12109 
   12110 	* c-format.c (gcc_cxxdiag_char_table): Add %X.
   12111 
   12112 2013-10-11  Jakub Jelinek  <jakub (a] redhat.com>
   12113 
   12114 	* c-common.h (omp_clause_mask::operator !=): New method.
   12115 	* c-omp.c (c_omp_split_clauses): Use if ((mask & something) != 0)
   12116 	instead of if (mask & something) tests everywhere.
   12117 
   12118 	* c-cppbuiltin.c (c_cpp_builtins): Predefine _OPENMP to
   12119 	201307 instead of 201107.
   12120 	* c-common.c (DEF_FUNCTION_TYPE_8): Define.
   12121 	(c_common_attribute_table): Add "omp declare target" and
   12122 	"omp declare simd" attributes.
   12123 	(handle_omp_declare_target_attribute,
   12124 	handle_omp_declare_simd_attribute): New functions.
   12125 	* c-omp.c: Include c-pragma.h.
   12126 	(c_finish_omp_taskgroup): New function.
   12127 	(c_finish_omp_atomic): Add swapped argument, if true,
   12128 	build the operation first with rhs, lhs arguments and use NOP_EXPR
   12129 	build_modify_expr.
   12130 	(c_finish_omp_for): Add code argument, pass it down to make_code.
   12131 	(c_omp_split_clauses): New function.
   12132 	(c_split_parallel_clauses): Removed.
   12133 	(c_omp_declare_simd_clause_cmp, c_omp_declare_simd_clauses_to_numbers,
   12134 	c_omp_declare_simd_clauses_to_decls): New functions.
   12135 	* c-common.h (omp_clause_mask): New type.
   12136 	(OMP_CLAUSE_MASK_1): Define.
   12137 	(omp_clause_mask::omp_clause_mask, omp_clause_mask::operator &=,
   12138 	omp_clause_mask::operator |=, omp_clause_mask::operator ~,
   12139 	omp_clause_mask::operator |, omp_clause_mask::operator &,
   12140 	omp_clause_mask::operator <<, omp_clause_mask::operator >>,
   12141 	omp_clause_mask::operator ==): New methods.
   12142 	(enum c_omp_clause_split): New.
   12143 	(c_finish_omp_taskgroup): New prototype.
   12144 	(c_finish_omp_atomic): Add swapped argument.
   12145 	(c_finish_omp_for): Add code argument.
   12146 	(c_omp_split_clauses): New prototype.
   12147 	(c_split_parallel_clauses): Removed.
   12148 	(c_omp_declare_simd_clauses_to_numbers,
   12149 	c_omp_declare_simd_clauses_to_decls): New prototypes.
   12150 	* c-pragma.c (omp_pragmas): Add new OpenMP 4.0 constructs.
   12151 	* c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_CANCEL,
   12152 	PRAGMA_OMP_CANCELLATION_POINT, PRAGMA_OMP_DECLARE_REDUCTION,
   12153 	PRAGMA_OMP_DISTRIBUTE, PRAGMA_OMP_END_DECLARE_TARGET, PRAGMA_OMP_SIMD,
   12154 	PRAGMA_OMP_TARGET, PRAGMA_OMP_TASKGROUP and PRAGMA_OMP_TEAMS.
   12155 	Remove PRAGMA_OMP_PARALLEL_FOR and PRAGMA_OMP_PARALLEL_SECTIONS.
   12156 	(enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_ALIGNED,
   12157 	PRAGMA_OMP_CLAUSE_DEPEND, PRAGMA_OMP_CLAUSE_DEVICE,
   12158 	PRAGMA_OMP_CLAUSE_DIST_SCHEDULE, PRAGMA_OMP_CLAUSE_FOR,
   12159 	PRAGMA_OMP_CLAUSE_FROM, PRAGMA_OMP_CLAUSE_INBRANCH,
   12160 	PRAGMA_OMP_CLAUSE_LINEAR, PRAGMA_OMP_CLAUSE_MAP,
   12161 	PRAGMA_OMP_CLAUSE_NOTINBRANCH, PRAGMA_OMP_CLAUSE_NUM_TEAMS,
   12162 	PRAGMA_OMP_CLAUSE_PARALLEL, PRAGMA_OMP_CLAUSE_PROC_BIND,
   12163 	PRAGMA_OMP_CLAUSE_SAFELEN, PRAGMA_OMP_CLAUSE_SECTIONS,
   12164 	PRAGMA_OMP_CLAUSE_SIMDLEN, PRAGMA_OMP_CLAUSE_TASKGROUP,
   12165 	PRAGMA_OMP_CLAUSE_THREAD_LIMIT, PRAGMA_OMP_CLAUSE_TO and
   12166 	PRAGMA_OMP_CLAUSE_UNIFORM.
   12167 
   12168 2013-10-09  Marc Glisse  <marc.glisse (a] inria.fr>
   12169 
   12170 	PR tree-optimization/20318
   12171 	* c-common.c (handle_returns_nonnull_attribute): New function.
   12172 	(c_common_attribute_table): Add returns_nonnull.
   12173 
   12174 2013-10-03  Marc Glisse  <marc.glisse (a] inria.fr>
   12175 
   12176 	PR c++/19476
   12177 	* c.opt (fcheck-new): Move to common.opt.
   12178 
   12179 2013-09-25  Marek Polacek  <polacek (a] redhat.com>
   12180 	    Jakub Jelinek  <jakub (a] redhat.com>
   12181 
   12182 	PR sanitizer/58413
   12183 	* c-ubsan.c (ubsan_instrument_shift): Don't instrument
   12184 	an expression if we can prove it is correct.
   12185 	(ubsan_instrument_division): Likewise.  Remove unnecessary
   12186 	check.
   12187 
   12188 2013-09-18  Marek Polacek  <polacek (a] redhat.com>
   12189 
   12190 	PR sanitizer/58411
   12191 	* c-common.c (handle_no_sanitize_undefined_attribute): New function.
   12192 	Declare it.
   12193 	(struct attribute_spec c_common_att): Add no_sanitize_undefined.
   12194 
   12195 2013-09-14  Iain Sandoe  <iain (a] codesourcery.com>
   12196 
   12197 	PR target/48094
   12198 	* c.opt (fgnu-runtime, fnext-runtime, fobjc-abi-version,
   12199 	fobjc-gc, freplace-objc-classes): Accept for LTO.
   12200 
   12201 2013-09-13  Jacek Caban  <jacek (a] codeweavers.com>
   12202 
   12203 	* c-target.def: New hook
   12204 
   12205 2013-09-09  Paolo Carlini  <paolo.carlini (a] oracle.com>
   12206 
   12207 	PR c++/43452
   12208 	* c.opt (Wdelete-incomplete): Add.
   12209 
   12210 2013-09-08  Joern Rennecke  <joern.rennecke (a] embecosm.com>
   12211 
   12212 	* c-common.c (same_scalar_type_ignoring_signedness): Delete.
   12213 	(vector_types_compatible_elements_p): New function.
   12214 	* c-common.h: (same_scalar_type_ignoring_signedness): Delete
   12215 	declaration.
   12216 	(vector_types_compatible_elements_p): Declare.
   12217 
   12218 2013-09-04  Gabriel Dos Reis  <gdr (a] integrable-solutions.net>
   12219 
   12220 	* c-pretty-print.h (c_pretty_printer::simple_type_specifier): Now
   12221 	a virtual member function.
   12222 	(pp_simple_type_specifier): Remove.
   12223 	(pp_c_type_specifier): Likewise.
   12224 	* c-pretty-print.c (c_pretty_printer::simple_type_specifier):
   12225 	Rename from pp_c_type_specifier.  Adjust.
   12226 	(c_pretty_printer::c_pretty_printer): Do not assign to
   12227 	simple_type_specifier.
   12228 
   12229 2013-09-03  Gabriel Dos Reis  <gdr (a] integrable-solutions.net>
   12230 
   12231 	* c-pretty-print.h (c_pretty_printer::type_id): Now a virtual
   12232 	member function.
   12233 	(c_pretty_printer::storage_class_specifier): Likewise.
   12234 	(c_pretty_printer::initializer): Likewise.
   12235 	(pp_declaration): Remove.
   12236 	(pp_declaration_specifiers): Likewise.
   12237 	(pp_abstract_declarator): Likewise.
   12238 	(pp_declarator): Likewise.
   12239 	(pp_type_id): Likewise.
   12240 	(pp_statement): Likewise.
   12241 	(pp_constant): Likewise.
   12242 	(pp_id_expression): Likewise.
   12243 	(pp_primary_expression): Likewise.
   12244 	(pp_unary_expression): Likewise.
   12245 	(pp_multiplicative_expression): Likewise.
   12246 	(pp_conditional_expression): Likewise.
   12247 	(pp_assignment_expression): Likewise.
   12248 	(pp_expression): Likewise.
   12249 	(pp_c_type_id): Likewise.
   12250 	(pp_c_storage_class_specifier): Likewise.
   12251 	* c-pretty-print.c (pp_c_type_cast): Tidy.
   12252 	(pp_c_pointer): Likewise.
   12253 	(pp_c_type_specifier): Likewise.
   12254 	(pp_c_parameter_type_list): Likewise.
   12255 	(pp_c_function_definition): Likewise.
   12256 	(pp_c_init_declarator): Likewise.
   12257 	(pp_c_initializer_list): Likewise.
   12258 	(pp_c_constructor_elts): Likewise.
   12259 	(c_pretty_printer::direct_abstract_declarator): Likewise.
   12260 	(c_pretty_printer::declaration_specifiers): Likewise.
   12261 	(c_pretty_printer::primary_expression): Likewise.
   12262 	(c_pretty_printer::postfix_expression): Likewise.
   12263 	(c_pretty_printer::type_id): Rename from pp_c_type_id.
   12264 	(c_pretty_printer::storage_class_specifier): Rename from
   12265 	pp_c_storage_class_specifier.
   12266 	(c_pretty_printer::initializer): Rename from pp_c_initializer.
   12267 	(c_pretty_printer::c_pretty_printer): Do not assign to type_id,
   12268 	storage_class_specifier, initializer, offset_list, flags.
   12269 
   12270 2013-08-30  Marek Polacek  <polacek (a] redhat.com>
   12271 
   12272 	* c-ubsan.c: New file.
   12273 	* c-ubsan.h: New file.
   12274 
   12275 2013-08-30  Gabriel Dos Reis  <gdr (a] integrable-solutions.net>
   12276 
   12277 	* c-pretty-print.h (c_pretty_printer::declaration): Now a virtual
   12278 	member function.
   12279 	(c_pretty_printer::declaration_specifiers): Likewise.
   12280 	(c_pretty_printer::declarator): Likewise.
   12281 	(c_pretty_printer::abstract_declarator): Likewise.
   12282 	(c_pretty_printer::direct_abstract_declarator): Likewise.
   12283 	(c_pretty_printer::direct_declarator): Likewise.
   12284 	(c_pretty_printer::function_specifier): Likewise.
   12285 	(pp_declaration): Adjust.
   12286 	(pp_declaration_specifiers): Likewise.
   12287 	(pp_abstract_declarator): Likewise.
   12288 	(pp_direct_declarator): Likewise.
   12289 	(pp_function_specifier): Likewise.
   12290 	(pp_direct_abstract_declarator): Remove as unused.
   12291 	(pp_c_declaration): Remove.
   12292 	(pp_c_declaration_specifiers): Likewise.
   12293 	(pp_c_declarator): Likewise.
   12294 	(pp_c_direct_declarator): Likewise.
   12295 	(pp_c_function_specifier): Likewise.
   12296 	(pp_c_direct_abstract_declarator): Likewise.
   12297 	* c-pretty-print.c (c_pretty_printer::abstract_declarator): Rename
   12298 	from pp_c_abstract_declarator.  Adjust.
   12299 	(c_pretty_printer::direct_abstract_declarator): Rename from
   12300 	pp_c_direct_abstract_declarator.  Adjust.
   12301 	(c_pretty_printer::function_specifier): Rename from
   12302 	pp_c_function_specifier.  Adjust.
   12303 	(c_pretty_printer::declaration_specifiers): Rename from
   12304 	pp_c_declaration_specifiers.  Adjust.
   12305 	(c_pretty_printer::direct_declarator): Rename from
   12306 	pp_c_direct_declarator.  Adjust.
   12307 	(c_pretty_printer::declarator): Rename from pp_c_declarator.  Adjust.
   12308 	(c_pretty_printer::declaration): Rename from pp_c_declaration.  Adjust.
   12309 	(c_pretty_printer::c_pretty_printer): Do not assign to
   12310 	declaration, declaration_specifiers, declarator,
   12311 	direct_declarator, direct_abstract_declarator, function_specifier.
   12312 
   12313 2013-08-26  Gabriel Dos Reis  <gdre (a] integrable-solutions.net>
   12314 
   12315 	* c-pretty-print.h (c_pretty_printer::unary_expression): Now a
   12316 	virtual member function.
   12317 	(c_pretty_printer::multiplicative_expression): Likewise.
   12318 	(c_pretty_printer::conditional_expression): Likewise.
   12319 	(c_pretty_printer::assignment_expression): Likewise.
   12320 	(c_pretty_printer::expression): Likewise.
   12321 	(pp_unary_expression): Adjust.
   12322 	(pp_multiplicative_expression): Likewise.
   12323 	(pp_assignment_expression): Likewise.
   12324 	(pp_conditional_expression): Likewise.
   12325 	(pp_expression): Likewise.
   12326 	* c-pretty-print.c (c_pretty_printer::unary_expression): Rename
   12327 	from pp_c_unary_expression.  Adjust.
   12328 	(c_pretty_printer::multiplicative_expression): Rename from
   12329 	pp_c_multiplicative_expression.  Adjust.
   12330 	(c_pretty_printer::conditional_expression): Rename from
   12331 	pp_c_conditional_expression.  Adjust.
   12332 	(c_pretty_printer::assignment_expression): Rename from
   12333 	pp_c_assignment_expression.  Adjust.
   12334 	(c_pretty_printer::expression): Rename from pp_c_expression.  Adjust.
   12335 	(c_pretty_printer::c_pretty_printer): Do not assign to
   12336 	unary_expression, multiplicative_expression,
   12337 	conditional_expression, expression.
   12338 
   12339 2013-08-25  Gabriel Dos Reis  <gdr (a] integrable-solutions.net>
   12340 
   12341 	* c-pretty-print.h (c_pretty_printer::postfix_expression): Now a
   12342 	virtual member function.
   12343 	(pp_postfix_expression): Adjust.
   12344 	(pp_c_postfix_expression): Remove.
   12345 	* c-pretty-print.c (c_pretty_printer::postfix_expression): Rename
   12346 	from pp_c_postfix_expression.  Adjust.
   12347 	(c_pretty_printer::c_pretty_printer): Do not assign to
   12348 	postfix_expression.
   12349 
   12350 2013-08-25  Gabriel Dos Reis  <gdr (a] integrable-solutions.net>
   12351 
   12352 	* c-pretty-print.h (c_pretty_printer::primary_expression): Now a
   12353 	virtua member function.
   12354 	(pp_primary_expression): Adjust.
   12355 	(pp_c_primary_expression): Remove.
   12356 	* c-pretty-print.c (c_pretty_printer::primary_expression): Rename
   12357 	from pp_c_primary_expression.  Adjust.
   12358 	(pp_c_initializer_list): Use pp_primary_expression.
   12359 	(c_pretty_printer::c_pretty_printer): Do not assign to
   12360 	primary_expression.
   12361 
   12362 2013-08-25  Gabriel Dos Reis  <gdr (a] integrable-solutions.net>
   12363 
   12364 	* c-pretty-print.h (c_pretty_printer::translate_string): Declare.
   12365 	* c-pretty-print.c (M_): Remove.
   12366 	(c_pretty_printer::translate_string): Define.
   12367 	(pp_c_type_specifier): Use it.
   12368 	(pp_c_primary_expression): Likewise.
   12369 	(pp_c_expression): Likewise.
   12370 
   12371 2013-08-24  Gabriel Dos Reis  <gdr (a] integrable-solutions.net>
   12372 
   12373 	* c-pretty-print.h (c_pretty_printer::id_expression): Now a
   12374 	virtual function.
   12375 	(pp_c_id_expression): Remove.
   12376 	(pp_id_expression): Adjust.
   12377 	* c-pretty-print.c (c_pretty_printer::id_expression): Rename from
   12378 	pp_c_id_expression.  Adjust.
   12379 	(pp_c_postfix_expression): Use pp_id_expression.
   12380 	(c_pretty_printer::c_pretty_printer): Do not assign to id_expression.
   12381 
   12382 2013-08-24  Gabriel Dos Reis  <gdr (a] integrable-solutions.net>
   12383 
   12384 	* c-pretty-print.h (c_pretty_printer::constant): Now a virtual
   12385 	member function.
   12386 	(pp_constant): Adjust.
   12387 	(pp_c_constant): Remove.
   12388 	* c-pretty-print.c (c_pretty_printer::constant): Rename from
   12389 	pp_c_constant.  Adjust.
   12390 	(pp_c_constant)
   12391 	(pp_c_primary_expression): Call pp_constant in lieu of pp_c_constant.
   12392 	(c_pretty_printer::c_pretty_printer): Remove assignment to constant.
   12393 
   12394 2013-08-22  Gabriel Dos Reis  <gdr (a] integrable-solutions.net>
   12395 
   12396 	* c-pretty-print.h (pp_c_pretty_printer_init): Remove.
   12397 	(c_pretty_printer::c_pretty_printer): Declare.
   12398 	* c-pretty-print.c (pretty_printer::c_pretty_printer): Rename from
   12399 	c_pretty_printer_init.  Adjust.
   12400 	(print_c_tree): Do not call c_pretty_printer_init.
   12401 	* c-ada-spec.c (dump_ads): Remove call to pp_construct.
   12402 
   12403 2013-08-09  Arnaud Charlet  <charlet (a] adacore.com>
   12404 
   12405 	* c-ada-spec.c (print_ada_declaration): Prevent accessing null asm name
   12406 
   12407 2013-08-05  Paolo Carlini  <paolo.carlini (a] oracle.com>
   12408 
   12409 	PR c++/58080
   12410 	* c-common.c (pointer_int_sum): Add bool parameter.
   12411 	* c-common.h (pointer_int_sum): Adjust declaration.
   12412 
   12413 2013-08-05  Gabriel Dos Reis  <gdr (a] integrable-solutions.net>
   12414 
   12415 	* c-pretty-print.c (print_c_tree): Simplify.  Use non-static local
   12416 	c_pretty_printer variable.
   12417 
   12418 2013-08-04  Gabriel Dos Reis  <gdr (a] integrable-solutions.net>
   12419 
   12420 	* c-pretty-print.h (c_pretty_printer): Derive from pretty_printer.
   12421 	(pp_base): Remove.
   12422 	(pp_c_base): Likewise.  Adjust users.
   12423 	* c-pretty-print.c (pp_c_maybe_whitespace): Adjust.
   12424 	(pp_c_whitespace): Do not call pp_base.
   12425 	(pp_c_left_paren): Likewise.
   12426 	(pp_c_right_paren): Likewise.
   12427 	(pp_c_left_brace): Likewise.
   12428 	(pp_c_right_brace): Likewise.
   12429 	(pp_c_left_bracket): Likewise.
   12430 	(pp_c_right_bracket): Likewise.
   12431 	(pp_c_dot): Likewise.
   12432 	(pp_c_ampersand): Likewise.
   12433 	(pp_c_star): Likewise.
   12434 	(pp_c_arrow): Likewise.
   12435 	(pp_c_semicolon): Likewise.
   12436 	(pp_c_complement): Likewise.
   12437 	(pp_c_exclamation): Likewise.
   12438 	(pp_c_direct_declarator): Likewise.
   12439 	(pp_c_ws_string): Likewise.
   12440 	(pp_c_identifier): Likewise.
   12441 	(pp_c_statement): Likewise.
   12442 	(print_c_tree): Likewise.
   12443 
   12444 2013-08-04  Ed Smith-Rowland  <3dw4rd (a] verizon.net>
   12445 
   12446 	PR c++/58072
   12447 	* c-common.c (c_parse_error): Catch user-defined literal tokens and
   12448 	provide useful error strings.
   12449 
   12450 2013-08-03  Gabriel Dos Reis  <gdr (a] integrable-solutions.net>
   12451 
   12452 	* c-ada-spec.c (pp_ada_tree_identifier): Use specialized pretty
   12453 	printer functions instead of pp_string or operators and punctuators.
   12454 	(dump_generic_ada_node): Likewise.
   12455 	* c-pretty-print.c (pp_c_type_specifier): Likewise.
   12456 	(pp_c_relational_expression): Likewise.
   12457 	(pp_c_logical_or_expression): Likewise.
   12458 
   12459 2013-08-03  Gabriel Dos Reis  <gdr (a] integrable-solutions.net>
   12460 
   12461 	* c-ada-spec.c (print_ada_macros): Use specialized pretty printer
   12462 	functions instead of pp_character.
   12463 	(pp_ada_tree_identifier): Likewise.
   12464 	(dump_ada_double_name): Likewise.
   12465 	(dump_ada_function_declaration): Likewise.
   12466 	(dump_ada_array_domains): Likewise.
   12467 	(dump_template_types): Likewise.
   12468 	(dump_generic_ada_node): Likewise.
   12469 	(print_ada_declaration): Likewise.
   12470 	(print_ada_struct_decl): Likewise.
   12471 	* c-pretty-print.c (pp_c_integer_constant): Likewise.
   12472 
   12473 2013-07-23  Tom Tromey  <tromey (a] redhat.com>
   12474 
   12475 	* c-common.h (enum rid) <RID_GENERIC>: New constant.
   12476 	* c-common.c (c_common_reswords): Add _Generic.
   12477 
   12478 2013-07-21   Ondej Blka  <neleai (a] seznam.cz>
   12479 
   12480 	* c-common.c: Fix typos.
   12481 	* c-common.h: Likewise.
   12482 
   12483 2013-07-13  Lubos Lunak  <l.lunak (a] suse.cz>
   12484 
   12485 	PR c++/55203
   12486 	* c-common.c (c_common_attribute_table): Add warn_unused.
   12487 	(handle_warn_unused_attribute): New.
   12488 
   12489 2013-07-10  Jakub Jelinek  <jakub (a] redhat.com>
   12490 
   12491 	* c-ppoutput.c (scan_translation_unit): Call account_for_newlines
   12492 	for all CPP_TOKEN_FLD_STR tokens, not just CPP_COMMENT.
   12493 
   12494 2013-07-10  Paolo Carlini  <paolo.carlini (a] oracle.com>
   12495 
   12496 	PR c++/57869
   12497 	* c.opt: Add Wconditionally-supported.
   12498 
   12499 2013-07-08  Graham Stott  <graham.stott (a] btinternet.com>
   12500 
   12501 	* array-notation-common.c (length_mismatch_in_expr_p): Delete
   12502 	unused variables l_length and l_node.
   12503 
   12504 2013-07-04  Joern Rennecke  <joern.rennecke (a] embecosm.com>
   12505 
   12506 	PR c/57821
   12507 	* c-common.c (complete_array_type): Delay folding first index
   12508 	like other indices.  When folding, check for index overflow.
   12509 
   12510 2013-06-27  Marc Glisse  <marc.glisse (a] inria.fr>
   12511 
   12512 	PR c++/57509
   12513 	* c-common.h (c_build_vec_perm_expr): New complain argument.
   12514 	* c-common.c (c_build_vec_perm_expr): Likewise.
   12515 	Use save_expr also in C++.
   12516 
   12517 2013-06-22  Gabriel Dos Reis  <gdr (a] integrable-solutions.net>
   12518 
   12519 	* c-common.c (c_common_nodes_and_builtins): Use cxx11 in lieu of cxx0x.
   12520 	* c-cppbuiltin.c (c_cpp_builtins): Likewise.
   12521 	* c-opts.c (c_common_post_options): Likewise.
   12522 
   12523 2013-06-21  Balaji V. Iyer  <balaji.v.iyer (a] intel.com>
   12524 
   12525 	* array-notation-common.c (length_mismatch_in_expr): Changed the
   12526 	parameter type's from a dynamic array to a vec_tree.  Also removed
   12527 	the size parameters.
   12528 	* c-common.h (length_mismatch_in_expr_p): Fixed prototype's as per
   12529 	the change above.
   12530 
   12531 2013-06-21  Balaji V. Iyer  <balaji.v.iyer (a] intel.com>
   12532 
   12533 	* c-common.h (struct cilkplus_an_parts): New structure.
   12534 	(struct cilkplus_an_loop_parts): Likewise.
   12535 	(cilkplus_extract_an_triplets): New prototype.
   12536 	(fix_sec_implicit_args): Likewise.
   12537 	* array-notation-common.c (cilkplus_extract_an_triplets): New function.
   12538 	(fix_sec_implicit_args): Likewise.
   12539 
   12540 2013-06-20  Balaji V. Iyer  <balaji.v.iyer (a] intel.com>
   12541 
   12542 	* array-notation-common.c (find_inv_trees): Removed an unwanted
   12543 	typecasting.
   12544 	* c-common.h (struct inv_list::additional_tcodes): Changed type from
   12545 	enum rid to enum tree_code.
   12546 
   12547 2013-06-11  Jan Hubicka  <jh (a] suse.cz>
   12548 
   12549 	* c-common.c (handle_alias_ifunc_attribute): Do not set
   12550 	DECL_EXTERNAL for weakref variables.
   12551 	* c-pragma.c (handle_pragma_weak): Make sure aliases
   12552 	are not declared as external.
   12553 
   12554 2013-06-07  Balaji V. Iyer  <balaji.v.iyer (a] intel.com>
   12555 
   12556 	* array-notation-common.c (length_mismatch_in_expr_p): Moved this
   12557 	function from c/c-array-notation.c.
   12558 	(is_cilkplus_reduce_builtin): Likewise.
   12559 	(find_rank): Likewise.
   12560 	(extract_array_notation_exprs): Likewise.
   12561 	(replace_array_notations): Likewise.
   12562 	(find_inv_trees): Likewise.
   12563 	(replace_inv_trees): Likewise.
   12564 	(contains_array_notation_expr): Likewise.
   12565 	(find_correct_array_notation_type): Likewise.
   12566 	* c-common.h (struct inv_list): Moved this struct from the file
   12567 	c/c-array-notation.c and added a new field called additional tcodes.
   12568 	(length_mismatch_in_expr_p): New prototype.
   12569 	(is_cilkplus_reduce_builtin): Likewise.
   12570 	(find_rank): Likewise.
   12571 	(extract_array_notation_exprs): Likewise.
   12572 	(replace_array_notation): Likewise.
   12573 	(find_inv_trees): Likewise.
   12574 	(replace_inv_trees): Likewise.
   12575 	(find_correct_array_notation_type): Likewise.
   12576 
   12577 2013-05-28  Balaji V. Iyer  <balaji.v.iyer (a] intel.com>
   12578 
   12579 	* c-common.c (c_define_builtins): When cilkplus is enabled, the
   12580 	function array_notation_init_builtins is called.
   12581 	(c_common_init_ts): Added ARRAY_NOTATION_REF as typed.
   12582 	* c-common.def (ARRAY_NOTATION_REF): New tree.
   12583 	* c-common.h (build_array_notation_expr): New function declaration.
   12584 	(build_array_notation_ref): Likewise.
   12585 	(extract_sec_implicit_index_arg): New extern declaration.
   12586 	(is_sec_implicit_index_fn): Likewise.
   12587 	(ARRAY_NOTATION_CHECK): New define.
   12588 	(ARRAY_NOTATION_ARRAY): Likewise.
   12589 	(ARRAY_NOTATION_START): Likewise.
   12590 	(ARRAY_NOTATION_LENGTH): Likewise.
   12591 	(ARRAY_NOTATION_STRIDE): Likewise.
   12592 	* c-pretty-print.c (pp_c_postifix_expression): Added a new case for
   12593 	ARRAY_NOTATION_REF.
   12594 	(pp_c_expression): Likewise.
   12595 	* c.opt (flag_enable_cilkplus): New flag.
   12596 	* array-notation-common.c: New file.
   12597 
   12598 2013-05-14  Jakub Jelinek  <jakub (a] redhat.com>
   12599 
   12600 	PR c++/57274
   12601 	* c-common.c (verify_tree): Don't recurse into SIZEOF_EXPR.
   12602 
   12603 2013-05-10  Marc Glisse  <marc.glisse (a] inria.fr>
   12604 
   12605 	* c-common.c (vector_types_convertible_p): No TYPE_PRECISION for
   12606 	vectors.
   12607 
   12608 2013-05-07  Han Shen  <shenhan (a] google.com>
   12609 
   12610 	* c-cppbuiltin.c (c_cpp_builtins): Added "__SSP_STRONG__=3".
   12611 
   12612 2013-04-29  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj (a] atmel.com>
   12613 
   12614 	* c-common.c (check_user_alignment): Emit error for negative values.
   12615 
   12616 2013-04-24  Paolo Carlini  <paolo.carlini (a] oracle.com>
   12617 
   12618 	* c-opts.c (set_std_cxx11): Use CLK_CXX1Y and CLK_GNUCXX1Y.
   12619 
   12620 2013-04-24  Paolo Carlini  <paolo.carlini (a] oracle.com>
   12621 
   12622 	* c-cppbuiltin.c (c_cpp_builtins): Do not define
   12623 	__GXX_EXPERIMENTAL_CXX1Y__.
   12624 
   12625 2013-04-24  Paolo Carlini  <paolo.carlini (a] oracle.com>
   12626 	    Manuel Lopez-Ibanez  <manu (a] gcc.gnu.org>
   12627 
   12628 	* c.opt ([Wpointer-arith]): Enabled by -Wpedantic, as documented.
   12629 	* c-common.c (pointer_int_sum): Change -Wpointer-arith pedwarns
   12630 	to simply use OPT_Wpointer_arith.
   12631 	(c_sizeof_or_alignof_type): Likewise.
   12632 
   12633 2013-04-24  Paolo Carlini  <paolo.carlini (a] oracle.com>
   12634 
   12635 	* c-cppbuiltin.c (c_cpp_builtins): Define __GXX_EXPERIMENTAL_CXX1Y__.
   12636 
   12637 2013-04-12  Jakub Jelinek  <jakub (a] redhat.com>
   12638 
   12639 	* c-format.c (gcc_diag_char_table, gcc_tdiag_char_table,
   12640 	gcc_cdiag_char_table, gcc_cxxdiag_char_table): Add %r and %R format
   12641 	specifiers.
   12642 
   12643 2013-04-07  Steven Bosscher  <steven (a] gcc.gnu.org>
   12644 
   12645 	* c-pragma.c (add_to_renaming_pragma_list): Fix leading comment.
   12646 
   12647 2013-04-03  Paolo Carlini  <paolo.carlini (a] oracle.com>
   12648 
   12649 	* c-common.c (pointer_int_sum): Remove dead code.
   12650 
   12651 2013-03-09  Richard Sandiford  <rdsandiford (a] googlemail.com>
   12652 
   12653 	PR middle-end/56524
   12654 	* c-common.c (handle_optimize_attribute): Don't call
   12655 	save_optabs_if_changed.
   12656 
   12657 2013-03-05  Jakub Jelinek  <jakub (a] redhat.com>
   12658 
   12659 	PR middle-end/56461
   12660 	* c-pch.c (pch_init): Free target_validity at the end.
   12661 
   12662 2013-03-04  Jakub Jelinek  <jakub (a] redhat.com>
   12663 
   12664 	* c-pretty-print.c (pp_c_pretty_printer_init): Clear pp->flags.
   12665 
   12666 2013-02-28  Konstantin Serebryany  <konstantin.s.serebryany (a] gmail.com>
   12667 	    Jakub Jelinek  <jakub (a] redhat.com>
   12668 
   12669 	PR sanitizer/56454
   12670 	* c-common.c (handle_no_sanitize_address_attribute): New function.
   12671 	(c_common_attribute_table): Add no_sanitize_address attribute.
   12672 	(handle_no_address_safety_analysis_attribute): Add
   12673 	no_sanitize_address attribute, not no_address_safety_analysis
   12674 	attribute.
   12675 
   12676 2013-02-18  Aldy Hernandez  <aldyh (a] redhat.com>
   12677 
   12678 	PR target/52555
   12679 	* c-common.c (handle_optimize_attribute): Call
   12680 	save_optabs_if_changed.
   12681 
   12682 2013-02-18  Jakub Jelinek  <jakub (a] redhat.com>
   12683 	    Steven Bosscher  <steven (a] gcc.gnu.org>
   12684 
   12685 	PR pch/54117
   12686 	* c-opts.c (c_common_post_options): If debug info is enabled
   12687 	and non-dwarf*, refuse to load PCH files and when writing PCH
   12688 	file warn.
   12689 
   12690 2013-02-05  Jakub Jelinek  <jakub (a] redhat.com>
   12691 
   12692 	PR middle-end/56167
   12693 	* c-common.c (handle_error_attribute): Fix condition.
   12694 
   12695 2013-01-30  Jakub Jelinek  <jakub (a] redhat.com>
   12696 
   12697 	PR c++/55742
   12698 	* c-common.c (handle_target_attribute): Revert 2012-12-26 change.
   12699 
   12700 2013-01-18  Jason Merrill  <jason (a] redhat.com>
   12701 
   12702 	PR target/54908
   12703 	* c.opt (-fextern-tls-init): New.
   12704 	* c-opts.c (c_common_post_options): Handle it.
   12705 
   12706 2013-01-09  Jakub Jelinek  <jakub (a] redhat.com>
   12707 
   12708 	PR c/48418
   12709 	* c-common.c (c_fully_fold_internal): Warn for LSHIFT_EXPR and
   12710 	RSHIFT_EXPR, if orig_op1 isn't INTEGER_CST, op1 is INTEGER_CST
   12711 	and is either negative or bigger or equal to type precision
   12712 	of the first operand.
   12713 
   12714 2012-12-03  Marek Polacek  <polacek (a] redhat.com>
   12715 
   12716 	PR c/55570
   12717 	* c-common.c (check_user_alignment): Swap order of tests,
   12718 	check TREE_CODE first.
   12719 
   12720 2012-11-29  Ed Smith-Rowland  <3dw4rd (a] verizon.net>
   12721 
   12722 	PR c++/52654
   12723 	* c-common.h (overflow_type): New enum.
   12724 	(build_userdef_literal): Add overflow_type argument.
   12725 	(tree_userdef_literal): Add overflow_type.
   12726 	(USERDEF_LITERAL_OVERFLOW): New access macro.
   12727 	* c-common.c (build_userdef_literal): Add overflow_type
   12728 	argument.
   12729 	* c-lex.c (c_lex_with_flags): Add overflow_type to
   12730 	build_userdef_literal calls.
   12731 	(interpret_integer, interpret_float): Add overflow_type argument.
   12732 
   12733 2012-11-28  Richard Biener  <rguenther (a] suse.de>
   12734 
   12735 	PR c/35634
   12736 	* c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
   12737 	here and use a type with proper overflow behavior for types that would
   12738 	need to be promoted for the arithmetic.
   12739 
   12740 2012-11-23  Jakub Jelinek  <jakub (a] redhat.com>
   12741 
   12742 	PR sanitizer/55435
   12743 	* c-common.c (handle_no_address_safety_analysis_attribute): New
   12744 	function.
   12745 	(c_common_attribute_table): Add no_address_safety_analysis.
   12746 
   12747 2012-11-16  Simon Baldwin  <simonb (a] google.com>
   12748 
   12749 	* c.opt: Add f[no-]canonical-system-headers.
   12750 	* c-opts.c (c_common_handle_option): Handle
   12751 	OPT_fcanonical_system_headers.
   12752 
   12753 2012-11-09  Ed Smith-Rowland  <3dw4rd (a] verizon.net>
   12754 
   12755 	PR c++/54413
   12756 	* c-opts.c (c_common_handle_option): Set new flags.
   12757 	* c.opt: Describe new flags.
   12758 
   12759 2012-11-09  Jason Merrill  <jason (a] redhat.com>
   12760 
   12761 	* c.opt (Wabi-tag): New.
   12762 
   12763 2012-11-09  Andi Kleen  <ak (a] linux.intel.com>
   12764 
   12765 	PR 55139
   12766 	* c-common.c (get_atomic_generic_size): Mask with
   12767 	MEMMODEL_MASK
   12768 
   12769 2012-11-07  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   12770 
   12771 	PR c/53063
   12772 	* c.opt (Wformat): Make it Alias Wformat=1.
   12773 	(Wformat-contains-nul,Wformat-extra-args,Wformat-nonliteral,
   12774 	Wformat-security,Wformat-y2k,Wformat-zero-length): Use
   12775 	LangEnabledBy.
   12776 	(Wformat=): RejectNegative. Use LangEnabledBy.
   12777 	(Wnonnull): Use LangEnabledBy.
   12778 	* c-opts.c (c_common_handle_option): Do not handle Wformat here.
   12779 	* c-format.c (set_Wformat): Delete.
   12780 	(decode_format_attr): Replace OPT_Wformat with OPT_Wformat_.
   12781 	(maybe_read_dollar_number): Likewise.
   12782 	(avoid_dollar_number): Likewise.
   12783 	(finish_dollar_format_checking): Likewise.
   12784 	(check_format_info): Likewise.
   12785 	(check_format_info_main): Likewise.
   12786 	(check_format_types): Likewise.
   12787 	(format_type_warning): Likewise.
   12788 	* c-common.c (int): Likewise.
   12789 	(check_function_sentinel): Likewise.
   12790 	* c-common.h (warn_format,set_Wformat): Do not declare here.
   12791 
   12792 2012-11-07  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   12793 
   12794 	PR c/53063
   12795 	* c.opt(Warray-bounds,Wdelete-non-virtual-dtor,Wenum-compare,
   12796 	Wmain,Woverlength-strings, Wunknown-pragmas,Wunused-macros):
   12797 	Use LangEnabledBy.
   12798 	(Wswitch,Wswitch-default,Wswitch-enum): Likewise. Move here from
   12799 	common.opt.
   12800 	(Wvariadic-macros): Init(1).
   12801 	* c-opts.c (c_common_handle_option): Do not handle them
   12802 	explicitly.
   12803 	(c_common_post_options): Likewise.
   12804 	(sanitize_cpp_opts): warn_unused_macros is now
   12805 	cpp_warn_unused_macros.
   12806 	(push_command_line_include): Likewise.
   12807 	* c-common.c (warn_unknown_pragmas): Do not define.
   12808 	* c-common.h (warn_unknown_pragmas): Do not declare.
   12809 
   12810 2012-11-07  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   12811 
   12812 	PR c/51294
   12813 	* c-common.c (conversion_warning): Handle conditional expressions.
   12814 
   12815 2012-10-29  Jonathan Wakely  <jwakely.gcc (a] gmail.com>
   12816 
   12817 	PR c++/54930
   12818 	* c.opt (Wreturn_local_addr): Define new option.
   12819 
   12820 2012-10-25  Jason Merrill  <jason (a] redhat.com>
   12821 
   12822 	* c.opt (Wvirtual-move-assign): New.
   12823 
   12824 	* c.opt (Winherited-variadic-ctor): New.
   12825 
   12826 2012-10-25  Marc Glisse  <marc.glisse (a] inria.fr>
   12827 
   12828 	PR c++/54427
   12829 	* c-common.c (scalar_to_vector): Handle VEC_COND_EXPR.
   12830 
   12831 2012-10-23  Joseph Myers  <joseph (a] codesourcery.com>
   12832 
   12833 	* c-common.h (pch_cpp_save_state): Declare.
   12834 	* c-target.def (c_preinclude): New hook.
   12835 	* c-opts.c (done_preinclude): New.
   12836 	(push_command_line_include): Handle default preincluded header.
   12837 	(cb_file_change): Call pch_cpp_save_state when calling
   12838 	push_command_line_include.
   12839 	* c-pch.c (pch_ready_to_save_cpp_state, pch_cpp_state_saved)
   12840 	(pch_cpp_save_state): New.
   12841 	(pch_init): Call pch_cpp_save_state conditionally, instead of
   12842 	calling cpp_save_state.
   12843 
   12844 2012-10-20  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   12845 
   12846 	PR c/53063
   12847 	PR c/40989
   12848 	* c.opt (Waddress,Wchar-subscripts,Wsign-conversion,Wimplicit,
   12849 	Wimplicit-function-declaration,Wimplicit-int,Wsizeof-pointer-memaccess,
   12850 	Wnarrowing,Wparentheses,Wpointer-sign,Wreturn-type,Wsequence-point,
   12851 	Wsign-compare,Wuninitialized,Wmaybe-uninitialized,Wunused,
   12852 	Wvolatile-register-var): Add LangEnabledBy or EnabledBy.
   12853 	* c-opts.c (c_common_handle_option): Remove explicit handling from
   12854 	here.
   12855 	(c_common_post_options): Likewise.
   12856 
   12857 2012-10-18  Eric Botcazou  <ebotcazou (a] adacore.com>
   12858 
   12859 	* c-ada-spec.c (LOCATION_COL): Delete.
   12860 	(compare_location): New function.
   12861 	(compare_node): Use it.
   12862 	(compare_comment): Likewise.
   12863 
   12864 2012-10-16  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   12865 
   12866 	PR c/53063
   12867 	PR c/40989
   12868 	* c.opt (Wstrict-aliasing=,Wstrict-overflow=): Use LangEnabledBy.
   12869 	* c-opts.c (c_common_handle_option): Do not set them here. Add
   12870 	comment.
   12871 	(c_common_post_options): Likewise.
   12872 
   12873 2012-10-16  Eric Botcazou  <ebotcazou (a] adacore.com>
   12874 
   12875 	* c-ada-spec.c (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Define.
   12876 	(dump_generic_ada_node) <INTEGER_CST>: Deal with sizetype specially.
   12877 	Remove POINTER_TYPE handling, add large unsigned handling and use
   12878 	ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX for big numbers.
   12879 
   12880 2012-10-12  Jakub Jelinek  <jakub (a] redhat.com>
   12881 
   12882 	PR c/54381
   12883 	* c-common.h (sizeof_pointer_memaccess_warning): Adjust prototype.
   12884 	* c-common.c (sizeof_pointer_memaccess_warning): Take array of 3
   12885 	locs and array of 3 trees instead of just single loc and single
   12886 	sizeof_arg tree.  Handle __builtin___*_chk builtins too, and
   12887 	also stpncpy, bcopy, bcmp, bzero, snprintf and vsnprintf builtins.
   12888 	For *cmp* builtins that take two sources strings report warnings
   12889 	about first and second source, not about destination and source.
   12890 
   12891 2012-10-12  Marc Glisse  <marc.glisse (a] inria.fr>
   12892 
   12893 	PR c++/53055
   12894 	* c-common.h (enum ref_operator) [RO_ARROW_STAR]: New.
   12895 
   12896 2012-10-11  Eric Botcazou  <ebotcazou (a] adacore.com>
   12897 
   12898 	* c-ada-spec.c (dump_ada_template): Bail out for template declarations
   12899 	declaring something coming from another file.
   12900 
   12901 2012-10-10  Arnaud Charlet  <charlet (a] adacore.com>
   12902 
   12903 	PR ada/54845
   12904 	* c-ada-spec.c (print_ada_struct_decl): Increase buf size.
   12905 
   12906 2012-10-09  Paolo Carlini  <paolo.carlini (a] oracle.com>
   12907 
   12908 	PR c++/54194
   12909 	* c-common.c (warn_about_parentheses): Add location_t parameter;
   12910 	use EXPR_LOC_OR_LOC.
   12911 	* c-common.h: Update declaration.
   12912 
   12913 2012-10-09  Marc Glisse  <marc.glisse (a] inria.fr>
   12914 
   12915 	PR c++/54427
   12916 	* c-common.c (scalar_to_vector): Moved from c-typeck.c. Support
   12917 	more operations. Make error messages optional.
   12918 	* c-common.h (enum stv_conv): Moved from c-typeck.c.
   12919 	(scalar_to_vector): Declare.
   12920 
   12921 2012-10-08  Jason Merrill  <jason (a] redhat.com>
   12922 
   12923 	* c-common.c (c_common_reswords): Add thread_local.
   12924 
   12925 2012-10-08  Dodji Seketeli  <dodji (a] redhat.com>
   12926 
   12927 	PR c++/53528 C++11 attribute support
   12928 	* c-common.h (bitfield_p, cxx_fundamental_alignment_p): Declare
   12929 	new functions.
   12930 	* c-common.c (check_cxx_fundamental_alignment_constraints): New
   12931 	static function.
   12932 	(handle_aligned_attribute): In choose strictest alignment
   12933 	among many.  Use new check_cxx_fundamental_alignment_constraints.
   12934 	(handle_transparent_union_attribute): In c++11 attribute syntax,
   12935 	don't look through typedefs.
   12936 
   12937 2012-10-04  Arnaud Charlet  <charlet (a] adacore.com>
   12938 
   12939 	* c-ada-spec.c (print_ada_declaration): Remove handling of TDF_RAW.
   12940 	* c.opt (-fdump-ada-spec, -fdump-ada-spec-slim): Move switch definition
   12941 	out of dumpfile.h.
   12942 
   12943 2012-09-25  Dehao Chen  <dehao (a] google.com>
   12944 
   12945 	PR middle-end/54645
   12946 	* c-pch.c (c_common_read_pch): Rebuild the location_adhoc_data
   12947 	map when read in the pch.
   12948 
   12949 2012-09-18  Arnaud Charlet  <charlet (a] adacore.com>
   12950 
   12951 	* c-ada-spec.c: Style fixes.
   12952 
   12953 2012-09-18  Thomas Quinot  <quinot (a] adacore.com>
   12954 
   12955 	* c.opt (-fada-spec-parent): Define new command line switch.
   12956 	* c-ada-spec.c (get_ada_package): When -fada-spec-parent
   12957 	is specified, generate binding spec as a child of the specified unit.
   12958 
   12959 2012-09-13  Paolo Carlini  <paolo.carlini (a] oracle.com>
   12960 	    Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   12961 
   12962 	PR c++/53210
   12963 	* c.opt ([Winit-self]): Enabled by -Wall in C++.
   12964 
   12965 2012-08-23  Arnaud Charlet  <charlet (a] adacore.com>
   12966 
   12967 	* c-ada-spec.c (dump_generic_ada_node): Fix handling of name_only
   12968 	for pointers, and add missing Convention C pragma.
   12969 	(print_ada_struct_decl): Add missing aliased keyword.
   12970 	(dump_ads): Add pragma Ada_2005 and Style_Checks (Off).
   12971 
   12972 2012-08-17  Jakub Jelinek  <jakub (a] redhat.com>
   12973 
   12974 	* c-common.c (sizeof_pointer_memaccess_warning): New function.
   12975 	* c.opt (-Wsizeof-pointer-memaccess): Add new option.
   12976 	* c-opts.c (c_common_handle_option): Enable it for -Wall.
   12977 	* c-common.h (sizeof_pointer_memaccess_warning): Add prototype.
   12978 	* c-common.def (SIZEOF_EXPR): Moved here from cp-tree.def.
   12979 
   12980 2012-08-10  Richard Guenther  <rguenther (a] suse.de>
   12981 
   12982 	* c-pretty-print.c (pp_c_expression): Handle anonymous SSA names.
   12983 
   12984 2012-08-07  Steven Bosscher  <steven (a] gcc.gnu.org>
   12985 
   12986 	* c-pretty-print.c (pp_c_function_definition): Use pp_newline_and_flush
   12987 	instead of separate pp_newline and pp_flush.
   12988 	(print_c_tree): Likewise.
   12989 
   12990 2012-07-26  Richard Henderson  <rth (a] redhat.com>
   12991 
   12992 	* c-common.c (handle_hot_attribute): Allow labels.
   12993 	(handle_cold_attribute): Likewise.
   12994 
   12995 2012-07-20  Jakub Jelinek  <jakub (a] redhat.com>
   12996 
   12997 	PR c++/28656
   12998 	* c-common.c (check_function_nonnull): Handle multiple nonnull
   12999 	attributes properly.
   13000 
   13001 2012-07-16  Steven Bosscher  <steven (a] gcc.gnu.org>
   13002 
   13003 	* c-gimplify.c: Include dumpfile.h instead of tree-dump.h.
   13004 	* c-ada-spec.c: Likewise.
   13005 	* c-dump.c (dump_stmt): Move to cp/dump.c, the only user.
   13006 
   13007 2012-07-14  Steven Bosscher  <steven (a] gcc.gnu.org>
   13008 
   13009 	* c-pch.c (CHECK_NO_ASM_OUT_DURING_PCH): Do not define.
   13010 	Remove code conditional on it.
   13011 
   13012 2012-07-11  Steven Bosscher  <steven (a] gcc.gnu.org>
   13013 
   13014 	* c-gimplify.c: Do not include basic-block.h.
   13015 	* c-common.c: Do not include linfuncs.h.
   13016 
   13017 2012-07-08  Steven Bosscher  <steven (a] gcc.gnu.org>
   13018 
   13019 	* c-common.h: Include tree.h.
   13020 
   13021 2012-07-02  Jason Merrill  <jason (a] redhat.com>
   13022 
   13023 	PR c++/53524
   13024 	* c-common.c (get_priority): Call default_conversion.
   13025 
   13026 2012-07-01  Uros Bizjak  <ubizjak (a] gmail.com>
   13027 
   13028 	* c-pch.c (c_common_write_pch): Remove unused variables.
   13029 
   13030 2012-06-29  Steven Bosscher  <steven (a] gcc.gnu.org>
   13031 
   13032 	* cppspec.c: Moved from gcc/ to here.
   13033 
   13034 2012-06-27  Kai Tietz  <ktietz (a] redhat.com>
   13035 
   13036 	PR preprocessor/37215
   13037 	* c-ppoutput.c (preprocess_file): Check for nonempty buffer.
   13038 
   13039 2012-06-21  Steven Bosscher  <steven (a] gcc.gnu.org>
   13040 
   13041 	* c-common.h (c_common_print_pch_checksum): Remove.
   13042 	* c-pch.c: Do not include output.h.
   13043 	(CHECK_NO_ASM_OUT_DURING_PCH): Define and add FIXME.
   13044 	(asm_out_file): Define iff CHECK_NO_ASM_OUT_DURING_PCH isdefined.
   13045 	(asm_file_startpos): Define iff CHECK_NO_ASM_OUT_DURING_PCH is defined.
   13046 	(struct c_pch_header): Remove.
   13047 	(get_ident): Update gpch version.
   13048 	(pch_init): Do not print executable_checksum to asm_out_file.
   13049 	Do not fail if there is no asm_out_file to read back from.  Set
   13050 	asm_file_startpos only if CHECK_NO_ASM_OUT_DURING_PCH is defined.
   13051 	(c_common_write_pch): Verify that nothing was written to asm_out_file
   13052 	since pch_init was called.  Do not write a c_pch_header, and do not
   13053 	copy from asm_out_file to the PCH.
   13054 	(c_common_read_pch): Do not read a c_pch_header, and do not restore
   13055 	the content of asm_out_file from the PCH.
   13056 	(c_common_print_pch_checksum): Remove.
   13057 	* c-opts.c (c_common_init): Print out executable_checksum directly.
   13058 
   13059 2012-06-19  Steven Bosscher  <steven (a] gcc.gnu.org>
   13060 
   13061 	* c-target.def (objc_declare_unresolved_class_reference,
   13062 	objc_declare_class_definition): Add new hooks.
   13063 
   13064 2012-06-19  Steven Bosscher  <steven (a] gcc.gnu.org>
   13065 
   13066 	* c-lex.c: Do not include output.h.
   13067 	(cb_ident): Try to put out .ident with targetm.asm_out.output_ident.
   13068 	Remove uses of ASM_OUTPUT_IDENT.
   13069 
   13070 2012-06-15  Marc Glisse  <marc.glisse (a] inria.fr>
   13071 
   13072 	PR c++/51033
   13073 	* c-common.h (c_build_vec_perm_expr): Move decl here.
   13074 	* c-common.c (c_build_vec_perm_expr): Move definition
   13075 	here.
   13076 
   13077 2012-06-06  Steven Bosscher  <steven (a] gcc.gnu.org>
   13078 
   13079 	* c.opt (fconserve-space): Turn into a no-op.
   13080 
   13081 2012-06-04  Sterling Augustine  <saugustine (a] google.com>
   13082 
   13083 	* c-pretty-print.h (pp_c_flag_gnu_v3): New enumerator.
   13084 	* c-pretty-print.c (pp_c_specifier_qualifier_list): Check it at
   13085 	both the start and end of the function.
   13086 
   13087 2012-06-04  Steven Bosscher  <steven (a] gcc.gnu.org>
   13088 
   13089 	* c-common.c: Do not include output.h.
   13090 	* c-pragma.c: Likewise.
   13091 
   13092 2012-06-04  Steven Bosscher  <steven (a] gcc.gnu.org>
   13093 
   13094 	* error.c (dump_decl): Check pp_c_flag_gnu_v3.
   13095 	(decl_as_dwarf_string, lang_decl_dwarf_name): New functions.
   13096 	(lang_decl_name): Handle namespace decls.
   13097 
   13098 2012-05-31  Steven Bosscher  <steven (a] gcc.gnu.org>
   13099 
   13100 	* c-ada-spec.c: Do not include output.h.
   13101 	* c-semantics.c: Likewise.
   13102 
   13103 2012-05-29  Joseph Myers  <joseph (a] codesourcery.com>
   13104 
   13105 	* c-common.c: Fix typo.
   13106 
   13107 2012-05-29  Michael Matz  <matz (a] suse.de>
   13108 
   13109 	* c-common.h (c_expand_decl): Remove prototype.
   13110 
   13111 2012-05-29  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   13112 
   13113 	* c.opt (Wmissing-braces): Use LangEnabledBy(C ObjC,Wall).
   13114 	* c-opts.c (c_common_handle_option): Remove code handling
   13115 	warn_missing_braces.
   13116 
   13117 2012-05-28  Paolo Carlini  <paolo.carlini (a] oracle.com>
   13118 
   13119 	PR c++/25137
   13120 	* c-opts.c (c_common_handle_option): For C++ -Wall doesn't enable
   13121 	-Wmissing_braces.
   13122 
   13123 2012-05-22  Dodji Seketeli  <dodji (a] redhat.com>
   13124 
   13125 	PR c++/53322
   13126 	* c.opt (Wunused-local-typedefs): Use EnabledBy(Wunused).
   13127 
   13128 2012-05-17  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   13129 
   13130 	* c.opt (--pedantic-errors,-pedantic-errors): Do not handle here.
   13131 	* c-opts.c (c_common_handle_option): Do not handle explicitly
   13132 	Wreturn-type, Wwrite-strings, warn_ecpp, and -pedantic-errors.
   13133 
   13134 2012-05-16  Dodji Seketeli  <dodji (a] redhat.com>
   13135 
   13136 	PR preprocessor/7263
   13137 	* c-lex.c (c_lex_with_flags): Pass a virtual location to the call
   13138 	to cpp_classify_number.  For diagnostics, use the precise location
   13139 	instead of the global input_location.
   13140 
   13141 2012-05-15  Paolo Carlini  <paolo.carlini (a] oracle.com>
   13142 
   13143 	PR c++/11856
   13144 	* c-common.c (shorten_compare): Check c_inhibit_evaluation_warnings.
   13145 
   13146 2012-05-14  Bernd Schmidt  <bernds (a] codesourcery.com>
   13147 
   13148 	* c-common.c (DEF_ATTR_STRING): Define and undefine as necessary.
   13149 
   13150 2012-05-14  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   13151 
   13152 	PR 53063
   13153 	* c.opt (Wc++0X-compat,Wdelete-non-virtual-dtor,Wjump-misses-init,
   13154 	Wreorder): Use LangEnabledBy.
   13155 	* c-opts.c (c_common_handle_option): Do not enable them
   13156 	explicitly. Call lang-specific generated functions.
   13157 	(c_common_post_options): Do not set them here.
   13158 
   13159 2012-05-13  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   13160 
   13161 	* c.opt (Wclobbered,Wempty-body,Wignored-qualifiers,
   13162 	Wmissing-field-initializers,Wmissing-parameter-type,
   13163 	Wold-style-declaration,Woverride-init): Use EnabledBy.
   13164 	* c-opts.c (c_common_post_options): Do not set here explicitly.
   13165 
   13166 2012-05-11  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   13167 
   13168 	PR 53063
   13169 	* c-opts.c (c_common_handle_option): Use handle_generated_option
   13170 	to enable sub-options.
   13171 
   13172 2012-05-10  Paolo Carlini  <paolo.carlini (a] oracle.com>
   13173 
   13174 	PR c++/53158
   13175 	* c-common.c (warnings_for_convert_and_check): Use warning_at.
   13176 
   13177 2012-05-10  Richard Guenther  <rguenther (a] suse.de>
   13178 
   13179 	* c-common.c (c_sizeof_or_alignof_type): Remove assert and
   13180 	adjust commentary about TYPE_IS_SIZETYPE types.
   13181 
   13182 2012-05-09  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   13183 
   13184 	PR c++/53261
   13185 	* c-common.c (warn_logical_operator): Check that argument of
   13186 	integer_zerop is not NULL.
   13187 
   13188 2012-05-05  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   13189 
   13190 	PR c/43772
   13191 	* c-common.c (warn_logical_operator): Do not warn if either side
   13192 	is already true or false.
   13193 
   13194 2012-05-04  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   13195 
   13196 	PR c/51712
   13197 	* c-common.c (expr_original_type): New.
   13198 	(shorten_compare): Do not warn for enumeration types.
   13199 
   13200 2012-05-03  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   13201 
   13202 	* c.opt (fpermissive): Add Var(flag_permissive).
   13203 
   13204 2012-04-30  Marc Glisse  <marc.glisse (a] inria.fr>
   13205 
   13206 	PR c++/51033
   13207 	* c-common.c (convert_vector_to_pointer_for_subscript): New function.
   13208 	* c-common.h (convert_vector_to_pointer_for_subscript): Declare it.
   13209 
   13210 2012-04-30  Dodji Seketeli  <dodji (a] redhat.com>
   13211 
   13212 	Add -Wvarargs option
   13213 	* c.opt (Wvarargs): Define new option.
   13214 
   13215 2012-04-30  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   13216 
   13217 	* c-common.c (check_function_arguments): Replace
   13218 	Wmissing-format-attribute with Wsuggest-attribute=format.
   13219 
   13220 2012-04-30  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   13221 
   13222 	* c.opt (Wsuggest-attribute=format): New. Alias of
   13223 	Wmissing-format-attribute.
   13224 	* c-format.c (decode_format_type): Replace
   13225 	Wmissing-format-attribute with Wsuggest-attribute=format.
   13226 	(check_function_format): Likewise.
   13227 
   13228 2012-04-27  Ollie Wild  <aaw (a] google.com>
   13229 
   13230 	* c-common.c: Add CPP_W_LITERAL_SUFFIX mapping.
   13231 	* c-opts.c (c_common_handle_option): Handle OPT_Wliteral_suffix.
   13232 	* c.opt: Add Wliteral-suffix.
   13233 
   13234 2012-04-22  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   13235 
   13236 	PR c/44774
   13237 	* c.opt (Wpedantic): New.
   13238 	(pedantic): Alias Wpedantic.
   13239 	* c-opts.c (c_common_handle_option): Replace -pedantic with -Wpedantic.
   13240 	(c_common_post_options): Likewise.
   13241 	(sanitize_cpp_opts): Likewise.
   13242 	* c-lex.c (interpret_float): Likewise.
   13243 	* c-format.c (check_format_types): Likewise.
   13244 	* c-common.c (pointer_int_sum): Likewise.
   13245 	(c_sizeof_or_alignof_type): Likewise.
   13246 	(c_add_case_label): Likewise.
   13247 	(c_do_switch_warnings): Likewise.
   13248 	* c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
   13249 
   13250 2012-04-15  Jason Merrill  <jason (a] redhat.com>
   13251 
   13252 	PR c++/52818
   13253 	* c-format.c (CPLUSPLUS_STD_VER): C++11 inherits from C99.
   13254 	(C_STD_NAME): Distinguish between C++98 and C++11.
   13255 
   13256 2012-04-11  Eric Botcazou  <ebotcazou (a] adacore.com>
   13257 
   13258 	PR target/52624
   13259 	* c-common.h (uint16_type_node): Rename into...
   13260 	(c_uint16_type_node): ...this.
   13261 	* c-common.c (c_common_nodes_and_builtins): Adjust for above renaming.
   13262 	* c-cppbuiltin.c (builtin_define_stdint_macros): Likewise.
   13263 
   13264 2012-04-10  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   13265 
   13266 	* c-common.c (warn_if_unused_value): Move definition to here.
   13267 	* c-common.h (warn_if_unused_value): Move declaration to here.
   13268 
   13269 2012-03-23  William Bader  <williambader (a] hotmail.com>
   13270 
   13271 	* c-lex.c (c_lex_with_flags): Avoid declarations after stmts.
   13272 
   13273 2012-03-20  Jason Merrill  <jason (a] redhat.com>
   13274 
   13275 	* c-common.h (enum cxx_dialect): Add cxx1y.
   13276 	* c-common.c (c_common_nodes_and_builtins): Use >= for cxx_dialect
   13277 	test.
   13278 	* c-cppbuiltin.c (c_cpp_builtins): Likewise.
   13279 	* c-opts.c (c_common_post_options): Likewise.
   13280 	(set_std_cxx1y): New.
   13281 	(c_common_handle_option): Call it.
   13282 	* c.opt (-std=c++1y, -std=gnu++1y): New flags.
   13283 
   13284 2012-03-19  Paolo Carlini  <paolo.carlini (a] oracle.com>
   13285 
   13286 	PR c++/14710
   13287 	* c.opt ([Wuseless-cast]): Add.
   13288 
   13289 2012-03-16  Richard Guenther  <rguenther (a] suse.de>
   13290 
   13291 	* c-pretty-print.c (pp_c_initializer_list): Adjust.
   13292 
   13293 2012-03-15  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   13294 
   13295 	PR c++/44783
   13296 	* c.opt (ftemplate-backtrace-limit) Add.
   13297 
   13298 2012-03-12  Rainer Orth  <ro (a] CeBiTec.Uni-Bielefeld.DE>
   13299 
   13300 	* c-cppbuiltin.c (c_cpp_builtins): Remove #pragma extern_prefix
   13301 	handling.
   13302 	* c-pragma.c (handle_pragma_extern_prefix): Remove.
   13303 	(init_pragma): Don't register extern_prefix.
   13304 
   13305 2012-03-12  Richard Guenther  <rguenther (a] suse.de>
   13306 
   13307 	* c-common.c (c_common_get_narrower): Use c_common_type_for_size.
   13308 	(builtin_type_for_size): Likewise.
   13309 
   13310 2012-02-13  Jakub Jelinek  <jakub (a] redhat.com>
   13311 
   13312 	PR c++/52215
   13313 	* c-common.c (sync_resolve_params): Don't decide whether to convert
   13314 	or not based on TYPE_SIZE comparison, convert whenever arg_type
   13315 	is unsigned INTEGER_TYPE.
   13316 
   13317 2012-02-06  Paolo Carlini  <paolo.carlini (a] oracle.com>
   13318 
   13319 	PR c/52118
   13320 	* c.opt ([Wunused-local-typedefs]): Fix description.
   13321 
   13322 2012-01-24  Mike Stump  <mikestump (a] comcast.net>
   13323 
   13324 	* c-common.c (c_common_type_for_mode): Match signed/unsigned types
   13325 	exactly.
   13326 
   13327 2012-01-18  Richard Guenther  <rguenther (a] suse.de>
   13328 
   13329 	* c-opts.c (c_common_post_options): Reset LTO flags if
   13330 	we are about to generate a PCH.
   13331 
   13332 2012-01-17  Paolo Carlini  <paolo.carlini (a] oracle.com>
   13333 
   13334 	PR c++/51777
   13335 	* c-pretty-print.c (pp_c_integer_constant): For unsigned constants
   13336 	use pp_unsigned_wide_integer.
   13337 
   13338 2012-01-10  Richard Guenther  <rguenther (a] suse.de>
   13339 
   13340 	PR middle-end/51806
   13341 	* c-opts.c (c_common_handle_option): Move -Werror handling
   13342 	to language independent code.
   13343 
   13344 2012-01-05  Richard Guenther  <rguenther (a] suse.de>
   13345 
   13346 	PR middle-end/51764
   13347 	* c.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move here
   13348 	from common.opt.
   13349 
   13350 2011-12-30  Paolo Carlini  <paolo.carlini (a] oracle.com>
   13351 
   13352 	PR c++/51316
   13353 	* c-common.c (c_sizeof_or_alignof_type): In C++ allow for alignof
   13354 	of array types with an unknown bound.
   13355 
   13356 2011-12-20  Joseph Myers  <joseph (a] codesourcery.com>
   13357 
   13358 	* c-common.c (flag_isoc99): Update comment to refer to C11.
   13359 	(flag_isoc1x): Change to flag_isoc11.
   13360 	* c-common.h (flag_isoc99): Update comment to refer to C11.
   13361 	(flag_isoc1x): Change to flag_isoc11.
   13362 	* c-cppbuiltin.c (cpp_atomic_builtins): Change comment to refer to
   13363 	C11.
   13364 	* c-opts.c (set_std_c1x): Change to set_std_c11.
   13365 	(c_common_handle_option): Handle OPT_std_c11 and OPT_std_gnu11.
   13366 	Call set_std_c11.
   13367 	(set_std_c89, set_std_c99, set_std_c11): Use flag_isoc11.
   13368 	(set_std_c1): Use CLK_STDC11 and CLK_GNUC11.
   13369 	* c.opt (std=c1x): Change to std=c11.  Document as non-draft
   13370 	standard.
   13371 	(std=c1x, std=iso9899:2011): Add as aliases of std=c11.
   13372 	(std=gnu1x): Change to std=gnu11.  Refer to non-draft standard.
   13373 	(std=gnu1x): Make alias of std=gnu11.
   13374 
   13375 2011-12-19  Jason Merrill  <jason (a] redhat.com>
   13376 
   13377 	PR c++/51228
   13378 	* c-common.c (handle_transparent_union_attribute): Check the first
   13379 	field if the type is complete.
   13380 
   13381 2011-12-15  Jonathan Wakely  <jwakely.gcc (a] gmail.com>
   13382 
   13383 	PR libstdc++/51365
   13384 	* c-common.c (RID_IS_FINAL): Add.
   13385 	* c-common.h (RID_IS_FINAL): Add.
   13386 
   13387 2011-11-30  Iain Sandoe  <iains (a] gcc.gnu.org>
   13388 
   13389 	* c.opt (fgnu-runtime): Provide full description.
   13390 	(fnext-runtime): Likewise.
   13391 	* c-opts.c (OPT_fgnu_runtime, OPT_fnext_runtime) Remove.
   13392 
   13393 2011-11-28  Andrew MacLeod  <amacleod (a] redhat.com>
   13394 
   13395 	* c-cpp-builtin.c (cpp_atomic_builtins):New.  Emit all atomic
   13396 	predefines in one place.  Add LOCK_FREE predefines.
   13397 	(c_cpp_builtins): Move Legacy HAVE_SYNC predefines to
   13398 	new func.
   13399 
   13400 2011-11-24  Andrew MacLeod  <amacleod (a] redhat.com>
   13401 
   13402 	PR c/51256
   13403 	* c-common.c (get_atomic_generic_size): Check for various error
   13404 	conditions
   13405 	(resolve_overloaded_atomic_exchange,
   13406 	resolve_overloaded_atomic_compare_exchange,
   13407 	resolve_overloaded_atomic_load, resolve_overloaded_atomic_store): Return
   13408 	error_mark_node for error conditions.
   13409 
   13410 2011-11-08  Richard Guenther  <rguenther (a] suse.de>
   13411 
   13412 	PR middle-end/51010
   13413 	* c-pretty-print.c (pp_c_expression): Handle SSA_NAMEs.
   13414 
   13415 2011-11-07  Richard Henderson  <rth (a] redhat.com>
   13416 	    Aldy Hernandez  <aldyh (a] redhat.com>
   13417 	    Torvald Riegel  <triegel (a] redhat.com>
   13418 
   13419 	Merged from transactional-memory.
   13420 
   13421 	* c-common.c (handle_tm_wrap_attribute,
   13422 	handle_tm_attribute, ignore_attribute, parse_tm_stmt_attr): New.
   13423 	(struct c_common_reswords): Added __transaction* keywords.
   13424 	(struct c_common_attribute_table): Added transaction* and tm_regparm
   13425 	attributes.
   13426 	* c-common.h: Added RID_TRANSACTION*. Added TM_ATTR* and TM_STMT*
   13427 	masks.
   13428 	(parse_tm_stmt_attr, tm_attr_to_mask, tm_mask_to_attr,
   13429 	find_tm_attribute): Declare.
   13430 
   13431 2011-11-07  Jason Merrill  <jason (a] redhat.com>
   13432 
   13433 	PR c++/35688
   13434 	* c-common.c, c-common.h: Revert yesterday's changes.
   13435 
   13436 2011-11-06  Jason Merrill  <jason (a] redhat.com>
   13437 
   13438 	PR c++/35688
   13439 	* c-common.c (decl_has_visibility_attr): Split out from...
   13440 	(c_determine_visibility): ...here.
   13441 	* c-common.h: Declare it.
   13442 
   13443 2011-11-06  Joseph Myers  <joseph (a] codesourcery.com>
   13444 
   13445 	* c-common.c (c_common_reswords): Add _Alignas and _Alignof.
   13446 	(c_sizeof_or_alignof_type): Diagnose alignof applied to a function
   13447 	type.
   13448 	(check_user_alignment): New.  Split out of
   13449 	handle_aligned_attribute.  Disallow integer constants with
   13450 	noninteger types.  Conditionally allow zero.
   13451 	(handle_aligned_attribute): Use check_user_alignment.
   13452 	* c-common.h (RID_ALIGNAS, check_user_alignment): New.
   13453 
   13454 2011-11-06  Andrew MacLeod  <amacleod (a] redhat.com>
   13455 	    Richard Henderson  <rth (a] redhat.com>
   13456 
   13457 	Merged from cxx-mem-model.
   13458 
   13459 	* c-cppbuiltin.c (c_cpp_builtins): Test both atomic and sync patterns.
   13460 	* c-common.c (sync_resolve_params, sync_resolve_return): Only tweak
   13461 	parameters that are the same type size.
   13462 	(get_atomic_generic_size): New.  Find size of generic
   13463 	atomic function parameters and do typechecking.
   13464 	(add_atomic_size_parameter): New.  Insert size into parameter list.
   13465 	(resolve_overloaded_atomic_exchange): Restructure __atomic_exchange to
   13466 	either __atomic_exchange_n or external library call.
   13467 	(resolve_overloaded_atomic_compare_exchange): Restructure
   13468 	__atomic_compare_exchange to either _n variant or external library call.
   13469 	(resolve_overloaded_atomic_load): Restructure __atomic_load to either
   13470 	__atomic_load_n or an external library call.
   13471 	(resolve_overloaded_atomic_store): Restructure __atomic_store to either
   13472 	__atomic_store_n or an external library call.
   13473 	(resolve_overloaded_builtin): Handle new __atomic builtins.
   13474 
   13475 2011-11-04  Eric Botcazou  <ebotcazou (a] adacore.com>
   13476 
   13477 	PR c++/50608
   13478 	* c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1.
   13479 	(fold_offsetof_1): Make global.  Remove STOP_REF argument and adjust.
   13480 	<INDIRECT_REF>: Return the argument.
   13481 	<ARRAY_REF>: Remove special code for negative offset.
   13482 	Call fold_build_pointer_plus instead of size_binop.
   13483 	(fold_offsetof): Remove STOP_REF argument and adjust.
   13484 	* c-common.h (fold_offsetof_1): Declare.
   13485 	(fold_offsetof): Remove STOP_REF argument.
   13486 
   13487 2011-11-02  Paolo Carlini  <paolo.carlini (a] oracle.com>
   13488 
   13489 	PR c++/50810
   13490 	* c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
   13491 	of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
   13492 	Wnarrowing for C++0x and C++98.
   13493 	* c.opt ([Wnarrowing]): Update.
   13494 
   13495 2011-11-01  Paolo Carlini  <paolo.carlini (a] oracle.com>
   13496 
   13497 	PR c++/44277
   13498 	* c.opt: Add Wzero-as-null-pointer-constant.
   13499 
   13500 2011-10-31  Jason Merrill  <jason (a] redhat.com>
   13501 
   13502 	* c.opt (-fdeduce-init-list): Off by default.
   13503 
   13504 	PR c++/50920
   13505 	* c-common.h (cxx_dialect): Add cxx11 and cxx03.
   13506 	* c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03,
   13507 	and -Wc++11-compat.
   13508 	* c-opts.c (set_std_cxx11): Rename from set_std_cxx0x.
   13509 
   13510 2011-10-27  Roberto Agostino Vitillo  <ravitillo (a] lbl.gov>
   13511 
   13512 	PR c++/30066
   13513 	* c.opt (fvisibility-inlines-hidden): Description change.
   13514 
   13515 2011-10-26  Ed Smith-Rowland  <3dw4rd (a] verizon.net>
   13516 
   13517 	Implement C++11 user-defined literals.
   13518 	* c-common.c (build_userdef_literal): New.
   13519 	* c-common.def: New tree code.
   13520 	* c-common.h (tree_userdef_literal): New tree struct and accessors.
   13521 	* c-lex.c (interpret_float): Add suffix parm.
   13522 	(c_lex_with_flags): Build literal tokens.
   13523 
   13524 2011-10-23  Paolo Carlini  <paolo.carlini (a] oracle.com>
   13525 
   13526 	PR c++/50841
   13527 	Revert:
   13528 	2011-10-23  Paolo Carlini  <paolo.carlini (a] oracle.com>
   13529 
   13530 	PR c++/50810
   13531 	* c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
   13532 	of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
   13533 	Wnarrowing for C++0x and C++98.
   13534 	* c.opt ([Wnarrowing]): Update.
   13535 
   13536 2011-10-23  Paolo Carlini  <paolo.carlini (a] oracle.com>
   13537 
   13538 	PR c++/50810
   13539 	* c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
   13540 	of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
   13541 	Wnarrowing for C++0x and C++98.
   13542 	* c.opt ([Wnarrowing]): Update.
   13543 
   13544 2011-10-21  Paolo Carlini  <paolo.carlini (a] oracle.com>
   13545 
   13546 	PR c++/45385
   13547 	* c-common.c (conversion_warning): Remove code looking for
   13548 	artificial operands.
   13549 
   13550 2011-10-18  Dodji Seketeli  <dodji (a] redhat.com>
   13551 
   13552 	PR bootstrap/50760
   13553 	* c-lex.c (fe_file_change): Use LINEMAP_SYSP when
   13554 	!NO_IMPLICIT_EXTERN_C.
   13555 
   13556 2011-10-17  Michael Spertus  <mike_spertus (a] symantec.com>
   13557 
   13558 	* c-common.c (c_common_reswords): Add __bases,
   13559 	__direct_bases.
   13560 	* c-common.h: Add RID_BASES and RID_DIRECT_BASES.
   13561 
   13562 2011-10-17  Paolo Carlini  <paolo.carlini (a] oracle.com>
   13563 
   13564 	PR c++/50757
   13565 	* c.opt ([Wnonnull]): Add C++ and Objective-C++.
   13566 
   13567 2011-10-15  Tom Tromey  <tromey (a] redhat.com>
   13568 	    Dodji Seketeli  <dodji (a] redhat.com>
   13569 
   13570 	* c.opt (fdebug-cpp): New option.
   13571 	* c-opts.c (c_common_handle_option): Handle the option.
   13572 	* c-ppoutput.c (maybe_print_line_1): New static function. Takes an
   13573 	output stream in parameter. Factorized from ...
   13574 	(maybe_print_line): ... this. Dump location debug information when
   13575 	-fdebug-cpp is in effect.
   13576 	(print_line_1): New static function. Takes an output stream in
   13577 	parameter. Factorized from ...
   13578 	(print_line): ... here. Dump location information when -fdebug-cpp
   13579 	is in effect.
   13580 	(scan_translation_unit): Dump location information when
   13581 	-fdebug-cpp is in effect.
   13582 
   13583 2011-10-15  Tom Tromey  <tromey (a] redhat.com>
   13584 	    Dodji Seketeli  <dodji (a] redhat.com>
   13585 
   13586 	* c.opt (ftrack-macro-expansion): New option. Handle it with and
   13587 	without argument.
   13588 	* c-opts.c (c_common_handle_option)<case
   13589 	OPT_ftrack_macro_expansion_, case OPT_ftrack_macro_expansion>: New
   13590 	cases. Handle -ftrack-macro-expansion with and without argument.
   13591 
   13592 2011-10-15  Tom Tromey  <tromey (a] redhat.com>
   13593 	    Dodji Seketeli  <dodji (a] redhat.com>
   13594 
   13595 	* c-ppoutput.c (scan_translation_unit, maybe_print_line)
   13596 	(print_line, cb_define, do_line_change): Adjust to avoid touching
   13597 	the internals of struct line_map.  Use the public API instead.
   13598 	* c-pch.c (c_common_read_pch): Likewise.
   13599 	* c-lex.c (fe_file_change): Likewise.
   13600 
   13601 2011-10-14  Paolo Carlini  <paolo.carlini (a] oracle.com>
   13602 
   13603 	PR c++/17212
   13604 	* c.opt ([Wformat-zero-length]): Add C++ and Objective-C++.
   13605 
   13606 2011-10-11  Paolo Carlini  <paolo.carlini (a] oracle.com>
   13607 
   13608 	PR c++/33067
   13609 	* c-pretty-print.c (pp_c_floating_constant): Output
   13610 	max_digits10 (in the ISO C++ WG N1822 sense) decimal digits.
   13611 
   13612 2011-10-11  Michael Meissner  <meissner (a] linux.vnet.ibm.com>
   13613 
   13614 	* c-common.c (def_builtin_1): Delete old interface with two
   13615 	parallel arrays to hold standard builtin declarations, and replace
   13616 	it with a function based interface that can support creating
   13617 	builtins on the fly in the future.  Change all uses, and poison
   13618 	the old	names.  Make sure 0 is not a legitimate builtin index.
   13619 	* c-omp.c (c_finish_omp_barrier): Ditto.
   13620 	(c_finish_omp_taskwait): Ditto.
   13621 	(c_finish_omp_flush): Ditto.
   13622 
   13623 2011-10-11  Tristan Gingold  <gingold (a] adacore.com>
   13624 
   13625 	* c.opt: (fallow-parameterless-variadic-functions): New.
   13626 
   13627 2011-09-08  Dodji Seketeli  <dodji (a] redhat.com>
   13628 
   13629 	PR c++/33255 - Support -Wunused-local-typedefs warning
   13630 	* c-common.h (struct c_language_function::local_typedefs): New
   13631 	field.
   13632 	(record_locally_defined_typedef, maybe_record_typedef_use)
   13633 	(maybe_warn_unused_local_typedefs): Declare new functions.
   13634 	* c-common.c (record_locally_defined_typedef)
   13635 	(maybe_record_typedef_use)
   13636 	(maybe_warn_unused_local_typedefs): Define new functions.
   13637 	* c.opt: Declare new -Wunused-local-typedefs flag.
   13638 
   13639 2011-09-06  Eric Botcazou  <ebotcazou (a] adacore.com>
   13640 
   13641 	PR middle-end/50266
   13642 	* c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Fold offsetof-like
   13643 	computations.
   13644 
   13645 2011-09-05  Richard Guenther  <rguenther (a] suse.de>
   13646 
   13647 	* c-common.c (complete_array_type): Use ssize_int (-1) instead
   13648 	of integer_minus_one_node for empty array upper bounds.
   13649 
   13650 2011-08-28  Dodji Seketeli  <dodji (a] redhat.com>
   13651 
   13652 	* c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as
   13653 	it's the first time it's being called on this main TU.
   13654 
   13655 2011-08-24  Richard Guenther  <rguenther (a] suse.de>
   13656 
   13657 	PR c/49396
   13658 	* c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional.
   13659 
   13660 2011-08-22  Gabriel Charette  <gchare (a] google.com>
   13661 
   13662 	* c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens
   13663 	defined in cpp_init_builtins and c_cpp_builtins.
   13664 
   13665 2011-08-19  Joseph Myers  <joseph (a] codesourcery.com>
   13666 
   13667 	* c-common.c (c_common_reswords): Add __builtin_complex.
   13668 	* c-common.h (RID_BUILTIN_COMPLEX): New.
   13669 
   13670 2011-08-18  Joseph Myers  <joseph (a] codesourcery.com>
   13671 
   13672 	* c-common.c (c_common_reswords): Add _Noreturn.
   13673 	(keyword_is_function_specifier): Handle RID_NORETURN.
   13674 	* c-common.h (RID_NORETURN): New.
   13675 
   13676 2011-08-10  Artjoms Sinkarovs  <artyom.shinakroff (a] gmail.com>
   13677 
   13678 	* c-common.c (unsafe_conversion_p): New function. Check if it is
   13679 	unsafe to convert an expression to the type.
   13680 	(conversion_warning): Adjust, use unsafe_conversion_p.
   13681 	* c-common.h (unsafe_conversion_p): New function declaration.
   13682 
   13683 2011-08-02  Jakub Jelinek  <jakub (a] redhat.com>
   13684 
   13685 	* c-common.h (c_finish_omp_atomic): Adjust prototype.
   13686 	(c_finish_omp_taskyield): New prototype.
   13687 	* c-omp.c (c_finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1
   13688 	arguments. Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and
   13689 	OMP_ATOMIC_CAPTURE_NEW in addition to OMP_ATOMIC.  If LHS1
   13690 	or RHS1 have side-effects, evaluate those too in the right spot,
   13691 	if it is a decl and LHS is also a decl, error out if they
   13692 	aren't the same.
   13693 	(c_finish_omp_taskyield): New function.
   13694 	* c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP to 201107.
   13695 	* c-pragma.c (omp_pragmas): Add taskyield.
   13696 	* c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKYIELD.
   13697 	(enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FINAL and
   13698 	PRAGMA_OMP_CLAUSE_MERGEABLE.
   13699 
   13700 2011-07-25  Dodji Seketeli  <dodji (a] redhat.com>
   13701 
   13702 	* c-common.h (set_underlying_type): Remove parm name from
   13703 	declaration.
   13704 
   13705 2011-07-25  Romain Geissler  <romain.geissler (a] gmail.com>
   13706 
   13707 	* c-pretty-print.h: Search c-common.h in c-family.
   13708 
   13709 2011-07-22  Jason Merrill  <jason (a] redhat.com>
   13710 
   13711 	PR c++/49793
   13712 	* c.opt (Wnarrowing): New.
   13713 
   13714 	PR c++/30112
   13715 	* c-common.h: Declare c_linkage_bindings.
   13716 	* c-pragma.c (handle_pragma_redefine_extname): Use it.
   13717 
   13718 	PR c++/49813
   13719 	* c-opts.c (set_std_cxx0x): Set flag_isoc94 and flag_isoc99.
   13720 	* c-pretty-print.c (pp_c_cv_qualifiers): Check c_dialect_cxx as well
   13721 	as flag_isoc99 for 'restrict'.
   13722 	(pp_c_specifier_qualifier_list): Likewise for _Complex.
   13723 
   13724 2011-07-21  Ian Lance Taylor  <iant (a] google.com>
   13725 
   13726 	PR middle-end/49705
   13727 	* c-common.c (c_disable_warnings): New static function.
   13728 	(c_enable_warnings): New static function.
   13729 	(c_fully_fold_internal): Change local unused_p to bool.  Call
   13730 	c_disable_warnings and c_enable_warnings rather than change
   13731 	c_inhibit_evaluation_warnings.
   13732 
   13733 2011-07-20  Jason Merrill  <jason (a] redhat.com>
   13734 
   13735 	PR c++/6709 (DR 743)
   13736 	PR c++/42603 (DR 950)
   13737 	* c-common.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move from cp/parser.h.
   13738 	(CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise.
   13739 	(CPP_DECLTYPE): New.
   13740 	* c-common.c (c_parse_error): Handle CPP_DECLTYPE.
   13741 
   13742 2011-07-19  Richard Guenther  <rguenther (a] suse.de>
   13743 
   13744 	* c-common.c (pointer_int_sum): Use fold_build_pointer_plus.
   13745 	* c-omp.c (c_finish_omp_for): Likewise.
   13746 
   13747 2011-07-12  Eric Botcazou  <ebotcazou (a] adacore.com>
   13748 
   13749 	* c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop
   13750 	body on the next line.
   13751 
   13752 2011-07-08  Jason Merrill  <jason (a] redhat.com>
   13753 
   13754 	PR c++/45437
   13755 	* c-omp.c (check_omp_for_incr_expr): Handle preevaluation.
   13756 
   13757 	PR c++/49673
   13758 	* c-common.c (c_apply_type_quals_to_decl): Don't check
   13759 	TYPE_NEEDS_CONSTRUCTING.
   13760 
   13761 2011-07-06  Richard Guenther  <rguenther (a] suse.de>
   13762 
   13763 	* c-common.c (c_common_nodes_and_builtins):
   13764 	Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
   13765 
   13766 2011-07-05  Richard Guenther  <rguenther (a] suse.de>
   13767 
   13768 	* c-common.c (c_common_nodes_and_builtins): Build all common
   13769 	tree nodes first.
   13770 
   13771 2011-06-27  Jakub Jelinek  <jakub (a] redhat.com>
   13772 
   13773 	* c-common.h (c_tree_chain_next): New static inline function.
   13774 
   13775 	* c-common.c (check_builtin_function_arguments): Handle
   13776 	BUILT_IN_ASSUME_ALIGNED.
   13777 
   13778 2011-06-21  Andrew MacLeod  <amacleod (a] redhat.com>
   13779 
   13780 	* c-common.c: Add sync_ or SYNC__ to builtin names.
   13781 	* c-omp.c: Add sync_ or SYNC__ to builtin names.
   13782 
   13783 2011-06-20  Pierre Vittet  <piervit (a] pvittet.com>
   13784 
   13785 	* c-pragma.h (pragma_handler_1arg, pragma_handler_2arg): New
   13786 	handler.
   13787 	(gen_pragma_handler): New union.
   13788 	(internal_pragma_handler): New type.
   13789 	(c_register_pragma_with_data)
   13790 	(c_register_pragma_with_expansion_and_data): New functions.
   13791 
   13792 	* c-pragma.c (registered_pragmas, c_register_pragma_1)
   13793 	(c_register_pragma, c_register_pragma_with_expansion)
   13794 	(c_invoke_pragma_handler): Changed to work with
   13795 	internal_pragma_handler.
   13796 	(c_register_pragma_with_data)
   13797 	(c_register_pragma_with_expansion_and_data): New functions.
   13798 
   13799 2011-06-14  Joseph Myers  <joseph (a] codesourcery.com>
   13800 
   13801 	* c-common.c: Include common/common-target.h.
   13802 	(handle_section_attribute): Use
   13803 	targetm_common.have_named_sections.
   13804 	* c-cppbuiltin.c: Include common/common-target.h.
   13805 	(c_cpp_builtins): Use targetm_common.except_unwind_info.
   13806 
   13807 2011-06-10  Richard Guenther  <rguenther (a] suse.de>
   13808 
   13809 	* c-pretty-print.c (pp_c_type_specifier): Use pp_c_identifier
   13810 	to print a IDENTIFIER_NODE.
   13811 
   13812 2011-06-09  Rainer Orth  <ro (a] CeBiTec.Uni-Bielefeld.DE>
   13813 	    Joseph Myers  <joseph (a] codesourcery.com>
   13814 
   13815 	* c.opt (fbuilding-libgcc): New option.
   13816 	* c-cppbuiltin.c (c_cpp_builtins): Define
   13817 	__LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc.
   13818 
   13819 2011-06-07  Jason Merrill  <jason (a] redhat.com>
   13820 
   13821 	* c-common.c (max_tinst_depth): Lower default to 900.
   13822 
   13823 	* c-format.c (gcc_cxxdiag_char_table): Add 'S' format.
   13824 
   13825 2011-06-07  Richard Guenther  <rguenther (a] suse.de>
   13826 
   13827 	* c-common.c (c_common_nodes_and_builtins): Do not set
   13828 	size_type_node or call set_sizetype.
   13829 
   13830 2011-06-07  Dodji Seketeli  <dodji (a] redhat.com>
   13831 
   13832 	PR debug/49130
   13833 	* c-pretty-print.c (pp_c_integer_constant): Consider the canonical
   13834 	type when using pointer comparison to compare types.
   13835 
   13836 2011-06-02  Jonathan Wakely  <jwakely.gcc (a] gmail.com>
   13837 
   13838 	* c.opt: Add -Wdelete-non-virtual-dtor.
   13839 	* c-opts.c (c_common_handle_option): Include it in -Wall.
   13840 
   13841 2011-05-30  Nathan Froyd  <froydnj (a] gcc.gnu.org>
   13842 
   13843 	PR bootstrap/49190
   13844 
   13845 	Revert:
   13846 	2011-05-26  Nathan Froyd  <froydnj (a] codesourcery.com>
   13847 
   13848 	* c-common.h (struct c_common_identifier): Inherit from tree_typed,
   13849 	not tree_common.
   13850 
   13851 2011-05-27  Jakub Jelinek  <jakub (a] redhat.com>
   13852 
   13853 	PR c++/49165
   13854 	* c-common.c (c_common_truthvalue_conversion) <case COND_EXPR>: For
   13855 	C++ don't call c_common_truthvalue_conversion on void type arms.
   13856 
   13857 2011-05-27  Nathan Froyd  <froydnj (a] codesourcery.com>
   13858 
   13859 	* c-common.h (struct stmt_tree_s) [x_cur_stmt_list]: Change to a VEC.
   13860 	(stmt_list_stack): Define.
   13861 	(cur_stmt_list): Adjust for new type of x_cur_stmt_list.
   13862 	* c-semantics.c (push_stmt_list, pop_stmt_list): Likewise.
   13863 
   13864 2011-05-26  Nathan Froyd  <froydnj (a] codesourcery.com>
   13865 
   13866 	* c-common.c (warning_candidate_p): Check for BLOCKs.
   13867 
   13868 2011-05-26  Nathan Froyd  <froydnj (a] codesourcery.com>
   13869 
   13870 	* c-common.h (struct c_common_identifier): Inherit from tree_typed,
   13871 	not tree_common.
   13872 
   13873 2011-05-25  Jakub Jelinek  <jakub (a] redhat.com>
   13874 
   13875 	* c-common.c (def_fn_type): Remove extra va_end.
   13876 
   13877 2011-05-23  Jason Merrill  <jason (a] redhat.com>
   13878 
   13879 	PR c++/48106
   13880 	* c-common.c (c_common_get_narrower): New.
   13881 	(shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.
   13882 
   13883 2011-05-23  Nathan Froyd  <froydnj (a] codesourcery.com>
   13884 
   13885 	* c-common.h (check_function_arguments): Tweak prototype of
   13886 	check_function_arguments.
   13887 	* c-common.c (check_function_arguments): Likewise.  Adjust
   13888 	calls to check_function_nonnull, check_function_format, and
   13889 	check_function_sentinel.
   13890 	(check_function_sentinel): Take a FUNCTION_TYPE rather than
   13891 	separate attributes and typelist arguments.  Use
   13892 	FOREACH_FUNCTION_ARGS to iterate over argument types.
   13893 
   13894 2011-05-15  Paolo Carlini  <paolo.carlini (a] oracle.com>
   13895 
   13896 	* c-common.c (c_common_reswords): Reorder.
   13897 	* c-common.h (rid): Likewise.
   13898 
   13899 2011-05-10  Nathan Froyd  <froydnj (a] codesourcery.com>
   13900 
   13901 	* c-common.c (def_fn_type): Don't call build_function_type, call
   13902 	build_function_type_array or build_varargs_function_type_array
   13903 	instead.
   13904 	(c_common_nodes_and_builtins): Likewise.
   13905 
   13906 2011-05-05  Nathan Froyd  <froydnj (a] codesourcery.com>
   13907 
   13908 	* c-common.c (c_add_case_label): Omit the loc argument to
   13909 	build_case_label.
   13910 	* c-common.h (build_case_label): Remove.
   13911 	* c-semantics.c (build_case_label): Remove.
   13912 
   13913 2011-05-05  Joseph Myers  <joseph (a] codesourcery.com>
   13914 
   13915 	* c-objc.h (objc_start_method_definition): Update prototype.
   13916 	* stub-objc.c (objc_start_method_definition): Add extra parameter.
   13917 
   13918 2011-05-04  Nathan Froyd  <froydnj (a] codesourcery.com>
   13919 
   13920 	* c-common.c (check_main_parameter_types): Reindent.  Don't use
   13921 	TYPE_ARG_TYPES directly.
   13922 	(handle_nonnull_attribute): Likewise.
   13923 	(sync_resolve_params): Likewise.
   13924 	* c-format.c (handle_format_arg_attribute): Likewise.  Adjust call
   13925 	to check_format_string.
   13926 	(handle_format_attribute): Likewise.
   13927 	(check_format_string): Take a function type to examine instead of
   13928 	a type list.  Use a function_arg_iterator to step through argument
   13929 	types.
   13930 
   13931 2011-05-04  Richard Guenther  <rguenther (a] suse.de>
   13932 
   13933 	* c-common.c (fix_string_type): Use size_int for index type bounds.
   13934 	(start_fname_decls): Do not pass NULL to build_int_cst.
   13935 	(c_init_attributes): Likewise.
   13936 	* c-lex.c (c_lex_with_flags): Likewise.
   13937 
   13938 2011-04-27  Jason Merrill  <jason (a] redhat.com>
   13939 
   13940 	* c-common.c (make_tree_vector_from_list): New.
   13941 	* c-common.h: Declare it.
   13942 
   13943 2011-04-26  Richard Guenther  <rguenther (a] suse.de>
   13944 
   13945 	PR preprocessor/48248
   13946 	* c-ppoutput.c (maybe_print_line): Always optimize newlines
   13947 	for output size with -P.
   13948 
   13949 2011-04-25  Paolo Carlini  <paolo.carlini (a] oracle.com>
   13950 
   13951 	* c-common.c (struct c_common_resword): Add __underlying_type.
   13952 	* c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
   13953 
   13954 2011-04-20  Jim Meyering  <meyering (a] redhat.com>
   13955 
   13956 	* c-format.c (init_dollar_format_checking): Remove useless
   13957 	if-before-free.
   13958 
   13959 2011-04-15  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   13960 
   13961 	* c-objc.h (objc_get_interface_ivars): Removed.
   13962 	(objc_detect_field_duplicates): New.
   13963 	* stub-objc.c: Likewise.
   13964 
   13965 2011-04-14  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   13966 
   13967 	* stub-objc.c (objc_declare_protocols): Renamed to
   13968 	objc_declare_protocol.
   13969 	* c-objc.h: Likewise.
   13970 
   13971 2011-04-14  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   13972 
   13973 	* stub-objc.c (objc_declare_class): Updated argument name.
   13974 
   13975 2011-04-12  Nathan Froyd  <froydnj (a] codesourcery.com>
   13976 
   13977 	* c-common.h (c_common_init_ts): Declare.
   13978 	* c-common.c (c_common_init_ts): Define.
   13979 
   13980 2011-04-12  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   13981 
   13982 	* c-objc.h (objc_build_message_expr): Updated prototype.
   13983 	* stub-objc.c (objc_build_message_expr): Likewise.
   13984 
   13985 2011-04-12  Martin Jambor  <mjambor (a] suse.cz>
   13986 
   13987 	* c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
   13988 	of cgraph_node.
   13989 
   13990 2011-04-11  Richard Guenther  <rguenther (a] suse.de>
   13991 
   13992 	* c-common.c (complete_array_type): Build a range type of
   13993 	proper type.
   13994 
   13995 2011-04-08  Nathan Froyd  <froydnj (a] codesourcery.com>
   13996 
   13997 	* c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
   13998 	(handle_type_generic_attribute): Likewise.
   13999 
   14000 2011-04-07  Jason Merrill  <jason (a] redhat.com>
   14001 
   14002 	PR c++/48450
   14003 	* c-common.c (c_common_truthvalue_conversion): Don't ignore
   14004 	conversion from C++0x scoped enum.
   14005 
   14006 2011-04-06  Joseph Myers  <joseph (a] codesourcery.com>
   14007 
   14008 	* c-target-def.h: New file.
   14009 	* c-target.def: New file.
   14010 	* c-target.h: New file.
   14011 	* c-common.c (targetcm): Don't define here.
   14012 	* c-common.h (default_handle_c_option): Declare.
   14013 	* c-format.c: Include c-target.h instead of target.h.
   14014 	* c-opts.c: Include c-target.h instead of target.h.  Explicitly
   14015 	include tm.h.
   14016 	(default_handle_c_option): Move from targhooks.c.
   14017 
   14018 2011-03-29  Jakub Jelinek  <jakub (a] redhat.com>
   14019 
   14020 	PR preprocessor/48248
   14021 	* c-ppoutput.c (print): Add src_file field.
   14022 	(init_pp_output): Initialize it.
   14023 	(maybe_print_line): Don't optimize by adding up to 8 newlines
   14024 	if map->to_file and print.src_file are different file.
   14025 	(print_line): Update print.src_file.
   14026 
   14027 2011-03-25  Kai Tietz  <ktietz (a] redhat.com>
   14028 
   14029 	* c-ada-spec.c (compare_comment): Use filename_cmp
   14030 	instead of strcmp for filename.
   14031 
   14032 2011-03-25  Jeff Law  <law (a] redhat.com>
   14033 
   14034 	* c-common.c (def_fn_type): Add missing va_end.
   14035 
   14036 2011-03-25  Jason Merrill  <jason (a] redhat.com>
   14037 
   14038 	* c.opt: Add -std=c++03.
   14039 
   14040 2011-03-22  Eric Botcazou  <ebotcazou (a] adacore.com>
   14041 
   14042 	* c-ada-spec.c (dump_ada_template): Skip non-class instances.
   14043 
   14044 2011-03-17  Kai Tietz  <ktietz (a] redhat.com>
   14045 
   14046 	PR target/12171
   14047 	* c-pretty-print.c (pp_c_specifier_qualifier_list):
   14048 	Display allowed attributes for function pointer types.
   14049 	(pp_c_attributes_display): New function to display
   14050 	attributes having affects_type_identity flag set to true.
   14051 	* c-pretty-print.h (pp_c_attributes_display): New prototype.
   14052 
   14053 	* c-common.c (c_common_attribute_table):
   14054 	Add new element.
   14055 	(c_common_format_attribute_table): Likewise.
   14056 
   14057 2011-03-18  Jason Merrill  <jason (a] redhat.com>
   14058 
   14059 	* c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
   14060 	* c-common.h: Don't declare it here.
   14061 	* c-common.c: Or define it here.
   14062 	* c-opts.c (c_common_handle_option): Or set it here.
   14063 
   14064 	PR c++/35315
   14065 	* c-common.c (handle_transparent_union_attribute): Don't
   14066 	make a duplicate type in C++.
   14067 
   14068 2011-03-15  Jason Merrill  <jason (a] redhat.com>
   14069 
   14070 	* c-common.c (max_constexpr_depth): New.
   14071 	* c-common.h: Declare it.
   14072 	* c-opts.c (c_common_handle_option): Set it.
   14073 	* c.opt (fconstexpr-depth): New option.
   14074 
   14075 2011-03-11  Jason Merrill  <jason (a] redhat.com>
   14076 
   14077 	* c-common.c (attribute_takes_identifier_p): Add missing const.
   14078 
   14079 	PR c++/46803
   14080 	* c-common.c (attribute_takes_identifier_p): Assume that an
   14081 	unknown attribute takes an identifier.
   14082 
   14083 2011-03-07  Nathan Froyd  <froydnj (a] codesourcery.com>
   14084 
   14085 	PR c/47786
   14086 	* c-common.c (c_type_hash): Call list_length instead of iterating
   14087 	through DECL_CHAIN.  Rename 'i' to 'n_elements'.
   14088 
   14089 2011-02-19  Jakub Jelinek  <jakub (a] redhat.com>
   14090 
   14091 	PR c/47809
   14092 	* c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
   14093 
   14094 2011-02-17  Iain Sandoe  <iains (a] gcc.gnu.org>
   14095 
   14096 	* c.opt (fobjc-abi-version=) New.
   14097 	(fobjc-nilcheck): New.
   14098 
   14099 2011-02-03  Nathan Froyd  <froydnj (a] codesourcery.com>
   14100 
   14101 	PR c++/46890
   14102 	* c-common.h (keyword_is_decl_specifier): Declare.
   14103 	* c-common.c (keyword_is_decl_specifier): Define.
   14104 	(keyword_is_function_specifier): New function.
   14105 
   14106 2011-01-26  Jakub Jelinek  <jakub (a] redhat.com>
   14107 
   14108 	PR c/47473
   14109 	* c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
   14110 	EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
   14111 	REAL_TYPE.
   14112 
   14113 2011-01-26  Arnaud Charlet  <charlet (a] adacore.com>
   14114 
   14115 	* c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type.
   14116 
   14117 2011-01-26  Jakub Jelinek  <jakub (a] redhat.com>
   14118 
   14119 	PR pch/47430
   14120 	* c-opts.c (c_common_post_options): Call c_common_no_more_pch
   14121 	after init_c_lex if pch_file is set.
   14122 
   14123 2011-01-26  Dave Korn  <dave.korn.cygwin (a] gmail.com>
   14124 
   14125 	PR c++/43601
   14126 	* c.opt (-fkeep-inline-dllexport): New switch.
   14127 
   14128 2011-01-12  Richard Guenther  <rguenther (a] suse.de>
   14129 
   14130 	PR middle-end/32511
   14131 	* c-common.c (handle_weak_attribute): Warn instead of error
   14132 	on declaring an inline function weak.
   14133 
   14134 2011-01-05  Tom Tromey  <tromey (a] redhat.com>
   14135 
   14136 	* c-common.h (lvalue_error): Update.
   14137 	* c-common.c (lvalue_error): Add 'loc' argument.  Call error_at,
   14138 	not error.
   14139 
   14140 2010-12-29  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14141 
   14142 	PR objc/47075
   14143 	* c-objc.h (objc_finish_message_expr): Added argument to
   14144 	prototype.
   14145 
   14146 2010-12-22  Nathan Froyd  <froydnj (a] codesourcery.com>
   14147 
   14148 	* c-common.c (handle_nonnull_attribute, handle_sentinel_attribute):
   14149 	Use prototype_p.
   14150 
   14151 2010-12-18  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14152 
   14153 	* c-objc.h (objc_maybe_warn_exceptions): New.
   14154 	* stub-objc.c (objc_maybe_warn_exceptions): New.
   14155 
   14156 2010-12-10  Nathan Froyd  <froydnj (a] codesourcery.com>
   14157 
   14158 	* c-common.h (readonly_error): Declare.
   14159 	* c-common.c (readonly_error): Define.
   14160 
   14161 2010-12-09  Nathan Froyd  <froydnj (a] codesourcery.com>
   14162 
   14163 	* c-common.h (invalid_indirection_error): Declare.
   14164 	* c-common.c (invalid_indirection_error): Define.
   14165 
   14166 2010-12-03  Richard Guenther  <rguenther (a] suse.de>
   14167 
   14168 	PR c/46745
   14169 	* c-pretty-print.c (pp_c_postfix_expression): Handle MEM_REF.
   14170 	(pp_c_unary_expression): Likewise.
   14171 	(pp_c_expression): Likewise.
   14172 
   14173 2010-11-30  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14174 
   14175 	* c-common.h (objc_finish_function): New.
   14176 	(objc_non_volatilized_type): Removed.
   14177 	(objc_type_quals_match): Removed.
   14178 	* stub-objc.c (objc_finish_function): New.
   14179 	(objc_non_volatilized_type): Removed.
   14180 	(objc_type_quals_match): Removed.
   14181 
   14182 2010-11-30  Joseph Myers  <joseph (a] codesourcery.com>
   14183 
   14184 	* c-common.h (parse_optimize_options): Declare.
   14185 	* c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c,
   14186 	c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h.
   14187 
   14188 2010-11-29  Joseph Myers  <joseph (a] codesourcery.com>
   14189 
   14190 	* c-opts.c (check_deps_environment_vars): Use getenv instead of
   14191 	GET_ENVIRONMENT.
   14192 	* c-pch.c (O_BINARY): Don't define here.
   14193 	* c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
   14194 
   14195 2010-11-25  Joseph Myers  <joseph (a] codesourcery.com>
   14196 
   14197 	* c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
   14198 	targetm.except_unwind_info.
   14199 
   14200 2010-11-23  Joseph Myers  <joseph (a] codesourcery.com>
   14201 
   14202 	* c-opts.c (c_common_handle_option): Pass location to
   14203 	set_struct_debug_option.
   14204 
   14205 2010-11-23  Joseph Myers  <joseph (a] codesourcery.com>
   14206 
   14207 	* c-common.c (visibility_options): Move from ../opts.c.
   14208 	* c-common.h (struct visibility_flags, visibility_options):
   14209 	Declare here.
   14210 	* c-opts.c (finish_options): Rename to c_finish_options.
   14211 	(c_common_init): Update call to finish_options.
   14212 
   14213 2010-11-22  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14214 
   14215 	PR objc/34033
   14216 	* c-lex.c (lex_string): Check that each string in an Objective-C
   14217 	string concat sequence starts with either one or zero '@', and
   14218 	that there are no spurious '@' signs at the end.
   14219 
   14220 2010-11-20  Joseph Myers  <joseph (a] codesourcery.com>
   14221 
   14222 	* c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
   14223 	HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
   14224 	HANDLE_PRAGMA_VISIBILITY.
   14225 	* c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
   14226 	HANDLE_PRAGMA_VISIBILITY): Don't define.
   14227 	(HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.
   14228 
   14229 2010-11-20  Nathan Froyd  <froydnj (a] codesourcery.com>
   14230 
   14231 	PR c++/16189
   14232 	PR c++/36888
   14233 	PR c++/45331
   14234 	* c-common.h (keyword_begins_type_specifier): Declare.
   14235 	(keyword_is_storage_class_specifier): Declare.
   14236 	(keyword_is_type_qualifier): Declare.
   14237 	* c-common.c (keyword_begins_type_specifier): New function.
   14238 	(keyword_is_storage_class_specifier): New function.
   14239 	(keyword_is_type_qualifier): Declare.
   14240 
   14241 2010-11-19  Joseph Myers  <joseph (a] codesourcery.com>
   14242 
   14243 	PR c/46547
   14244 	* c-common.c (in_late_binary_op): Define.
   14245 	(c_common_truthvalue_conversion): Check in_late_binary_op before
   14246 	calling c_save_expr.
   14247 	* c-common.h (in_late_binary_op): Declare.
   14248 
   14249 2010-11-19  Joseph Myers  <joseph (a] codesourcery.com>
   14250 
   14251 	* c-opts.c (c_common_handle_option): Update calls to
   14252 	set_struct_debug_option.
   14253 
   14254 2010-11-19  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14255 
   14256 	* c-common.h (objc_declare_protocols): Added additional argument.
   14257 	* stub-objc.c (objc_declare_protocol): Same change.
   14258 
   14259 2010-11-18  Nathan Froyd  <froydnj (a] codesourcery.com>
   14260 
   14261 	PR c/33193
   14262 	* c-common.h (build_real_imag_expr): Declare.
   14263 	* c-semantics.c (build_real_imag_expr): Define.
   14264 
   14265 2010-11-17  Joseph Myers  <joseph (a] codesourcery.com>
   14266 
   14267 	* c-opts.c (c_common_parse_file): Take no arguments.
   14268 	* c-common.h (c_common_parse_file): Update prototype.
   14269 
   14270 2010-11-16  Jakub Jelinek  <jakub (a] redhat.com>
   14271 
   14272 	PR c++/46401
   14273 	* c-common.c (warning_candidate_p): Don't track non-const calls
   14274 	or STRING_CSTs.
   14275 
   14276 2010-11-15  Ian Lance Taylor  <iant (a] google.com>
   14277 
   14278 	* c-lex.c (init_c_lex): Set macro debug callbacks if
   14279 	flag_dump_go_spec is set.
   14280 
   14281 2010-11-15  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14282 
   14283 	* c-common.h (objc_build_incr_expr_for_property_ref): New.
   14284 	* stub-objc.c (objc_build_incr_expr_for_property_ref): New.
   14285 
   14286 2010-11-15  Nathan Froyd  <froydnj (a] codesourcery.com>
   14287 
   14288 	PR preprocessor/45038
   14289 	* c-cppbuiltin.c (c_cpp_builtins): Use different format for C++
   14290 	dialects.
   14291 
   14292 2010-11-12  Joseph Myers  <joseph (a] codesourcery.com>
   14293 
   14294 	* c-common.h (c_family_lang_mask): Declare.
   14295 	* c-opts.c (c_family_lang_mask): Make extern.
   14296 	* c-pragma.c (handle_pragma_diagnostic): Use
   14297 	control_warning_option.
   14298 
   14299 2010-11-12  Joseph Myers  <joseph (a] codesourcery.com>
   14300 
   14301 	* c-common.c (parse_optimize_options): Update call to
   14302 	decode_options.
   14303 	* c-common.h (c_common_handle_option): Update prototype.
   14304 	* c-opts.c (c_common_handle_option): Take location_t parameter and
   14305 	pass it to other functions.
   14306 
   14307 2010-11-11  Joseph Myers  <joseph (a] codesourcery.com>
   14308 
   14309 	* c-opts.c (warning_as_error_callback): Remove.
   14310 	(c_common_initialize_diagnostics): Don't call
   14311 	register_warning_as_error_callback.
   14312 	(c_common_handle_option): Handle -Werror=normalized= here.
   14313 
   14314 2010-11-10  Joseph Myers  <joseph (a] codesourcery.com>
   14315 
   14316 	* c-common.c (handle_mode_attribute): Use %' and word "signedness"
   14317 	in diagnostic.
   14318 	* c-opts.c (c_common_parse_file): Start diagnostics with lowercase
   14319 	letter.
   14320 	* c-pragma.c (handle_pragma_target, handle_pragma_optimize):
   14321 	Remove trailing '.' from diagnostics.
   14322 	* c.opt (Wwrite-strings_: Avoid '`' in help text.
   14323 
   14324 2010-11-10  Joseph Myers  <joseph (a] codesourcery.com>
   14325 
   14326 	* c-common.c (parse_optimize_options): Pass global_dc to
   14327 	decode_options.
   14328 	* c-opts.c (c_common_handle_option): Pass &global_options to
   14329 	set_Wstrict_aliasing.
   14330 	* c.opt (v): Don't mark Common or document here.
   14331 
   14332 2010-11-06  Iain Sandoe  <iains (a] gcc.gnu.org>
   14333 
   14334 	PR target/44981
   14335 	* c-format.c (format_type): New type gcc_objc_string_format_type.
   14336 	(valid_stringptr_type_p): New.
   14337 	(handle_format_arg_attribute): Use valid_stringptr_type_p ().
   14338 	(check_format_string): Pass expected type, use
   14339 	valid_stringptr_type_p (), check that the format string types are
   14340 	consistent with the format specification.
   14341 	(decode_format_attr): Warn if NSString is used outside objective-c.
   14342 	(format_types_orig): Add NSString.
   14343 	(format_name): New.
   14344 	(format_flags): New.
   14345 	(check_format_arg): Handle format strings requiring an external parser.
   14346 	first_target_format_type: New variable.
   14347 	(handle_format_attribute): Set up first_target_format_type, pass the
   14348 	expected format arg string type to check_format_string().
   14349 	* c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL): New flag.
   14350 	* stub-objc.c (objc_string_ref_type_p): New.
   14351 	(objc_check_format_arg): New.
   14352 
   14353 2010-11-04  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14354 
   14355 	Fixed using the Objective-C 2.0 dot-syntax with class names.
   14356 	* c-common.h (objc_build_class_component_ref): New.
   14357 	* stub-objc.c (objc_build_class_component_ref): New.
   14358 
   14359 2010-11-03  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14360 
   14361 	* c.opt (Wproperty-assign-default): New option.
   14362 
   14363 2010-11-03  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14364 
   14365 	Implemented -fobjc-std=objc1 flag.
   14366 	* c.opt (fobjc-std=objc1): New option.
   14367 
   14368 2010-11-01  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14369 
   14370 	Implemented format and noreturn attributes for Objective-C methods.
   14371 	* c-common.c (handle_noreturn_attribute): Recognize 'noreturn'
   14372 	attribute for Objective-C methods.
   14373 
   14374 2010-10-31  Jason Merrill  <jason (a] redhat.com>
   14375 
   14376 	* c-common.c (conversion_warning, warn_for_collisions_1): Use
   14377 	EXPR_LOC_OR_HERE.
   14378 
   14379 2010-10-30  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14380 
   14381 	Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
   14382 	* c-common.h (enum rid): Removed RID_COPIES and RID_IVAR.
   14383 	(objc_add_property_declaration): Removed arguments for copies and
   14384 	ivar.
   14385 	(objc_build_getter_call): Renamed to
   14386 	objc_maybe_build_component_ref.
   14387 	(objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
   14388 	(objc_is_property_ref): New.
   14389 	* c-common.c (c_common_reswords): Removed copies and ivar.
   14390 	* stub-objc.c (objc_add_property_declaration): Removed arguments
   14391 	for copies and ivar.
   14392 	(objc_build_getter_call): Renamed to
   14393 	objc_maybe_build_component_ref.
   14394 	(objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
   14395 	(objc_is_property_ref): New.
   14396 
   14397 2010-10-29  Arnaud Charlet  <charlet (a] adacore.com>
   14398 	    Matthew Gingell  <gingell (a] adacore.com>
   14399 
   14400 	* c-ada-spec.c (separate_class_package): New function.
   14401 	(pp_ada_tree_identifier): Prefix references to C++ classes with the
   14402 	name of their enclosing package.
   14403 	(print_ada_declaration): Use separate_class_package.
   14404 
   14405 2010-10-27  Jason Merrill  <jason (a] redhat.com>
   14406 
   14407 	* c-common.c (c_common_reswords): Add __is_literal_type.
   14408 	* c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
   14409 
   14410 	* c-common.c (check_case_value): Remove special C++ code.
   14411 
   14412 2010-10-27  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14413 
   14414 	* c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN,
   14415 	RID_RETAIN, RID_COPY and RID_NONATOMIC.  Updated RID_FIRST_PATTR
   14416 	and RID_LAST_PATTR.
   14417 	(objc_add_property_declaration): Added additional arguments.
   14418 	(objc_property_attribute_kind): Removed.
   14419 	(objc_set_property_attr): Removed.
   14420 	* c-common.c (c_common_reswords): Added readwrite, assign, retain,
   14421 	copy and nonatomic.
   14422 	* stub-objc.c (objc_add_property_declaration): Added additional
   14423 	arguments.
   14424 	(objc_set_property_attr): Removed.
   14425 
   14426 2010-10-27  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14427 
   14428 	* c-common.h (objc_add_property_variable): Renamed to
   14429 	objc_add_property_declaration.  Added location argument.
   14430 	* stub-objc.c (objc_add_property_variable): Same change.
   14431 
   14432 2010-10-23  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14433 
   14434 	* c-common.h (objc_maybe_printable_name): New.
   14435 	* stub-objc.c (objc_maybe_printable_name): New.
   14436 
   14437 2010-10-22  Artjoms Sinkarovs  <artyom.shinakroff (a] gmail.com>
   14438 	    Andrew Pinski  <pinskia (a] gmail.com>
   14439 
   14440 	* c-common.h (c_common_mark_addressable_vec): Declare.
   14441 	* c-common.c (c_common_mark_addressable_vec): New function.
   14442 
   14443 2010-10-20  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14444 
   14445 	* c-common.h (objc_set_method_type): Removed.
   14446 	(objc_add_method_declaration): Added boolean argument.
   14447 	(objc_start_method_definition): Same change.
   14448 	(objc_build_method_signature): Same change.
   14449 	* stub-objc.c (objc_set_method_type): Removed.
   14450 	(objc_add_method_declaration): Added boolean argument.
   14451 	(objc_start_method_definition): Same change.
   14452 	(objc_build_method_signature): Same change.
   14453 
   14454 2010-10-20  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14455 
   14456 	* c-common.h (finish_file): Removed.
   14457 	(objc_write_global_declarations): New.
   14458 	* c-opts.c (c_common_parse_file): Do not call finish_file.
   14459 	* stub-objc.c (objc_write_global_declarations): New.
   14460 
   14461 2010-10-18  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14462 
   14463 	Implemented parsing @synthesize and @dynamic for
   14464 	Objective-C/Objective-C++.
   14465 	* c-common.h (enum rid): Add RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
   14466 	(objc_add_synthesize_declaration): New.
   14467 	(objc_add_dynamic_declaration): New.
   14468 	* c-common.c (c_common_reswords): Add synthesize and dynamic.
   14469 	* stub-objc.c (objc_add_synthesize_declaration): New.
   14470 	(objc_add_dynamic_declaration): New.
   14471 
   14472 2010-10-18  Michael Meissner  <meissner (a] linux.vnet.ibm.com>
   14473 
   14474 	PR target/46041
   14475 	* c-cppbuiltin.c (mode_has_fma): Move function here from
   14476 	builtins.c.  Don't use the fma optab, instead just use the
   14477 	HAVE_fma* macros, so that __FP_FAST_FMA* will be defined when
   14478 	using -save-temps.
   14479 
   14480 2010-10-18  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14481 
   14482 	Merge from 'apple/trunk' branch on FSF servers.
   14483 
   14484 	2005-11-08  Fariborz Jahanian  <fjahanian (a] apple.com>
   14485 
   14486 	Radar 4330422
   14487 	* c-common.h (objc_non_volatilized_type): New declaration
   14488 	* stub-objc.c (objc_non_volatilized_type): New stub.
   14489 
   14490 2010-10-17  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14491 
   14492 	Merge from 'apple/trunk' branch on FSF servers.
   14493 
   14494 	2006-03-27  Fariborz Jahanian  <fjahanian (a] apple.com>
   14495 
   14496 	Radar 4133425
   14497 	* c-common.h (objc_diagnose_private_ivar): New decl.
   14498 	* stub-objc.c (objc_diagnose_private_ivar): New stub.
   14499 
   14500 2010-10-17  Iain Sandoe  <iains (a] gcc.gnu.org>
   14501 
   14502 	* c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
   14503 	* c-common.h (enum rid): Add RID_AT_PACKAGE.
   14504 	(objc_ivar_visibility_kind): New enum.
   14505 	(objc_set_visibility): Adjust prototype to use visibility enum.
   14506 	* stub-objc.c (objc_set_visibility): Adjust stub to use
   14507 	visibility enum.
   14508 
   14509 2010-10-14  Michael Meissner  <meissner (a] linux.vnet.ibm.com>
   14510 
   14511 	* c-cppbuiltin.c (builtin_define_float_constants): Emit
   14512 	__FP_FAST_FMA, __FP_FAST_FMAF, and __FP_FAST_FMAL if the machine
   14513 	has the appropriate fma builtins.
   14514 	(c_cpp_builtins): Adjust call to builtin_define_float_constants.
   14515 
   14516 2010-10-14  Iain Sandoe  <iains (a] gcc.gnu.org>
   14517 
   14518 	merge from FSF apple 'trunk' branch.
   14519 	2006 Fariborz Jahanian  <fjahanian (a] apple.com>
   14520 
   14521 	Radars 4436866, 4505126, 4506903, 4517826
   14522 	* c-common.c (c_common_resword): Define @property and its attributes.
   14523 	* c-common.h: Define property attribute enum entries.
   14524 	(OBJC_IS_PATTR_KEYWORD): New.
   14525 	(objc_property_attribute_kind): New enum.
   14526 	Declare objc_set_property_attr (), objc_add_property_variable (),
   14527 	objc_build_getter_call () and objc_build_setter_call ().
   14528 	* stub-objc.c (objc_set_property_attr): New stub.
   14529 	(objc_add_property_variable): Likewise.
   14530 	(objc_build_getter_call): Likewise.
   14531 	(objc_build_setter_call) Likewise.
   14532 
   14533 2010-10-13  Iain Sandoe  <iains (a] gcc.gnu.org>
   14534 
   14535 	merge from FSF apple 'trunk' branch.
   14536 	2006-04-26  Fariborz Jahanian  <fjahanian (a] apple.com>
   14537 
   14538 	Radar 3803157 (method attributes)
   14539 	* c-common.c (handle_deprecated_attribute): Recognize
   14540 	objc methods as valid declarations.
   14541 	* c-common.h: Declare objc_method_decl ().
   14542 	* stub-objc.c (objc_method_decl): New stub.
   14543 
   14544 2010-10-08  Joseph Myers  <joseph (a] codesourcery.com>
   14545 
   14546 	* c-common.c (parse_optimize_options): Call
   14547 	decode_cmdline_options_to_array_default_mask before
   14548 	decode_options.  Update arguments to decode_options.
   14549 	* c-common.h (c_common_init_options_struct): Declare.
   14550 	* c-opts.c (c_common_init_options_struct): New.  Split out from
   14551 	c_common_init_options.
   14552 
   14553 2010-10-06  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14554 
   14555 	Implemented fast enumeration for Objective-C.
   14556 	* c-common.h (objc_finish_foreach_loop): New.
   14557 	* stub-objc.c (objc_finish_foreach_loop): New.
   14558 
   14559 2010-10-05  Joseph Myers  <joseph (a] codesourcery.com>
   14560 
   14561 	* c-common.h (struct diagnostic_context): Don't declare here.
   14562 	(c_common_initialize_diagnostics): Declare using
   14563 	diagnostic_context typedef.
   14564 	* c-opts.c (c_common_handle_option): Pass global_dc to
   14565 	handle_generated_option.
   14566 
   14567 2010-10-04  Joseph Myers  <joseph (a] codesourcery.com>
   14568 
   14569 	* c-opts.c (c_common_handle_option): Pass &global_options_set to
   14570 	handle_generated_option.
   14571 
   14572 2010-10-03  Ian Lance Taylor  <iant (a] google.com>
   14573 
   14574 	* c.opt (-fplan9-extensions): New option.
   14575 
   14576 2010-10-03  Francois-Xavier Coudert  <fxcoudert (a] gcc.gnu.org>
   14577 
   14578 	* c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision):
   14579 	Remove.
   14580 	(c_cpp_builtins): Call functions from cppbuiltin.c instead
   14581 	of duplicating code.
   14582 
   14583 2010-09-30  Iain Sandoe  <iains (a] gcc.gnu.org>
   14584 
   14585 	* c-common.c: Add two new entries for @optional
   14586 	and @required keywords.
   14587 
   14588 	merge from FSF 'apple/trunk' branch.
   14589 	2006-01-30  Fariborz Jahanian  <fjahanian (a] apple.com>
   14590 
   14591 	Radar 4386773
   14592 	* c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new
   14593 	objective-c keywords.
   14594 	(objc_set_method_opt): New declaration.
   14595 	* stub-objc.c (objc_set_method_opt): New stub.
   14596 
   14597 2010-09-30  Joseph Myers  <joseph (a] codesourcery.com>
   14598 
   14599 	* c-common.c (handle_optimize_attribute): Pass &global_options to
   14600 	cl_optimization_save and cl_optimization_restore.
   14601 	* c-opts.c (c_common_handle_option): Pass &global_options to
   14602 	handle_generated_option.
   14603 	* c-pragma.c (handle_pragma_diagnostic): Use option_flag_var.
   14604 	(handle_pragma_pop_options, handle_pragma_reset_options): Pass
   14605 	&global_options to cl_optimization_restore.
   14606 
   14607 2010-09-30  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14608 
   14609 	* c-lex.c (c_lex_with_flags): Updated comments for CPP_AT_NAME
   14610 	Objective-C/Objective-C++ keywords.
   14611 
   14612 2010-09-29  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14613 
   14614 	Merge from 'apple/trunk' branch on FSF servers.
   14615 
   14616 	2005-10-04  Fariborz Jahanian  <fjahanian (a] apple.com>
   14617 
   14618 	Radar 4281748
   14619 	* c-common.h (objc_check_global_decl): New declaration.
   14620 	* stub-objc.c (objc_check_global_decl): New stub.
   14621 
   14622 2010-09-29  Joseph Myers  <joseph (a] codesourcery.com>
   14623 
   14624 	* c.opt: Don't use VarExists.
   14625 
   14626 2010-09-29  Joseph Myers  <joseph (a] codesourcery.com>
   14627 
   14628 	* c-common.c (c_cpp_error): Update names of diagnostic_context
   14629 	members.
   14630 	* c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of
   14631 	cl_optimization members.
   14632 	* c-opts.c (warning_as_error_callback, c_common_handle_option,
   14633 	sanitize_cpp_opts, finish_options): Update names of cpp_options
   14634 	members.
   14635 
   14636 2010-09-29  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14637 
   14638 	* c-common.h (OBJC_IS_CXX_KEYWORD): New macro.  Updated comments.
   14639 	(objc_is_reserved_word): Removed.
   14640 	* c-common.c: Updated comments.
   14641 	* c-lex.c (c_lex_with_flags): Use OBJC_IS_CXX_KEYWORD instead of
   14642 	objc_is_reserved_word.
   14643 	* stub-objc.c (objc_is_reserved_word): Removed.
   14644 
   14645 2010-09-28  Iain Sandoe  <iains (a] gcc.gnu.org>
   14646 
   14647 	* c-common.h (objc_add_method_declaration): Adjust prototype to
   14648 	include attributes.
   14649 	(objc_start_method_definition): Likewise.
   14650 	(objc_build_keyword_decl): Likewise.
   14651 	* stub-objc.c:(objc_add_method_declaration): Handle attributes.
   14652 	(objc_start_method_definition): Likewise.
   14653 	(objc_build_keyword_decl): Likewise.
   14654 
   14655 2010-09-28  Iain Sandoe  <iains (a] gcc.gnu.org>
   14656 
   14657 	* c-common.h (objc_start_class_interface): Adjust prototype.
   14658 	(objc_start_category_interface): Likewise.
   14659 	(objc_start_protocol): Likewise.
   14660 	* stub-objc.c (objc_start_protocol): Adjust for extra argument.
   14661 	(objc_start_class_interface): Likewise.
   14662 	(objc_start_category_interface): Likewise.
   14663 
   14664 2010-09-27  Ian Lance Taylor  <iant (a] google.com>
   14665 
   14666 	* c-common.c (c_common_attribute_table): Add no_split_stack.
   14667 	(handle_no_split_stack_attribute): New static function.
   14668 
   14669 2010-09-27  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14670 
   14671 	Merge from 'apple/trunk' branch on FSF servers.
   14672 
   14673 	2005-12-15  Fariborz Jahanian  <fjahanian (a] apple.com>
   14674 
   14675 	Radar 4229905
   14676 	* c-common.h (objc_have_common_type): New declaration.
   14677 	* stub-objc.c (objc_have_common_type): New stub.
   14678 
   14679 	2005-06-22  Ziemowit Laski  <zlaski (a] apple.com>
   14680 
   14681 	Radar 4154928
   14682 	* c-common.h (objc_common_type): New prototype.
   14683 	* stub-objc.c (objc_common_type): New stub.
   14684 
   14685 2010-09-24  Jan Hubicka  <jh (a] suse.cz>
   14686 
   14687 	* c-common.c (handle_leaf_attribute): New function.
   14688 	(struct attribute_spec c_common_att): Add leaf.
   14689 
   14690 2010-09-22  Joseph Myers  <joseph (a] codesourcery.com>
   14691 
   14692 	* c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
   14693 	-comments-in-macros, -define-macro, -define-macro=, -dependencies,
   14694 	-dump, -dump=, -imacros, -imacros=, -include, -include=,
   14695 	-include-barrier, -include-directory, -include-directory=,
   14696 	-include-directory-after, -include-directory-after=,
   14697 	-include-prefix, -include-prefix=, -include-with-prefix,
   14698 	-include-with-prefix=, -include-with-prefix-after,
   14699 	-include-with-prefix-after=, -include-with-prefix-before,
   14700 	-include-with-prefix-before=, -no-integrated-cpp,
   14701 	-no-line-commands, -no-standard-includes, -no-warnings, -output,
   14702 	-output=, -pedantic, -pedantic-errors, -preprocess,
   14703 	-print-missing-file-dependencies, -trace-includes, -traditional,
   14704 	-traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
   14705 	-user-dependencies, -verbose, -write-dependencies,
   14706 	-write-user-dependencies, no-integrated-cpp, traditional): New.
   14707 
   14708 2010-09-21  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14709 
   14710 	PR objc/23710
   14711 	* c-common.h (objc_start_method_definition): Return bool instead
   14712 	of void.
   14713 	* stub-objc.c (objc_start_method_definition): Return bool instead
   14714 	of void.
   14715 
   14716 2010-09-21  Nicola Pero  <nicola.pero (a] meta-innovation.com>
   14717 
   14718 	PR objc/25965
   14719 	* c-common.h (objc_get_interface_ivars): New declaration.
   14720 	* stub-objc.c (objc_get_interface_ivars): New stub.
   14721 
   14722 2010-09-15  Ian Lance Taylor  <iant (a] google.com>
   14723 
   14724 	* c-common.c (parse_optimize_options): Do not capitalize warning
   14725 	messages.  Remove period at end of warning message.
   14726 
   14727 2010-09-09  Nathan Sidwell  <nathan (a] codesourcery.com>
   14728 
   14729 	* c-common.c (handle_alias_ifunc_attribute): New, broken out of	...
   14730 	(handle_alias_attribute): ... here.
   14731 	(handle_ifunc_attribute): New.
   14732 
   14733 2010-09-06  Mark Mitchell  <mark (a] codesourcery.com>
   14734 
   14735 	* c-common.h (do_warn_double_promotion): Declare.
   14736 	* c-common.c (do_warn_double_promotion): Define.
   14737 
   14738 2010-09-05  Mark Mitchell  <mark (a] codesourcery.com>
   14739 
   14740 	* c.opt (Wdouble-promotion): New.
   14741 
   14742 2010-09-02  Joseph Myers  <joseph (a] codesourcery.com>
   14743 
   14744 	* c.opt (falt-external-templates, fhuge-objects, fvtable-gc,
   14745 	fvtable-thunks, fxref): Mark no longer supported in help text.
   14746 
   14747 2010-09-02  Joseph Myers  <joseph (a] codesourcery.com>
   14748 
   14749 	* c.opt (Wimport, fall-virtual, falt-external-templates,
   14750 	fdefault-inline, fenum-int-equiv, fexternal-templates,
   14751 	fguiding-decls, fhonor-std, fhuge-objects, flabels-ok,
   14752 	fname-mangling-version-, fnew-abi, fnonnull-objects,
   14753 	foptional-diags, fsquangle, fstrict-prototype, fthis-is-variable,
   14754 	fvtable-gc, fvtable-thunks, fxref): Mark with Ignore and Warn as
   14755 	applicable.
   14756 	(fhandle-exceptions): Mark with Alias and Warn.
   14757 	* c-opts.c (c_common_handle_option): Don't handle options marked
   14758 	as ignored.
   14759 
   14760 2010-09-02  Joseph Myers  <joseph (a] codesourcery.com>
   14761 
   14762 	* c.opt (Wcomments, Werror-implicit-function-declaration,
   14763 	ftemplate-depth-, std=c89, std=c9x, std=gnu89, std=gnu9x,
   14764 	std=iso9899:1990, std=iso9899:1999, std=iso9899:199x): Mark as
   14765 	aliases.
   14766 	* c-common.c (option_codes): Use OPT_Wcomment instead of
   14767 	OPT_Wcomments.
   14768 	* c-opts.c (warning_as_error_callback, c_common_handle_option):
   14769 	Don't handle options marked as aliases.
   14770 
   14771 2010-08-25  Richard Guenther  <rguenther (a] suse.de>
   14772 
   14773 	* c-common.c (c_common_get_alias_set): Remove special
   14774 	handling for pointers.
   14775 
   14776 2010-08-20  Nathan Froyd  <froydnj (a] codesourcery.com>
   14777 
   14778 	* c-common.c: Use FOR_EACH_VEC_ELT.
   14779 	* c-gimplify.c: Likewise.
   14780 	* c-pragma.c: Likewise.
   14781 
   14782 2010-08-16  Joseph Myers  <joseph (a] codesourcery.com>
   14783 
   14784 	* c.opt (MDX): Change back to MD.  Mark NoDriverArg instead of
   14785 	RejectDriver.
   14786 	(MMDX): Change back to MMD.  Mark NoDriverArg instead of
   14787 	RejectDriver.
   14788 	* c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
   14789 	instead of OPT_MDX and OPT_MMDX.
   14790 
   14791 2010-08-16  Joseph Myers  <joseph (a] codesourcery.com>
   14792 
   14793 	* c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.
   14794 
   14795 2010-08-12  Joseph Myers  <joseph (a] codesourcery.com>
   14796 
   14797 	* c.opt (MD, MMD): Change to MDX and MMDX.
   14798 	* c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX.
   14799 
   14800 2010-08-11  Joseph Myers  <joseph (a] codesourcery.com>
   14801 
   14802 	* c-opts.c (c_common_handle_option): Call handle_generated_option
   14803 	instead of handle_option.
   14804 
   14805 2010-08-08  Nathan Froyd  <froydnj (a] codesourcery.com>
   14806 
   14807 	* c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
   14808 	(maybe_apply_renaming_pragma): Delete unneeded declarations.
   14809 
   14810 2010-08-08  Nathan Froyd  <froydnj (a] codesourcery.com>
   14811 
   14812 	* c-pragma.c (pending_redefinition): Declare.  Declare a VEC of it.
   14813 	(pending_redefine_extname): Change type to a VEC.
   14814 	(add_to_renaming_pragma_list): Update for new type of
   14815 	pending_redefine_extname.
   14816 	(maybe_apply_renaming_pragma): Likewise.
   14817 
   14818 2010-08-04  Arnaud Charlet  <charlet (a] adacore.com>
   14819 
   14820 	* c-ada-spec.c (dump_ada_template): Mark underlying instance type as
   14821 	visited.
   14822 	(dump_generic_ada_node): Code clean up. Use TREE_VISITED flag to
   14823 	decide whether a type has already been declared/seen.
   14824 	Do not go to the original type.
   14825 	(dump_nested_types): New parameter forward.
   14826 	Generate forward declaration if needed and mark type as visited.
   14827 	(print_ada_declaration): Call dump_nested_types if not already done.
   14828 	Mark types as visited.
   14829 
   14830 2010-08-03  Joseph Myers  <joseph (a] codesourcery.com>
   14831 
   14832 	* c.opt (-print-pch-checksum): Remove option.
   14833 	* c-opts.c (c_common_handle_option): Don't handle
   14834 	OPT_print_pch_checksum.
   14835 
   14836 2010-07-27  Joseph Myers  <joseph (a] codesourcery.com>
   14837 
   14838 	* c-common.h (c_common_handle_option): Update prototype and return
   14839 	value type.
   14840 	* c-opts.c (c_common_handle_option): Update prototype and return
   14841 	value type.  Update calls to handle_option and
   14842 	enable_warning_as_error.
   14843 
   14844 2010-07-27  Jakub Jelinek  <jakub (a] redhat.com>
   14845 
   14846 	PR c/45079
   14847 	* c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
   14848 
   14849 2010-07-27  Joseph Myers  <joseph (a] codesourcery.com>
   14850 
   14851 	* c-common.h (c_common_missing_argument): Remove.
   14852 	* c-opts.c (c_common_missing_argument): Remove.
   14853 	* c.opt (A, D, F, I, MD, MMD, MQ, MT, U, fconstant-string-class=,
   14854 	idirafter, imacros, include, isysroot, isystem, iquote): Add
   14855 	MissingArgError.
   14856 	* c-objc-common.h (LANG_HOOKS_MISSING_ARGUMENT): Remove.
   14857 
   14858 2010-07-27  Joseph Myers  <joseph (a] codesourcery.com>
   14859 
   14860 	* c-common.h (c_common_option_lang_mask,
   14861 	c_common_initialize_diagnostics, c_common_complain_wrong_lang_p):
   14862 	New.
   14863 	(c_common_init_options): Update prototype.
   14864 	* c-opts.c (c_common_option_lang_mask): New.
   14865 	(c_common_initialize_diagnostics): Split out of
   14866 	c_common_init_options.
   14867 	(accept_all_c_family_options, c_common_complain_wrong_lang_p):
   14868 	New.
   14869 	(c_common_init_options): Update prototype.  Use decoded options in
   14870 	search for -lang-asm.
   14871 
   14872 2010-07-15  Nathan Froyd  <froydnj (a] codesourcery.com>
   14873 
   14874 	* c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
   14875 	* c-format.c: Likewise.
   14876 
   14877 2010-07-08  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   14878 
   14879 	* c-common.h: Include diagnostic-core.h. Error if already
   14880 	included.
   14881 	* c-semantics.c: Do not define GCC_DIAG_STYLE here.
   14882 
   14883 2010-07-03  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   14884 
   14885 	* c-common.c (IN_GCC_FRONTEND): Do not undef.
   14886 	Do not include expr.h
   14887 	(vector_mode_valid_p): Move here.
   14888 
   14889 2010-06-21  DJ Delorie  <dj (a] redhat.com>
   14890 
   14891 	* c-pragma.c (handle_pragma_diagnostic): Add push/pop,
   14892 	allow these pragmas anywhere.
   14893 
   14894 2010-06-14  Jakub Jelinek  <jakub (a] redhat.com>
   14895 
   14896 	PR bootstrap/44509
   14897 	* c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
   14898 	(lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
   14899 	(lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
   14900 	ggc_strdup instead of xstrdup.
   14901 
   14902 2010-06-10  Jakub Jelinek  <jakub (a] redhat.com>
   14903 
   14904 	* c-cppbuiltin.c: Include cpp-id-data.h.
   14905 	(lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
   14906 	(lazy_hex_fp_value): New function.
   14907 	(builtin_define_with_hex_fp_value): Provide definitions lazily.
   14908 
   14909 2010-06-30  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   14910 
   14911 	* c-gimplify.c: Do not include tree-flow.h
   14912 
   14913 2010-06-29  Joern Rennecke  <joern.rennecke (a] embecosm.com>
   14914 
   14915 	PR other/44034
   14916 	* c-common.c: Rename targetm member:
   14917 	targetm.enum_va_list -> targetm.enum_va_list_p
   14918 
   14919 2010-06-28  Anatoly Sokolov  <aesok (a] post.ru>
   14920 
   14921 	* c-common.c (shorten_compare): Adjust call to force_fit_type_double.
   14922 
   14923 2010-06-28  Steven Bosscher  <steven (a] gcc.gnu.org>
   14924 
   14925 	* c-cppbuiltin.c: Do not include except.h.
   14926 
   14927 2010-06-24  Andi Kleen  <ak (a] linux.intel.com>
   14928 
   14929 	* c-common.c (warn_for_omitted_condop): New.
   14930 	* c-common.h (warn_for_omitted_condop): Add prototype.
   14931 
   14932 2010-06-21  Joseph Myers  <joseph (a] codesourcery.com>
   14933 
   14934 	* c.opt (lang-objc): Remove.
   14935 	* c-opts.c (c_common_handle_option): Don't handle OPT_lang_objc.
   14936 
   14937 2010-06-21  Joern Rennecke  <joern.rennecke (a] embecosm.com>
   14938 
   14939 	* c-opts.c: Include "tm_p.h".
   14940 
   14941 2010-06-20  Joseph Myers  <joseph (a] codesourcery.com>
   14942 
   14943 	* c-common.c (parse_optimize_options): Update call to
   14944 	decode_options.
   14945 
   14946 2010-06-18  Nathan Froyd  <froydnj (a] codesourcery.com>
   14947 
   14948 	* c-common.c (record_types_used_by_current_var_decl): Adjust for
   14949 	new type of types_used_by_cur_var_decl.
   14950 
   14951 2010-06-17  Joern Rennecke  <joern.rennecke (a] embecosm.com>
   14952 
   14953 	PR bootstrap/44512
   14954 	* c-cppbuiltin.c (builtin_define_with_hex_fp_value): Add cast
   14955 	for C++ standard compliance.
   14956 
   14957 2010-06-16  Jason Merrill  <jason (a] redhat.com>
   14958 
   14959 	* c.opt: Add -Wnoexcept.
   14960 
   14961 2010-06-16  Richard Guenther  <rguenther (a] suse.de>
   14962 
   14963 	PR c/44555
   14964 	* c-common.c (c_common_truthvalue_conversion): Remove
   14965 	premature and wrong optimization concering ADDR_EXPRs.
   14966 
   14967 2010-06-15  Arnaud Charlet  <charlet (a] adacore.com>
   14968 
   14969 	* c-ada-spec.c (dump_sloc): Remove column info.
   14970 	(is_simple_enum): New function.
   14971 	(dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada
   14972 	enum types when relevant.
   14973 
   14974 2010-06-11  Manuel Lpez-Ibez  <manu (a] gcc.gnu.org>
   14975 
   14976 	* c-common.c (conversion_warning): Warn at expression
   14977 	location.
   14978 
   14979 2010-06-10  Joseph Myers  <joseph (a] codesourcery.com>
   14980 
   14981 	* c-opts.c (c_common_handle_option): Don't handle
   14982 	OPT_fshow_column.
   14983 
   14984 2010-06-08  Laurynas Biveinis  <laurynas.biveinis (a] gmail.com>
   14985 
   14986 	* c-pragma.c (push_alignment): Use typed GC allocation.
   14987 	(handle_pragma_push_options): Likewise.
   14988 
   14989 	* c-common.c (parse_optimize_options): Likewise.
   14990 
   14991 	* c-common.h (struct sorted_fields_type): Add variable_size GTY
   14992 	option.
   14993 
   14994 2010-06-07  Joseph Myers  <joseph (a] codesourcery.com>
   14995 
   14996 	* c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
   14997 	flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
   14998 	flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
   14999 	flag_signed_bitfields, warn_strict_null_sentinel,
   15000 	flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
   15001 	flag_gen_declaration, flag_no_gnu_keywords,
   15002 	flag_implement_inlines, flag_implicit_templates,
   15003 	flag_implicit_inline_templates, flag_optional_diags,
   15004 	flag_elide_constructors, flag_default_inline, flag_rtti,
   15005 	flag_conserve_space, flag_access_control, flag_check_new,
   15006 	flag_new_for_scope, flag_weak, flag_working_directory,
   15007 	flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
   15008 	flag_enforce_eh_specs, flag_threadsafe_statics,
   15009 	flag_pretty_templates): Remove.
   15010 	* c-common.h (flag_preprocess_only, flag_nil_receivers,
   15011 	flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
   15012 	flag_replace_objc_classes, flag_undef, flag_no_builtin,
   15013 	flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
   15014 	flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
   15015 	flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
   15016 	flag_no_gnu_keywords, flag_implement_inlines,
   15017 	flag_implicit_templates, flag_implicit_inline_templates,
   15018 	flag_optional_diags, flag_elide_constructors, flag_default_inline,
   15019 	flag_rtti, flag_conserve_space, flag_access_control,
   15020 	flag_check_new, flag_new_for_scope, flag_weak,
   15021 	flag_working_directory, flag_use_cxa_atexit,
   15022 	flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
   15023 	flag_threadsafe_statics, flag_pretty_templates,
   15024 	warn_strict_null_sentinel): Remove.
   15025 	* c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
   15026 	fbuiltin, fcheck-new, fconserve-space, felide-constructors,
   15027 	fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
   15028 	fimplicit-inline-templates, fimplicit-templates,
   15029 	flax-vector-conversions, fms-extensions, fnil-receivers,
   15030 	fnonansi-builtins, fpretty-templates, freplace-objc-classes,
   15031 	frtti, fshort-double, fshort-enums, fshort-wchar,
   15032 	fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
   15033 	funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
   15034 	fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
   15035 	gen-decls, undef): Use Var.
   15036 	(fdefault-inline, foptional-diags): Document as doing nothing.
   15037 	* c-opts.c (c_common_handle_option): Remove cases for options now
   15038 	using Var.  Mark ignored options as such.
   15039 
   15040 2010-06-05  Steven Bosscher  <steven (a] gcc.gnu.org>
   15041 
   15042 	* c-common.c: Moved to here from parent directory.
   15043 	* c-common.def: Likewise.
   15044 	* c-common.h: Likewise.
   15045 	* c-cppbuiltin.c: Likewise.
   15046 	* c-dump.c: Likewise.
   15047 	* c-format.c: Likewise.
   15048 	* c-format.h : Likewise.
   15049 	* c-gimplify.c: Likewise.
   15050 	* c-lex.c: Likewise.
   15051 	* c-omp.c: Likewise.
   15052 	* c.opt: Likewise.
   15053 	* c-opts.c: Likewise.
   15054 	* c-pch.c: Likewise.
   15055 	* c-ppoutput.c: Likewise.
   15056 	* c-pragma.c: Likewise.
   15057 	* c-pragma.h: Likewise.
   15058 	* c-pretty-print.c: Likewise.
   15059 	* c-pretty-print.h: Likewise.
   15060 	* c-semantics.c: Likewise.
   15061 	* stub-objc.c: Likewise.
   15062 
   15063 	* c-common.c: Include gt-c-family-c-common.h.
   15064 	* c-pragma.c: Include gt-c-family-c-pragma.h.
   15065 
   15067 Copyright (C) 2010-2024 Free Software Foundation, Inc.
   15068 
   15069 Copying and distribution of this file, with or without modification,
   15070 are permitted in any medium without royalty provided the copyright
   15071 notice and this notice are preserved.
   15072