12014-10-30 Release Manager 2 3 * GCC 4.9.2 released. 4 52014-10-10 Jakub Jelinek <jakub@redhat.com> 6 7 PR c/63495 8 * c-common.c (min_align_of_type): Don't decrease alignment 9 through BIGGEST_FIELD_ALIGNMENT or ADJUST_FIELD_ALIGN if 10 TYPE_USER_ALIGN is set. 11 122014-10-08 Edward Smith-Rowland <3dw4rd@verizon.net> 13 14 Implement SD-6: SG10 Feature Test Recommendations 15 * c-cppbuiltin.c (c_cpp_builtins()): Define language feature 16 macros and the __has_header macro. 17 182014-08-12 Igor Zamyatin <igor.zamyatin@intel.com> 19 20 PR other/61962 21 * array-notation-common.c (find_rank): Added handling for other 22 types of references. 23 242014-08-01 Igor Zamyatin <igor.zamyatin@intel.com> 25 26 PR middle-end/61455 27 * array-notation-common.c (extract_array_notation_exprs): Handling 28 of DECL_EXPR added. 29 302014-07-17 Richard Biener <rguenther@suse.de> 31 32 Backport from mainline 33 2014-07-09 Richard Biener <rguenther@suse.de> 34 35 PR c-family/61741 36 * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions 37 using unsigned arithmetic if overflow does not wrap instead of 38 if overflow is undefined. 39 402014-07-16 Release Manager 41 42 * GCC 4.9.1 released. 43 442014-06-30 Jakub Jelinek <jakub@redhat.com> 45 46 Backported from mainline 47 2014-06-10 Jakub Jelinek <jakub@redhat.com> 48 49 PR fortran/60928 50 * c-pragma.c (omp_pragmas_simd): Move PRAGMA_OMP_TASK... 51 (omp_pragmas): ... back here. 52 532014-06-12 Jakub Jelinek <jakub@redhat.com> 54 55 PR middle-end/61486 56 * c-omp.c (c_omp_split_clauses): Don't crash on firstprivate in 57 #pragma omp target teams or 58 #pragma omp {,target }teams distribute simd. 59 602014-06-04 Marek Polacek <polacek@redhat.com> 61 62 Backport from mainline 63 2014-05-08 Marek Polacek <polacek@redhat.com> 64 65 PR c/61053 66 * c-common.c (min_align_of_type): New function factored out from... 67 (c_sizeof_or_alignof_type): ...here. 68 * c-common.h (min_align_of_type): Declare. 69 702014-05-06 Richard Biener <rguenther@suse.de> 71 72 * c-opts.c (c_common_post_options): For -freestanding, 73 -fno-hosted and -fno-builtin disable pattern recognition 74 if not enabled explicitely. 75 762014-04-22 Richard Biener <rguenther@suse.de> 77 78 Backport from mainline 79 2014-04-14 Richard Biener <rguenther@suse.de> 80 Marc Glisse <marc.glisse@inria.fr> 81 82 PR c/60819 83 * c-common.c (convert_vector_to_pointer_for_subscript): Properly 84 apply may-alias the scalar pointer type when applicable. 85 862014-04-22 Release Manager 87 88 * GCC 4.9.0 released. 89 902014-04-15 Igor Zamyatin <igor.zamyatin@intel.com> 91 92 PR middle-end/60467 93 * cilk.c (cilk_set_spawn_marker): Remove FUNCTION_DECL 94 as possible argument for Cilk_spawn. 95 962014-04-08 Marek Polacek <polacek@redhat.com> 97 98 PR sanitizer/60745 99 * c-ubsan.c: Include asan.h. 100 (ubsan_instrument_return): Call initialize_sanitizer_builtins. 101 1022014-04-03 Nathan Sidwell <nathan@codesourcery.com> 103 104 * c.opt (Wnon-virtual-dtor): Auto set when Weffc++. 105 1062014-04-02 Marek Polacek <polacek@redhat.com> 107 108 * c-common.h (c_expand_expr): Remove declaration. 109 1102014-03-28 Jakub Jelinek <jakub@redhat.com> 111 112 PR c++/60689 113 * c-common.c (add_atomic_size_parameter): When creating new 114 params vector, push the size argument first. 115 1162014-03-26 Jakub Jelinek <jakub@redhat.com> 117 118 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift, 119 ubsan_instrument_vla, ubsan_instrument_return): Adjust 120 ubsan_create_data callers. 121 1222014-03-22 Jakub Jelinek <jakub@redhat.com> 123 124 PR debug/60603 125 * c-opts.c (c_finish_options): Restore cb_file_change call to 126 <built-in>. 127 1282014-03-13 Jakub Jelinek <jakub@redhat.com> 129 130 PR middle-end/36282 131 * c-pragma.c (apply_pragma_weak): Only look at 132 TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl)) if 133 DECL_ASSEMBLER_NAME_SET_P (decl). 134 (maybe_apply_pending_pragma_weaks): Exit early if 135 vec_safe_is_empty (pending_weaks) rather than only when 136 !pending_weaks. 137 (maybe_apply_pragma_weak): Likewise. If !DECL_ASSEMBLER_NAME_SET_P, 138 set assembler name back to NULL afterwards. 139 1402014-03-11 Jason Merrill <jason@redhat.com> 141 142 * c.opt: Add -std=gnu++14. 143 1442014-03-11 Ian Bolton <ian.bolton@arm.com> 145 146 * c-opts.c (c_common_post_options): Don't override 147 -ffp-contract=fast if unsafe-math-optimizations is on. 148 1492014-03-08 Paulo Matos <paulo@matos-sorge.com> 150 151 * c.opt: Enable LTO FE for fshort-double. 152 1532014-03-07 Jason Merrill <jason@redhat.com> 154 155 * c.opt: Add -std=c++14. 156 1572014-03-06 Marek Polacek <polacek@redhat.com> 158 159 PR c/60197 160 * cilk.c (contains_cilk_spawn_stmt): New function. 161 (contains_cilk_spawn_stmt_walker): Likewise. 162 (recognize_spawn): Give error on invalid use of _Cilk_spawn. 163 * c-common.h (contains_cilk_spawn_stmt): Add declaration. 164 1652014-03-03 Jakub Jelinek <jakub@redhat.com> 166 167 * c-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_SIMD. 168 (init_pragma): Call cpp_register_deferred_pragma for PRAGMA_CILK_SIMD 169 even when flag_preprocess_only. 170 1712014-02-26 Jason Merrill <jason@redhat.com> 172 173 PR c++/59231 174 PR c++/11586 175 * c-common.c (shorten_compare): Don't check 176 c_inhibit_evaluation_warnings. 177 1782014-02-19 Jakub Jelinek <jakub@redhat.com> 179 180 PR c/37743 181 * c-common.c (c_common_nodes_and_builtins): When initializing 182 c_uint{16,32,64}_type_node, also set corresponding 183 uint{16,32,64}_type_node to the same value. 184 185 PR c++/60267 186 * c-pragma.c (init_pragma): Don't call cpp_register_deferred_pragma 187 for PRAGMA_IVDEP if flag_preprocess_only. 188 1892014-02-12 Jakub Jelinek <jakub@redhat.com> 190 191 PR c/60101 192 * c-common.c (merge_tlist): If copy is true, call new_tlist, 193 if false, add ADD itself, rather than vice versa. 194 (verify_tree): For COND_EXPR, don't call merge_tlist with non-zero 195 copy. For SAVE_EXPR, only call merge_tlist once. 196 1972014-02-08 Jakub Jelinek <jakub@redhat.com> 198 199 PR middle-end/60092 200 * c-common.c (handle_alloc_size_attribute): Use tree_fits_uhwi_p 201 and tree_to_uhwi. 202 (handle_alloc_align_attribute, handle_assume_aligned_attribute): New 203 functions. 204 (c_common_attribute_table): Add alloc_align and assume_aligned 205 attributes. 206 2072014-02-06 Marek Polacek <polacek@redhat.com> 208 209 PR c/60087 210 * c-common.c (warn_for_sign_compare): Call warning_at with location 211 instead of warning. 212 2132014-02-05 Marek Polacek <polacek@redhat.com> 214 215 PR c/53123 216 * c-omp.c (c_finish_omp_atomic): Remove unreachable return 217 statement. 218 2192014-02-04 Marek Polacek <polacek@redhat.com> 220 221 PR c/60036 222 * c-common.c (conversion_warning): Unwrap C_MAYBE_CONST_EXPR and/or 223 SAVE_EXPR. 224 2252014-02-03 Marc Glisse <marc.glisse@inria.fr> 226 227 PR c++/53017 228 PR c++/59211 229 * c-common.c (handle_aligned_attribute, handle_alloc_size_attribute, 230 handle_vector_size_attribute, handle_nonnull_attribute): Call 231 default_conversion on the attribute argument. 232 (handle_nonnull_attribute): Increment the argument number. 233 2342014-01-31 Marek Polacek <polacek@redhat.com> 235 236 PR c/59963 237 * c-common.c (add_atomic_size_parameter): Pass vNULL to 238 build_function_call_vec. 239 (resolve_overloaded_builtin): Likewise. 240 * c-common.h (build_function_call_vec): Adjust declaration. 241 2422014-01-30 Marek Polacek <polacek@redhat.com> 243 244 PR c/59940 245 * c-common.h (unsafe_conversion_p): Adjust declaration. 246 (warnings_for_convert_and_check): Likewise. 247 (convert_and_check): Likewise. 248 * c-common.c (unsafe_conversion_p): Add location parameter. Call 249 expansion_point_location_if_in_system_header on it. 250 (warnings_for_convert_and_check): Add location parameter. Call 251 expansion_point_location_if_in_system_header on it. Use it. 252 (convert_and_check): Add location parameter. Use it. 253 (conversion_warning): Likewise. 254 (c_add_case_label): Adjust convert_and_check calls. 255 (scalar_to_vector): Adjust unsafe_conversion_p calls. 256 2572014-01-24 Balaji V. Iyer <balaji.v.iyer@intel.com> 258 259 * c-common.c (c_define_builtins): Replaced flag_enable_cilkplus with 260 flag_cilkplus. 261 * c-pragma.c (init_pragma): Likewise. 262 * c.opt: Likewise. 263 2642014-01-23 Marek Polacek <polacek@redhat.com> 265 266 PR c/59846 267 * c-common.c (shorten_compare): Add location_t parameter. 268 * c-common.h (shorten_binary_op): Adjust declaration. 269 2702014-01-23 Marek Polacek <polacek@redhat.com> 271 272 PR c/58346 273 * c-common.c (pointer_to_zero_sized_aggr_p): New function. 274 * c-common.h: Declare it. 275 2762014-01-20 Eric Botcazou <ebotcazou@adacore.com> 277 278 * c-ada-spec.h (dump_ada_specs): Revert prototype change. 279 * c-ada-spec.c (dump_ads): Likewise. 280 (cpp_check): Likewise. 281 (dump_ada_specs): Likewise. 282 2832014-01-15 Laurent Alfonsi <laurent.alfonsi@st.com> 284 285 PR c++/49718 286 * c-common.c (handle_no_instrument_function_attribute): Allow 287 no_instrument_function attribute in class member 288 definition/declaration. 289 2902014-01-15 Jakub Jelinek <jakub@redhat.com> 291 292 PR c/58943 293 * c-omp.c (c_finish_omp_atomic): Set in_late_binary_op around 294 build_modify_expr with non-NOP_EXPR opcode. Handle return from it 295 being COMPOUND_EXPR. 296 (c_finish_omp_for): Handle incr being COMPOUND_EXPR with first 297 operand a SAVE_EXPR and second MODIFY_EXPR. 298 2992014-01-09 Jakub Jelinek <jakub@redhat.com> 300 301 PR target/58115 302 * c-pch.c (c_common_write_pch): Call 303 prepare_target_option_nodes_for_pch. 304 3052014-01-02 Richard Sandiford <rdsandiford@googlemail.com> 306 307 Update copyright years 308 3092014-01-02 Richard Sandiford <rdsandiford@googlemail.com> 310 311 * array-notation-common.c, c-cilkplus.c: Use the standard form for 312 the copyright notice. 313 3142013-12-28 Eric Botcazou <ebotcazou@adacore.com> 315 316 * c-ada-spec.c (print_constructor): New function. 317 (print_destructor): Retrieve the origin of the destructor. 318 (print_ada_declaration): Revamp handling of constructors/destructors. 319 3202013-12-23 Stuart Hastings <stuart@apple.com> 321 Bill Maddox <maddox@google.com> 322 Jason Merrill <jason@redhat.com> 323 324 * c.opt: Add -fdeclone-ctor-dtor. 325 * c-opts.c (c_common_post_options): Default to on iff -Os. 326 3272013-12-18 Balaji V. Iyer <balaji.v.iyer@intel.com> 328 329 * c-common.c (c_common_attribute_table): Added "cilk simd function" 330 attribute. 331 * c-pragma.h (enum pragma_cilk_clause): Remove. 332 (enum pragma_omp_clause): Added the following fields: 333 PRAGMA_CILK_CLAUSE_NOMASK, PRAGMA_CILK_CLAUSE_MASK, 334 PRAGMA_CILK_CLAUSE_VECTORLENGTH, PRAGMA_CILK_CLAUSE_NONE, 335 PRAGMA_CILK_CLAUSE_LINEAR, PRAGMA_CILK_CLAUSE_PRIVATE, 336 PRAGMA_CILK_CLAUSE_FIRSTPRIVATE, PRAGMA_CILK_CLAUSE_LASTPRIVATE, 337 PRAGMA_CILK_CLAUSE_UNIFORM. 338 339 3402013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com> 341 342 * cilk.c (cilk_outline): Made this function non-static. 343 (gimplify_cilk_spawn): Removed pre_p and post_p arguments. 344 (create_cilk_wrapper): Added a new parameter: a function pointer. 345 (c_install_body_w_frame_cleanup): Remove 346 (extract_free_variables): Added VEC_INIT_EXPR and CONSTRUCTOR case. 347 * c-common.h (cilk_outline): New prototype. 348 (gimplify_cilk_spawn): Removed two parameters. 349 (cilk_install_body_with_frame_cleanup): New prototype. 350 * c-gimplify.c (c_gimplify_expr): Added MODIFY_EXPR, CALL_EXPR and 351 CILK_SPAWN_STMT case. 352 3532013-12-11 Bernd Schmidt <bernds@codesourcery.com> 354 355 * c-common.c (c_fully_fold_internal): Handle ADDR_SPACE_CONVERT_EXPR. 356 357 * c-common.h (enum c_tree_index): Remove CTI_INT_ARRAY_TYPE. 358 (int_array_type_node): Remove. 359 * c-common.c (c_common_nodes_and_builtins): Don't build it. 360 3612013-12-05 Marek Polacek <polacek@redhat.com> 362 363 PR c/52023 364 * c-common.c (c_sizeof_or_alignof_type): Move a declaration into 365 [ADJUST_FIELD_ALIGN]. 366 3672013-12-04 Joseph Myers <joseph@codesourcery.com> 368 369 PR c/52023 370 * c-common.c (c_sizeof_or_alignof_type): Add parameter min_alignof 371 and check field alignment if set. 372 * c-common.h (c_sizeof_or_alignof_type): Update prototype. 373 (c_sizeof, c_alignof): Update calls to c_sizeof_or_alignof_type. 374 3752013-12-04 Jakub Jelinek <jakub@redhat.com> 376 Marek Polacek <polacek@redhat.com> 377 378 * c-gimplify.c (c_gimplify_expr): If doing the integer-overflow 379 sanitization, call unsigned_type_for only when !TYPE_OVERFLOW_WRAPS. 380 3812013-11-29 H.J. Lu <hongjiu.lu@intel.com> 382 383 PR c/59309 384 * cilk.c (gimplify_cilk_spawn): Properly handle function without 385 arguments. 386 3872013-11-29 Jakub Jelinek <jakub@redhat.com> 388 389 PR c/59280 390 * c-common.c (get_priority): If TREE_VALUE (args) is IDENTIFIER_NODE, 391 goto invalid. If it is error_mark_node, don't issue further 392 diagnostics. 393 3942013-11-28 Sergey Ostanevich <sergos.gnu@gmail.com> 395 396 * c.opt (Wopenmp-simd): New. 397 3982013-11-22 Jakub Jelinek <jakub@redhat.com> 399 400 * c-ubsan.h (ubsan_instrument_return): New prototype. 401 * c-ubsan.c (ubsan_instrument_return): New function. 402 4032013-11-22 Andrew MacLeod <amacleod@redhat.com> 404 405 * c-common.c: Add required include files from gimple.h. 406 * c-gimplify.c: Likewise 407 * cilk.c: Likewise 408 4092013-11-22 David Malcolm <dmalcolm@redhat.com> 410 411 * c-common.c (unsafe_conversion_p): Remove use of 412 EXPR_LOC_OR_HERE macro. 413 (conversion_warning): Likewise. 414 (warnings_for_convert_and_check): Likewise. 415 (warn_for_collisions_1): Likewise. 416 (shorten_compare): Likewise, and remove use of in_system_header 417 macro, using the location from the former. 418 * c-lex.c (dump_one_header): Remove use of input_filename macro. 419 (cb_def_pragma): Remove use of in_system_header macro. 420 (lex_string): Likewise. 421 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise. 422 4232013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com> 424 Mike Stump <mikestump@comcast.net> 425 Richard Sandiford <rdsandiford@googlemail.com> 426 427 * c-ada-spec.c (is_simple_enum): Use tree_to_shwi and tree_to_uhwi 428 instead of TREE_INT_CST_LOW, in cases where there is a protecting 429 tree_fits_shwi_p or tree_fits_uhwi_p. 430 (dump_generic_ada_node): Likewise. 431 * c-format.c (check_format_arg): Likewise. 432 * c-pretty-print.c (pp_c_integer_constant): Likewise. 433 4342013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com> 435 436 * c-common.c (check_function_arguments_recurse): Use tree_to_uhwi. 437 4382013-11-19 Joshua J Cogliati <jrincayc@yahoo.com> 439 440 PR c/53001 441 * c-common.c (unsafe_conversion_p): Make this function 442 return an enumeration with more detail. 443 (conversion_warning): Use the new return type of 444 unsafe_conversion_p to separately warn either about conversions 445 that lower floating point number precision or about the other 446 kinds of conversions. 447 * c-common.h (enum conversion_safety): New enumeration. 448 (unsafe_conversion_p): switching return type to 449 conversion_safety enumeration. 450 * c.opt: Adding new warning -Wfloat-conversion and 451 enabling it with -Wconversion. 452 4532013-11-19 Basile Starynkevitch <basile@starynkevitch.net> 454 455 * c-opts.c: Include plugin.h. 456 (cb_file_change): Invoke plugin event PLUGIN_INCLUDE_FILE. 457 4582013-11-19 Marek Polacek <polacek@redhat.com> 459 460 * c-ubsan.c (ubsan_instrument_division): Adjust ubsan_create_data 461 call. 462 (ubsan_instrument_shift): Likewise. 463 (ubsan_instrument_vla): Likewise. 464 4652013-11-18 Richard Sandiford <rdsandiford@googlemail.com> 466 467 * c-common.c (convert_vector_to_pointer_for_subscript): Remove 468 cast to unsigned type. 469 4702013-11-18 Richard Sandiford <rdsandiford@googlemail.com> 471 472 * c-common.c (fold_offsetof_1): Use tree_to_uhwi rather than 473 tree_low_cst. 474 (complete_array_type): Update comment to refer to tree_to_[su]hwi 475 rather than tree_low_cst. 476 4772013-11-18 Richard Sandiford <rdsandiford@googlemail.com> 478 479 * c-common.c, c-cppbuiltin.c: Replace tree_low_cst (..., 1) with 480 tree_to_uhwi throughout. 481 4822013-11-18 Richard Sandiford <rdsandiford@googlemail.com> 483 484 * c-common.c, c-format.c, c-omp.c, c-pretty-print.c: Replace 485 tree_low_cst (..., 0) with tree_to_shwi throughout. 486 4872013-11-18 Richard Sandiford <rdsandiford@googlemail.com> 488 489 * c-ada-spec.c, c-common.c, c-pretty-print.c: Replace 490 host_integerp (..., 1) with tree_fits_uhwi_p throughout. 491 4922013-11-18 Richard Sandiford <rdsandiford@googlemail.com> 493 494 * c-ada-spec.c, c-common.c, c-format.c, c-pretty-print.c: Replace 495 host_integerp (..., 0) with tree_fits_shwi_p throughout. 496 4972013-11-15 Aldy Hernandez <aldyh@redhat.com> 498 499 * c-cilkplus.c: New file. 500 * c-common.c (readonly_error): Add location argument. 501 * c-common.h (readonly_error): Same. 502 (c_finish_cilk_clauses): Protoize. 503 (c_check_cilk_loop): Same. 504 c-omp.c (c_finish_omp_for): Handle CILK_SIMD nodes. 505 Do not fail on error_mark_node. 506 Abstract increment canonicalization to here... 507 (c_omp_for_incr_canonicalize_ptr): New. 508 c-pragma.c (init_pragma): Register "simd" pragma. 509 c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_SIMD. 510 (enum pragma_cilk_clause): New. 511 5122013-11-15 Richard Sandiford <rdsandiford@googlemail.com> 513 514 * c-pretty-print.c (pp_c_character_constant): Remove unnecessary 515 wchar_type and host_integerp checks. 516 5172013-11-14 Andrew MacLeod <amacleod@redhat.com> 518 519 * c-common.c: Likewise. 520 * c-gimplify.c: Likewise. 521 * cilk.c: Likewise. 522 5232013-11-14 Diego Novillo <dnovillo@google.com> 524 525 * c-common.c: Include fold-const.h. 526 Include stor-layout.h. 527 Include calls.h. 528 Include stringpool.h. 529 Include attribs.h. 530 Include varasm.h. 531 Include trans-mem.h. 532 * c-cppbuiltin.c: Include stor-layout.h. 533 Include stringpool.h. 534 * c-format.c: Include stringpool.h. 535 * c-lex.c: Include stringpool.h. 536 Include stor-layout.h. 537 * c-pragma.c: Include stringpool.h. 538 Include attribs.h. 539 Include varasm.h. 540 Include gcc-symtab.h. 541 * c-pretty-print.c: Include stor-layout.h. 542 Include attribs.h. 543 * cilk.c: Include stringpool.h. 544 Include calls.h. 545 5462013-11-13 Joseph Myers <joseph@codesourcery.com> 547 548 * c-common.h (enum rid): Add RID_AUTO_TYPE. 549 * c-common.c (c_common_reswords): Add __auto_type. 550 (keyword_begins_type_specifier): Handle RID_AUTO_TYPE. 551 5522013-11-12 Andrew MacLeod <amacleod@redhat.com> 553 554 * c-common.c: Include gimplify.h. 555 * c-gimplify.c: Likewise. 556 * cilk.c: Likewise. 557 * c-omp.c: Include gimple-expr.h instead of gimple.h. 558 * c-ubsan.c: Don't include gimple.h. 559 5602013-11-12 Joseph Myers <joseph@codesourcery.com> 561 562 * c-common.c (c_common_reswords): Add _Thread_local. 563 5642013-11-09 Joseph Myers <joseph@codesourcery.com> 565 566 * c-common.c (atomic_size_supported_p): New function. 567 (resolve_overloaded_atomic_exchange) 568 (resolve_overloaded_atomic_compare_exchange) 569 (resolve_overloaded_atomic_load, resolve_overloaded_atomic_store): 570 Use it instead of comparing size with a local list of sizes. 571 5722013-11-07 Andrew MacLeod <amacleod@redhat.com> 573 Joseph Myers <joseph@codesourcery.com> 574 575 * c-common.h (enum rid): Add RID_ATOMIC. 576 * c-common.c (c_common_reswords): Add _Atomic. 577 (sync_resolve_params): Use TYPE_MAIN_VARIANT on pointer argument. 578 (keyword_is_type_qualifier): Accept RID_ATOMIC. 579 * c-format.c (check_format_types): Check for extra _Atomic 580 qualifiers in format argument. 581 * c-pretty-print.c (pp_c_cv_qualifiers): Handle atomic qualifier. 582 (pp_c_type_qualifier_list): Mention _Atomic in comment. 583 5842013-11-06 Tobias Burnus <burnus@net-b.de> 585 586 * c-common.c (reason_option_codes_t): Add CPP_W_DATE_TIME. 587 5882013-11-06 Joseph Myers <joseph@codesourcery.com> 589 590 * c-opts.c (c_common_post_options): Set -ffp-contract=off in C 591 standards modes. 592 * c-cppbuiltin.c (cpp_iec_559_value): Consider -ffp-contract=fast 593 to mean lack of IEEE 754 support. 594 5952013-11-05 Tobias Burnus <burnus@net-b.de> 596 597 * c.opt (-Wdate-time): New option 598 * c-opts.c (sanitize_cpp_opts): Pass on to libcpp. 599 6002013-11-05 Joseph Myers <joseph@codesourcery.com> 601 602 * c-cppbuiltin.c (cpp_iec_559_value): Test 603 flag_excess_precision_cmdline not flag_excess_precision. 604 6052013-11-05 Tobias Burnus <burnus@net-b.de> 606 607 * c.opt (fopenmp-simd): New option. 608 * c-pragma.c (omp_pragmas): Move pragmas which can contain simd to ... 609 (omp_pragmas): ... this new struct. 610 (c_pp_lookup_pragma): Also walk omp_pragmas. 611 (init_pragma): Init pragmas for -fopenmp-simd. 612 6132013-11-04 Marek Polacek <polacek@redhat.com> 614 615 PR c++/58979 616 * c-common.c (invalid_indirection_error): Handle RO_ARROW_STAR case. 617 6182013-11-04 Joseph Myers <joseph@codesourcery.com> 619 620 * c-cppbuiltin.c (cpp_iec_559_value, cpp_iec_559_complex_value): 621 New functions. 622 (c_cpp_builtins): Define __GCC_IEC_559 and __GCC_IEC_559_COMPLEX. 623 6242013-11-04 Eric Botcazou <ebotcazou@adacore.com> 625 626 * c-ada-spec.h (cpp_operation): Add IS_TRIVIAL. 627 (dump_ada_specs): Adjust prototype of second callback. 628 * c-ada-spec.c (cpp_check): New global variable. 629 (dump_ada_nodes): Remove cpp_check parameter and do not pass it down. 630 (print_generic_ada_decl): Likewise. 631 (has_static_fields): Change return type to bool and add guard. 632 (has_nontrivial_methods): New predicate. 633 (is_tagged_type): Change return type to bool. 634 (separate_class_package): Call has_nontrivial_methods. 635 (pp_ada_tree_identifier): Minor tweaks. 636 (dump_ada_function_declaration): Adjust calls to dump_generic_ada_node. 637 (dump_ada_array_domains): Likewise. 638 (dump_ada_array_type): Likewise. 639 (dump_template_types): Remove cpp_check parameter and do not pass it to 640 dump_generic_ada_node. 641 (dump_ada_template): Likewise. 642 (dump_generic_ada_node): Remove cpp_check parameter and do not pass it 643 recursively. 644 (print_ada_methods): Change return type to integer. Remove cpp_check 645 parameter and do not pass it down. 646 (dump_nested_types): Remove cpp_check parameter and do not pass it to 647 dump_generic_ada_node. 648 (print_ada_declaration): Likewise. Test RECORD_OR_UNION_TYPE_P before 649 accessing methods. 650 (print_ada_struct_decl): Remove cpp_check parameter and do not pass it 651 down. Use has_nontrivial_methods to recognize C++ classes. Use return 652 value of print_ada_methods. 653 (dump_ads): Rename cpp_check parameter to check and adjust prototype. 654 Set cpp_check to it before invoking dump_ada_nodes. 655 (dump_ada_specs): Likewise. 656 6572013-11-03 Marek Polacek <polacek@redhat.com> 658 659 * c-ubsan.c: Don't include hash-table.h. 660 (ubsan_instrument_vla): New function. 661 * c-ubsan.h: Declare it. 662 6632013-10-31 David Malcolm <dmalcolm@redhat.com> 664 665 Automated part of renaming of symtab_node_base to symtab_node. 666 667 Patch autogenerated by rename_symtab.py from 668 https://github.com/davidmalcolm/gcc-refactoring-scripts 669 revision 58bb219cc090b2f4516a9297d868c245495ee622 670 671 * c-pragma.c (maybe_apply_pending_pragma_weaks): Rename 672 symtab_node_base to symtab_node. 673 6742013-10-31 Edward Smith-Rowland <3dw4rd@verizon.net> 675 676 Implement C++14 digit separators. 677 * c-lex.c (interpret_float): Remove digit separators from scratch string 678 before building real literal. 679 6802013-10-30 Jakub Jelinek <jakub@redhat.com> 681 682 * cilk.c (create_cilk_helper_decl): Use HOST_WIDE_INT_PRINT_DEC. 683 6842013-10-29 Balaji V. Iyer <balaji.v.iyer@intel.com> 685 686 * c-common.c (c_common_reswords[]): Added _Cilk_spawn and _Cilk_sync 687 fields. 688 (c_define_builtins): Called cilk_init_builtins if Cilk Plus is 689 enabled. 690 * c-common.h (enum rid): Added RID_CILK_SPAWN and RID_CILK_SYNC. 691 (insert_cilk_frame): New prototype. 692 (cilk_init_builtins): Likewise. 693 (gimplify_cilk_spawn): Likewise. 694 (c_cilk_install_body_w_frame_cleanup): Likewise. 695 (cilk_detect_spawn_and_unwrap): Likewise. 696 (cilk_set_spawn_marker): Likewise. 697 (build_cilk_sync): Likewise. 698 (build_cilk_spawn): Likewise. 699 * cilk.c: New file. 700 7012013-10-29 David Malcolm <dmalcolm@redhat.com> 702 703 Patch autogenerated by refactor_symtab.py from 704 https://github.com/davidmalcolm/gcc-refactoring-scripts 705 revision 58bb219cc090b2f4516a9297d868c245495ee622 706 707 * c-gimplify.c (c_genericize): Update for conversion of symtab types 708 to a true class hierarchy. 709 * c-pragma.c (maybe_apply_pending_pragma_weaks): Likewise. 710 7112013-10-27 Richard Sandiford <rdsandiford@googlemail.com> 712 713 * c-lex.c (interpret_integer): Remove call to cpp_num_sign_extend. 714 7152013-10-26 Jeff Law <law@redhat.com> 716 717 * c-family/c-common.c (c_define_builtins): Remove mudflap support. 718 * c-family/c.opt: Ignore and warn for mudflap options. 719 7202013-10-24 Tobias Burnus <burnus@net-b.de> 721 722 PR other/33426 723 * c-pragma.c (init_pragma) Add #pragma ivdep handling. 724 * c-pragma.h (pragma_kind): Add PRAGMA_IVDEP. 725 7262013-10-23 Jason Merrill <jason@redhat.com> 727 728 * c-format.c (gcc_cxxdiag_char_table): Add %X. 729 7302013-10-11 Jakub Jelinek <jakub@redhat.com> 731 732 * c-common.h (omp_clause_mask::operator !=): New method. 733 * c-omp.c (c_omp_split_clauses): Use if ((mask & something) != 0) 734 instead of if (mask & something) tests everywhere. 735 736 * c-cppbuiltin.c (c_cpp_builtins): Predefine _OPENMP to 737 201307 instead of 201107. 738 * c-common.c (DEF_FUNCTION_TYPE_8): Define. 739 (c_common_attribute_table): Add "omp declare target" and 740 "omp declare simd" attributes. 741 (handle_omp_declare_target_attribute, 742 handle_omp_declare_simd_attribute): New functions. 743 * c-omp.c: Include c-pragma.h. 744 (c_finish_omp_taskgroup): New function. 745 (c_finish_omp_atomic): Add swapped argument, if true, 746 build the operation first with rhs, lhs arguments and use NOP_EXPR 747 build_modify_expr. 748 (c_finish_omp_for): Add code argument, pass it down to make_code. 749 (c_omp_split_clauses): New function. 750 (c_split_parallel_clauses): Removed. 751 (c_omp_declare_simd_clause_cmp, c_omp_declare_simd_clauses_to_numbers, 752 c_omp_declare_simd_clauses_to_decls): New functions. 753 * c-common.h (omp_clause_mask): New type. 754 (OMP_CLAUSE_MASK_1): Define. 755 (omp_clause_mask::omp_clause_mask, omp_clause_mask::operator &=, 756 omp_clause_mask::operator |=, omp_clause_mask::operator ~, 757 omp_clause_mask::operator |, omp_clause_mask::operator &, 758 omp_clause_mask::operator <<, omp_clause_mask::operator >>, 759 omp_clause_mask::operator ==): New methods. 760 (enum c_omp_clause_split): New. 761 (c_finish_omp_taskgroup): New prototype. 762 (c_finish_omp_atomic): Add swapped argument. 763 (c_finish_omp_for): Add code argument. 764 (c_omp_split_clauses): New prototype. 765 (c_split_parallel_clauses): Removed. 766 (c_omp_declare_simd_clauses_to_numbers, 767 c_omp_declare_simd_clauses_to_decls): New prototypes. 768 * c-pragma.c (omp_pragmas): Add new OpenMP 4.0 constructs. 769 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_CANCEL, 770 PRAGMA_OMP_CANCELLATION_POINT, PRAGMA_OMP_DECLARE_REDUCTION, 771 PRAGMA_OMP_DISTRIBUTE, PRAGMA_OMP_END_DECLARE_TARGET, PRAGMA_OMP_SIMD, 772 PRAGMA_OMP_TARGET, PRAGMA_OMP_TASKGROUP and PRAGMA_OMP_TEAMS. 773 Remove PRAGMA_OMP_PARALLEL_FOR and PRAGMA_OMP_PARALLEL_SECTIONS. 774 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_ALIGNED, 775 PRAGMA_OMP_CLAUSE_DEPEND, PRAGMA_OMP_CLAUSE_DEVICE, 776 PRAGMA_OMP_CLAUSE_DIST_SCHEDULE, PRAGMA_OMP_CLAUSE_FOR, 777 PRAGMA_OMP_CLAUSE_FROM, PRAGMA_OMP_CLAUSE_INBRANCH, 778 PRAGMA_OMP_CLAUSE_LINEAR, PRAGMA_OMP_CLAUSE_MAP, 779 PRAGMA_OMP_CLAUSE_NOTINBRANCH, PRAGMA_OMP_CLAUSE_NUM_TEAMS, 780 PRAGMA_OMP_CLAUSE_PARALLEL, PRAGMA_OMP_CLAUSE_PROC_BIND, 781 PRAGMA_OMP_CLAUSE_SAFELEN, PRAGMA_OMP_CLAUSE_SECTIONS, 782 PRAGMA_OMP_CLAUSE_SIMDLEN, PRAGMA_OMP_CLAUSE_TASKGROUP, 783 PRAGMA_OMP_CLAUSE_THREAD_LIMIT, PRAGMA_OMP_CLAUSE_TO and 784 PRAGMA_OMP_CLAUSE_UNIFORM. 785 7862013-10-09 Marc Glisse <marc.glisse@inria.fr> 787 788 PR tree-optimization/20318 789 * c-common.c (handle_returns_nonnull_attribute): New function. 790 (c_common_attribute_table): Add returns_nonnull. 791 7922013-10-03 Marc Glisse <marc.glisse@inria.fr> 793 794 PR c++/19476 795 * c.opt (fcheck-new): Move to common.opt. 796 7972013-09-25 Marek Polacek <polacek@redhat.com> 798 Jakub Jelinek <jakub@redhat.com> 799 800 PR sanitizer/58413 801 * c-ubsan.c (ubsan_instrument_shift): Don't instrument 802 an expression if we can prove it is correct. 803 (ubsan_instrument_division): Likewise. Remove unnecessary 804 check. 805 8062013-09-18 Marek Polacek <polacek@redhat.com> 807 808 PR sanitizer/58411 809 * c-common.c (handle_no_sanitize_undefined_attribute): New function. 810 Declare it. 811 (struct attribute_spec c_common_att): Add no_sanitize_undefined. 812 8132013-09-14 Iain Sandoe <iain@codesourcery.com> 814 815 PR target/48094 816 * c.opt (fgnu-runtime, fnext-runtime, fobjc-abi-version, 817 fobjc-gc, freplace-objc-classes): Accept for LTO. 818 8192013-09-13 Jacek Caban <jacek@codeweavers.com> 820 821 * c-target.def: New hook 822 8232013-09-09 Paolo Carlini <paolo.carlini@oracle.com> 824 825 PR c++/43452 826 * c.opt (Wdelete-incomplete): Add. 827 8282013-09-08 Joern Rennecke <joern.rennecke@embecosm.com> 829 830 * c-common.c (same_scalar_type_ignoring_signedness): Delete. 831 (vector_types_compatible_elements_p): New function. 832 * c-common.h: (same_scalar_type_ignoring_signedness): Delete 833 declaration. 834 (vector_types_compatible_elements_p): Declare. 835 8362013-09-04 Gabriel Dos Reis <gdr@integrable-solutions.net> 837 838 * c-pretty-print.h (c_pretty_printer::simple_type_specifier): Now 839 a virtual member function. 840 (pp_simple_type_specifier): Remove. 841 (pp_c_type_specifier): Likewise. 842 * c-pretty-print.c (c_pretty_printer::simple_type_specifier): 843 Rename from pp_c_type_specifier. Adjust. 844 (c_pretty_printer::c_pretty_printer): Do not assign to 845 simple_type_specifier. 846 8472013-09-03 Gabriel Dos Reis <gdr@integrable-solutions.net> 848 849 * c-pretty-print.h (c_pretty_printer::type_id): Now a virtual 850 member function. 851 (c_pretty_printer::storage_class_specifier): Likewise. 852 (c_pretty_printer::initializer): Likewise. 853 (pp_declaration): Remove. 854 (pp_declaration_specifiers): Likewise. 855 (pp_abstract_declarator): Likewise. 856 (pp_declarator): Likewise. 857 (pp_type_id): Likewise. 858 (pp_statement): Likewise. 859 (pp_constant): Likewise. 860 (pp_id_expression): Likewise. 861 (pp_primary_expression): Likewise. 862 (pp_unary_expression): Likewise. 863 (pp_multiplicative_expression): Likewise. 864 (pp_conditional_expression): Likewise. 865 (pp_assignment_expression): Likewise. 866 (pp_expression): Likewise. 867 (pp_c_type_id): Likewise. 868 (pp_c_storage_class_specifier): Likewise. 869 * c-pretty-print.c (pp_c_type_cast): Tidy. 870 (pp_c_pointer): Likewise. 871 (pp_c_type_specifier): Likewise. 872 (pp_c_parameter_type_list): Likewise. 873 (pp_c_function_definition): Likewise. 874 (pp_c_init_declarator): Likewise. 875 (pp_c_initializer_list): Likewise. 876 (pp_c_constructor_elts): Likewise. 877 (c_pretty_printer::direct_abstract_declarator): Likewise. 878 (c_pretty_printer::declaration_specifiers): Likewise. 879 (c_pretty_printer::primary_expression): Likewise. 880 (c_pretty_printer::postfix_expression): Likewise. 881 (c_pretty_printer::type_id): Rename from pp_c_type_id. 882 (c_pretty_printer::storage_class_specifier): Rename from 883 pp_c_storage_class_specifier. 884 (c_pretty_printer::initializer): Rename from pp_c_initializer. 885 (c_pretty_printer::c_pretty_printer): Do not assign to type_id, 886 storage_class_specifier, initializer, offset_list, flags. 887 8882013-08-30 Marek Polacek <polacek@redhat.com> 889 890 * c-ubsan.c: New file. 891 * c-ubsan.h: New file. 892 8932013-08-30 Gabriel Dos Reis <gdr@integrable-solutions.net> 894 895 * c-pretty-print.h (c_pretty_printer::declaration): Now a virtual 896 member function. 897 (c_pretty_printer::declaration_specifiers): Likewise. 898 (c_pretty_printer::declarator): Likewise. 899 (c_pretty_printer::abstract_declarator): Likewise. 900 (c_pretty_printer::direct_abstract_declarator): Likewise. 901 (c_pretty_printer::direct_declarator): Likewise. 902 (c_pretty_printer::function_specifier): Likewise. 903 (pp_declaration): Adjust. 904 (pp_declaration_specifiers): Likewise. 905 (pp_abstract_declarator): Likewise. 906 (pp_direct_declarator): Likewise. 907 (pp_function_specifier): Likewise. 908 (pp_direct_abstract_declarator): Remove as unused. 909 (pp_c_declaration): Remove. 910 (pp_c_declaration_specifiers): Likewise. 911 (pp_c_declarator): Likewise. 912 (pp_c_direct_declarator): Likewise. 913 (pp_c_function_specifier): Likewise. 914 (pp_c_direct_abstract_declarator): Likewise. 915 * c-pretty-print.c (c_pretty_printer::abstract_declarator): Rename 916 from pp_c_abstract_declarator. Adjust. 917 (c_pretty_printer::direct_abstract_declarator): Rename from 918 pp_c_direct_abstract_declarator. Adjust. 919 (c_pretty_printer::function_specifier): Rename from 920 pp_c_function_specifier. Adjust. 921 (c_pretty_printer::declaration_specifiers): Rename from 922 pp_c_declaration_specifiers. Adjust. 923 (c_pretty_printer::direct_declarator): Rename from 924 pp_c_direct_declarator. Adjust. 925 (c_pretty_printer::declarator): Rename from pp_c_declarator. Adjust. 926 (c_pretty_printer::declaration): Rename from pp_c_declaration. Adjust. 927 (c_pretty_printer::c_pretty_printer): Do not assign to 928 declaration, declaration_specifiers, declarator, 929 direct_declarator, direct_abstract_declarator, function_specifier. 930 9312013-08-26 Gabriel Dos Reis <gdre@integrable-solutions.net> 932 933 * c-pretty-print.h (c_pretty_printer::unary_expression): Now a 934 virtual member function. 935 (c_pretty_printer::multiplicative_expression): Likewise. 936 (c_pretty_printer::conditional_expression): Likewise. 937 (c_pretty_printer::assignment_expression): Likewise. 938 (c_pretty_printer::expression): Likewise. 939 (pp_unary_expression): Adjust. 940 (pp_multiplicative_expression): Likewise. 941 (pp_assignment_expression): Likewise. 942 (pp_conditional_expression): Likewise. 943 (pp_expression): Likewise. 944 * c-pretty-print.c (c_pretty_printer::unary_expression): Rename 945 from pp_c_unary_expression. Adjust. 946 (c_pretty_printer::multiplicative_expression): Rename from 947 pp_c_multiplicative_expression. Adjust. 948 (c_pretty_printer::conditional_expression): Rename from 949 pp_c_conditional_expression. Adjust. 950 (c_pretty_printer::assignment_expression): Rename from 951 pp_c_assignment_expression. Adjust. 952 (c_pretty_printer::expression): Rename from pp_c_expression. Adjust. 953 (c_pretty_printer::c_pretty_printer): Do not assign to 954 unary_expression, multiplicative_expression, 955 conditional_expression, expression. 956 9572013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net> 958 959 * c-pretty-print.h (c_pretty_printer::postfix_expression): Now a 960 virtual member function. 961 (pp_postfix_expression): Adjust. 962 (pp_c_postfix_expression): Remove. 963 * c-pretty-print.c (c_pretty_printer::postfix_expression): Rename 964 from pp_c_postfix_expression. Adjust. 965 (c_pretty_printer::c_pretty_printer): Do not assign to 966 postfix_expression. 967 9682013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net> 969 970 * c-pretty-print.h (c_pretty_printer::primary_expression): Now a 971 virtua member function. 972 (pp_primary_expression): Adjust. 973 (pp_c_primary_expression): Remove. 974 * c-pretty-print.c (c_pretty_printer::primary_expression): Rename 975 from pp_c_primary_expression. Adjust. 976 (pp_c_initializer_list): Use pp_primary_expression. 977 (c_pretty_printer::c_pretty_printer): Do not assign to 978 primary_expression. 979 9802013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net> 981 982 * c-pretty-print.h (c_pretty_printer::translate_string): Declare. 983 * c-pretty-print.c (M_): Remove. 984 (c_pretty_printer::translate_string): Define. 985 (pp_c_type_specifier): Use it. 986 (pp_c_primary_expression): Likewise. 987 (pp_c_expression): Likewise. 988 9892013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net> 990 991 * c-pretty-print.h (c_pretty_printer::id_expression): Now a 992 virtual function. 993 (pp_c_id_expression): Remove. 994 (pp_id_expression): Adjust. 995 * c-pretty-print.c (c_pretty_printer::id_expression): Rename from 996 pp_c_id_expression. Adjust. 997 (pp_c_postfix_expression): Use pp_id_expression. 998 (c_pretty_printer::c_pretty_printer): Do not assign to id_expression. 999 10002013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net> 1001 1002 * c-pretty-print.h (c_pretty_printer::constant): Now a virtual 1003 member function. 1004 (pp_constant): Adjust. 1005 (pp_c_constant): Remove. 1006 * c-pretty-print.c (c_pretty_printer::constant): Rename from 1007 pp_c_constant. Adjust. 1008 (pp_c_constant) 1009 (pp_c_primary_expression): Call pp_constant in lieu of pp_c_constant. 1010 (c_pretty_printer::c_pretty_printer): Remove assignment to constant. 1011 10122013-08-22 Gabriel Dos Reis <gdr@integrable-solutions.net> 1013 1014 * c-pretty-print.h (pp_c_pretty_printer_init): Remove. 1015 (c_pretty_printer::c_pretty_printer): Declare. 1016 * c-pretty-print.c (pretty_printer::c_pretty_printer): Rename from 1017 c_pretty_printer_init. Adjust. 1018 (print_c_tree): Do not call c_pretty_printer_init. 1019 * c-ada-spec.c (dump_ads): Remove call to pp_construct. 1020 10212013-08-09 Arnaud Charlet <charlet@adacore.com> 1022 1023 * c-ada-spec.c (print_ada_declaration): Prevent accessing null asm name 1024 10252013-08-05 Paolo Carlini <paolo.carlini@oracle.com> 1026 1027 PR c++/58080 1028 * c-common.c (pointer_int_sum): Add bool parameter. 1029 * c-common.h (pointer_int_sum): Adjust declaration. 1030 10312013-08-05 Gabriel Dos Reis <gdr@integrable-solutions.net> 1032 1033 * c-pretty-print.c (print_c_tree): Simplify. Use non-static local 1034 c_pretty_printer variable. 1035 10362013-08-04 Gabriel Dos Reis <gdr@integrable-solutions.net> 1037 1038 * c-pretty-print.h (c_pretty_printer): Derive from pretty_printer. 1039 (pp_base): Remove. 1040 (pp_c_base): Likewise. Adjust users. 1041 * c-pretty-print.c (pp_c_maybe_whitespace): Adjust. 1042 (pp_c_whitespace): Do not call pp_base. 1043 (pp_c_left_paren): Likewise. 1044 (pp_c_right_paren): Likewise. 1045 (pp_c_left_brace): Likewise. 1046 (pp_c_right_brace): Likewise. 1047 (pp_c_left_bracket): Likewise. 1048 (pp_c_right_bracket): Likewise. 1049 (pp_c_dot): Likewise. 1050 (pp_c_ampersand): Likewise. 1051 (pp_c_star): Likewise. 1052 (pp_c_arrow): Likewise. 1053 (pp_c_semicolon): Likewise. 1054 (pp_c_complement): Likewise. 1055 (pp_c_exclamation): Likewise. 1056 (pp_c_direct_declarator): Likewise. 1057 (pp_c_ws_string): Likewise. 1058 (pp_c_identifier): Likewise. 1059 (pp_c_statement): Likewise. 1060 (print_c_tree): Likewise. 1061 10622013-08-04 Ed Smith-Rowland <3dw4rd@verizon.net> 1063 1064 PR c++/58072 1065 * c-common.c (c_parse_error): Catch user-defined literal tokens and 1066 provide useful error strings. 1067 10682013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net> 1069 1070 * c-ada-spec.c (pp_ada_tree_identifier): Use specialized pretty 1071 printer functions instead of pp_string or operators and punctuators. 1072 (dump_generic_ada_node): Likewise. 1073 * c-pretty-print.c (pp_c_type_specifier): Likewise. 1074 (pp_c_relational_expression): Likewise. 1075 (pp_c_logical_or_expression): Likewise. 1076 10772013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net> 1078 1079 * c-ada-spec.c (print_ada_macros): Use specialized pretty printer 1080 functions instead of pp_character. 1081 (pp_ada_tree_identifier): Likewise. 1082 (dump_ada_double_name): Likewise. 1083 (dump_ada_function_declaration): Likewise. 1084 (dump_ada_array_domains): Likewise. 1085 (dump_template_types): Likewise. 1086 (dump_generic_ada_node): Likewise. 1087 (print_ada_declaration): Likewise. 1088 (print_ada_struct_decl): Likewise. 1089 * c-pretty-print.c (pp_c_integer_constant): Likewise. 1090 10912013-07-23 Tom Tromey <tromey@redhat.com> 1092 1093 * c-common.h (enum rid) <RID_GENERIC>: New constant. 1094 * c-common.c (c_common_reswords): Add _Generic. 1095 10962013-07-21 OndÅej BÃlka <neleai@seznam.cz> 1097 1098 * c-common.c: Fix typos. 1099 * c-common.h: Likewise. 1100 11012013-07-13 Lubos Lunak <l.lunak@suse.cz> 1102 1103 PR c++/55203 1104 * c-common.c (c_common_attribute_table): Add warn_unused. 1105 (handle_warn_unused_attribute): New. 1106 11072013-07-10 Jakub Jelinek <jakub@redhat.com> 1108 1109 * c-ppoutput.c (scan_translation_unit): Call account_for_newlines 1110 for all CPP_TOKEN_FLD_STR tokens, not just CPP_COMMENT. 1111 11122013-07-10 Paolo Carlini <paolo.carlini@oracle.com> 1113 1114 PR c++/57869 1115 * c.opt: Add Wconditionally-supported. 1116 11172013-07-08 Graham Stott <graham.stott@btinternet.com> 1118 1119 * c-family/array-notation-common.c (length_mismatch_in_expr_p): Delete 1120 unused variables l_length and l_node. 1121 11222013-07-04 Joern Rennecke <joern.rennecke@embecosm.com> 1123 1124 PR c/57821 1125 * c-common.c (complete_array_type): Delay folding first index 1126 like other indices. When folding, check for index overflow. 1127 11282013-06-27 Marc Glisse <marc.glisse@inria.fr> 1129 1130 PR c++/57509 1131 * c-common.h (c_build_vec_perm_expr): New complain argument. 1132 * c-common.c (c_build_vec_perm_expr): Likewise. 1133 Use save_expr also in C++. 1134 11352013-06-22 Gabriel Dos Reis <gdr@integrable-solutions.net> 1136 1137 * c-common.c (c_common_nodes_and_builtins): Use cxx11 in lieu of cxx0x. 1138 * c-cppbuiltin.c (c_cpp_builtins): Likewise. 1139 * c-opts.c (c_common_post_options): Likewise. 1140 11412013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com> 1142 1143 * array-notation-common.c (length_mismatch_in_expr): Changed the 1144 parameter type's from a dynamic array to a vec_tree. Also removed 1145 the size parameters. 1146 * c-common.h (length_mismatch_in_expr_p): Fixed prototype's as per 1147 the change above. 1148 11492013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com> 1150 1151 * c-common.h (struct cilkplus_an_parts): New structure. 1152 (struct cilkplus_an_loop_parts): Likewise. 1153 (cilkplus_extract_an_triplets): New prototype. 1154 (fix_sec_implicit_args): Likewise. 1155 * array-notation-common.c (cilkplus_extract_an_triplets): New function. 1156 (fix_sec_implicit_args): Likewise. 1157 11582013-06-20 Balaji V. Iyer <balaji.v.iyer@intel.com> 1159 1160 * array-notation-common.c (find_inv_trees): Removed an unwanted 1161 typecasting. 1162 * c-common.h (struct inv_list::additional_tcodes): Changed type from 1163 enum rid to enum tree_code. 1164 11652013-06-11 Jan Hubicka <jh@suse.cz> 1166 1167 * c-common.c (handle_alias_ifunc_attribute): Do not set 1168 DECL_EXTERNAL for weakref variables. 1169 * c-pragma.c (handle_pragma_weak): Make sure aliases 1170 are not declared as external. 1171 11722013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com> 1173 1174 * array-notation-common.c (length_mismatch_in_expr_p): Moved this 1175 function from c/c-array-notation.c. 1176 (is_cilkplus_reduce_builtin): Likewise. 1177 (find_rank): Likewise. 1178 (extract_array_notation_exprs): Likewise. 1179 (replace_array_notations): Likewise. 1180 (find_inv_trees): Likewise. 1181 (replace_inv_trees): Likewise. 1182 (contains_array_notation_expr): Likewise. 1183 (find_correct_array_notation_type): Likewise. 1184 * c-common.h (struct inv_list): Moved this struct from the file 1185 c/c-array-notation.c and added a new field called additional tcodes. 1186 (length_mismatch_in_expr_p): New prototype. 1187 (is_cilkplus_reduce_builtin): Likewise. 1188 (find_rank): Likewise. 1189 (extract_array_notation_exprs): Likewise. 1190 (replace_array_notation): Likewise. 1191 (find_inv_trees): Likewise. 1192 (replace_inv_trees): Likewise. 1193 (find_correct_array_notation_type): Likewise. 1194 11952013-05-28 Balaji V. Iyer <balaji.v.iyer@intel.com> 1196 1197 * c-common.c (c_define_builtins): When cilkplus is enabled, the 1198 function array_notation_init_builtins is called. 1199 (c_common_init_ts): Added ARRAY_NOTATION_REF as typed. 1200 * c-common.def (ARRAY_NOTATION_REF): New tree. 1201 * c-common.h (build_array_notation_expr): New function declaration. 1202 (build_array_notation_ref): Likewise. 1203 (extract_sec_implicit_index_arg): New extern declaration. 1204 (is_sec_implicit_index_fn): Likewise. 1205 (ARRAY_NOTATION_CHECK): New define. 1206 (ARRAY_NOTATION_ARRAY): Likewise. 1207 (ARRAY_NOTATION_START): Likewise. 1208 (ARRAY_NOTATION_LENGTH): Likewise. 1209 (ARRAY_NOTATION_STRIDE): Likewise. 1210 * c-pretty-print.c (pp_c_postifix_expression): Added a new case for 1211 ARRAY_NOTATION_REF. 1212 (pp_c_expression): Likewise. 1213 * c.opt (flag_enable_cilkplus): New flag. 1214 * array-notation-common.c: New file. 1215 12162013-05-14 Jakub Jelinek <jakub@redhat.com> 1217 1218 PR c++/57274 1219 * c-common.c (verify_tree): Don't recurse into SIZEOF_EXPR. 1220 12212013-05-10 Marc Glisse <marc.glisse@inria.fr> 1222 1223 * c-common.c (vector_types_convertible_p): No TYPE_PRECISION for 1224 vectors. 1225 12262013-05-07 Han Shen <shenhan@google.com> 1227 1228 * c-cppbuiltin.c (c_cpp_builtins): Added "__SSP_STRONG__=3". 1229 12302013-04-29 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com> 1231 1232 * c-common.c (check_user_alignment): Emit error for negative values. 1233 12342013-04-24 Paolo Carlini <paolo.carlini@oracle.com> 1235 1236 * c-opts.c (set_std_cxx11): Use CLK_CXX1Y and CLK_GNUCXX1Y. 1237 12382013-04-24 Paolo Carlini <paolo.carlini@oracle.com> 1239 1240 * c-cppbuiltin.c (c_cpp_builtins): Do not define 1241 __GXX_EXPERIMENTAL_CXX1Y__. 1242 12432013-04-24 Paolo Carlini <paolo.carlini@oracle.com> 1244 Manuel Lopez-Ibanez <manu@gcc.gnu.org> 1245 1246 * c.opt ([Wpointer-arith]): Enabled by -Wpedantic, as documented. 1247 * c-common.c (pointer_int_sum): Change -Wpointer-arith pedwarns 1248 to simply use OPT_Wpointer_arith. 1249 (c_sizeof_or_alignof_type): Likewise. 1250 12512013-04-24 Paolo Carlini <paolo.carlini@oracle.com> 1252 1253 * c-cppbuiltin.c (c_cpp_builtins): Define __GXX_EXPERIMENTAL_CXX1Y__. 1254 12552013-04-12 Jakub Jelinek <jakub@redhat.com> 1256 1257 * c-format.c (gcc_diag_char_table, gcc_tdiag_char_table, 1258 gcc_cdiag_char_table, gcc_cxxdiag_char_table): Add %r and %R format 1259 specifiers. 1260 12612013-04-07 Steven Bosscher <steven@gcc.gnu.org> 1262 1263 * c-pragma.c (add_to_renaming_pragma_list): Fix leading comment. 1264 12652013-04-03 Paolo Carlini <paolo.carlini@oracle.com> 1266 1267 * c-common.c (pointer_int_sum): Remove dead code. 1268 12692013-03-09 Richard Sandiford <rdsandiford@googlemail.com> 1270 1271 PR middle-end/56524 1272 * c-common.c (handle_optimize_attribute): Don't call 1273 save_optabs_if_changed. 1274 12752013-03-05 Jakub Jelinek <jakub@redhat.com> 1276 1277 PR middle-end/56461 1278 * c-pch.c (pch_init): Free target_validity at the end. 1279 12802013-03-04 Jakub Jelinek <jakub@redhat.com> 1281 1282 * c-pretty-print.c (pp_c_pretty_printer_init): Clear pp->flags. 1283 12842013-02-28 Konstantin Serebryany <konstantin.s.serebryany@gmail.com> 1285 Jakub Jelinek <jakub@redhat.com> 1286 1287 PR sanitizer/56454 1288 * c-common.c (handle_no_sanitize_address_attribute): New function. 1289 (c_common_attribute_table): Add no_sanitize_address attribute. 1290 (handle_no_address_safety_analysis_attribute): Add 1291 no_sanitize_address attribute, not no_address_safety_analysis 1292 attribute. 1293 12942013-02-18 Aldy Hernandez <aldyh@redhat.com> 1295 1296 PR target/52555 1297 * c-common.c (handle_optimize_attribute): Call 1298 save_optabs_if_changed. 1299 13002013-02-18 Jakub Jelinek <jakub@redhat.com> 1301 Steven Bosscher <steven@gcc.gnu.org> 1302 1303 PR pch/54117 1304 * c-opts.c (c_common_post_options): If debug info is enabled 1305 and non-dwarf*, refuse to load PCH files and when writing PCH 1306 file warn. 1307 13082013-02-05 Jakub Jelinek <jakub@redhat.com> 1309 1310 PR middle-end/56167 1311 * c-common.c (handle_error_attribute): Fix condition. 1312 13132013-01-30 Jakub Jelinek <jakub@redhat.com> 1314 1315 PR c++/55742 1316 * c-common.c (handle_target_attribute): Revert 2012-12-26 change. 1317 13182013-01-18 Jason Merrill <jason@redhat.com> 1319 1320 PR target/54908 1321 * c.opt (-fextern-tls-init): New. 1322 * c-opts.c (c_common_post_options): Handle it. 1323 13242013-01-09 Jakub Jelinek <jakub@redhat.com> 1325 1326 PR c/48418 1327 * c-common.c (c_fully_fold_internal): Warn for LSHIFT_EXPR and 1328 RSHIFT_EXPR, if orig_op1 isn't INTEGER_CST, op1 is INTEGER_CST 1329 and is either negative or bigger or equal to type precision 1330 of the first operand. 1331 13322012-12-03 Marek Polacek <polacek@redhat.com> 1333 1334 PR c/55570 1335 * c-common.c (check_user_alignment): Swap order of tests, 1336 check TREE_CODE first. 1337 13382012-11-29 Ed Smith-Rowland <3dw4rd@verizon.net> 1339 1340 PR c++/52654 1341 * c-common.h (overflow_type): New enum. 1342 (build_userdef_literal): Add overflow_type argument. 1343 (tree_userdef_literal): Add overflow_type. 1344 (USERDEF_LITERAL_OVERFLOW): New access macro. 1345 * c-common.c (build_userdef_literal): Add overflow_type 1346 argument. 1347 * c-lex.c (c_lex_with_flags): Add overflow_type to 1348 build_userdef_literal calls. 1349 (interpret_integer, interpret_float): Add overflow_type argument. 1350 13512012-11-28 Richard Biener <rguenther@suse.de> 1352 1353 PR c/35634 1354 * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions 1355 here and use a type with proper overflow behavior for types that would 1356 need to be promoted for the arithmetic. 1357 13582012-11-23 Jakub Jelinek <jakub@redhat.com> 1359 1360 PR sanitizer/55435 1361 * c-common.c (handle_no_address_safety_analysis_attribute): New 1362 function. 1363 (c_common_attribute_table): Add no_address_safety_analysis. 1364 13652012-11-16 Simon Baldwin <simonb@google.com> 1366 1367 * c.opt: Add f[no-]canonical-system-headers. 1368 * c-opts.c (c_common_handle_option): Handle 1369 OPT_fcanonical_system_headers. 1370 13712012-11-09 Ed Smith-Rowland <3dw4rd@verizon.net> 1372 1373 PR c++/54413 1374 * c-opts.c (c_common_handle_option): Set new flags. 1375 * c.opt: Describe new flags. 1376 13772012-11-09 Jason Merrill <jason@redhat.com> 1378 1379 * c.opt (Wabi-tag): New. 1380 13812012-11-09 Andi Kleen <ak@linux.intel.com> 1382 1383 PR 55139 1384 * c-common.c (get_atomic_generic_size): Mask with 1385 MEMMODEL_MASK 1386 13872012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org> 1388 1389 PR c/53063 1390 * c.opt (Wformat): Make it Alias Wformat=1. 1391 (Wformat-contains-nul,Wformat-extra-args,Wformat-nonliteral, 1392 Wformat-security,Wformat-y2k,Wformat-zero-length): Use 1393 LangEnabledBy. 1394 (Wformat=): RejectNegative. Use LangEnabledBy. 1395 (Wnonnull): Use LangEnabledBy. 1396 * c-opts.c (c_common_handle_option): Do not handle Wformat here. 1397 * c-format.c (set_Wformat): Delete. 1398 (decode_format_attr): Replace OPT_Wformat with OPT_Wformat_. 1399 (maybe_read_dollar_number): Likewise. 1400 (avoid_dollar_number): Likewise. 1401 (finish_dollar_format_checking): Likewise. 1402 (check_format_info): Likewise. 1403 (check_format_info_main): Likewise. 1404 (check_format_types): Likewise. 1405 (format_type_warning): Likewise. 1406 * c-common.c (int): Likewise. 1407 (check_function_sentinel): Likewise. 1408 * c-common.h (warn_format,set_Wformat): Do not declare here. 1409 14102012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org> 1411 1412 PR c/53063 1413 * c.opt(Warray-bounds,Wdelete-non-virtual-dtor,Wenum-compare, 1414 Wmain,Woverlength-strings, Wunknown-pragmas,Wunused-macros): 1415 Use LangEnabledBy. 1416 (Wswitch,Wswitch-default,Wswitch-enum): Likewise. Move here from 1417 common.opt. 1418 (Wvariadic-macros): Init(1). 1419 * c-opts.c (c_common_handle_option): Do not handle them 1420 explicitly. 1421 (c_common_post_options): Likewise. 1422 (sanitize_cpp_opts): warn_unused_macros is now 1423 cpp_warn_unused_macros. 1424 (push_command_line_include): Likewise. 1425 * c-common.c (warn_unknown_pragmas): Do not define. 1426 * c-common.h (warn_unknown_pragmas): Do not declare. 1427 14282012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org> 1429 1430 PR c/51294 1431 * c-common.c (conversion_warning): Handle conditional expressions. 1432 14332012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com> 1434 1435 PR c++/54930 1436 * c.opt (Wreturn_local_addr): Define new option. 1437 14382012-10-25 Jason Merrill <jason@redhat.com> 1439 1440 * c.opt (Wvirtual-move-assign): New. 1441 1442 * c.opt (Winherited-variadic-ctor): New. 1443 14442012-10-25 Marc Glisse <marc.glisse@inria.fr> 1445 1446 PR c++/54427 1447 * c-common.c (scalar_to_vector): Handle VEC_COND_EXPR. 1448 14492012-10-23 Joseph Myers <joseph@codesourcery.com> 1450 1451 * c-common.h (pch_cpp_save_state): Declare. 1452 * c-target.def (c_preinclude): New hook. 1453 * c-opts.c (done_preinclude): New. 1454 (push_command_line_include): Handle default preincluded header. 1455 (cb_file_change): Call pch_cpp_save_state when calling 1456 push_command_line_include. 1457 * c-pch.c (pch_ready_to_save_cpp_state, pch_cpp_state_saved) 1458 (pch_cpp_save_state): New. 1459 (pch_init): Call pch_cpp_save_state conditionally, instead of 1460 calling cpp_save_state. 1461 14622012-10-20 Manuel López-Ibáñez <manu@gcc.gnu.org> 1463 1464 PR c/53063 1465 PR c/40989 1466 * c.opt (Waddress,Wchar-subscripts,Wsign-conversion,Wimplicit, 1467 Wimplicit-function-declaration,Wimplicit-int,Wsizeof-pointer-memaccess, 1468 Wnarrowing,Wparentheses,Wpointer-sign,Wreturn-type,Wsequence-point, 1469 Wsign-compare,Wuninitialized,Wmaybe-uninitialized,Wunused, 1470 Wvolatile-register-var): Add LangEnabledBy or EnabledBy. 1471 * c-opts.c (c_common_handle_option): Remove explicit handling from 1472 here. 1473 (c_common_post_options): Likewise. 1474 14752012-10-18 Eric Botcazou <ebotcazou@adacore.com> 1476 1477 * c-ada-spec.c (LOCATION_COL): Delete. 1478 (compare_location): New function. 1479 (compare_node): Use it. 1480 (compare_comment): Likewise. 1481 14822012-10-16 Manuel López-Ibáñez <manu@gcc.gnu.org> 1483 1484 PR c/53063 1485 PR c/40989 1486 * c.opt (Wstrict-aliasing=,Wstrict-overflow=): Use LangEnabledBy. 1487 * c-opts.c (c_common_handle_option): Do not set them here. Add 1488 comment. 1489 (c_common_post_options): Likewise. 1490 14912012-10-16 Eric Botcazou <ebotcazou@adacore.com> 1492 1493 * c-ada-spec.c (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Define. 1494 (dump_generic_ada_node) <INTEGER_CST>: Deal with sizetype specially. 1495 Remove POINTER_TYPE handling, add large unsigned handling and use 1496 ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX for big numbers. 1497 14982012-10-12 Jakub Jelinek <jakub@redhat.com> 1499 1500 PR c/54381 1501 * c-common.h (sizeof_pointer_memaccess_warning): Adjust prototype. 1502 * c-common.c (sizeof_pointer_memaccess_warning): Take array of 3 1503 locs and array of 3 trees instead of just single loc and single 1504 sizeof_arg tree. Handle __builtin___*_chk builtins too, and 1505 also stpncpy, bcopy, bcmp, bzero, snprintf and vsnprintf builtins. 1506 For *cmp* builtins that take two sources strings report warnings 1507 about first and second source, not about destination and source. 1508 15092012-10-12 Marc Glisse <marc.glisse@inria.fr> 1510 1511 PR c++/53055 1512 * c-common.h (enum ref_operator) [RO_ARROW_STAR]: New. 1513 15142012-10-11 Eric Botcazou <ebotcazou@adacore.com> 1515 1516 * c-ada-spec.c (dump_ada_template): Bail out for template declarations 1517 declaring something coming from another file. 1518 15192012-10-10 Arnaud Charlet <charlet@adacore.com> 1520 1521 PR ada/54845 1522 * c-ada-spec.c (print_ada_struct_decl): Increase buf size. 1523 15242012-10-09 Paolo Carlini <paolo.carlini@oracle.com> 1525 1526 PR c++/54194 1527 * c-common.c (warn_about_parentheses): Add location_t parameter; 1528 use EXPR_LOC_OR_LOC. 1529 * c-common.h: Update declaration. 1530 15312012-10-09 Marc Glisse <marc.glisse@inria.fr> 1532 1533 PR c++/54427 1534 * c-common.c (scalar_to_vector): Moved from c-typeck.c. Support 1535 more operations. Make error messages optional. 1536 * c-common.h (enum stv_conv): Moved from c-typeck.c. 1537 (scalar_to_vector): Declare. 1538 15392012-10-08 Jason Merrill <jason@redhat.com> 1540 1541 * c-common.c (c_common_reswords): Add thread_local. 1542 15432012-10-08 Dodji Seketeli <dodji@redhat.com> 1544 1545 PR c++/53528 C++11 attribute support 1546 * c-common.h (bitfield_p, cxx_fundamental_alignment_p): Declare 1547 new functions. 1548 * c-common.c (check_cxx_fundamental_alignment_constraints): New 1549 static function. 1550 (handle_aligned_attribute): In choose strictest alignment 1551 among many. Use new check_cxx_fundamental_alignment_constraints. 1552 (handle_transparent_union_attribute): In c++11 attribute syntax, 1553 don't look through typedefs. 1554 15552012-10-04 Arnaud Charlet <charlet@adacore.com> 1556 1557 * c-ada-spec.c (print_ada_declaration): Remove handling of TDF_RAW. 1558 * c.opt (-fdump-ada-spec, -fdump-ada-spec-slim): Move switch definition 1559 out of dumpfile.h. 1560 15612012-09-25 Dehao Chen <dehao@google.com> 1562 1563 PR middle-end/54645 1564 * c-pch.c (c_common_read_pch): Rebuild the location_adhoc_data 1565 map when read in the pch. 1566 15672012-09-18 Arnaud Charlet <charlet@adacore.com> 1568 1569 * c-ada-spec.c: Style fixes. 1570 15712012-09-18 Thomas Quinot <quinot@adacore.com> 1572 1573 * c.opt (-fada-spec-parent): Define new command line switch. 1574 * c-ada-spec.c (get_ada_package): When -fada-spec-parent 1575 is specified, generate binding spec as a child of the specified unit. 1576 15772012-09-13 Paolo Carlini <paolo.carlini@oracle.com> 1578 Manuel López-Ibáñez <manu@gcc.gnu.org> 1579 1580 PR c++/53210 1581 * c.opt ([Winit-self]): Enabled by -Wall in C++. 1582 15832012-08-23 Arnaud Charlet <charlet@adacore.com> 1584 1585 * c-ada-spec.c (dump_generic_ada_node): Fix handling of name_only 1586 for pointers, and add missing Convention C pragma. 1587 (print_ada_struct_decl): Add missing aliased keyword. 1588 (dump_ads): Add pragma Ada_2005 and Style_Checks (Off). 1589 15902012-08-17 Jakub Jelinek <jakub@redhat.com> 1591 1592 * c-common.c (sizeof_pointer_memaccess_warning): New function. 1593 * c.opt (-Wsizeof-pointer-memaccess): Add new option. 1594 * c-opts.c (c_common_handle_option): Enable it for -Wall. 1595 * c-common.h (sizeof_pointer_memaccess_warning): Add prototype. 1596 * c-common.def (SIZEOF_EXPR): Moved here from cp-tree.def. 1597 15982012-08-10 Richard Guenther <rguenther@suse.de> 1599 1600 * c-pretty-print.c (pp_c_expression): Handle anonymous SSA names. 1601 16022012-08-07 Steven Bosscher <steven@gcc.gnu.org> 1603 1604 * c-pretty-print.c (pp_c_function_definition): Use pp_newline_and_flush 1605 instead of separate pp_newline and pp_flush. 1606 (print_c_tree): Likewise. 1607 16082012-07-26 Richard Henderson <rth@redhat.com> 1609 1610 * c-common.c (handle_hot_attribute): Allow labels. 1611 (handle_cold_attribute): Likewise. 1612 16132012-07-20 Jakub Jelinek <jakub@redhat.com> 1614 1615 PR c++/28656 1616 * c-common.c (check_function_nonnull): Handle multiple nonnull 1617 attributes properly. 1618 16192012-07-16 Steven Bosscher <steven@gcc.gnu.org> 1620 1621 * c-gimplify.c: Include dumpfile.h instead of tree-dump.h. 1622 * c-ada-spec.c: Likewise. 1623 * c-dump.c (dump_stmt): Move to cp/dump.c, the only user. 1624 16252012-07-14 Steven Bosscher <steven@gcc.gnu.org> 1626 1627 * c-pch.c (CHECK_NO_ASM_OUT_DURING_PCH): Do not define. 1628 Remove code conditional on it. 1629 16302012-07-11 Steven Bosscher <steven@gcc.gnu.org> 1631 1632 * c-gimplify.c: Do not include basic-block.h. 1633 * c-common.c: Do not include linfuncs.h. 1634 16352012-07-08 Steven Bosscher <steven@gcc.gnu.org> 1636 1637 * c-common.h: Include tree.h. 1638 16392012-07-02 Jason Merrill <jason@redhat.com> 1640 1641 PR c++/53524 1642 * c-common.c (get_priority): Call default_conversion. 1643 16442012-07-01 Uros Bizjak <ubizjak@gmail.com> 1645 1646 * c-pch.c (c_common_write_pch): Remove unused variables. 1647 16482012-06-29 Steven Bosscher <steven@gcc.gnu.org> 1649 1650 * cppspec.c: Moved from gcc/ to here. 1651 16522012-06-27 Kai Tietz <ktietz@redhat.com> 1653 1654 PR preprocessor/37215 1655 * c-ppoutput.c (preprocess_file): Check for nonempty buffer. 1656 16572012-06-21 Steven Bosscher <steven@gcc.gnu.org> 1658 1659 * c-common.h (c_common_print_pch_checksum): Remove. 1660 * c-pch.c: Do not include output.h. 1661 (CHECK_NO_ASM_OUT_DURING_PCH): Define and add FIXME. 1662 (asm_out_file): Define iff CHECK_NO_ASM_OUT_DURING_PCH isdefined. 1663 (asm_file_startpos): Define iff CHECK_NO_ASM_OUT_DURING_PCH is defined. 1664 (struct c_pch_header): Remove. 1665 (get_ident): Update gpch version. 1666 (pch_init): Do not print executable_checksum to asm_out_file. 1667 Do not fail if there is no asm_out_file to read back from. Set 1668 asm_file_startpos only if CHECK_NO_ASM_OUT_DURING_PCH is defined. 1669 (c_common_write_pch): Verify that nothing was written to asm_out_file 1670 since pch_init was called. Do not write a c_pch_header, and do not 1671 copy from asm_out_file to the PCH. 1672 (c_common_read_pch): Do not read a c_pch_header, and do not restore 1673 the content of asm_out_file from the PCH. 1674 (c_common_print_pch_checksum): Remove. 1675 * c-opts.c (c_common_init): Print out executable_checksum directly. 1676 16772012-06-19 Steven Bosscher <steven@gcc.gnu.org> 1678 1679 * c-target.def (objc_declare_unresolved_class_reference, 1680 objc_declare_class_definition): Add new hooks. 1681 16822012-06-19 Steven Bosscher <steven@gcc.gnu.org> 1683 1684 * c-lex.c: Do not include output.h. 1685 (cb_ident): Try to put out .ident with targetm.asm_out.output_ident. 1686 Remove uses of ASM_OUTPUT_IDENT. 1687 16882012-06-15 Marc Glisse <marc.glisse@inria.fr> 1689 1690 PR c++/51033 1691 * c-common.h (c_build_vec_perm_expr): Move decl here. 1692 * c-common.c (c_build_vec_perm_expr): Move definition 1693 here. 1694 16952012-06-06 Steven Bosscher <steven@gcc.gnu.org> 1696 1697 * c.opt (fconserve-space): Turn into a no-op. 1698 16992012-06-04 Sterling Augustine <saugustine@google.com> 1700 1701 * c-pretty-print.h (pp_c_flag_gnu_v3): New enumerator. 1702 * c-pretty-print.c (pp_c_specifier_qualifier_list): Check it at 1703 both the start and end of the function. 1704 17052012-06-04 Steven Bosscher <steven@gcc.gnu.org> 1706 1707 * c-common.c: Do not include output.h. 1708 * c-pragma.c: Likewise. 1709 17102012-06-04 Steven Bosscher <steven@gcc.gnu.org> 1711 1712 * error.c (dump_decl): Check pp_c_flag_gnu_v3. 1713 (decl_as_dwarf_string, lang_decl_dwarf_name): New functions. 1714 (lang_decl_name): Handle namespace decls. 1715 17162012-05-31 Steven Bosscher <steven@gcc.gnu.org> 1717 1718 * c-ada-spec.c: Do not include output.h. 1719 * c-semantics.c: Likewise. 1720 17212012-05-29 Joseph Myers <joseph@codesourcery.com> 1722 1723 * c-common.c: Fix typo. 1724 17252012-05-29 Michael Matz <matz@suse.de> 1726 1727 * c-common.h (c_expand_decl): Remove prototype. 1728 17292012-05-29 Manuel López-Ibáñez <manu@gcc.gnu.org> 1730 1731 * c.opt (Wmissing-braces): Use LangEnabledBy(C ObjC,Wall). 1732 * c-opts.c (c_common_handle_option): Remove code handling 1733 warn_missing_braces. 1734 17352012-05-28 Paolo Carlini <paolo.carlini@oracle.com> 1736 1737 PR c++/25137 1738 * c-opts.c (c_common_handle_option): For C++ -Wall doesn't enable 1739 -Wmissing_braces. 1740 17412012-05-22 Dodji Seketeli <dodji@redhat.com> 1742 1743 PR c++/53322 1744 * c.opt (Wunused-local-typedefs): Use EnabledBy(Wunused). 1745 17462012-05-17 Manuel López-Ibáñez <manu@gcc.gnu.org> 1747 1748 * c.opt (--pedantic-errors,-pedantic-errors): Do not handle here. 1749 * c-opts.c (c_common_handle_option): Do not handle explicitly 1750 Wreturn-type, Wwrite-strings, warn_ecpp, and -pedantic-errors. 1751 17522012-05-16 Dodji Seketeli <dodji@redhat.com> 1753 1754 PR preprocessor/7263 1755 * c-lex.c (c_lex_with_flags): Pass a virtual location to the call 1756 to cpp_classify_number. For diagnostics, use the precise location 1757 instead of the global input_location. 1758 17592012-05-15 Paolo Carlini <paolo.carlini@oracle.com> 1760 1761 PR c++/11856 1762 * c-common.c (shorten_compare): Check c_inhibit_evaluation_warnings. 1763 17642012-05-14 Bernd Schmidt <bernds@codesourcery.com> 1765 1766 * c-common.c (DEF_ATTR_STRING): Define and undefine as necessary. 1767 17682012-05-14 Manuel López-Ibáñez <manu@gcc.gnu.org> 1769 1770 PR 53063 1771 * c.opt (Wc++0X-compat,Wdelete-non-virtual-dtor,Wjump-misses-init, 1772 Wreorder): Use LangEnabledBy. 1773 * c-opts.c (c_common_handle_option): Do not enable them 1774 explicitly. Call lang-specific generated functions. 1775 (c_common_post_options): Do not set them here. 1776 17772012-05-13 Manuel López-Ibáñez <manu@gcc.gnu.org> 1778 1779 * c.opt (Wclobbered,Wempty-body,Wignored-qualifiers, 1780 Wmissing-field-initializers,Wmissing-parameter-type, 1781 Wold-style-declaration,Woverride-init): Use EnabledBy. 1782 * c-opts.c (c_common_post_options): Do not set here explicitly. 1783 17842012-05-11 Manuel López-Ibáñez <manu@gcc.gnu.org> 1785 1786 PR 53063 1787 * c-opts.c (c_common_handle_option): Use handle_generated_option 1788 to enable sub-options. 1789 17902012-05-10 Paolo Carlini <paolo.carlini@oracle.com> 1791 1792 PR c++/53158 1793 * c-common.c (warnings_for_convert_and_check): Use warning_at. 1794 17952012-05-10 Richard Guenther <rguenther@suse.de> 1796 1797 * c-common.c (c_sizeof_or_alignof_type): Remove assert and 1798 adjust commentary about TYPE_IS_SIZETYPE types. 1799 18002012-05-09 Manuel López-Ibáñez <manu@gcc.gnu.org> 1801 1802 PR c++/53261 1803 * c-common.c (warn_logical_operator): Check that argument of 1804 integer_zerop is not NULL. 1805 18062012-05-05 Manuel López-Ibáñez <manu@gcc.gnu.org> 1807 1808 PR c/43772 1809 * c-common.c (warn_logical_operator): Do not warn if either side 1810 is already true or false. 1811 18122012-05-04 Manuel López-Ibáñez <manu@gcc.gnu.org> 1813 1814 PR c/51712 1815 * c-common.c (expr_original_type): New. 1816 (shorten_compare): Do not warn for enumeration types. 1817 18182012-05-03 Manuel López-Ibáñez <manu@gcc.gnu.org> 1819 1820 * c.opt (fpermissive): Add Var(flag_permissive). 1821 18222012-04-30 Marc Glisse <marc.glisse@inria.fr> 1823 1824 PR c++/51033 1825 * c-common.c (convert_vector_to_pointer_for_subscript): New function. 1826 * c-common.h (convert_vector_to_pointer_for_subscript): Declare it. 1827 18282012-04-30 Dodji Seketeli <dodji@redhat.com> 1829 1830 Add -Wvarargs option 1831 * c.opt (Wvarargs): Define new option. 1832 18332012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org> 1834 1835 * c-common.c (check_function_arguments): Replace 1836 Wmissing-format-attribute with Wsuggest-attribute=format. 1837 18382012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org> 1839 1840 * c.opt (Wsuggest-attribute=format): New. Alias of 1841 Wmissing-format-attribute. 1842 * c-format.c (decode_format_type): Replace 1843 Wmissing-format-attribute with Wsuggest-attribute=format. 1844 (check_function_format): Likewise. 1845 18462012-04-27 Ollie Wild <aaw@google.com> 1847 1848 * c-common.c: Add CPP_W_LITERAL_SUFFIX mapping. 1849 * c-opts.c (c_common_handle_option): Handle OPT_Wliteral_suffix. 1850 * c.opt: Add Wliteral-suffix. 1851 18522012-04-22 Manuel López-Ibáñez <manu@gcc.gnu.org> 1853 1854 PR c/44774 1855 * c.opt (Wpedantic): New. 1856 (pedantic): Alias Wpedantic. 1857 * c-opts.c (c_common_handle_option): Replace -pedantic with -Wpedantic. 1858 (c_common_post_options): Likewise. 1859 (sanitize_cpp_opts): Likewise. 1860 * c-lex.c (interpret_float): Likewise. 1861 * c-format.c (check_format_types): Likewise. 1862 * c-common.c (pointer_int_sum): Likewise. 1863 (c_sizeof_or_alignof_type): Likewise. 1864 (c_add_case_label): Likewise. 1865 (c_do_switch_warnings): Likewise. 1866 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise. 1867 18682012-04-15 Jason Merrill <jason@redhat.com> 1869 1870 PR c++/52818 1871 * c-format.c (CPLUSPLUS_STD_VER): C++11 inherits from C99. 1872 (C_STD_NAME): Distinguish between C++98 and C++11. 1873 18742012-04-11 Eric Botcazou <ebotcazou@adacore.com> 1875 1876 PR target/52624 1877 * c-common.h (uint16_type_node): Rename into... 1878 (c_uint16_type_node): ...this. 1879 * c-common.c (c_common_nodes_and_builtins): Adjust for above renaming. 1880 * c-cppbuiltin.c (builtin_define_stdint_macros): Likewise. 1881 18822012-04-10 Manuel López-Ibáñez <manu@gcc.gnu.org> 1883 1884 * c-common.c (warn_if_unused_value): Move definition to here. 1885 * c-common.h (warn_if_unused_value): Move declaration to here. 1886 18872012-03-23 William Bader <williambader@hotmail.com> 1888 1889 * c-lex.c (c_lex_with_flags): Avoid declarations after stmts. 1890 18912012-03-20 Jason Merrill <jason@redhat.com> 1892 1893 * c-common.h (enum cxx_dialect): Add cxx1y. 1894 * c-common.c (c_common_nodes_and_builtins): Use >= for cxx_dialect 1895 test. 1896 * c-cppbuiltin.c (c_cpp_builtins): Likewise. 1897 * c-opts.c (c_common_post_options): Likewise. 1898 (set_std_cxx1y): New. 1899 (c_common_handle_option): Call it. 1900 * c.opt (-std=c++1y, -std=gnu++1y): New flags. 1901 19022012-03-19 Paolo Carlini <paolo.carlini@oracle.com> 1903 1904 PR c++/14710 1905 * c.opt ([Wuseless-cast]): Add. 1906 19072012-03-16 Richard Guenther <rguenther@suse.de> 1908 1909 * c-pretty-print.c (pp_c_initializer_list): Adjust. 1910 19112012-03-15 Manuel López-Ibáñez <manu@gcc.gnu.org> 1912 1913 PR c++/44783 1914 * c.opt (ftemplate-backtrace-limit) Add. 1915 19162012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 1917 1918 * c-cppbuiltin.c (c_cpp_builtins): Remove #pragma extern_prefix 1919 handling. 1920 * c-pragma.c (handle_pragma_extern_prefix): Remove. 1921 (init_pragma): Don't register extern_prefix. 1922 19232012-03-12 Richard Guenther <rguenther@suse.de> 1924 1925 * c-common.c (c_common_get_narrower): Use c_common_type_for_size. 1926 (builtin_type_for_size): Likewise. 1927 19282012-02-13 Jakub Jelinek <jakub@redhat.com> 1929 1930 PR c++/52215 1931 * c-common.c (sync_resolve_params): Don't decide whether to convert 1932 or not based on TYPE_SIZE comparison, convert whenever arg_type 1933 is unsigned INTEGER_TYPE. 1934 19352012-02-06 Paolo Carlini <paolo.carlini@oracle.com> 1936 1937 PR c/52118 1938 * c.opt ([Wunused-local-typedefs]): Fix description. 1939 19402012-01-24 Mike Stump <mikestump@comcast.net> 1941 1942 * c-common.c (c_common_type_for_mode): Match signed/unsigned types 1943 exactly. 1944 19452012-01-18 Richard Guenther <rguenther@suse.de> 1946 1947 * c-opts.c (c_common_post_options): Reset LTO flags if 1948 we are about to generate a PCH. 1949 19502012-01-17 Paolo Carlini <paolo.carlini@oracle.com> 1951 1952 PR c++/51777 1953 * c-pretty-print.c (pp_c_integer_constant): For unsigned constants 1954 use pp_unsigned_wide_integer. 1955 19562012-01-10 Richard Guenther <rguenther@suse.de> 1957 1958 PR middle-end/51806 1959 * c-opts.c (c_common_handle_option): Move -Werror handling 1960 to language independent code. 1961 19622012-01-05 Richard Guenther <rguenther@suse.de> 1963 1964 PR middle-end/51764 1965 * c.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move here 1966 from common.opt. 1967 19682011-12-30 Paolo Carlini <paolo.carlini@oracle.com> 1969 1970 PR c++/51316 1971 * c-common.c (c_sizeof_or_alignof_type): In C++ allow for alignof 1972 of array types with an unknown bound. 1973 19742011-12-20 Joseph Myers <joseph@codesourcery.com> 1975 1976 * c-common.c (flag_isoc99): Update comment to refer to C11. 1977 (flag_isoc1x): Change to flag_isoc11. 1978 * c-common.h (flag_isoc99): Update comment to refer to C11. 1979 (flag_isoc1x): Change to flag_isoc11. 1980 * c-cppbuiltin.c (cpp_atomic_builtins): Change comment to refer to 1981 C11. 1982 * c-opts.c (set_std_c1x): Change to set_std_c11. 1983 (c_common_handle_option): Handle OPT_std_c11 and OPT_std_gnu11. 1984 Call set_std_c11. 1985 (set_std_c89, set_std_c99, set_std_c11): Use flag_isoc11. 1986 (set_std_c1): Use CLK_STDC11 and CLK_GNUC11. 1987 * c.opt (std=c1x): Change to std=c11. Document as non-draft 1988 standard. 1989 (std=c1x, std=iso9899:2011): Add as aliases of std=c11. 1990 (std=gnu1x): Change to std=gnu11. Refer to non-draft standard. 1991 (std=gnu1x): Make alias of std=gnu11. 1992 19932011-12-19 Jason Merrill <jason@redhat.com> 1994 1995 PR c++/51228 1996 * c-common.c (handle_transparent_union_attribute): Check the first 1997 field if the type is complete. 1998 19992011-12-15 Jonathan Wakely <jwakely.gcc@gmail.com> 2000 2001 PR libstdc++/51365 2002 * c-common.c (RID_IS_FINAL): Add. 2003 * c-common.h (RID_IS_FINAL): Add. 2004 20052011-11-30 Iain Sandoe <iains@gcc.gnu.org> 2006 2007 * c.opt (fgnu-runtime): Provide full description. 2008 (fnext-runtime): Likewise. 2009 * c-opts.c (OPT_fgnu_runtime, OPT_fnext_runtime) Remove. 2010 20112011-11-28 Andrew MacLeod <amacleod@redhat.com> 2012 2013 * c-cpp-builtin.c (cpp_atomic_builtins):New. Emit all atomic 2014 predefines in one place. Add LOCK_FREE predefines. 2015 (c_cpp_builtins): Move Legacy HAVE_SYNC predefines to 2016 new func. 2017 20182011-11-24 Andrew MacLeod <amacleod@redhat.com> 2019 2020 PR c/51256 2021 * c-common.c (get_atomic_generic_size): Check for various error 2022 conditions 2023 (resolve_overloaded_atomic_exchange, 2024 resolve_overloaded_atomic_compare_exchange, 2025 resolve_overloaded_atomic_load, resolve_overloaded_atomic_store): Return 2026 error_mark_node for error conditions. 2027 20282011-11-08 Richard Guenther <rguenther@suse.de> 2029 2030 PR middle-end/51010 2031 c-family/ 2032 20332011-11-07 Richard Henderson <rth@redhat.com> 2034 Aldy Hernandez <aldyh@redhat.com> 2035 Torvald Riegel <triegel@redhat.com> 2036 2037 Merged from transactional-memory. 2038 2039 * c-common.c (handle_tm_wrap_attribute, 2040 handle_tm_attribute, ignore_attribute, parse_tm_stmt_attr): New. 2041 (struct c_common_reswords): Added __transaction* keywords. 2042 (struct c_common_attribute_table): Added transaction* and tm_regparm 2043 attributes. 2044 * c-common.h: Added RID_TRANSACTION*. Added TM_ATTR* and TM_STMT* 2045 masks. 2046 (parse_tm_stmt_attr, tm_attr_to_mask, tm_mask_to_attr, 2047 find_tm_attribute): Declare. 2048 20492011-11-07 Jason Merrill <jason@redhat.com> 2050 2051 PR c++/35688 2052 * c-common.c, c-common.h: Revert yesterday's changes. 2053 20542011-11-06 Jason Merrill <jason@redhat.com> 2055 2056 PR c++/35688 2057 * c-common.c (decl_has_visibility_attr): Split out from... 2058 (c_determine_visibility): ...here. 2059 * c-common.h: Declare it. 2060 20612011-11-06 Joseph Myers <joseph@codesourcery.com> 2062 2063 * c-common.c (c_common_reswords): Add _Alignas and _Alignof. 2064 (c_sizeof_or_alignof_type): Diagnose alignof applied to a function 2065 type. 2066 (check_user_alignment): New. Split out of 2067 handle_aligned_attribute. Disallow integer constants with 2068 noninteger types. Conditionally allow zero. 2069 (handle_aligned_attribute): Use check_user_alignment. 2070 * c-common.h (RID_ALIGNAS, check_user_alignment): New. 2071 20722011-11-06 Andrew MacLeod <amacleod@redhat.com> 2073 Richard Henderson <rth@redhat.com> 2074 2075 Merged from cxx-mem-model. 2076 2077 * c-cppbuiltin.c (c_cpp_builtins): Test both atomic and sync patterns. 2078 * c-common.c (sync_resolve_params, sync_resolve_return): Only tweak 2079 parameters that are the same type size. 2080 (get_atomic_generic_size): New. Find size of generic 2081 atomic function parameters and do typechecking. 2082 (add_atomic_size_parameter): New. Insert size into parameter list. 2083 (resolve_overloaded_atomic_exchange): Restructure __atomic_exchange to 2084 either __atomic_exchange_n or external library call. 2085 (resolve_overloaded_atomic_compare_exchange): Restructure 2086 __atomic_compare_exchange to either _n variant or external library call. 2087 (resolve_overloaded_atomic_load): Restructure __atomic_load to either 2088 __atomic_load_n or an external library call. 2089 (resolve_overloaded_atomic_store): Restructure __atomic_store to either 2090 __atomic_store_n or an external library call. 2091 (resolve_overloaded_builtin): Handle new __atomic builtins. 2092 20932011-11-04 Eric Botcazou <ebotcazou@adacore.com> 2094 2095 PR c++/50608 2096 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1. 2097 (fold_offsetof_1): Make global. Remove STOP_REF argument and adjust. 2098 <INDIRECT_REF>: Return the argument. 2099 <ARRAY_REF>: Remove special code for negative offset. 2100 Call fold_build_pointer_plus instead of size_binop. 2101 (fold_offsetof): Remove STOP_REF argument and adjust. 2102 * c-common.h (fold_offsetof_1): Declare. 2103 (fold_offsetof): Remove STOP_REF argument. 2104 21052011-11-02 Paolo Carlini <paolo.carlini@oracle.com> 2106 2107 PR c++/50810 2108 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part 2109 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default 2110 Wnarrowing for C++0x and C++98. 2111 * c.opt ([Wnarrowing]): Update. 2112 21132011-11-01 Paolo Carlini <paolo.carlini@oracle.com> 2114 2115 PR c++/44277 2116 * c.opt: Add Wzero-as-null-pointer-constant. 2117 21182011-10-31 Jason Merrill <jason@redhat.com> 2119 2120 * c.opt (-fdeduce-init-list): Off by default. 2121 2122 PR c++/50920 2123 * c-common.h (cxx_dialect): Add cxx11 and cxx03. 2124 * c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03, 2125 and -Wc++11-compat. 2126 * c-opts.c (set_std_cxx11): Rename from set_std_cxx0x. 2127 21282011-10-27 Roberto Agostino Vitillo <ravitillo@lbl.gov> 2129 2130 PR c++/30066 2131 * c.opt (fvisibility-inlines-hidden): Description change. 2132 21332011-10-26 Ed Smith-Rowland <3dw4rd@verizon.net> 2134 2135 Implement C++11 user-defined literals. 2136 * c-common.c (build_userdef_literal): New. 2137 * c-common.def: New tree code. 2138 * c-common.h (tree_userdef_literal): New tree struct and accessors. 2139 * c-lex.c (interpret_float): Add suffix parm. 2140 (c_lex_with_flags): Build literal tokens. 2141 21422011-10-23 Paolo Carlini <paolo.carlini@oracle.com> 2143 2144 PR c++/50841 2145 Revert: 2146 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com> 2147 2148 PR c++/50810 2149 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part 2150 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default 2151 Wnarrowing for C++0x and C++98. 2152 * c.opt ([Wnarrowing]): Update. 2153 21542011-10-23 Paolo Carlini <paolo.carlini@oracle.com> 2155 2156 PR c++/50810 2157 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part 2158 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default 2159 Wnarrowing for C++0x and C++98. 2160 * c.opt ([Wnarrowing]): Update. 2161 21622011-10-21 Paolo Carlini <paolo.carlini@oracle.com> 2163 2164 PR c++/45385 2165 * c-common.c (conversion_warning): Remove code looking for 2166 artificial operands. 2167 21682011-10-18 Dodji Seketeli <dodji@redhat.com> 2169 2170 PR bootstrap/50760 2171 * c-lex.c (fe_file_change): Use LINEMAP_SYSP when 2172 !NO_IMPLICIT_EXTERN_C. 2173 21742011-10-17 Michael Spertus <mike_spertus@symantec.com> 2175 2176 * c-common.c (c_common_reswords): Add __bases, 2177 __direct_bases. 2178 * c-common.h: Add RID_BASES and RID_DIRECT_BASES. 2179 21802011-10-17 Paolo Carlini <paolo.carlini@oracle.com> 2181 2182 PR c++/50757 2183 * c.opt ([Wnonnull]): Add C++ and Objective-C++. 2184 21852011-10-15 Tom Tromey <tromey@redhat.com> 2186 Dodji Seketeli <dodji@redhat.com> 2187 2188 * c.opt (fdebug-cpp): New option. 2189 * c-opts.c (c_common_handle_option): Handle the option. 2190 * c-ppoutput.c (maybe_print_line_1): New static function. Takes an 2191 output stream in parameter. Factorized from ... 2192 (maybe_print_line): ... this. Dump location debug information when 2193 -fdebug-cpp is in effect. 2194 (print_line_1): New static function. Takes an output stream in 2195 parameter. Factorized from ... 2196 (print_line): ... here. Dump location information when -fdebug-cpp 2197 is in effect. 2198 (scan_translation_unit): Dump location information when 2199 -fdebug-cpp is in effect. 2200 22012011-10-15 Tom Tromey <tromey@redhat.com> 2202 Dodji Seketeli <dodji@redhat.com> 2203 2204 * c.opt (ftrack-macro-expansion): New option. Handle it with and 2205 without argument. 2206 * c-opts.c (c_common_handle_option)<case 2207 OPT_ftrack_macro_expansion_, case OPT_ftrack_macro_expansion>: New 2208 cases. Handle -ftrack-macro-expansion with and without argument. 2209 22102011-10-15 Tom Tromey <tromey@redhat.com> 2211 Dodji Seketeli <dodji@redhat.com> 2212 2213 * c-ppoutput.c (scan_translation_unit, maybe_print_line) 2214 (print_line, cb_define, do_line_change): Adjust to avoid touching 2215 the internals of struct line_map. Use the public API instead. 2216 * c-pch.c (c_common_read_pch): Likewise. 2217 * c-lex.c (fe_file_change): Likewise. 2218 22192011-10-14 Paolo Carlini <paolo.carlini@oracle.com> 2220 2221 PR c++/17212 2222 * c.opt ([Wformat-zero-length]): Add C++ and Objective-C++. 2223 22242011-10-11 Paolo Carlini <paolo.carlini@oracle.com> 2225 2226 PR c++/33067 2227 * c-pretty-print.c (pp_c_floating_constant): Output 2228 max_digits10 (in the ISO C++ WG N1822 sense) decimal digits. 2229 22302011-10-11 Michael Meissner <meissner@linux.vnet.ibm.com> 2231 2232 * c-common.c (def_builtin_1): Delete old interface with two 2233 parallel arrays to hold standard builtin declarations, and replace 2234 it with a function based interface that can support creating 2235 builtins on the fly in the future. Change all uses, and poison 2236 the old names. Make sure 0 is not a legitimate builtin index. 2237 * c-omp.c (c_finish_omp_barrier): Ditto. 2238 (c_finish_omp_taskwait): Ditto. 2239 (c_finish_omp_flush): Ditto. 2240 22412011-10-11 Tristan Gingold <gingold@adacore.com> 2242 2243 * c.opt: (fallow-parameterless-variadic-functions): New. 2244 22452011-09-08 Dodji Seketeli <dodji@redhat.com> 2246 2247 PR c++/33255 - Support -Wunused-local-typedefs warning 2248 * c-common.h (struct c_language_function::local_typedefs): New 2249 field. 2250 (record_locally_defined_typedef, maybe_record_typedef_use) 2251 (maybe_warn_unused_local_typedefs): Declare new functions. 2252 * c-common.c (record_locally_defined_typedef) 2253 (maybe_record_typedef_use) 2254 (maybe_warn_unused_local_typedefs): Define new functions. 2255 * c.opt: Declare new -Wunused-local-typedefs flag. 2256 22572011-09-06 Eric Botcazou <ebotcazou@adacore.com> 2258 2259 PR middle-end/50266 2260 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Fold offsetof-like 2261 computations. 2262 22632011-09-05 Richard Guenther <rguenther@suse.de> 2264 2265 * c-common.c (complete_array_type): Use ssize_int (-1) instead 2266 of integer_minus_one_node for empty array upper bounds. 2267 22682011-08-28 Dodji Seketeli <dodji@redhat.com> 2269 2270 * c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as 2271 it's the first time it's being called on this main TU. 2272 22732011-08-24 Richard Guenther <rguenther@suse.de> 2274 2275 PR c/49396 2276 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional. 2277 22782011-08-22 Gabriel Charette <gchare@google.com> 2279 2280 * c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens 2281 defined in cpp_init_builtins and c_cpp_builtins. 2282 22832011-08-19 Joseph Myers <joseph@codesourcery.com> 2284 2285 * c-common.c (c_common_reswords): Add __builtin_complex. 2286 * c-common.h (RID_BUILTIN_COMPLEX): New. 2287 22882011-08-18 Joseph Myers <joseph@codesourcery.com> 2289 2290 * c-common.c (c_common_reswords): Add _Noreturn. 2291 (keyword_is_function_specifier): Handle RID_NORETURN. 2292 * c-common.h (RID_NORETURN): New. 2293 22942011-08-10 Artjoms Sinkarovs <artyom.shinakroff@gmail.com> 2295 2296 * c-common.c (unsafe_conversion_p): New function. Check if it is 2297 unsafe to convert an expression to the type. 2298 (conversion_warning): Adjust, use unsafe_conversion_p. 2299 * c-common.h (unsafe_conversion_p): New function declaration. 2300 23012011-08-02 Jakub Jelinek <jakub@redhat.com> 2302 2303 * c-common.h (c_finish_omp_atomic): Adjust prototype. 2304 (c_finish_omp_taskyield): New prototype. 2305 * c-omp.c (c_finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1 2306 arguments. Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and 2307 OMP_ATOMIC_CAPTURE_NEW in addition to OMP_ATOMIC. If LHS1 2308 or RHS1 have side-effects, evaluate those too in the right spot, 2309 if it is a decl and LHS is also a decl, error out if they 2310 aren't the same. 2311 (c_finish_omp_taskyield): New function. 2312 * c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP to 201107. 2313 * c-pragma.c (omp_pragmas): Add taskyield. 2314 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKYIELD. 2315 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FINAL and 2316 PRAGMA_OMP_CLAUSE_MERGEABLE. 2317 23182011-07-25 Dodji Seketeli <dodji@redhat.com> 2319 2320 * c-common.h (set_underlying_type): Remove parm name from 2321 declaration. 2322 23232011-07-25 Romain Geissler <romain.geissler@gmail.com> 2324 2325 * c-pretty-print.h: Search c-common.h in c-family. 2326 23272011-07-22 Jason Merrill <jason@redhat.com> 2328 2329 PR c++/49793 2330 * c.opt (Wnarrowing): New. 2331 2332 PR c++/30112 2333 * c-common.h: Declare c_linkage_bindings. 2334 * c-pragma.c (handle_pragma_redefine_extname): Use it. 2335 2336 PR c++/49813 2337 * c-opts.c (set_std_cxx0x): Set flag_isoc94 and flag_isoc99. 2338 * c-pretty-print.c (pp_c_cv_qualifiers): Check c_dialect_cxx as well 2339 as flag_isoc99 for 'restrict'. 2340 (pp_c_specifier_qualifier_list): Likewise for _Complex. 2341 23422011-07-21 Ian Lance Taylor <iant@google.com> 2343 2344 PR middle-end/49705 2345 * c-common.c (c_disable_warnings): New static function. 2346 (c_enable_warnings): New static function. 2347 (c_fully_fold_internal): Change local unused_p to bool. Call 2348 c_disable_warnings and c_enable_warnings rather than change 2349 c_inhibit_evaluation_warnings. 2350 23512011-07-20 Jason Merrill <jason@redhat.com> 2352 2353 PR c++/6709 (DR 743) 2354 PR c++/42603 (DR 950) 2355 * c-common.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move from cp/parser.h. 2356 (CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise. 2357 (CPP_DECLTYPE): New. 2358 * c-common.c (c_parse_error): Handle CPP_DECLTYPE. 2359 23602011-07-19 Richard Guenther <rguenther@suse.de> 2361 2362 * c-common.c (pointer_int_sum): Use fold_build_pointer_plus. 2363 * c-omp.c (c_finish_omp_for): Likewise. 2364 23652011-07-12 Eric Botcazou <ebotcazou@adacore.com> 2366 2367 * c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop 2368 body on the next line. 2369 23702011-07-08 Jason Merrill <jason@redhat.com> 2371 2372 PR c++/45437 2373 * c-omp.c (check_omp_for_incr_expr): Handle preevaluation. 2374 2375 PR c++/49673 2376 * c-common.c (c_apply_type_quals_to_decl): Don't check 2377 TYPE_NEEDS_CONSTRUCTING. 2378 23792011-07-06 Richard Guenther <rguenther@suse.de> 2380 2381 * c-common.c (c_common_nodes_and_builtins): 2382 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2. 2383 23842011-07-05 Richard Guenther <rguenther@suse.de> 2385 2386 * c-common.c (c_common_nodes_and_builtins): Build all common 2387 tree nodes first. 2388 23892011-06-27 Jakub Jelinek <jakub@redhat.com> 2390 2391 * c-common.h (c_tree_chain_next): New static inline function. 2392 2393 * c-common.c (check_builtin_function_arguments): Handle 2394 BUILT_IN_ASSUME_ALIGNED. 2395 23962011-06-21 Andrew MacLeod <amacleod@redhat.com> 2397 2398 * c-common.c: Add sync_ or SYNC__ to builtin names. 2399 * c-omp.c: Add sync_ or SYNC__ to builtin names. 2400 24012011-06-20 Pierre Vittet <piervit@pvittet.com> 2402 2403 * c-pragma.h (pragma_handler_1arg, pragma_handler_2arg): New 2404 handler. 2405 (gen_pragma_handler): New union. 2406 (internal_pragma_handler): New type. 2407 (c_register_pragma_with_data) 2408 (c_register_pragma_with_expansion_and_data): New functions. 2409 2410 * c-pragma.c (registered_pragmas, c_register_pragma_1) 2411 (c_register_pragma, c_register_pragma_with_expansion) 2412 (c_invoke_pragma_handler): Changed to work with 2413 internal_pragma_handler. 2414 (c_register_pragma_with_data) 2415 (c_register_pragma_with_expansion_and_data): New functions. 2416 24172011-06-14 Joseph Myers <joseph@codesourcery.com> 2418 2419 * c-common.c: Include common/common-target.h. 2420 (handle_section_attribute): Use 2421 targetm_common.have_named_sections. 2422 * c-cppbuiltin.c: Include common/common-target.h. 2423 (c_cpp_builtins): Use targetm_common.except_unwind_info. 2424 24252011-06-10 Richard Guenther <rguenther@suse.de> 2426 2427 * c-pretty-print.c (pp_c_type_specifier): Use pp_c_identifier 2428 to print a IDENTIFIER_NODE. 2429 24302011-06-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 2431 Joseph Myers <joseph@codesourcery.com> 2432 2433 * c.opt (fbuilding-libgcc): New option. 2434 * c-cppbuiltin.c (c_cpp_builtins): Define 2435 __LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc. 2436 24372011-06-07 Jason Merrill <jason@redhat.com> 2438 2439 * c-common.c (max_tinst_depth): Lower default to 900. 2440 2441 * c-format.c (gcc_cxxdiag_char_table): Add 'S' format. 2442 24432011-06-07 Richard Guenther <rguenther@suse.de> 2444 2445 * c-common.c (c_common_nodes_and_builtins): Do not set 2446 size_type_node or call set_sizetype. 2447 24482011-06-07 Dodji Seketeli <dodji@redhat.com> 2449 2450 PR debug/49130 2451 * c-pretty-print.c (pp_c_integer_constant): Consider the canonical 2452 type when using pointer comparison to compare types. 2453 24542011-06-02 Jonathan Wakely <jwakely.gcc@gmail.com> 2455 2456 * c.opt: Add -Wdelete-non-virtual-dtor. 2457 * c-opts.c (c_common_handle_option): Include it in -Wall. 2458 24592011-05-30 Nathan Froyd <froydnj@gcc.gnu.org> 2460 2461 PR bootstrap/49190 2462 2463 Revert: 2464 2011-05-26 Nathan Froyd <froydnj@codesourcery.com> 2465 2466 * c-common.h (struct c_common_identifier): Inherit from tree_typed, 2467 not tree_common. 2468 24692011-05-27 Jakub Jelinek <jakub@redhat.com> 2470 2471 PR c++/49165 2472 * c-common.c (c_common_truthvalue_conversion) <case COND_EXPR>: For 2473 C++ don't call c_common_truthvalue_conversion on void type arms. 2474 24752011-05-27 Nathan Froyd <froydnj@codesourcery.com> 2476 2477 * c-common.h (struct stmt_tree_s) [x_cur_stmt_list]: Change to a VEC. 2478 (stmt_list_stack): Define. 2479 (cur_stmt_list): Adjust for new type of x_cur_stmt_list. 2480 * c-semantics.c (push_stmt_list, pop_stmt_list): Likewise. 2481 24822011-05-26 Nathan Froyd <froydnj@codesourcery.com> 2483 2484 * c-common.c (warning_candidate_p): Check for BLOCKs. 2485 24862011-05-26 Nathan Froyd <froydnj@codesourcery.com> 2487 2488 * c-common.h (struct c_common_identifier): Inherit from tree_typed, 2489 not tree_common. 2490 24912011-05-25 Jakub Jelinek <jakub@redhat.com> 2492 2493 * c-common.c (def_fn_type): Remove extra va_end. 2494 24952011-05-23 Jason Merrill <jason@redhat.com> 2496 2497 PR c++/48106 2498 * c-common.c (c_common_get_narrower): New. 2499 (shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it. 2500 25012011-05-23 Nathan Froyd <froydnj@codesourcery.com> 2502 2503 * c-common.h (check_function_arguments): Tweak prototype of 2504 check_function_arguments. 2505 * c-common.c (check_function_arguments): Likewise. Adjust 2506 calls to check_function_nonnull, check_function_format, and 2507 check_function_sentinel. 2508 (check_function_sentinel): Take a FUNCTION_TYPE rather than 2509 separate attributes and typelist arguments. Use 2510 FOREACH_FUNCTION_ARGS to iterate over argument types. 2511 25122011-05-15 Paolo Carlini <paolo.carlini@oracle.com> 2513 2514 * c-common.c (c_common_reswords): Reorder. 2515 * c-common.h (rid): Likewise. 2516 25172011-05-10 Nathan Froyd <froydnj@codesourcery.com> 2518 2519 * c-common.c (def_fn_type): Don't call build_function_type, call 2520 build_function_type_array or build_varargs_function_type_array 2521 instead. 2522 (c_common_nodes_and_builtins): Likewise. 2523 25242011-05-05 Nathan Froyd <froydnj@codesourcery.com> 2525 2526 * c-common.c (c_add_case_label): Omit the loc argument to 2527 build_case_label. 2528 * c-common.h (build_case_label): Remove. 2529 * c-semantics.c (build_case_label): Remove. 2530 25312011-05-05 Joseph Myers <joseph@codesourcery.com> 2532 2533 * c-objc.h (objc_start_method_definition): Update prototype. 2534 * stub-objc.c (objc_start_method_definition): Add extra parameter. 2535 25362011-05-04 Nathan Froyd <froydnj@codesourcery.com> 2537 2538 * c-common.c (check_main_parameter_types): Reindent. Don't use 2539 TYPE_ARG_TYPES directly. 2540 (handle_nonnull_attribute): Likewise. 2541 (sync_resolve_params): Likewise. 2542 * c-format.c (handle_format_arg_attribute): Likewise. Adjust call 2543 to check_format_string. 2544 (handle_format_attribute): Likewise. 2545 (check_format_string): Take a function type to examine instead of 2546 a type list. Use a function_arg_iterator to step through argument 2547 types. 2548 25492011-05-04 Richard Guenther <rguenther@suse.de> 2550 2551 * c-common.c (fix_string_type): Use size_int for index type bounds. 2552 (start_fname_decls): Do not pass NULL to build_int_cst. 2553 (c_init_attributes): Likewise. 2554 * c-lex.c (c_lex_with_flags): Likewise. 2555 25562011-04-27 Jason Merrill <jason@redhat.com> 2557 2558 * c-common.c (make_tree_vector_from_list): New. 2559 * c-common.h: Declare it. 2560 25612011-04-26 Richard Guenther <rguenther@suse.de> 2562 2563 PR preprocessor/48248 2564 * c-ppoutput.c (maybe_print_line): Always optimize newlines 2565 for output size with -P. 2566 25672011-04-25 Paolo Carlini <paolo.carlini@oracle.com> 2568 2569 * c-common.c (struct c_common_resword): Add __underlying_type. 2570 * c-common.h (enum rid): Add RID_UNDERLYING_TYPE. 2571 25722011-04-20 Jim Meyering <meyering@redhat.com> 2573 2574 * c-format.c (init_dollar_format_checking): Remove useless 2575 if-before-free. 2576 25772011-04-15 Nicola Pero <nicola.pero@meta-innovation.com> 2578 2579 * c-objc.h (objc_get_interface_ivars): Removed. 2580 (objc_detect_field_duplicates): New. 2581 * stub-objc.c: Likewise. 2582 25832011-04-14 Nicola Pero <nicola.pero@meta-innovation.com> 2584 2585 * stub-objc.c (objc_declare_protocols): Renamed to 2586 objc_declare_protocol. 2587 * c-objc.h: Likewise. 2588 25892011-04-14 Nicola Pero <nicola.pero@meta-innovation.com> 2590 2591 * stub-objc.c (objc_declare_class): Updated argument name. 2592 25932011-04-12 Nathan Froyd <froydnj@codesourcery.com> 2594 2595 * c-common.h (c_common_init_ts): Declare. 2596 * c-common.c (c_common_init_ts): Define. 2597 25982011-04-12 Nicola Pero <nicola.pero@meta-innovation.com> 2599 2600 * c-objc.h (objc_build_message_expr): Updated prototype. 2601 * stub-objc.c (objc_build_message_expr): Likewise. 2602 26032011-04-12 Martin Jambor <mjambor@suse.cz> 2604 2605 * c-gimplify.c (c_genericize): Call cgraph_get_create_node instead 2606 of cgraph_node. 2607 26082011-04-11 Richard Guenther <rguenther@suse.de> 2609 2610 * c-common.c (complete_array_type): Build a range type of 2611 proper type. 2612 26132011-04-08 Nathan Froyd <froydnj@codesourcery.com> 2614 2615 * c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES. 2616 (handle_type_generic_attribute): Likewise. 2617 26182011-04-07 Jason Merrill <jason@redhat.com> 2619 2620 PR c++/48450 2621 * c-common.c (c_common_truthvalue_conversion): Don't ignore 2622 conversion from C++0x scoped enum. 2623 26242011-04-06 Joseph Myers <joseph@codesourcery.com> 2625 2626 * c-target-def.h: New file. 2627 * c-target.def: New file. 2628 * c-target.h: New file. 2629 * c-common.c (targetcm): Don't define here. 2630 * c-common.h (default_handle_c_option): Declare. 2631 * c-format.c: Include c-target.h instead of target.h. 2632 * c-opts.c: Include c-target.h instead of target.h. Explicitly 2633 include tm.h. 2634 (default_handle_c_option): Move from targhooks.c. 2635 26362011-03-29 Jakub Jelinek <jakub@redhat.com> 2637 2638 PR preprocessor/48248 2639 * c-ppoutput.c (print): Add src_file field. 2640 (init_pp_output): Initialize it. 2641 (maybe_print_line): Don't optimize by adding up to 8 newlines 2642 if map->to_file and print.src_file are different file. 2643 (print_line): Update print.src_file. 2644 26452011-03-25 Kai Tietz <ktietz@redhat.com> 2646 2647 * c-ada-spec.c (compare_comment): Use filename_cmp 2648 instead of strcmp for filename. 2649 26502011-03-25 Jeff Law <law@redhat.com> 2651 2652 * c-family/c-common.c (def_fn_type): Add missing va_end. 2653 26542011-03-25 Jason Merrill <jason@redhat.com> 2655 2656 * c.opt: Add -std=c++03. 2657 26582011-03-22 Eric Botcazou <ebotcazou@adacore.com> 2659 2660 * c-ada-spec.c (dump_ada_template): Skip non-class instances. 2661 26622011-03-17 Kai Tietz 2663 2664 PR target/12171 2665 * c-pretty-print.c (pp_c_specifier_qualifier_list): 2666 Display allowed attributes for function pointer types. 2667 (pp_c_attributes_display): New function to display 2668 attributes having affects_type_identity flag set to true. 2669 * c-pretty-print.h (pp_c_attributes_display): New prototype. 2670 2671 * c-common.c (c_common_attribute_table): 2672 Add new element. 2673 (c_common_format_attribute_table): Likewise. 2674 26752011-03-18 Jason Merrill <jason@redhat.com> 2676 2677 * c.opt (fconstexpr-depth): Add Var(max_constexpr_depth). 2678 * c-common.h: Don't declare it here. 2679 * c-common.c: Or define it here. 2680 * c-opts.c (c_common_handle_option): Or set it here. 2681 2682 PR c++/35315 2683 * c-common.c (handle_transparent_union_attribute): Don't 2684 make a duplicate type in C++. 2685 26862011-03-15 Jason Merrill <jason@redhat.com> 2687 2688 * c-common.c (max_constexpr_depth): New. 2689 * c-common.h: Declare it. 2690 * c-opts.c (c_common_handle_option): Set it. 2691 * c.opt (fconstexpr-depth): New option. 2692 26932011-03-11 Jason Merrill <jason@redhat.com> 2694 2695 * c-common.c (attribute_takes_identifier_p): Add missing const. 2696 2697 PR c++/46803 2698 * c-common.c (attribute_takes_identifier_p): Assume that an 2699 unknown attribute takes an identifier. 2700 27012011-03-07 Nathan Froyd <froydnj@codesourcery.com> 2702 2703 PR c/47786 2704 * c-common.c (c_type_hash): Call list_length instead of iterating 2705 through DECL_CHAIN. Rename 'i' to 'n_elements'. 2706 27072011-02-19 Jakub Jelinek <jakub@redhat.com> 2708 2709 PR c/47809 2710 * c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR. 2711 27122011-02-17 Iain Sandoe <iains@gcc.gnu.org> 2713 2714 * c.opt (fobjc-abi-version=) New. 2715 (fobjc-nilcheck): New. 2716 27172011-02-03 Nathan Froyd <froydnj@codesourcery.com> 2718 2719 PR c++/46890 2720 * c-common.h (keyword_is_decl_specifier): Declare. 2721 * c-common.c (keyword_is_decl_specifier): Define. 2722 (keyword_is_function_specifier): New function. 2723 27242011-01-26 Jakub Jelinek <jakub@redhat.com> 2725 2726 PR c/47473 2727 * c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure 2728 EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of 2729 REAL_TYPE. 2730 27312011-01-26 Arnaud Charlet <charlet@adacore.com> 2732 2733 * c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type. 2734 27352011-01-26 Jakub Jelinek <jakub@redhat.com> 2736 2737 PR pch/47430 2738 * c-opts.c (c_common_post_options): Call c_common_no_more_pch 2739 after init_c_lex if pch_file is set. 2740 27412011-01-26 Dave Korn <dave.korn.cygwin@gmail.com> 2742 2743 PR c++/43601 2744 * c.opt (-fkeep-inline-dllexport): New switch. 2745 27462011-01-12 Richard Guenther <rguenther@suse.de> 2747 2748 PR middle-end/32511 2749 * c-common.c (handle_weak_attribute): Warn instead of error 2750 on declaring an inline function weak. 2751 27522011-01-05 Tom Tromey <tromey@redhat.com> 2753 2754 * c-common.h (lvalue_error): Update. 2755 * c-common.c (lvalue_error): Add 'loc' argument. Call error_at, 2756 not error. 2757 27582010-12-29 Nicola Pero <nicola.pero@meta-innovation.com> 2759 2760 PR objc/47075 2761 * c-objc.h (objc_finish_message_expr): Added argument to 2762 prototype. 2763 27642010-12-22 Nathan Froyd <froydnj@codesourcery.com> 2765 2766 * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute): 2767 Use prototype_p. 2768 27692010-12-18 Nicola Pero <nicola.pero@meta-innovation.com> 2770 2771 * c-objc.h (objc_maybe_warn_exceptions): New. 2772 * stub-objc.c (objc_maybe_warn_exceptions): New. 2773 27742010-12-10 Nathan Froyd <froydnj@codesourcery.com> 2775 2776 * c-common.h (readonly_error): Declare. 2777 * c-common.c (readonly_error): Define. 2778 27792010-12-09 Nathan Froyd <froydnj@codesourcery.com> 2780 2781 * c-common.h (invalid_indirection_error): Declare. 2782 * c-common.c (invalid_indirection_error): Define. 2783 27842010-12-03 Richard Guenther <rguenther@suse.de> 2785 2786 PR c/46745 2787 * c-pretty-print.c (pp_c_postfix_expression): Handle MEM_REF. 2788 (pp_c_unary_expression): Likewise. 2789 (pp_c_expression): Likewise. 2790 27912010-11-30 Nicola Pero <nicola.pero@meta-innovation.com> 2792 2793 * c-common.h (objc_finish_function): New. 2794 (objc_non_volatilized_type): Removed. 2795 (objc_type_quals_match): Removed. 2796 * stub-objc.c (objc_finish_function): New. 2797 (objc_non_volatilized_type): Removed. 2798 (objc_type_quals_match): Removed. 2799 28002010-11-30 Joseph Myers <joseph@codesourcery.com> 2801 2802 * c-common.h (parse_optimize_options): Declare. 2803 * c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c, 2804 c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h. 2805 28062010-11-29 Joseph Myers <joseph@codesourcery.com> 2807 2808 * c-opts.c (check_deps_environment_vars): Use getenv instead of 2809 GET_ENVIRONMENT. 2810 * c-pch.c (O_BINARY): Don't define here. 2811 * c-pragma.h: Include "cpplib.h" instead of <cpplib.h>. 2812 28132010-11-25 Joseph Myers <joseph@codesourcery.com> 2814 2815 * c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to 2816 targetm.except_unwind_info. 2817 28182010-11-23 Joseph Myers <joseph@codesourcery.com> 2819 2820 * c-opts.c (c_common_handle_option): Pass location to 2821 set_struct_debug_option. 2822 28232010-11-23 Joseph Myers <joseph@codesourcery.com> 2824 2825 * c-common.c (visibility_options): Move from ../opts.c. 2826 * c-common.h (struct visibility_flags, visibility_options): 2827 Declare here. 2828 * c-opts.c (finish_options): Rename to c_finish_options. 2829 (c_common_init): Update call to finish_options. 2830 28312010-11-22 Nicola Pero <nicola.pero@meta-innovation.com> 2832 2833 PR objc/34033 2834 * c-lex.c (lex_string): Check that each string in an Objective-C 2835 string concat sequence starts with either one or zero '@', and 2836 that there are no spurious '@' signs at the end. 2837 28382010-11-20 Joseph Myers <joseph@codesourcery.com> 2839 2840 * c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK, 2841 HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and 2842 HANDLE_PRAGMA_VISIBILITY. 2843 * c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK, 2844 HANDLE_PRAGMA_VISIBILITY): Don't define. 2845 (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test. 2846 28472010-11-20 Nathan Froyd <froydnj@codesourcery.com> 2848 2849 PR c++/16189 2850 PR c++/36888 2851 PR c++/45331 2852 * c-common.h (keyword_begins_type_specifier): Declare. 2853 (keyword_is_storage_class_specifier): Declare. 2854 (keyword_is_type_qualifier): Declare. 2855 * c-common.c (keyword_begins_type_specifier): New function. 2856 (keyword_is_storage_class_specifier): New function. 2857 (keyword_is_type_qualifier): Declare. 2858 28592010-11-19 Joseph Myers <joseph@codesourcery.com> 2860 2861 PR c/46547 2862 * c-common.c (in_late_binary_op): Define. 2863 (c_common_truthvalue_conversion): Check in_late_binary_op before 2864 calling c_save_expr. 2865 * c-common.h (in_late_binary_op): Declare. 2866 28672010-11-19 Joseph Myers <joseph@codesourcery.com> 2868 2869 * c-opts.c (c_common_handle_option): Update calls to 2870 set_struct_debug_option. 2871 28722010-11-19 Nicola Pero <nicola.pero@meta-innovation.com> 2873 2874 * c-common.h (objc_declare_protocols): Added additional argument. 2875 * stub-objc.c (objc_declare_protocol): Same change. 2876 28772010-11-18 Nathan Froyd <froydnj@codesourcery.com> 2878 2879 PR c/33193 2880 * c-common.h (build_real_imag_expr): Declare. 2881 * c-semantics.c (build_real_imag_expr): Define. 2882 28832010-11-17 Joseph Myers <joseph@codesourcery.com> 2884 2885 * c-opts.c (c_common_parse_file): Take no arguments. 2886 * c-common.h (c_common_parse_file): Update prototype. 2887 28882010-11-16 Jakub Jelinek <jakub@redhat.com> 2889 2890 PR c++/46401 2891 * c-common.c (warning_candidate_p): Don't track non-const calls 2892 or STRING_CSTs. 2893 28942010-11-15 Ian Lance Taylor <iant@google.com> 2895 2896 * c-lex.c (init_c_lex): Set macro debug callbacks if 2897 flag_dump_go_spec is set. 2898 28992010-11-15 Nicola Pero <nicola.pero@meta-innovation.com> 2900 2901 * c-common.h (objc_build_incr_expr_for_property_ref): New. 2902 * stub-objc.c (objc_build_incr_expr_for_property_ref): New. 2903 29042010-11-15 Nathan Froyd <froydnj@codesourcery.com> 2905 2906 PR preprocessor/45038 2907 * c-cppbuiltin.c (c_cpp_builtins): Use different format for C++ 2908 dialects. 2909 29102010-11-12 Joseph Myers <joseph@codesourcery.com> 2911 2912 * c-common.h (c_family_lang_mask): Declare. 2913 * c-opts.c (c_family_lang_mask): Make extern. 2914 * c-pragma.c (handle_pragma_diagnostic): Use 2915 control_warning_option. 2916 29172010-11-12 Joseph Myers <joseph@codesourcery.com> 2918 2919 * c-common.c (parse_optimize_options): Update call to 2920 decode_options. 2921 * c-common.h (c_common_handle_option): Update prototype. 2922 * c-opts.c (c_common_handle_option): Take location_t parameter and 2923 pass it to other functions. 2924 29252010-11-11 Joseph Myers <joseph@codesourcery.com> 2926 2927 * c-opts.c (warning_as_error_callback): Remove. 2928 (c_common_initialize_diagnostics): Don't call 2929 register_warning_as_error_callback. 2930 (c_common_handle_option): Handle -Werror=normalized= here. 2931 29322010-11-10 Joseph Myers <joseph@codesourcery.com> 2933 2934 * c-common.c (handle_mode_attribute): Use %' and word "signedness" 2935 in diagnostic. 2936 * c-opts.c (c_common_parse_file): Start diagnostics with lowercase 2937 letter. 2938 * c-pragma.c (handle_pragma_target, handle_pragma_optimize): 2939 Remove trailing '.' from diagnostics. 2940 * c.opt (Wwrite-strings_: Avoid '`' in help text. 2941 29422010-11-10 Joseph Myers <joseph@codesourcery.com> 2943 2944 * c-common.c (parse_optimize_options): Pass global_dc to 2945 decode_options. 2946 * c-opts.c (c_common_handle_option): Pass &global_options to 2947 set_Wstrict_aliasing. 2948 * c.opt (v): Don't mark Common or document here. 2949 29502010-11-06 Iain Sandoe <iains@gcc.gnu.org> 2951 2952 PR target/44981 2953 * c-format.c (format_type): New type gcc_objc_string_format_type. 2954 (valid_stringptr_type_p): New. 2955 (handle_format_arg_attribute): Use valid_stringptr_type_p (). 2956 (check_format_string): Pass expected type, use 2957 valid_stringptr_type_p (), check that the format string types are 2958 consistent with the format specification. 2959 (decode_format_attr): Warn if NSString is used outside objective-c. 2960 (format_types_orig): Add NSString. 2961 (format_name): New. 2962 (format_flags): New. 2963 (check_format_arg): Handle format strings requiring an external parser. 2964 first_target_format_type: New variable. 2965 (handle_format_attribute): Set up first_target_format_type, pass the 2966 expected format arg string type to check_format_string(). 2967 * c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL): New flag. 2968 * stub-objc.c (objc_string_ref_type_p): New. 2969 (objc_check_format_arg): New. 2970 29712010-11-04 Nicola Pero <nicola.pero@meta-innovation.com> 2972 2973 Fixed using the Objective-C 2.0 dot-syntax with class names. 2974 * c-common.h (objc_build_class_component_ref): New. 2975 * stub-objc.c (objc_build_class_component_ref): New. 2976 29772010-11-03 Nicola Pero <nicola.pero@meta-innovation.com> 2978 2979 * c.opt (Wproperty-assign-default): New option. 2980 29812010-11-03 Nicola Pero <nicola.pero@meta-innovation.com> 2982 2983 Implemented -fobjc-std=objc1 flag. 2984 * c.opt (fobjc-std=objc1): New option. 2985 29862010-11-01 Nicola Pero <nicola.pero@meta-innovation.com> 2987 2988 Implemented format and noreturn attributes for Objective-C methods. 2989 * c-common.c (handle_noreturn_attribute): Recognize 'noreturn' 2990 attribute for Objective-C methods. 2991 29922010-10-31 Jason Merrill <jason@redhat.com> 2993 2994 * c-common.c (conversion_warning, warn_for_collisions_1): Use 2995 EXPR_LOC_OR_HERE. 2996 29972010-10-30 Nicola Pero <nicola.pero@meta-innovation.com> 2998 2999 Implemented Objective-C 2.0 @property, @synthesize and @dynamic. 3000 * c-common.h (enum rid): Removed RID_COPIES and RID_IVAR. 3001 (objc_add_property_declaration): Removed arguments for copies and 3002 ivar. 3003 (objc_build_getter_call): Renamed to 3004 objc_maybe_build_component_ref. 3005 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr. 3006 (objc_is_property_ref): New. 3007 * c-common.c (c_common_reswords): Removed copies and ivar. 3008 * stub-objc.c (objc_add_property_declaration): Removed arguments 3009 for copies and ivar. 3010 (objc_build_getter_call): Renamed to 3011 objc_maybe_build_component_ref. 3012 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr. 3013 (objc_is_property_ref): New. 3014 30152010-10-29 Arnaud Charlet <charlet@adacore.com> 3016 Matthew Gingell <gingell@adacore.com> 3017 3018 * c-ada-spec.c (separate_class_package): New function. 3019 (pp_ada_tree_identifier): Prefix references to C++ classes with the 3020 name of their enclosing package. 3021 (print_ada_declaration): Use separate_class_package. 3022 30232010-10-27 Jason Merrill <jason@redhat.com> 3024 3025 * c-common.c (c_common_reswords): Add __is_literal_type. 3026 * c-common.h (enum rid): Add RID_IS_LITERAL_TYPE. 3027 3028 * c-common.c (check_case_value): Remove special C++ code. 3029 30302010-10-27 Nicola Pero <nicola.pero@meta-innovation.com> 3031 3032 * c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN, 3033 RID_RETAIN, RID_COPY and RID_NONATOMIC. Updated RID_FIRST_PATTR 3034 and RID_LAST_PATTR. 3035 (objc_add_property_declaration): Added additional arguments. 3036 (objc_property_attribute_kind): Removed. 3037 (objc_set_property_attr): Removed. 3038 * c-common.c (c_common_reswords): Added readwrite, assign, retain, 3039 copy and nonatomic. 3040 * stub-objc.c (objc_add_property_declaration): Added additional 3041 arguments. 3042 (objc_set_property_attr): Removed. 3043 30442010-10-27 Nicola Pero <nicola.pero@meta-innovation.com> 3045 3046 * c-common.h (objc_add_property_variable): Renamed to 3047 objc_add_property_declaration. Added location argument. 3048 * stub-objc.c (objc_add_property_variable): Same change. 3049 30502010-10-23 Nicola Pero <nicola.pero@meta-innovation.com> 3051 3052 * c-common.h (objc_maybe_printable_name): New. 3053 * stub-objc.c (objc_maybe_printable_name): New. 3054 30552010-10-22 Artjoms Sinkarovs <artyom.shinakroff@gmail.com> 3056 Andrew Pinski <pinskia@gmail.com> 3057 3058 * c-common.h (c_common_mark_addressable_vec): Declare. 3059 * c-common.c (c_common_mark_addressable_vec): New function. 3060 30612010-10-20 Nicola Pero <nicola.pero@meta-innovation.com> 3062 3063 * c-common.h (objc_set_method_type): Removed. 3064 (objc_add_method_declaration): Added boolean argument. 3065 (objc_start_method_definition): Same change. 3066 (objc_build_method_signature): Same change. 3067 * stub-objc.c (objc_set_method_type): Removed. 3068 (objc_add_method_declaration): Added boolean argument. 3069 (objc_start_method_definition): Same change. 3070 (objc_build_method_signature): Same change. 3071 30722010-10-20 Nicola Pero <nicola.pero@meta-innovation.com> 3073 3074 * c-common.h (finish_file): Removed. 3075 (objc_write_global_declarations): New. 3076 * c-opts.c (c_common_parse_file): Do not call finish_file. 3077 * stub-objc.c (objc_write_global_declarations): New. 3078 30792010-10-18 Nicola Pero <nicola.pero@meta-innovation.com> 3080 3081 Implemented parsing @synthesize and @dynamic for 3082 Objective-C/Objective-C++. 3083 * c-common.h (enum rid): Add RID_AT_SYNTHESIZE and RID_AT_DYNAMIC. 3084 (objc_add_synthesize_declaration): New. 3085 (objc_add_dynamic_declaration): New. 3086 * c-common.c (c_common_reswords): Add synthesize and dynamic. 3087 * stub-objc.c (objc_add_synthesize_declaration): New. 3088 (objc_add_dynamic_declaration): New. 3089 30902010-10-18 Michael Meissner <meissner@linux.vnet.ibm.com> 3091 3092 PR target/46041 3093 * c-cppbuiltin.c (mode_has_fma): Move function here from 3094 builtins.c. Don't use the fma optab, instead just use the 3095 HAVE_fma* macros, so that __FP_FAST_FMA* will be defined when 3096 using -save-temps. 3097 30982010-10-18 Nicola Pero <nicola.pero@meta-innovation.com> 3099 3100 Merge from 'apple/trunk' branch on FSF servers. 3101 3102 2005-11-08 Fariborz Jahanian <fjahanian@apple.com> 3103 3104 Radar 4330422 3105 * c-common.h (objc_non_volatilized_type): New declaration 3106 * stub-objc.c (objc_non_volatilized_type): New stub. 3107 31082010-10-17 Nicola Pero <nicola.pero@meta-innovation.com> 3109 3110 Merge from 'apple/trunk' branch on FSF servers. 3111 3112 2006-03-27 Fariborz Jahanian <fjahanian@apple.com> 3113 3114 Radar 4133425 3115 * c-common.h (objc_diagnose_private_ivar): New decl. 3116 * stub-objc.c (objc_diagnose_private_ivar): New stub. 3117 31182010-10-17 Iain Sandoe <iains@gcc.gnu.org> 3119 3120 * c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE. 3121 * c-common.h (enum rid): Add RID_AT_PACKAGE. 3122 (objc_ivar_visibility_kind): New enum. 3123 (objc_set_visibility): Adjust prototype to use visibility enum. 3124 * stub-objc.c (objc_set_visibility): Adjust stub to use 3125 visibility enum. 3126 31272010-10-14 Michael Meissner <meissner@linux.vnet.ibm.com> 3128 3129 * c-cppbuiltin.c (builtin_define_float_constants): Emit 3130 __FP_FAST_FMA, __FP_FAST_FMAF, and __FP_FAST_FMAL if the machine 3131 has the appropriate fma builtins. 3132 (c_cpp_builtins): Adjust call to builtin_define_float_constants. 3133 31342010-10-14 Iain Sandoe <iains@gcc.gnu.org> 3135 3136 merge from FSF apple 'trunk' branch. 3137 2006 Fariborz Jahanian <fjahanian@apple.com> 3138 3139 Radars 4436866, 4505126, 4506903, 4517826 3140 * c-common.c (c_common_resword): Define @property and its attributes. 3141 * c-common.h: Define property attribute enum entries. 3142 (OBJC_IS_PATTR_KEYWORD): New. 3143 (objc_property_attribute_kind): New enum. 3144 Declare objc_set_property_attr (), objc_add_property_variable (), 3145 objc_build_getter_call () and objc_build_setter_call (). 3146 * stub-objc.c (objc_set_property_attr): New stub. 3147 (objc_add_property_variable): Likewise. 3148 (objc_build_getter_call): Likewise. 3149 (objc_build_setter_call) Likewise. 3150 31512010-10-13 Iain Sandoe <iains@gcc.gnu.org> 3152 3153 merge from FSF apple 'trunk' branch. 3154 2006-04-26 Fariborz Jahanian <fjahanian@apple.com> 3155 3156 Radar 3803157 (method attributes) 3157 * c-common.c (handle_deprecated_attribute): Recognize 3158 objc methods as valid declarations. 3159 * c-common.h: Declare objc_method_decl (). 3160 * stub-objc.c (objc_method_decl): New stub. 3161 31622010-10-08 Joseph Myers <joseph@codesourcery.com> 3163 3164 * c-common.c (parse_optimize_options): Call 3165 decode_cmdline_options_to_array_default_mask before 3166 decode_options. Update arguments to decode_options. 3167 * c-common.h (c_common_init_options_struct): Declare. 3168 * c-opts.c (c_common_init_options_struct): New. Split out from 3169 c_common_init_options. 3170 31712010-10-06 Nicola Pero <nicola.pero@meta-innovation.com> 3172 3173 Implemented fast enumeration for Objective-C. 3174 * c-common.h (objc_finish_foreach_loop): New. 3175 * stub-objc.c (objc_finish_foreach_loop): New. 3176 31772010-10-05 Joseph Myers <joseph@codesourcery.com> 3178 3179 * c-common.h (struct diagnostic_context): Don't declare here. 3180 (c_common_initialize_diagnostics): Declare using 3181 diagnostic_context typedef. 3182 * c-opts.c (c_common_handle_option): Pass global_dc to 3183 handle_generated_option. 3184 31852010-10-04 Joseph Myers <joseph@codesourcery.com> 3186 3187 * c-opts.c (c_common_handle_option): Pass &global_options_set to 3188 handle_generated_option. 3189 31902010-10-03 Ian Lance Taylor <iant@google.com> 3191 3192 * c.opt (-fplan9-extensions): New option. 3193 31942010-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> 3195 3196 * c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision): 3197 Remove. 3198 (c_cpp_builtins): Call functions from cppbuiltin.c instead 3199 of duplicating code. 3200 32012010-09-30 Iain Sandoe <iains@gcc.gnu.org> 3202 3203 * c-common.c: Add two new entries for @optional 3204 and @required keywords. 3205 3206 merge from FSF 'apple/trunk' branch. 3207 2006-01-30 Fariborz Jahanian <fjahanian@apple.com> 3208 3209 Radar 4386773 3210 * c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new 3211 objective-c keywords. 3212 (objc_set_method_opt): New declaration. 3213 * stub-objc.c (objc_set_method_opt): New stub. 3214 32152010-09-30 Joseph Myers <joseph@codesourcery.com> 3216 3217 * c-common.c (handle_optimize_attribute): Pass &global_options to 3218 cl_optimization_save and cl_optimization_restore. 3219 * c-opts.c (c_common_handle_option): Pass &global_options to 3220 handle_generated_option. 3221 * c-pragma.c (handle_pragma_diagnostic): Use option_flag_var. 3222 (handle_pragma_pop_options, handle_pragma_reset_options): Pass 3223 &global_options to cl_optimization_restore. 3224 32252010-09-30 Nicola Pero <nicola.pero@meta-innovation.com> 3226 3227 * c-lex.c (c_lex_with_flags): Updated comments for CPP_AT_NAME 3228 Objective-C/Objective-C++ keywords. 3229 32302010-09-29 Nicola Pero <nicola.pero@meta-innovation.com> 3231 3232 Merge from 'apple/trunk' branch on FSF servers. 3233 3234 2005-10-04 Fariborz Jahanian <fjahanian@apple.com> 3235 3236 Radar 4281748 3237 * c-common.h (objc_check_global_decl): New declaration. 3238 * stub-objc.c (objc_check_global_decl): New stub. 3239 32402010-09-29 Joseph Myers <joseph@codesourcery.com> 3241 3242 * c.opt: Don't use VarExists. 3243 32442010-09-29 Joseph Myers <joseph@codesourcery.com> 3245 3246 * c-common.c (c_cpp_error): Update names of diagnostic_context 3247 members. 3248 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of 3249 cl_optimization members. 3250 * c-opts.c (warning_as_error_callback, c_common_handle_option, 3251 sanitize_cpp_opts, finish_options): Update names of cpp_options 3252 members. 3253 32542010-09-29 Nicola Pero <nicola.pero@meta-innovation.com> 3255 3256 * c-common.h (OBJC_IS_CXX_KEYWORD): New macro. Updated comments. 3257 (objc_is_reserved_word): Removed. 3258 * c-common.c: Updated comments. 3259 * c-lex.c (c_lex_with_flags): Use OBJC_IS_CXX_KEYWORD instead of 3260 objc_is_reserved_word. 3261 * stub-objc.c (objc_is_reserved_word): Removed. 3262 32632010-09-28 Iain Sandoe <iains@gcc.gnu.org> 3264 3265 * c-common.h (objc_add_method_declaration): Adjust prototype to 3266 include attributes. 3267 (objc_start_method_definition): Likewise. 3268 (objc_build_keyword_decl): Likewise. 3269 * stub-objc.c:(objc_add_method_declaration): Handle attributes. 3270 (objc_start_method_definition): Likewise. 3271 (objc_build_keyword_decl): Likewise. 3272 32732010-09-28 Iain Sandoe <iains@gcc.gnu.org> 3274 3275 * c-common.h (objc_start_class_interface): Adjust prototype. 3276 (objc_start_category_interface): Likewise. 3277 (objc_start_protocol): Likewise. 3278 * stub-objc.c (objc_start_protocol): Adjust for extra argument. 3279 (objc_start_class_interface): Likewise. 3280 (objc_start_category_interface): Likewise. 3281 32822010-09-27 Ian Lance Taylor <iant@google.com> 3283 3284 * c-common.c (c_common_attribute_table): Add no_split_stack. 3285 (handle_no_split_stack_attribute): New static function. 3286 32872010-09-27 Nicola Pero <nicola.pero@meta-innovation.com> 3288 3289 Merge from 'apple/trunk' branch on FSF servers. 3290 3291 2005-12-15 Fariborz Jahanian <fjahanian@apple.com> 3292 3293 Radar 4229905 3294 * c-common.h (objc_have_common_type): New declaration. 3295 * stub-objc.c (objc_have_common_type): New stub. 3296 3297 2005-06-22 Ziemowit Laski <zlaski@apple.com> 3298 3299 Radar 4154928 3300 * c-common.h (objc_common_type): New prototype. 3301 * stub-objc.c (objc_common_type): New stub. 3302 33032010-09-24 Jan Hubicka <jh@suse.cz> 3304 3305 * c-common.c (handle_leaf_attribute): New function. 3306 (struct attribute_spec c_common_att): Add leaf. 3307 33082010-09-22 Joseph Myers <joseph@codesourcery.com> 3309 3310 * c.opt (-all-warnings, -ansi, -assert, -assert=, -comments, 3311 -comments-in-macros, -define-macro, -define-macro=, -dependencies, 3312 -dump, -dump=, -imacros, -imacros=, -include, -include=, 3313 -include-barrier, -include-directory, -include-directory=, 3314 -include-directory-after, -include-directory-after=, 3315 -include-prefix, -include-prefix=, -include-with-prefix, 3316 -include-with-prefix=, -include-with-prefix-after, 3317 -include-with-prefix-after=, -include-with-prefix-before, 3318 -include-with-prefix-before=, -no-integrated-cpp, 3319 -no-line-commands, -no-standard-includes, -no-warnings, -output, 3320 -output=, -pedantic, -pedantic-errors, -preprocess, 3321 -print-missing-file-dependencies, -trace-includes, -traditional, 3322 -traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=, 3323 -user-dependencies, -verbose, -write-dependencies, 3324 -write-user-dependencies, no-integrated-cpp, traditional): New. 3325 33262010-09-21 Nicola Pero <nicola.pero@meta-innovation.com> 3327 3328 PR objc/23710 3329 * c-common.h (objc_start_method_definition): Return bool instead 3330 of void. 3331 * stub-objc.c (objc_start_method_definition): Return bool instead 3332 of void. 3333 33342010-09-21 Nicola Pero <nicola.pero@meta-innovation.com> 3335 3336 PR objc/25965 3337 * c-common.h (objc_get_interface_ivars): New declaration. 3338 * stub-objc.c (objc_get_interface_ivars): New stub. 3339 33402010-09-15 Ian Lance Taylor <iant@google.com> 3341 3342 * c-common.c (parse_optimize_options): Do not capitalize warning 3343 messages. Remove period at end of warning message. 3344 33452010-09-09 Nathan Sidwell <nathan@codesourcery.com> 3346 3347 * c-common.c (handle_alias_ifunc_attribute): New, broken out of ... 3348 (handle_alias_attribute): ... here. 3349 (handle_ifunc_attribute): New. 3350 33512010-09-06 Mark Mitchell <mark@codesourcery.com> 3352 3353 * c-common.h (do_warn_double_promotion): Declare. 3354 * c-common.c (do_warn_double_promotion): Define. 3355 33562010-09-05 Mark Mitchell <mark@codesourcery.com> 3357 3358 * c.opt (Wdouble-promotion): New. 3359 33602010-09-02 Joseph Myers <joseph@codesourcery.com> 3361 3362 * c.opt (falt-external-templates, fhuge-objects, fvtable-gc, 3363 fvtable-thunks, fxref): Mark no longer supported in help text. 3364 33652010-09-02 Joseph Myers <joseph@codesourcery.com> 3366 3367 * c.opt (Wimport, fall-virtual, falt-external-templates, 3368 fdefault-inline, fenum-int-equiv, fexternal-templates, 3369 fguiding-decls, fhonor-std, fhuge-objects, flabels-ok, 3370 fname-mangling-version-, fnew-abi, fnonnull-objects, 3371 foptional-diags, fsquangle, fstrict-prototype, fthis-is-variable, 3372 fvtable-gc, fvtable-thunks, fxref): Mark with Ignore and Warn as 3373 applicable. 3374 (fhandle-exceptions): Mark with Alias and Warn. 3375 * c-opts.c (c_common_handle_option): Don't handle options marked 3376 as ignored. 3377 33782010-09-02 Joseph Myers <joseph@codesourcery.com> 3379 3380 * c.opt (Wcomments, Werror-implicit-function-declaration, 3381 ftemplate-depth-, std=c89, std=c9x, std=gnu89, std=gnu9x, 3382 std=iso9899:1990, std=iso9899:1999, std=iso9899:199x): Mark as 3383 aliases. 3384 * c-common.c (option_codes): Use OPT_Wcomment instead of 3385 OPT_Wcomments. 3386 * c-opts.c (warning_as_error_callback, c_common_handle_option): 3387 Don't handle options marked as aliases. 3388 33892010-08-25 Richard Guenther <rguenther@suse.de> 3390 3391 * c-common.c (c_common_get_alias_set): Remove special 3392 handling for pointers. 3393 33942010-08-20 Nathan Froyd <froydnj@codesourcery.com> 3395 3396 * c-common.c: Use FOR_EACH_VEC_ELT. 3397 * c-gimplify.c: Likewise. 3398 * c-pragma.c: Likewise. 3399 34002010-08-16 Joseph Myers <joseph@codesourcery.com> 3401 3402 * c.opt (MDX): Change back to MD. Mark NoDriverArg instead of 3403 RejectDriver. 3404 (MMDX): Change back to MMD. Mark NoDriverArg instead of 3405 RejectDriver. 3406 * c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD 3407 instead of OPT_MDX and OPT_MMDX. 3408 34092010-08-16 Joseph Myers <joseph@codesourcery.com> 3410 3411 * c.opt (MDX, MMDX, lang-asm): Mark RejectDriver. 3412 34132010-08-12 Joseph Myers <joseph@codesourcery.com> 3414 3415 * c.opt (MD, MMD): Change to MDX and MMDX. 3416 * c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX. 3417 34182010-08-11 Joseph Myers <joseph@codesourcery.com> 3419 3420 * c-opts.c (c_common_handle_option): Call handle_generated_option 3421 instead of handle_option. 3422 34232010-08-08 Nathan Froyd <froydnj@codesourcery.com> 3424 3425 * c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push. 3426 (maybe_apply_renaming_pragma): Delete unneeded declarations. 3427 34282010-08-08 Nathan Froyd <froydnj@codesourcery.com> 3429 3430 * c-pragma.c (pending_redefinition): Declare. Declare a VEC of it. 3431 (pending_redefine_extname): Change type to a VEC. 3432 (add_to_renaming_pragma_list): Update for new type of 3433 pending_redefine_extname. 3434 (maybe_apply_renaming_pragma): Likewise. 3435 34362010-08-04 Arnaud Charlet <charlet@adacore.com> 3437 3438 * c-ada-spec.c (dump_ada_template): Mark underlying instance type as 3439 visited. 3440 (dump_generic_ada_node): Code clean up. Use TREE_VISITED flag to 3441 decide whether a type has already been declared/seen. 3442 Do not go to the original type. 3443 (dump_nested_types): New parameter forward. 3444 Generate forward declaration if needed and mark type as visited. 3445 (print_ada_declaration): Call dump_nested_types if not already done. 3446 Mark types as visited. 3447 34482010-08-03 Joseph Myers <joseph@codesourcery.com> 3449 3450 * c.opt (-print-pch-checksum): Remove option. 3451 * c-opts.c (c_common_handle_option): Don't handle 3452 OPT_print_pch_checksum. 3453 34542010-07-27 Joseph Myers <joseph@codesourcery.com> 3455 3456 * c-common.h (c_common_handle_option): Update prototype and return 3457 value type. 3458 * c-opts.c (c_common_handle_option): Update prototype and return 3459 value type. Update calls to handle_option and 3460 enable_warning_as_error. 3461 34622010-07-27 Jakub Jelinek <jakub@redhat.com> 3463 3464 PR c/45079 3465 * c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR. 3466 34672010-07-27 Joseph Myers <joseph@codesourcery.com> 3468 3469 * c-common.h (c_common_missing_argument): Remove. 3470 * c-opts.c (c_common_missing_argument): Remove. 3471 * c.opt (A, D, F, I, MD, MMD, MQ, MT, U, fconstant-string-class=, 3472 idirafter, imacros, include, isysroot, isystem, iquote): Add 3473 MissingArgError. 3474 * c-objc-common.h (LANG_HOOKS_MISSING_ARGUMENT): Remove. 3475 34762010-07-27 Joseph Myers <joseph@codesourcery.com> 3477 3478 * c-common.h (c_common_option_lang_mask, 3479 c_common_initialize_diagnostics, c_common_complain_wrong_lang_p): 3480 New. 3481 (c_common_init_options): Update prototype. 3482 * c-opts.c (c_common_option_lang_mask): New. 3483 (c_common_initialize_diagnostics): Split out of 3484 c_common_init_options. 3485 (accept_all_c_family_options, c_common_complain_wrong_lang_p): 3486 New. 3487 (c_common_init_options): Update prototype. Use decoded options in 3488 search for -lang-asm. 3489 34902010-07-15 Nathan Froyd <froydnj@codesourcery.com> 3491 3492 * c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN. 3493 * c-format.c: Likewise. 3494 34952010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org> 3496 3497 * c-common.h: Include diagnostic-core.h. Error if already 3498 included. 3499 * c-semantics.c: Do not define GCC_DIAG_STYLE here. 3500 35012010-07-03 Manuel López-Ibáñez <manu@gcc.gnu.org> 3502 3503 * c-family/c-common.c (IN_GCC_FRONTEND): Do not undef. 3504 Do not include expr.h 3505 (vector_mode_valid_p): Move here. 3506 35072010-06-21 DJ Delorie <dj@redhat.com> 3508 3509 * c-pragma.c (handle_pragma_diagnostic): Add push/pop, 3510 allow these pragmas anywhere. 3511 35122010-06-14 Jakub Jelinek <jakub@redhat.com> 3513 3514 PR bootstrap/44509 3515 * c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h. 3516 (lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers. 3517 (lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use 3518 ggc_strdup instead of xstrdup. 3519 35202010-06-10 Jakub Jelinek <jakub@redhat.com> 3521 3522 * c-cppbuiltin.c: Include cpp-id-data.h. 3523 (lazy_hex_fp_values, lazy_hex_fp_value_count): New variables. 3524 (lazy_hex_fp_value): New function. 3525 (builtin_define_with_hex_fp_value): Provide definitions lazily. 3526 35272010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org> 3528 3529 * c-gimplify.c: Do not include tree-flow.h 3530 35312010-06-29 Joern Rennecke <joern.rennecke@embecosm.com> 3532 3533 PR other/44034 3534 * c-common.c: Rename targetm member: 3535 targetm.enum_va_list -> targetm.enum_va_list_p 3536 35372010-06-28 Anatoly Sokolov <aesok@post.ru> 3538 3539 * c-common.c (shorten_compare): Adjust call to force_fit_type_double. 3540 35412010-06-28 Steven Bosscher <steven@gcc.gnu.org> 3542 3543 * c-cppbuiltin.c: Do not include except.h. 3544 35452010-06-24 Andi Kleen <ak@linux.intel.com> 3546 3547 * c-common.c (warn_for_omitted_condop): New. 3548 * c-common.h (warn_for_omitted_condop): Add prototype. 3549 35502010-06-21 Joseph Myers <joseph@codesourcery.com> 3551 3552 * c.opt (lang-objc): Remove. 3553 * c-opts.c (c_common_handle_option): Don't handle OPT_lang_objc. 3554 35552010-06-21 Joern Rennecke <joern.rennecke@embecosm.com> 3556 3557 * c-opts.c: Include "tm_p.h". 3558 35592010-06-20 Joseph Myers <joseph@codesourcery.com> 3560 3561 * c-common.c (parse_optimize_options): Update call to 3562 decode_options. 3563 35642010-06-18 Nathan Froyd <froydnj@codesourcery.com> 3565 3566 * c-common.c (record_types_used_by_current_var_decl): Adjust for 3567 new type of types_used_by_cur_var_decl. 3568 35692010-06-17 Joern Rennecke <joern.rennecke@embecosm.com> 3570 3571 PR bootstrap/44512 3572 * c-cppbuiltin.c (builtin_define_with_hex_fp_value): Add cast 3573 for C++ standard compliance. 3574 35752010-06-16 Jason Merrill <jason@redhat.com> 3576 3577 * c.opt: Add -Wnoexcept. 3578 35792010-06-16 Richard Guenther <rguenther@suse.de> 3580 3581 PR c/44555 3582 * c-common.c (c_common_truthvalue_conversion): Remove 3583 premature and wrong optimization concering ADDR_EXPRs. 3584 35852010-06-15 Arnaud Charlet <charlet@adacore.com> 3586 3587 * c-ada-spec.c (dump_sloc): Remove column info. 3588 (is_simple_enum): New function. 3589 (dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada 3590 enum types when relevant. 3591 35922010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org> 3593 3594 * c-common.c (conversion_warning): Warn at expression 3595 location. 3596 35972010-06-10 Joseph Myers <joseph@codesourcery.com> 3598 3599 * c-opts.c (c_common_handle_option): Don't handle 3600 OPT_fshow_column. 3601 36022010-06-08 Laurynas Biveinis <laurynas.biveinis@gmail.com> 3603 3604 * c-pragma.c (push_alignment): Use typed GC allocation. 3605 (handle_pragma_push_options): Likewise. 3606 3607 * c-common.c (parse_optimize_options): Likewise. 3608 3609 * c-common.h (struct sorted_fields_type): Add variable_size GTY 3610 option. 3611 36122010-06-07 Joseph Myers <joseph@codesourcery.com> 3613 3614 * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin, 3615 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar, 3616 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm, 3617 flag_signed_bitfields, warn_strict_null_sentinel, 3618 flag_nil_receivers, flag_zero_link, flag_replace_objc_classes, 3619 flag_gen_declaration, flag_no_gnu_keywords, 3620 flag_implement_inlines, flag_implicit_templates, 3621 flag_implicit_inline_templates, flag_optional_diags, 3622 flag_elide_constructors, flag_default_inline, flag_rtti, 3623 flag_conserve_space, flag_access_control, flag_check_new, 3624 flag_new_for_scope, flag_weak, flag_working_directory, 3625 flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr, 3626 flag_enforce_eh_specs, flag_threadsafe_statics, 3627 flag_pretty_templates): Remove. 3628 * c-common.h (flag_preprocess_only, flag_nil_receivers, 3629 flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link, 3630 flag_replace_objc_classes, flag_undef, flag_no_builtin, 3631 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar, 3632 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm, 3633 flag_const_strings, flag_signed_bitfields, flag_gen_declaration, 3634 flag_no_gnu_keywords, flag_implement_inlines, 3635 flag_implicit_templates, flag_implicit_inline_templates, 3636 flag_optional_diags, flag_elide_constructors, flag_default_inline, 3637 flag_rtti, flag_conserve_space, flag_access_control, 3638 flag_check_new, flag_new_for_scope, flag_weak, 3639 flag_working_directory, flag_use_cxa_atexit, 3640 flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs, 3641 flag_threadsafe_statics, flag_pretty_templates, 3642 warn_strict_null_sentinel): Remove. 3643 * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm, 3644 fbuiltin, fcheck-new, fconserve-space, felide-constructors, 3645 fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines, 3646 fimplicit-inline-templates, fimplicit-templates, 3647 flax-vector-conversions, fms-extensions, fnil-receivers, 3648 fnonansi-builtins, fpretty-templates, freplace-objc-classes, 3649 frtti, fshort-double, fshort-enums, fshort-wchar, 3650 fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics, 3651 funsigned-bitfields, funsigned-char, fuse-cxa-atexit, 3652 fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link, 3653 gen-decls, undef): Use Var. 3654 (fdefault-inline, foptional-diags): Document as doing nothing. 3655 * c-opts.c (c_common_handle_option): Remove cases for options now 3656 using Var. Mark ignored options as such. 3657 36582010-06-05 Steven Bosscher <steven@gcc.gnu.org> 3659 3660 * c-common.c: Moved to here from parent directory. 3661 * c-common.def: Likewise. 3662 * c-common.h: Likewise. 3663 * c-cppbuiltin.c: Likewise. 3664 * c-dump.c: Likewise. 3665 * c-format.c: Likewise. 3666 * c-format.h : Likewise. 3667 * c-gimplify.c: Likewise. 3668 * c-lex.c: Likewise. 3669 * c-omp.c: Likewise. 3670 * c.opt: Likewise. 3671 * c-opts.c: Likewise. 3672 * c-pch.c: Likewise. 3673 * c-ppoutput.c: Likewise. 3674 * c-pragma.c: Likewise. 3675 * c-pragma.h: Likewise. 3676 * c-pretty-print.c: Likewise. 3677 * c-pretty-print.h: Likewise. 3678 * c-semantics.c: Likewise. 3679 * stub-objc.c: Likewise. 3680 3681 * c-common.c: Include gt-c-family-c-common.h. 3682 * c-pragma.c: Include gt-c-family-c-pragma.h. 3683 3684Copyright (C) 2010-2014 Free Software Foundation, Inc. 3685 3686Copying and distribution of this file, with or without modification, 3687are permitted in any medium without royalty provided the copyright 3688notice and this notice are preserved. 3689