]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/c-family/ChangeLog
* config/avr/avr-mcus.def: Add new avr25 devices attiny441, attiny828
[thirdparty/gcc.git] / gcc / c-family / ChangeLog
CommitLineData
3c77ca67 12014-05-22 Thomas Schwinge <thomas@codesourcery.com>
2
68a2c870 3 * c-common.h (c_omp_sharing_predetermined, c_omp_remap_decl):
4 Remove prototypes.
5 (record_types_used_by_current_var_decl): Move prototype to where
6 it belongs.
7
3c77ca67 8 * c-common.c (DEF_FUNCTION_TYPE_0, DEF_FUNCTION_TYPE_6)
9 (DEF_FUNCTION_TYPE_7, DEF_FUNCTION_TYPE_8)
10 (DEF_FUNCTION_TYPE_VAR_5): Cosmetic fixes.
11
3ab4693e 122014-05-21 Richard Sandiford <rsandifo@linux.vnet.ibm.com>
13
14 * c-common.h (CTI_VOID_ZERO, void_zero_node): Delete.
15 * c-common.c (c_common_nodes_and_builtins): Don't initialize
16 void_zero_node.
17 * c-pretty-print.c (pp_c_void_constant): New function.
18 (c_pretty_printer::constant, c_pretty_printer::primary_expression)
19 (c_pretty_printer::expression): Handle VOID_CST.
20 * cilk.c (extract_free_variables): Likewise.
21 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift)
22 (ubsan_instrument_vla): Use void_node instead of void_zero_node.
23
25a27413 242014-05-17 Trevor Saunders <tsaunders@mozilla.com>
25
26 * c-common.h (sorted_fields_type): Remove variable_size GTY attribute.
27 * c-pragma.c (push_alignment): Adjust.
28 (handle_pragma_push_options): Likewise.
29
3e5a8b00 302014-05-09 Marek Polacek <polacek@redhat.com>
31
32 PR c/50459
33 * c-common.c (check_user_alignment): Return -1 if alignment is error
34 node.
35 (handle_aligned_attribute): Don't call default_conversion on
36 FUNCTION_DECLs.
37 (handle_vector_size_attribute): Likewise.
38 (handle_tm_wrap_attribute): Handle case when wrap_decl is error node.
39 (handle_sentinel_attribute): Call default_conversion and allow even
40 integral types as an argument.
41
c2c4ae8d 422014-05-08 Marek Polacek <polacek@redhat.com>
43
44 PR c/61053
45 * c-common.c (min_align_of_type): New function factored out from...
46 (c_sizeof_or_alignof_type): ...here.
47 * c-common.h (min_align_of_type): Declare.
48
2026249a 492014-05-08 Marek Polacek <polacek@redhat.com>
50
51 PR c/61077
52 * c-common.c (check_main_parameter_types): Warn for _Atomic-qualified
53 parameter type of main.
54
33c8dcfe 552014-05-07 DJ Delorie <dj@redhat.com>
56
57 * c-cppbuiltin.c (print_bits_of_hex): New.
58 (builtin_define_type_minmax): Print values using hex so as not to
59 require a pre-computed list of string values.
60
960d5a55 612014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
62 Mike Stump <mikestump@comcast.net>
63 Richard Sandiford <rdsandiford@googlemail.com>
64
65 * c-ada-spec.c: Include wide-int.h.
66 (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Remove.
67 (dump_generic_ada_node): Use wide-int interfaces.
68 * c-common.c: Include wide-int-print.h.
69 (shorten_compare): Use wide-int interfaces and tree_int_cst_lt.
70 (pointer_int_sum): Use wide-int interfaces.
71 (c_common_nodes_and_builtins): Use make_int_cst.
72 (match_case_to_enum_1): Use tree_fits_uhwi_p and tree_fits_shwi_p.
73 (handle_alloc_size_attribute): Use wide-int interfaces.
74 (get_nonnull_operand): Likewise.
75 * c-format.c (get_constant): Use tree_fits_uhwi_p.
76 * c-lex.c: Include wide-int.h.
77 (narrowest_unsigned_type): Take a widest_int rather than two
78 HOST_WIDE_INTs.
79 (narrowest_signed_type): Likewise.
80 (interpret_integer): Update accordingly. Use wide-int interfaces.
81 (lex_charconst): Use wide-int interfaces.
82 * c-pretty-print.c: Include wide-int.h.
83 (pp_c_integer_constant): Use wide-int interfaces.
84 * cilk.c (declare_one_free_variable): Use tree_int_cst_lt instead of
85 INT_CST_LT_UNSIGNED.
86
bbb88b31 872014-05-06 Richard Biener <rguenther@suse.de>
88
89 * c-opts.c (c_common_post_options): For -freestanding,
90 -fno-hosted and -fno-builtin disable pattern recognition
91 if not enabled explicitely.
92
022d4718 932014-05-02 Marek Polacek <polacek@redhat.com>
94
95 * c.opt (Wsizeof-pointer-memaccess): Describe option.
96
e4ab2ef3 972014-05-01 Marek Polacek <polacek@redhat.com>
98
99 PR c/43245
100 * c.opt (Wdiscarded-qualifiers): Add.
101
52cc0072 1022014-04-30 Marek Polacek <polacek@redhat.com>
103
104 * c-ubsan.c (ubsan_instrument_division): Handle REAL_TYPEs. Perform
105 INT_MIN / -1 sanitization only for integer types.
106
4a026b48 1072014-04-25 Marek Polacek <polacek@redhat.com>
108
109 PR c/18079
110 * c-common.c (handle_noinline_attribute): Warn if the attribute
111 conflicts with always_inline attribute.
112 (handle_always_inline_attribute): Warn if the attribute conflicts
113 with noinline attribute.
114
90e645fa 1152014-04-25 Marek Polacek <polacek@redhat.com>
116
117 PR c/60156
118 * c-common.c (check_main_parameter_types): Warn about variadic main.
119
db103ea4 1202014-04-24 Mike Stump <mikestump@comcast.net>
121
122 * c.opt (Wshadow-ivar): Default to on.
123
06511efd 1242014-04-24 Dimitris Papavasiliou <dpapavas@gmail.com>
125
126 * c.opt (Wshadow-ivar, flocal-ivars, fivar-visibility): Add.
127
cdf34fca 1282014-04-23 Marek Polacek <polacek@redhat.com>
129
130 * c-common.c (handle_tm_wrap_attribute): Tweak error message.
131
7311d7c1 1322014-04-22 Jakub Jelinek <jakub@redhat.com>
133
134 PR sanitizer/60275
135 * c-ubsan.c (ubsan_instrument_return): Return __builtin_trap ()
136 if flag_sanitize_undefined_trap_on_error.
137 (ubsan_instrument_division, ubsan_instrument_shift,
138 ubsan_instrument_vla): Likewise. Use __ubsan_handle_*_abort ()
139 if !flag_sanitize_recover.
140
c1917557 1412014-04-22 Marc Glisse <marc.glisse@inria.fr>
142
143 PR libstdc++/43622
144 * c-common.c (registered_builtin_types): Make non-static.
145 * c-common.h (registered_builtin_types): Declare.
146
b2ca6510 1472014-04-14 Richard Biener <rguenther@suse.de>
148 Marc Glisse <marc.glisse@inria.fr>
149
150 PR c/60819
151 * c-common.c (convert_vector_to_pointer_for_subscript): Properly
152 apply may-alias the scalar pointer type when applicable.
153
855372a3 1542014-04-12 Igor Zamyatin <igor.zamyatin@intel.com>
155
156 PR middle-end/60467
157 * cilk.c (cilk_set_spawn_marker): Remove FUNCTION_DECL
158 as possible argument for Cilk_spawn.
159
4012a986 1602014-04-11 Tobias Burnus <burnus@net-b.de>
161
162 PR c/60194
163 * c.opt (Wformat-signedness): Add
164 * c-format.c(check_format_types): Use it.
165
0d284870 1662014-04-11 Jason Merrill <jason@redhat.com>
167
168 PR c++/57926
169 * c-common.c (sync_resolve_size, get_atomic_generic_size): Call
170 default_conversion for an array argument.
171
a34c1231 1722014-04-08 Marek Polacek <polacek@redhat.com>
173
174 PR sanitizer/60745
175 * c-ubsan.c: Include asan.h.
176 (ubsan_instrument_return): Call initialize_sanitizer_builtins.
177
a35a8e18 1782014-04-03 Nathan Sidwell <nathan@codesourcery.com>
179
180 * c.opt (Wnon-virtual-dtor): Auto set when Weffc++.
181
b23e42b6 1822014-04-02 Marek Polacek <polacek@redhat.com>
183
184 * c-common.h (c_expand_expr): Remove declaration.
185
5a672e62 1862014-03-28 Jakub Jelinek <jakub@redhat.com>
187
188 PR c++/60689
189 * c-common.c (add_atomic_size_parameter): When creating new
190 params vector, push the size argument first.
191
d4d068c0 1922014-03-26 Jakub Jelinek <jakub@redhat.com>
193
194 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
195 ubsan_instrument_vla, ubsan_instrument_return): Adjust
196 ubsan_create_data callers.
197
446bdf5f 1982014-03-22 Jakub Jelinek <jakub@redhat.com>
199
200 PR debug/60603
201 * c-opts.c (c_finish_options): Restore cb_file_change call to
202 <built-in>.
203
8895f0a3 2042014-03-13 Jakub Jelinek <jakub@redhat.com>
205
206 PR middle-end/36282
207 * c-pragma.c (apply_pragma_weak): Only look at
208 TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl)) if
209 DECL_ASSEMBLER_NAME_SET_P (decl).
210 (maybe_apply_pending_pragma_weaks): Exit early if
211 vec_safe_is_empty (pending_weaks) rather than only when
212 !pending_weaks.
213 (maybe_apply_pragma_weak): Likewise. If !DECL_ASSEMBLER_NAME_SET_P,
214 set assembler name back to NULL afterwards.
215
7a5da2cd 2162014-03-11 Jason Merrill <jason@redhat.com>
217
218 * c.opt: Add -std=gnu++14.
219
95093889 2202014-03-11 Ian Bolton <ian.bolton@arm.com>
221
222 * c-opts.c (c_common_post_options): Don't override
223 -ffp-contract=fast if unsafe-math-optimizations is on.
224
c9a24b37 2252014-03-08 Paulo Matos <paulo@matos-sorge.com>
226
227 * c.opt: Enable LTO FE for fshort-double.
228
3f6dba6e 2292014-03-07 Jason Merrill <jason@redhat.com>
230
231 * c.opt: Add -std=c++14.
232
3bfdc94f 2332014-03-06 Marek Polacek <polacek@redhat.com>
234
235 PR c/60197
236 * cilk.c (contains_cilk_spawn_stmt): New function.
237 (contains_cilk_spawn_stmt_walker): Likewise.
238 (recognize_spawn): Give error on invalid use of _Cilk_spawn.
239 * c-common.h (contains_cilk_spawn_stmt): Add declaration.
240
8b3a6a4c 2412014-03-03 Jakub Jelinek <jakub@redhat.com>
242
243 * c-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_SIMD.
244 (init_pragma): Call cpp_register_deferred_pragma for PRAGMA_CILK_SIMD
245 even when flag_preprocess_only.
246
734ec290 2472014-02-26 Jason Merrill <jason@redhat.com>
248
249 PR c++/59231
250 PR c++/11586
251 * c-common.c (shorten_compare): Don't check
252 c_inhibit_evaluation_warnings.
253
81aec8b8 2542014-02-19 Jakub Jelinek <jakub@redhat.com>
255
d1081017 256 PR c/37743
257 * c-common.c (c_common_nodes_and_builtins): When initializing
258 c_uint{16,32,64}_type_node, also set corresponding
259 uint{16,32,64}_type_node to the same value.
260
81aec8b8 261 PR c++/60267
262 * c-pragma.c (init_pragma): Don't call cpp_register_deferred_pragma
263 for PRAGMA_IVDEP if flag_preprocess_only.
264
312243bb 2652014-02-12 Jakub Jelinek <jakub@redhat.com>
266
267 PR c/60101
268 * c-common.c (merge_tlist): If copy is true, call new_tlist,
269 if false, add ADD itself, rather than vice versa.
270 (verify_tree): For COND_EXPR, don't call merge_tlist with non-zero
271 copy. For SAVE_EXPR, only call merge_tlist once.
272
237e78b1 2732014-02-08 Jakub Jelinek <jakub@redhat.com>
274
275 PR middle-end/60092
276 * c-common.c (handle_alloc_size_attribute): Use tree_fits_uhwi_p
277 and tree_to_uhwi.
278 (handle_alloc_align_attribute, handle_assume_aligned_attribute): New
279 functions.
280 (c_common_attribute_table): Add alloc_align and assume_aligned
281 attributes.
282
76fdceeb 2832014-02-06 Marek Polacek <polacek@redhat.com>
284
285 PR c/60087
286 * c-common.c (warn_for_sign_compare): Call warning_at with location
287 instead of warning.
288
4a4dea42 2892014-02-05 Marek Polacek <polacek@redhat.com>
290
291 PR c/53123
292 * c-omp.c (c_finish_omp_atomic): Remove unreachable return
293 statement.
294
ec704957 2952014-02-04 Marek Polacek <polacek@redhat.com>
296
297 PR c/60036
298 * c-common.c (conversion_warning): Unwrap C_MAYBE_CONST_EXPR and/or
299 SAVE_EXPR.
300
caf62483 3012014-02-03 Marc Glisse <marc.glisse@inria.fr>
302
303 PR c++/53017
304 PR c++/59211
305 * c-common.c (handle_aligned_attribute, handle_alloc_size_attribute,
306 handle_vector_size_attribute, handle_nonnull_attribute): Call
307 default_conversion on the attribute argument.
308 (handle_nonnull_attribute): Increment the argument number.
309
ec761d5a 3102014-01-31 Marek Polacek <polacek@redhat.com>
311
312 PR c/59963
313 * c-common.c (add_atomic_size_parameter): Pass vNULL to
314 build_function_call_vec.
315 (resolve_overloaded_builtin): Likewise.
316 * c-common.h (build_function_call_vec): Adjust declaration.
317
22a75734 3182014-01-30 Marek Polacek <polacek@redhat.com>
319
320 PR c/59940
321 * c-common.h (unsafe_conversion_p): Adjust declaration.
322 (warnings_for_convert_and_check): Likewise.
323 (convert_and_check): Likewise.
324 * c-common.c (unsafe_conversion_p): Add location parameter. Call
325 expansion_point_location_if_in_system_header on it.
326 (warnings_for_convert_and_check): Add location parameter. Call
327 expansion_point_location_if_in_system_header on it. Use it.
328 (convert_and_check): Add location parameter. Use it.
329 (conversion_warning): Likewise.
330 (c_add_case_label): Adjust convert_and_check calls.
331 (scalar_to_vector): Adjust unsafe_conversion_p calls.
332
a89e6c15 3332014-01-24 Balaji V. Iyer <balaji.v.iyer@intel.com>
334
335 * c-common.c (c_define_builtins): Replaced flag_enable_cilkplus with
336 flag_cilkplus.
337 * c-pragma.c (init_pragma): Likewise.
338 * c.opt: Likewise.
339
2623625f 3402014-01-23 Marek Polacek <polacek@redhat.com>
341
342 PR c/59846
343 * c-common.c (shorten_compare): Add location_t parameter.
344 * c-common.h (shorten_binary_op): Adjust declaration.
345
46da3601 3462014-01-23 Marek Polacek <polacek@redhat.com>
347
348 PR c/58346
349 * c-common.c (pointer_to_zero_sized_aggr_p): New function.
350 * c-common.h: Declare it.
351
c9743c6a 3522014-01-20 Eric Botcazou <ebotcazou@adacore.com>
353
354 * c-ada-spec.h (dump_ada_specs): Revert prototype change.
355 * c-ada-spec.c (dump_ads): Likewise.
356 (cpp_check): Likewise.
357 (dump_ada_specs): Likewise.
358
3592014-01-15 Laurent Alfonsi <laurent.alfonsi@st.com>
36e33c6a 360
361 PR c++/49718
362 * c-common.c (handle_no_instrument_function_attribute): Allow
363 no_instrument_function attribute in class member
364 definition/declaration.
365
1248c663 3662014-01-15 Jakub Jelinek <jakub@redhat.com>
367
368 PR c/58943
369 * c-omp.c (c_finish_omp_atomic): Set in_late_binary_op around
370 build_modify_expr with non-NOP_EXPR opcode. Handle return from it
371 being COMPOUND_EXPR.
372 (c_finish_omp_for): Handle incr being COMPOUND_EXPR with first
373 operand a SAVE_EXPR and second MODIFY_EXPR.
374
6e5c480b 3752014-01-09 Jakub Jelinek <jakub@redhat.com>
376
377 PR target/58115
378 * c-pch.c (c_common_write_pch): Call
379 prepare_target_option_nodes_for_pch.
380
3aea1f79 3812014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
382
383 Update copyright years
384
e4f22041 3852014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
386
387 * array-notation-common.c, c-cilkplus.c: Use the standard form for
388 the copyright notice.
389
7fb0fe24 3902013-12-28 Eric Botcazou <ebotcazou@adacore.com>
391
392 * c-ada-spec.c (print_constructor): New function.
393 (print_destructor): Retrieve the origin of the destructor.
394 (print_ada_declaration): Revamp handling of constructors/destructors.
395
468088ac 3962013-12-23 Stuart Hastings <stuart@apple.com>
397 Bill Maddox <maddox@google.com>
398 Jason Merrill <jason@redhat.com>
399
400 * c.opt: Add -fdeclone-ctor-dtor.
401 * c-opts.c (c_common_post_options): Default to on iff -Os.
402
74acc703 4032013-12-18 Balaji V. Iyer <balaji.v.iyer@intel.com>
404
405 * c-common.c (c_common_attribute_table): Added "cilk simd function"
406 attribute.
407 * c-pragma.h (enum pragma_cilk_clause): Remove.
408 (enum pragma_omp_clause): Added the following fields:
409 PRAGMA_CILK_CLAUSE_NOMASK, PRAGMA_CILK_CLAUSE_MASK,
410 PRAGMA_CILK_CLAUSE_VECTORLENGTH, PRAGMA_CILK_CLAUSE_NONE,
411 PRAGMA_CILK_CLAUSE_LINEAR, PRAGMA_CILK_CLAUSE_PRIVATE,
412 PRAGMA_CILK_CLAUSE_FIRSTPRIVATE, PRAGMA_CILK_CLAUSE_LASTPRIVATE,
413 PRAGMA_CILK_CLAUSE_UNIFORM.
414
415
433e804e 4162013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com>
417
418 * cilk.c (cilk_outline): Made this function non-static.
419 (gimplify_cilk_spawn): Removed pre_p and post_p arguments.
420 (create_cilk_wrapper): Added a new parameter: a function pointer.
421 (c_install_body_w_frame_cleanup): Remove
422 (extract_free_variables): Added VEC_INIT_EXPR and CONSTRUCTOR case.
423 * c-common.h (cilk_outline): New prototype.
424 (gimplify_cilk_spawn): Removed two parameters.
425 (cilk_install_body_with_frame_cleanup): New prototype.
426 * c-gimplify.c (c_gimplify_expr): Added MODIFY_EXPR, CALL_EXPR and
427 CILK_SPAWN_STMT case.
428
5bcc7e60 4292013-12-11 Bernd Schmidt <bernds@codesourcery.com>
430
e66325ea 431 * c-common.c (c_fully_fold_internal): Handle ADDR_SPACE_CONVERT_EXPR.
432
5bcc7e60 433 * c-common.h (enum c_tree_index): Remove CTI_INT_ARRAY_TYPE.
434 (int_array_type_node): Remove.
435 * c-common.c (c_common_nodes_and_builtins): Don't build it.
436
0b26ec77 4372013-12-05 Marek Polacek <polacek@redhat.com>
438
439 PR c/52023
440 * c-common.c (c_sizeof_or_alignof_type): Move a declaration into
441 [ADJUST_FIELD_ALIGN].
442
a179a7dc 4432013-12-04 Joseph Myers <joseph@codesourcery.com>
444
445 PR c/52023
446 * c-common.c (c_sizeof_or_alignof_type): Add parameter min_alignof
447 and check field alignment if set.
448 * c-common.h (c_sizeof_or_alignof_type): Update prototype.
449 (c_sizeof, c_alignof): Update calls to c_sizeof_or_alignof_type.
450
137559b2 4512013-12-04 Jakub Jelinek <jakub@redhat.com>
452 Marek Polacek <polacek@redhat.com>
453
454 * c-gimplify.c (c_gimplify_expr): If doing the integer-overflow
455 sanitization, call unsigned_type_for only when !TYPE_OVERFLOW_WRAPS.
456
648fd348 4572013-11-29 H.J. Lu <hongjiu.lu@intel.com>
458
459 PR c/59309
460 * cilk.c (gimplify_cilk_spawn): Properly handle function without
461 arguments.
462
253e1cae 4632013-11-29 Jakub Jelinek <jakub@redhat.com>
464
465 PR c/59280
466 * c-common.c (get_priority): If TREE_VALUE (args) is IDENTIFIER_NODE,
467 goto invalid. If it is error_mark_node, don't issue further
468 diagnostics.
469
3e398f5b 4702013-11-28 Sergey Ostanevich <sergos.gnu@gmail.com>
471
472 * c.opt (Wopenmp-simd): New.
473
020bc656 4742013-11-22 Jakub Jelinek <jakub@redhat.com>
475
476 * c-ubsan.h (ubsan_instrument_return): New prototype.
477 * c-ubsan.c (ubsan_instrument_return): New function.
478
bc61cadb 4792013-11-22 Andrew MacLeod <amacleod@redhat.com>
480
481 * c-common.c: Add required include files from gimple.h.
482 * c-gimplify.c: Likewise
483 * cilk.c: Likewise
484
3df42822 4852013-11-22 David Malcolm <dmalcolm@redhat.com>
486
487 * c-common.c (unsafe_conversion_p): Remove use of
488 EXPR_LOC_OR_HERE macro.
489 (conversion_warning): Likewise.
490 (warnings_for_convert_and_check): Likewise.
491 (warn_for_collisions_1): Likewise.
492 (shorten_compare): Likewise, and remove use of in_system_header
493 macro, using the location from the former.
494 * c-lex.c (dump_one_header): Remove use of input_filename macro.
495 (cb_def_pragma): Remove use of in_system_header macro.
496 (lex_string): Likewise.
497 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
498
8c53c46c 4992013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com>
500 Mike Stump <mikestump@comcast.net>
501 Richard Sandiford <rdsandiford@googlemail.com>
502
503 * c-ada-spec.c (is_simple_enum): Use tree_to_shwi and tree_to_uhwi
504 instead of TREE_INT_CST_LOW, in cases where there is a protecting
505 tree_fits_shwi_p or tree_fits_uhwi_p.
506 (dump_generic_ada_node): Likewise.
507 * c-format.c (check_format_arg): Likewise.
508 * c-pretty-print.c (pp_c_integer_constant): Likewise.
509
5200ef07 5102013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com>
511
512 * c-common.c (check_function_arguments_recurse): Use tree_to_uhwi.
513
ca9d7d74 5142013-11-19 Joshua J Cogliati <jrincayc@yahoo.com>
515
516 PR c/53001
517 * c-common.c (unsafe_conversion_p): Make this function
518 return an enumeration with more detail.
519 (conversion_warning): Use the new return type of
520 unsafe_conversion_p to separately warn either about conversions
521 that lower floating point number precision or about the other
522 kinds of conversions.
523 * c-common.h (enum conversion_safety): New enumeration.
524 (unsafe_conversion_p): switching return type to
525 conversion_safety enumeration.
526 * c.opt: Adding new warning -Wfloat-conversion and
527 enabling it with -Wconversion.
528
0391a567 5292013-11-19 Basile Starynkevitch <basile@starynkevitch.net>
530
531 * c-opts.c: Include plugin.h.
532 (cb_file_change): Invoke plugin event PLUGIN_INCLUDE_FILE.
533
19b928d9 5342013-11-19 Marek Polacek <polacek@redhat.com>
535
536 * c-ubsan.c (ubsan_instrument_division): Adjust ubsan_create_data
537 call.
538 (ubsan_instrument_shift): Likewise.
539 (ubsan_instrument_vla): Likewise.
540
aa59f000 5412013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
542
543 * c-common.c (convert_vector_to_pointer_for_subscript): Remove
544 cast to unsigned type.
545
08f817b3 5462013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
547
548 * c-common.c (fold_offsetof_1): Use tree_to_uhwi rather than
549 tree_low_cst.
550 (complete_array_type): Update comment to refer to tree_to_[su]hwi
551 rather than tree_low_cst.
552
6a0712d4 5532013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
554
555 * c-common.c, c-cppbuiltin.c: Replace tree_low_cst (..., 1) with
556 tree_to_uhwi throughout.
557
fcb97e84 5582013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
559
560 * c-common.c, c-format.c, c-omp.c, c-pretty-print.c: Replace
561 tree_low_cst (..., 0) with tree_to_shwi throughout.
562
cd4547bf 5632013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
564
565 * c-ada-spec.c, c-common.c, c-pretty-print.c: Replace
566 host_integerp (..., 1) with tree_fits_uhwi_p throughout.
567
35ec552a 5682013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
569
570 * c-ada-spec.c, c-common.c, c-format.c, c-pretty-print.c: Replace
571 host_integerp (..., 0) with tree_fits_shwi_p throughout.
572
f2697631 5732013-11-15 Aldy Hernandez <aldyh@redhat.com>
574
575 * c-cilkplus.c: New file.
576 * c-common.c (readonly_error): Add location argument.
577 * c-common.h (readonly_error): Same.
578 (c_finish_cilk_clauses): Protoize.
579 (c_check_cilk_loop): Same.
580 c-omp.c (c_finish_omp_for): Handle CILK_SIMD nodes.
581 Do not fail on error_mark_node.
582 Abstract increment canonicalization to here...
583 (c_omp_for_incr_canonicalize_ptr): New.
584 c-pragma.c (init_pragma): Register "simd" pragma.
585 c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_SIMD.
586 (enum pragma_cilk_clause): New.
587
0aa8c34e 5882013-11-15 Richard Sandiford <rdsandiford@googlemail.com>
589
590 * c-pretty-print.c (pp_c_character_constant): Remove unnecessary
591 wchar_type and host_integerp checks.
592
e795d6e1 5932013-11-14 Andrew MacLeod <amacleod@redhat.com>
594
595 * c-common.c: Likewise.
596 * c-gimplify.c: Likewise.
597 * cilk.c: Likewise.
598
9ed99284 5992013-11-14 Diego Novillo <dnovillo@google.com>
600
601 * c-common.c: Include fold-const.h.
602 Include stor-layout.h.
603 Include calls.h.
604 Include stringpool.h.
605 Include attribs.h.
606 Include varasm.h.
607 Include trans-mem.h.
608 * c-cppbuiltin.c: Include stor-layout.h.
609 Include stringpool.h.
610 * c-format.c: Include stringpool.h.
611 * c-lex.c: Include stringpool.h.
612 Include stor-layout.h.
613 * c-pragma.c: Include stringpool.h.
614 Include attribs.h.
615 Include varasm.h.
616 Include gcc-symtab.h.
617 * c-pretty-print.c: Include stor-layout.h.
618 Include attribs.h.
619 * cilk.c: Include stringpool.h.
620 Include calls.h.
621
4fba5eb9 6222013-11-13 Joseph Myers <joseph@codesourcery.com>
623
624 * c-common.h (enum rid): Add RID_AUTO_TYPE.
625 * c-common.c (c_common_reswords): Add __auto_type.
626 (keyword_begins_type_specifier): Handle RID_AUTO_TYPE.
627
a8783bee 6282013-11-12 Andrew MacLeod <amacleod@redhat.com>
629
e795d6e1 630 * c-common.c: Include gimplify.h.
631 * c-gimplify.c: Likewise.
632 * cilk.c: Likewise.
633 * c-omp.c: Include gimple-expr.h instead of gimple.h.
634 * c-ubsan.c: Don't include gimple.h.
a8783bee 635
d184e0c0 6362013-11-12 Joseph Myers <joseph@codesourcery.com>
637
638 * c-common.c (c_common_reswords): Add _Thread_local.
639
a056826c 6402013-11-09 Joseph Myers <joseph@codesourcery.com>
641
642 * c-common.c (atomic_size_supported_p): New function.
643 (resolve_overloaded_atomic_exchange)
644 (resolve_overloaded_atomic_compare_exchange)
645 (resolve_overloaded_atomic_load, resolve_overloaded_atomic_store):
646 Use it instead of comparing size with a local list of sizes.
647
b560fabd 6482013-11-07 Andrew MacLeod <amacleod@redhat.com>
649 Joseph Myers <joseph@codesourcery.com>
650
651 * c-common.h (enum rid): Add RID_ATOMIC.
652 * c-common.c (c_common_reswords): Add _Atomic.
653 (sync_resolve_params): Use TYPE_MAIN_VARIANT on pointer argument.
654 (keyword_is_type_qualifier): Accept RID_ATOMIC.
655 * c-format.c (check_format_types): Check for extra _Atomic
656 qualifiers in format argument.
657 * c-pretty-print.c (pp_c_cv_qualifiers): Handle atomic qualifier.
658 (pp_c_type_qualifier_list): Mention _Atomic in comment.
659
5b1a0622 6602013-11-06 Tobias Burnus <burnus@net-b.de>
661
662 * c-common.c (reason_option_codes_t): Add CPP_W_DATE_TIME.
663
4f8f4cb8 6642013-11-06 Joseph Myers <joseph@codesourcery.com>
665
666 * c-opts.c (c_common_post_options): Set -ffp-contract=off in C
667 standards modes.
668 * c-cppbuiltin.c (cpp_iec_559_value): Consider -ffp-contract=fast
669 to mean lack of IEEE 754 support.
670
9148bda3 6712013-11-05 Tobias Burnus <burnus@net-b.de>
672
673 * c.opt (-Wdate-time): New option
674 * c-opts.c (sanitize_cpp_opts): Pass on to libcpp.
675
08c5f4d5 6762013-11-05 Joseph Myers <joseph@codesourcery.com>
677
678 * c-cppbuiltin.c (cpp_iec_559_value): Test
679 flag_excess_precision_cmdline not flag_excess_precision.
680
c630ef93 6812013-11-05 Tobias Burnus <burnus@net-b.de>
682
683 * c.opt (fopenmp-simd): New option.
684 * c-pragma.c (omp_pragmas): Move pragmas which can contain simd to ...
685 (omp_pragmas): ... this new struct.
686 (c_pp_lookup_pragma): Also walk omp_pragmas.
687 (init_pragma): Init pragmas for -fopenmp-simd.
688
7354a89b 6892013-11-04 Marek Polacek <polacek@redhat.com>
690
691 PR c++/58979
692 * c-common.c (invalid_indirection_error): Handle RO_ARROW_STAR case.
693
4c866b9b 6942013-11-04 Joseph Myers <joseph@codesourcery.com>
695
696 * c-cppbuiltin.c (cpp_iec_559_value, cpp_iec_559_complex_value):
697 New functions.
698 (c_cpp_builtins): Define __GCC_IEC_559 and __GCC_IEC_559_COMPLEX.
699
e2a6a333 7002013-11-04 Eric Botcazou <ebotcazou@adacore.com>
701
702 * c-ada-spec.h (cpp_operation): Add IS_TRIVIAL.
703 (dump_ada_specs): Adjust prototype of second callback.
704 * c-ada-spec.c (cpp_check): New global variable.
705 (dump_ada_nodes): Remove cpp_check parameter and do not pass it down.
706 (print_generic_ada_decl): Likewise.
707 (has_static_fields): Change return type to bool and add guard.
708 (has_nontrivial_methods): New predicate.
709 (is_tagged_type): Change return type to bool.
710 (separate_class_package): Call has_nontrivial_methods.
711 (pp_ada_tree_identifier): Minor tweaks.
712 (dump_ada_function_declaration): Adjust calls to dump_generic_ada_node.
713 (dump_ada_array_domains): Likewise.
714 (dump_ada_array_type): Likewise.
715 (dump_template_types): Remove cpp_check parameter and do not pass it to
716 dump_generic_ada_node.
717 (dump_ada_template): Likewise.
718 (dump_generic_ada_node): Remove cpp_check parameter and do not pass it
719 recursively.
720 (print_ada_methods): Change return type to integer. Remove cpp_check
721 parameter and do not pass it down.
722 (dump_nested_types): Remove cpp_check parameter and do not pass it to
723 dump_generic_ada_node.
724 (print_ada_declaration): Likewise. Test RECORD_OR_UNION_TYPE_P before
725 accessing methods.
726 (print_ada_struct_decl): Remove cpp_check parameter and do not pass it
727 down. Use has_nontrivial_methods to recognize C++ classes. Use return
728 value of print_ada_methods.
729 (dump_ads): Rename cpp_check parameter to check and adjust prototype.
730 Set cpp_check to it before invoking dump_ada_nodes.
731 (dump_ada_specs): Likewise.
732
2c4c3477 7332013-11-03 Marek Polacek <polacek@redhat.com>
734
735 * c-ubsan.c: Don't include hash-table.h.
736 (ubsan_instrument_vla): New function.
737 * c-ubsan.h: Declare it.
738
452659af 7392013-10-31 David Malcolm <dmalcolm@redhat.com>
740
741 Automated part of renaming of symtab_node_base to symtab_node.
742
743 Patch autogenerated by rename_symtab.py from
744 https://github.com/davidmalcolm/gcc-refactoring-scripts
745 revision 58bb219cc090b2f4516a9297d868c245495ee622
746
747 * c-pragma.c (maybe_apply_pending_pragma_weaks): Rename
748 symtab_node_base to symtab_node.
749
4d6f7dd4 7502013-10-31 Edward Smith-Rowland <3dw4rd@verizon.net>
751
752 Implement C++14 digit separators.
753 * c-lex.c (interpret_float): Remove digit separators from scratch string
754 before building real literal.
755
06cfe805 7562013-10-30 Jakub Jelinek <jakub@redhat.com>
757
758 * cilk.c (create_cilk_helper_decl): Use HOST_WIDE_INT_PRINT_DEC.
759
d037099f 7602013-10-29 Balaji V. Iyer <balaji.v.iyer@intel.com>
761
762 * c-common.c (c_common_reswords[]): Added _Cilk_spawn and _Cilk_sync
763 fields.
764 (c_define_builtins): Called cilk_init_builtins if Cilk Plus is
765 enabled.
766 * c-common.h (enum rid): Added RID_CILK_SPAWN and RID_CILK_SYNC.
767 (insert_cilk_frame): New prototype.
768 (cilk_init_builtins): Likewise.
769 (gimplify_cilk_spawn): Likewise.
770 (c_cilk_install_body_w_frame_cleanup): Likewise.
771 (cilk_detect_spawn_and_unwrap): Likewise.
772 (cilk_set_spawn_marker): Likewise.
773 (build_cilk_sync): Likewise.
774 (build_cilk_spawn): Likewise.
775 * cilk.c: New file.
776
02774f2d 7772013-10-29 David Malcolm <dmalcolm@redhat.com>
778
779 Patch autogenerated by refactor_symtab.py from
780 https://github.com/davidmalcolm/gcc-refactoring-scripts
781 revision 58bb219cc090b2f4516a9297d868c245495ee622
782
783 * c-gimplify.c (c_genericize): Update for conversion of symtab types
784 to a true class hierarchy.
785 * c-pragma.c (maybe_apply_pending_pragma_weaks): Likewise.
786
31fe10fd 7872013-10-27 Richard Sandiford <rdsandiford@googlemail.com>
788
789 * c-lex.c (interpret_integer): Remove call to cpp_num_sign_extend.
790
b1c06ff9 7912013-10-26 Jeff Law <law@redhat.com>
792
793 * c-family/c-common.c (c_define_builtins): Remove mudflap support.
794 * c-family/c.opt: Ignore and warn for mudflap options.
795
48a972c8 7962013-10-24 Tobias Burnus <burnus@net-b.de>
4644b593 797
798 PR other/33426
799 * c-pragma.c (init_pragma) Add #pragma ivdep handling.
800 * c-pragma.h (pragma_kind): Add PRAGMA_IVDEP.
801
546a04b1 8022013-10-23 Jason Merrill <jason@redhat.com>
803
804 * c-format.c (gcc_cxxdiag_char_table): Add %X.
805
bc7bff74 8062013-10-11 Jakub Jelinek <jakub@redhat.com>
807
d62c713e 808 * c-common.h (omp_clause_mask::operator !=): New method.
809 * c-omp.c (c_omp_split_clauses): Use if ((mask & something) != 0)
810 instead of if (mask & something) tests everywhere.
811
bc7bff74 812 * c-cppbuiltin.c (c_cpp_builtins): Predefine _OPENMP to
813 201307 instead of 201107.
814 * c-common.c (DEF_FUNCTION_TYPE_8): Define.
815 (c_common_attribute_table): Add "omp declare target" and
816 "omp declare simd" attributes.
817 (handle_omp_declare_target_attribute,
818 handle_omp_declare_simd_attribute): New functions.
819 * c-omp.c: Include c-pragma.h.
820 (c_finish_omp_taskgroup): New function.
821 (c_finish_omp_atomic): Add swapped argument, if true,
822 build the operation first with rhs, lhs arguments and use NOP_EXPR
823 build_modify_expr.
824 (c_finish_omp_for): Add code argument, pass it down to make_code.
825 (c_omp_split_clauses): New function.
826 (c_split_parallel_clauses): Removed.
827 (c_omp_declare_simd_clause_cmp, c_omp_declare_simd_clauses_to_numbers,
828 c_omp_declare_simd_clauses_to_decls): New functions.
829 * c-common.h (omp_clause_mask): New type.
830 (OMP_CLAUSE_MASK_1): Define.
831 (omp_clause_mask::omp_clause_mask, omp_clause_mask::operator &=,
832 omp_clause_mask::operator |=, omp_clause_mask::operator ~,
833 omp_clause_mask::operator |, omp_clause_mask::operator &,
834 omp_clause_mask::operator <<, omp_clause_mask::operator >>,
835 omp_clause_mask::operator ==): New methods.
836 (enum c_omp_clause_split): New.
837 (c_finish_omp_taskgroup): New prototype.
838 (c_finish_omp_atomic): Add swapped argument.
839 (c_finish_omp_for): Add code argument.
840 (c_omp_split_clauses): New prototype.
841 (c_split_parallel_clauses): Removed.
842 (c_omp_declare_simd_clauses_to_numbers,
843 c_omp_declare_simd_clauses_to_decls): New prototypes.
844 * c-pragma.c (omp_pragmas): Add new OpenMP 4.0 constructs.
845 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_CANCEL,
846 PRAGMA_OMP_CANCELLATION_POINT, PRAGMA_OMP_DECLARE_REDUCTION,
847 PRAGMA_OMP_DISTRIBUTE, PRAGMA_OMP_END_DECLARE_TARGET, PRAGMA_OMP_SIMD,
848 PRAGMA_OMP_TARGET, PRAGMA_OMP_TASKGROUP and PRAGMA_OMP_TEAMS.
849 Remove PRAGMA_OMP_PARALLEL_FOR and PRAGMA_OMP_PARALLEL_SECTIONS.
850 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_ALIGNED,
851 PRAGMA_OMP_CLAUSE_DEPEND, PRAGMA_OMP_CLAUSE_DEVICE,
852 PRAGMA_OMP_CLAUSE_DIST_SCHEDULE, PRAGMA_OMP_CLAUSE_FOR,
853 PRAGMA_OMP_CLAUSE_FROM, PRAGMA_OMP_CLAUSE_INBRANCH,
854 PRAGMA_OMP_CLAUSE_LINEAR, PRAGMA_OMP_CLAUSE_MAP,
855 PRAGMA_OMP_CLAUSE_NOTINBRANCH, PRAGMA_OMP_CLAUSE_NUM_TEAMS,
856 PRAGMA_OMP_CLAUSE_PARALLEL, PRAGMA_OMP_CLAUSE_PROC_BIND,
857 PRAGMA_OMP_CLAUSE_SAFELEN, PRAGMA_OMP_CLAUSE_SECTIONS,
858 PRAGMA_OMP_CLAUSE_SIMDLEN, PRAGMA_OMP_CLAUSE_TASKGROUP,
859 PRAGMA_OMP_CLAUSE_THREAD_LIMIT, PRAGMA_OMP_CLAUSE_TO and
860 PRAGMA_OMP_CLAUSE_UNIFORM.
861
d7dcba40 8622013-10-09 Marc Glisse <marc.glisse@inria.fr>
863
864 PR tree-optimization/20318
865 * c-common.c (handle_returns_nonnull_attribute): New function.
866 (c_common_attribute_table): Add returns_nonnull.
867
0b7282f1 8682013-10-03 Marc Glisse <marc.glisse@inria.fr>
869
870 PR c++/19476
871 * c.opt (fcheck-new): Move to common.opt.
872
51f553af 8732013-09-25 Marek Polacek <polacek@redhat.com>
874 Jakub Jelinek <jakub@redhat.com>
875
876 PR sanitizer/58413
877 * c-ubsan.c (ubsan_instrument_shift): Don't instrument
878 an expression if we can prove it is correct.
879 (ubsan_instrument_division): Likewise. Remove unnecessary
880 check.
881
05f893e1 8822013-09-18 Marek Polacek <polacek@redhat.com>
883
884 PR sanitizer/58411
885 * c-common.c (handle_no_sanitize_undefined_attribute): New function.
886 Declare it.
887 (struct attribute_spec c_common_att): Add no_sanitize_undefined.
888
236ce1d1 8892013-09-14 Iain Sandoe <iain@codesourcery.com>
890
891 PR target/48094
892 * c.opt (fgnu-runtime, fnext-runtime, fobjc-abi-version,
893 fobjc-gc, freplace-objc-classes): Accept for LTO.
894
f9f68d35 8952013-09-13 Jacek Caban <jacek@codeweavers.com>
896
897 * c-target.def: New hook
898
ba2f764e 8992013-09-09 Paolo Carlini <paolo.carlini@oracle.com>
900
901 PR c++/43452
902 * c.opt (Wdelete-incomplete): Add.
903
73437615 9042013-09-08 Joern Rennecke <joern.rennecke@embecosm.com>
905
906 * c-common.c (same_scalar_type_ignoring_signedness): Delete.
907 (vector_types_compatible_elements_p): New function.
908 * c-common.h: (same_scalar_type_ignoring_signedness): Delete
909 declaration.
910 (vector_types_compatible_elements_p): Declare.
911
95af4c75 9122013-09-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
913
914 * c-pretty-print.h (c_pretty_printer::simple_type_specifier): Now
915 a virtual member function.
916 (pp_simple_type_specifier): Remove.
917 (pp_c_type_specifier): Likewise.
918 * c-pretty-print.c (c_pretty_printer::simple_type_specifier):
919 Rename from pp_c_type_specifier. Adjust.
920 (c_pretty_printer::c_pretty_printer): Do not assign to
921 simple_type_specifier.
922
eaab24b9 9232013-09-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
924
925 * c-pretty-print.h (c_pretty_printer::type_id): Now a virtual
926 member function.
927 (c_pretty_printer::storage_class_specifier): Likewise.
928 (c_pretty_printer::initializer): Likewise.
929 (pp_declaration): Remove.
930 (pp_declaration_specifiers): Likewise.
931 (pp_abstract_declarator): Likewise.
932 (pp_declarator): Likewise.
933 (pp_type_id): Likewise.
934 (pp_statement): Likewise.
935 (pp_constant): Likewise.
936 (pp_id_expression): Likewise.
937 (pp_primary_expression): Likewise.
938 (pp_unary_expression): Likewise.
939 (pp_multiplicative_expression): Likewise.
940 (pp_conditional_expression): Likewise.
941 (pp_assignment_expression): Likewise.
942 (pp_expression): Likewise.
943 (pp_c_type_id): Likewise.
944 (pp_c_storage_class_specifier): Likewise.
945 * c-pretty-print.c (pp_c_type_cast): Tidy.
946 (pp_c_pointer): Likewise.
947 (pp_c_type_specifier): Likewise.
948 (pp_c_parameter_type_list): Likewise.
949 (pp_c_function_definition): Likewise.
950 (pp_c_init_declarator): Likewise.
951 (pp_c_initializer_list): Likewise.
952 (pp_c_constructor_elts): Likewise.
953 (c_pretty_printer::direct_abstract_declarator): Likewise.
954 (c_pretty_printer::declaration_specifiers): Likewise.
955 (c_pretty_printer::primary_expression): Likewise.
956 (c_pretty_printer::postfix_expression): Likewise.
957 (c_pretty_printer::type_id): Rename from pp_c_type_id.
958 (c_pretty_printer::storage_class_specifier): Rename from
959 pp_c_storage_class_specifier.
960 (c_pretty_printer::initializer): Rename from pp_c_initializer.
961 (c_pretty_printer::c_pretty_printer): Do not assign to type_id,
962 storage_class_specifier, initializer, offset_list, flags.
963
9e46467d 9642013-08-30 Marek Polacek <polacek@redhat.com>
965
966 * c-ubsan.c: New file.
967 * c-ubsan.h: New file.
968
36a8d9b9 9692013-08-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
970
971 * c-pretty-print.h (c_pretty_printer::declaration): Now a virtual
972 member function.
973 (c_pretty_printer::declaration_specifiers): Likewise.
974 (c_pretty_printer::declarator): Likewise.
975 (c_pretty_printer::abstract_declarator): Likewise.
976 (c_pretty_printer::direct_abstract_declarator): Likewise.
977 (c_pretty_printer::direct_declarator): Likewise.
978 (c_pretty_printer::function_specifier): Likewise.
979 (pp_declaration): Adjust.
980 (pp_declaration_specifiers): Likewise.
981 (pp_abstract_declarator): Likewise.
982 (pp_direct_declarator): Likewise.
983 (pp_function_specifier): Likewise.
984 (pp_direct_abstract_declarator): Remove as unused.
985 (pp_c_declaration): Remove.
986 (pp_c_declaration_specifiers): Likewise.
987 (pp_c_declarator): Likewise.
988 (pp_c_direct_declarator): Likewise.
989 (pp_c_function_specifier): Likewise.
990 (pp_c_direct_abstract_declarator): Likewise.
991 * c-pretty-print.c (c_pretty_printer::abstract_declarator): Rename
992 from pp_c_abstract_declarator. Adjust.
993 (c_pretty_printer::direct_abstract_declarator): Rename from
994 pp_c_direct_abstract_declarator. Adjust.
995 (c_pretty_printer::function_specifier): Rename from
996 pp_c_function_specifier. Adjust.
997 (c_pretty_printer::declaration_specifiers): Rename from
998 pp_c_declaration_specifiers. Adjust.
999 (c_pretty_printer::direct_declarator): Rename from
1000 pp_c_direct_declarator. Adjust.
1001 (c_pretty_printer::declarator): Rename from pp_c_declarator. Adjust.
1002 (c_pretty_printer::declaration): Rename from pp_c_declaration. Adjust.
1003 (c_pretty_printer::c_pretty_printer): Do not assign to
1004 declaration, declaration_specifiers, declarator,
1005 direct_declarator, direct_abstract_declarator, function_specifier.
1006
30635c2e 10072013-08-26 Gabriel Dos Reis <gdre@integrable-solutions.net>
1008
1009 * c-pretty-print.h (c_pretty_printer::unary_expression): Now a
1010 virtual member function.
1011 (c_pretty_printer::multiplicative_expression): Likewise.
1012 (c_pretty_printer::conditional_expression): Likewise.
1013 (c_pretty_printer::assignment_expression): Likewise.
1014 (c_pretty_printer::expression): Likewise.
1015 (pp_unary_expression): Adjust.
1016 (pp_multiplicative_expression): Likewise.
1017 (pp_assignment_expression): Likewise.
1018 (pp_conditional_expression): Likewise.
1019 (pp_expression): Likewise.
1020 * c-pretty-print.c (c_pretty_printer::unary_expression): Rename
1021 from pp_c_unary_expression. Adjust.
1022 (c_pretty_printer::multiplicative_expression): Rename from
1023 pp_c_multiplicative_expression. Adjust.
1024 (c_pretty_printer::conditional_expression): Rename from
1025 pp_c_conditional_expression. Adjust.
1026 (c_pretty_printer::assignment_expression): Rename from
1027 pp_c_assignment_expression. Adjust.
1028 (c_pretty_printer::expression): Rename from pp_c_expression. Adjust.
1029 (c_pretty_printer::c_pretty_printer): Do not assign to
1030 unary_expression, multiplicative_expression,
1031 conditional_expression, expression.
1032
027d08ed 10332013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
1034
1035 * c-pretty-print.h (c_pretty_printer::postfix_expression): Now a
1036 virtual member function.
1037 (pp_postfix_expression): Adjust.
1038 (pp_c_postfix_expression): Remove.
1039 * c-pretty-print.c (c_pretty_printer::postfix_expression): Rename
1040 from pp_c_postfix_expression. Adjust.
1041 (c_pretty_printer::c_pretty_printer): Do not assign to
1042 postfix_expression.
1043
f873303a 10442013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
1045
1046 * c-pretty-print.h (c_pretty_printer::primary_expression): Now a
1047 virtua member function.
1048 (pp_primary_expression): Adjust.
1049 (pp_c_primary_expression): Remove.
1050 * c-pretty-print.c (c_pretty_printer::primary_expression): Rename
1051 from pp_c_primary_expression. Adjust.
1052 (pp_c_initializer_list): Use pp_primary_expression.
1053 (c_pretty_printer::c_pretty_printer): Do not assign to
1054 primary_expression.
1055
08e3e481 10562013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
1057
1058 * c-pretty-print.h (c_pretty_printer::translate_string): Declare.
1059 * c-pretty-print.c (M_): Remove.
1060 (c_pretty_printer::translate_string): Define.
1061 (pp_c_type_specifier): Use it.
1062 (pp_c_primary_expression): Likewise.
1063 (pp_c_expression): Likewise.
1064
1fc4a87f 10652013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
1066
1067 * c-pretty-print.h (c_pretty_printer::id_expression): Now a
1068 virtual function.
1069 (pp_c_id_expression): Remove.
1070 (pp_id_expression): Adjust.
1071 * c-pretty-print.c (c_pretty_printer::id_expression): Rename from
1072 pp_c_id_expression. Adjust.
1073 (pp_c_postfix_expression): Use pp_id_expression.
1074 (c_pretty_printer::c_pretty_printer): Do not assign to id_expression.
1075
a6cb161b 10762013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
1077
1078 * c-pretty-print.h (c_pretty_printer::constant): Now a virtual
1079 member function.
1080 (pp_constant): Adjust.
1081 (pp_c_constant): Remove.
1082 * c-pretty-print.c (c_pretty_printer::constant): Rename from
1083 pp_c_constant. Adjust.
1084 (pp_c_constant)
1085 (pp_c_primary_expression): Call pp_constant in lieu of pp_c_constant.
1086 (c_pretty_printer::c_pretty_printer): Remove assignment to constant.
1087
eed6bc21 10882013-08-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
1089
1090 * c-pretty-print.h (pp_c_pretty_printer_init): Remove.
1091 (c_pretty_printer::c_pretty_printer): Declare.
1092 * c-pretty-print.c (pretty_printer::c_pretty_printer): Rename from
1093 c_pretty_printer_init. Adjust.
1094 (print_c_tree): Do not call c_pretty_printer_init.
1095 * c-ada-spec.c (dump_ads): Remove call to pp_construct.
1096
df558d2e 10972013-08-09 Arnaud Charlet <charlet@adacore.com>
1098
1099 * c-ada-spec.c (print_ada_declaration): Prevent accessing null asm name
1100
42f9a786 11012013-08-05 Paolo Carlini <paolo.carlini@oracle.com>
1102
1103 PR c++/58080
1104 * c-common.c (pointer_int_sum): Add bool parameter.
1105 * c-common.h (pointer_int_sum): Adjust declaration.
1106
f874ddad 11072013-08-05 Gabriel Dos Reis <gdr@integrable-solutions.net>
1108
1109 * c-pretty-print.c (print_c_tree): Simplify. Use non-static local
1110 c_pretty_printer variable.
1111
a94db6b0 11122013-08-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
1113
1114 * c-pretty-print.h (c_pretty_printer): Derive from pretty_printer.
1115 (pp_base): Remove.
1116 (pp_c_base): Likewise. Adjust users.
1117 * c-pretty-print.c (pp_c_maybe_whitespace): Adjust.
1118 (pp_c_whitespace): Do not call pp_base.
1119 (pp_c_left_paren): Likewise.
1120 (pp_c_right_paren): Likewise.
1121 (pp_c_left_brace): Likewise.
1122 (pp_c_right_brace): Likewise.
1123 (pp_c_left_bracket): Likewise.
1124 (pp_c_right_bracket): Likewise.
1125 (pp_c_dot): Likewise.
1126 (pp_c_ampersand): Likewise.
1127 (pp_c_star): Likewise.
1128 (pp_c_arrow): Likewise.
1129 (pp_c_semicolon): Likewise.
1130 (pp_c_complement): Likewise.
1131 (pp_c_exclamation): Likewise.
1132 (pp_c_direct_declarator): Likewise.
1133 (pp_c_ws_string): Likewise.
1134 (pp_c_identifier): Likewise.
1135 (pp_c_statement): Likewise.
1136 (print_c_tree): Likewise.
1137
1898176c 11382013-08-04 Ed Smith-Rowland <3dw4rd@verizon.net>
1139
1140 PR c++/58072
1141 * c-common.c (c_parse_error): Catch user-defined literal tokens and
1142 provide useful error strings.
1143
70d60d1d 11442013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
1145
1146 * c-ada-spec.c (pp_ada_tree_identifier): Use specialized pretty
1147 printer functions instead of pp_string or operators and punctuators.
1148 (dump_generic_ada_node): Likewise.
1149 * c-pretty-print.c (pp_c_type_specifier): Likewise.
1150 (pp_c_relational_expression): Likewise.
1151 (pp_c_logical_or_expression): Likewise.
1152
dda4f0ec 11532013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
1154
1155 * c-ada-spec.c (print_ada_macros): Use specialized pretty printer
1156 functions instead of pp_character.
1157 (pp_ada_tree_identifier): Likewise.
1158 (dump_ada_double_name): Likewise.
1159 (dump_ada_function_declaration): Likewise.
1160 (dump_ada_array_domains): Likewise.
1161 (dump_template_types): Likewise.
1162 (dump_generic_ada_node): Likewise.
1163 (print_ada_declaration): Likewise.
1164 (print_ada_struct_decl): Likewise.
1165 * c-pretty-print.c (pp_c_integer_constant): Likewise.
1166
7aa04c8d 11672013-07-23 Tom Tromey <tromey@redhat.com>
1168
1169 * c-common.h (enum rid) <RID_GENERIC>: New constant.
1170 * c-common.c (c_common_reswords): Add _Generic.
1171
a04e8d62 11722013-07-21 OndÅ\99ej Bílka <neleai@seznam.cz>
1173
1174 * c-common.c: Fix typos.
1175 * c-common.h: Likewise.
1176
a96c3cc1 11772013-07-13 Lubos Lunak <l.lunak@suse.cz>
1178
1179 PR c++/55203
1180 * c-common.c (c_common_attribute_table): Add warn_unused.
1181 (handle_warn_unused_attribute): New.
1182
da31536d 11832013-07-10 Jakub Jelinek <jakub@redhat.com>
1184
1185 * c-ppoutput.c (scan_translation_unit): Call account_for_newlines
1186 for all CPP_TOKEN_FLD_STR tokens, not just CPP_COMMENT.
1187
839f2f70 11882013-07-10 Paolo Carlini <paolo.carlini@oracle.com>
1189
1190 PR c++/57869
1191 * c.opt: Add Wconditionally-supported.
1192
73f353d0 11932013-07-08 Graham Stott <graham.stott@btinternet.com>
1194
1195 * c-family/array-notation-common.c (length_mismatch_in_expr_p): Delete
1196 unused variables l_length and l_node.
1197
21ebaa24 11982013-07-04 Joern Rennecke <joern.rennecke@embecosm.com>
f5298614 1199
1200 PR c/57821
1201 * c-common.c (complete_array_type): Delay folding first index
1202 like other indices. When folding, check for index overflow.
1203
68ea4406 12042013-06-27 Marc Glisse <marc.glisse@inria.fr>
1205
1206 PR c++/57509
1207 * c-common.h (c_build_vec_perm_expr): New complain argument.
1208 * c-common.c (c_build_vec_perm_expr): Likewise.
1209 Use save_expr also in C++.
1210
60777f69 12112013-06-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
1212
1213 * c-common.c (c_common_nodes_and_builtins): Use cxx11 in lieu of cxx0x.
1214 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
1215 * c-opts.c (c_common_post_options): Likewise.
1216
839f2f70 12172013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
50acebe0 1218
1219 * array-notation-common.c (length_mismatch_in_expr): Changed the
1220 parameter type's from a dynamic array to a vec_tree. Also removed
1221 the size parameters.
1222 * c-common.h (length_mismatch_in_expr_p): Fixed prototype's as per
1223 the change above.
1224
e9331eab 12252013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
1226
1227 * c-common.h (struct cilkplus_an_parts): New structure.
1228 (struct cilkplus_an_loop_parts): Likewise.
1229 (cilkplus_extract_an_triplets): New prototype.
1230 (fix_sec_implicit_args): Likewise.
1231 * array-notation-common.c (cilkplus_extract_an_triplets): New function.
1232 (fix_sec_implicit_args): Likewise.
60777f69 1233
a9c99fc4 12342013-06-20 Balaji V. Iyer <balaji.v.iyer@intel.com>
1235
1236 * array-notation-common.c (find_inv_trees): Removed an unwanted
1237 typecasting.
1238 * c-common.h (struct inv_list::additional_tcodes): Changed type from
1239 enum rid to enum tree_code.
1240
f2526cce 12412013-06-11 Jan Hubicka <jh@suse.cz>
1242
1243 * c-common.c (handle_alias_ifunc_attribute): Do not set
1244 DECL_EXTERNAL for weakref variables.
1245 * c-pragma.c (handle_pragma_weak): Make sure aliases
1246 are not declared as external.
1247
09970d67 12482013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
1249
1250 * array-notation-common.c (length_mismatch_in_expr_p): Moved this
1251 function from c/c-array-notation.c.
1252 (is_cilkplus_reduce_builtin): Likewise.
1253 (find_rank): Likewise.
1254 (extract_array_notation_exprs): Likewise.
1255 (replace_array_notations): Likewise.
1256 (find_inv_trees): Likewise.
1257 (replace_inv_trees): Likewise.
1258 (contains_array_notation_expr): Likewise.
1259 (find_correct_array_notation_type): Likewise.
1260 * c-common.h (struct inv_list): Moved this struct from the file
1261 c/c-array-notation.c and added a new field called additional tcodes.
1262 (length_mismatch_in_expr_p): New prototype.
1263 (is_cilkplus_reduce_builtin): Likewise.
1264 (find_rank): Likewise.
1265 (extract_array_notation_exprs): Likewise.
1266 (replace_array_notation): Likewise.
1267 (find_inv_trees): Likewise.
1268 (replace_inv_trees): Likewise.
1269 (find_correct_array_notation_type): Likewise.
839f2f70 1270
3c6d4197 12712013-05-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
1272
1273 * c-common.c (c_define_builtins): When cilkplus is enabled, the
1274 function array_notation_init_builtins is called.
1275 (c_common_init_ts): Added ARRAY_NOTATION_REF as typed.
1276 * c-common.def (ARRAY_NOTATION_REF): New tree.
1277 * c-common.h (build_array_notation_expr): New function declaration.
1278 (build_array_notation_ref): Likewise.
1279 (extract_sec_implicit_index_arg): New extern declaration.
1280 (is_sec_implicit_index_fn): Likewise.
1281 (ARRAY_NOTATION_CHECK): New define.
1282 (ARRAY_NOTATION_ARRAY): Likewise.
1283 (ARRAY_NOTATION_START): Likewise.
1284 (ARRAY_NOTATION_LENGTH): Likewise.
1285 (ARRAY_NOTATION_STRIDE): Likewise.
1286 * c-pretty-print.c (pp_c_postifix_expression): Added a new case for
1287 ARRAY_NOTATION_REF.
1288 (pp_c_expression): Likewise.
1289 * c.opt (flag_enable_cilkplus): New flag.
1290 * array-notation-common.c: New file.
1291
8e71dad2 12922013-05-14 Jakub Jelinek <jakub@redhat.com>
1293
1294 PR c++/57274
1295 * c-common.c (verify_tree): Don't recurse into SIZEOF_EXPR.
1296
432dd330 12972013-05-10 Marc Glisse <marc.glisse@inria.fr>
1298
1299 * c-common.c (vector_types_convertible_p): No TYPE_PRECISION for
1300 vectors.
1301
b156ec37 13022013-05-07 Han Shen <shenhan@google.com>
1303
1304 * c-cppbuiltin.c (c_cpp_builtins): Added "__SSP_STRONG__=3".
1305
1a087624 13062013-04-29 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
1307
1308 * c-common.c (check_user_alignment): Emit error for negative values.
1309
1638c736 13102013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
1311
1312 * c-opts.c (set_std_cxx11): Use CLK_CXX1Y and CLK_GNUCXX1Y.
1313
949dbf93 13142013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
1315
1316 * c-cppbuiltin.c (c_cpp_builtins): Do not define
1317 __GXX_EXPERIMENTAL_CXX1Y__.
1318
9205a6cc 13192013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
1320 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
1321
1322 * c.opt ([Wpointer-arith]): Enabled by -Wpedantic, as documented.
1323 * c-common.c (pointer_int_sum): Change -Wpointer-arith pedwarns
1324 to simply use OPT_Wpointer_arith.
1325 (c_sizeof_or_alignof_type): Likewise.
1326
05d0bce1 13272013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
1328
1329 * c-cppbuiltin.c (c_cpp_builtins): Define __GXX_EXPERIMENTAL_CXX1Y__.
1330
41609f8b 13312013-04-12 Jakub Jelinek <jakub@redhat.com>
1332
1333 * c-format.c (gcc_diag_char_table, gcc_tdiag_char_table,
1334 gcc_cdiag_char_table, gcc_cxxdiag_char_table): Add %r and %R format
1335 specifiers.
1336
c671dc4f 13372013-04-07 Steven Bosscher <steven@gcc.gnu.org>
1338
1339 * c-pragma.c (add_to_renaming_pragma_list): Fix leading comment.
1340
ba125576 13412013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
1342
1343 * c-common.c (pointer_int_sum): Remove dead code.
1344
9d3fa937 13452013-03-09 Richard Sandiford <rdsandiford@googlemail.com>
1346
1347 PR middle-end/56524
1348 * c-common.c (handle_optimize_attribute): Don't call
1349 save_optabs_if_changed.
1350
5ceebb21 13512013-03-05 Jakub Jelinek <jakub@redhat.com>
1352
1353 PR middle-end/56461
1354 * c-pch.c (pch_init): Free target_validity at the end.
1355
18eeed2b 13562013-03-04 Jakub Jelinek <jakub@redhat.com>
1357
1358 * c-pretty-print.c (pp_c_pretty_printer_init): Clear pp->flags.
1359
a9196da9 13602013-02-28 Konstantin Serebryany <konstantin.s.serebryany@gmail.com>
1361 Jakub Jelinek <jakub@redhat.com>
1362
1363 PR sanitizer/56454
1364 * c-common.c (handle_no_sanitize_address_attribute): New function.
1365 (c_common_attribute_table): Add no_sanitize_address attribute.
1366 (handle_no_address_safety_analysis_attribute): Add
1367 no_sanitize_address attribute, not no_address_safety_analysis
1368 attribute.
1369
15c27dda 13702013-02-18 Aldy Hernandez <aldyh@redhat.com>
08c7d04b 1371
1372 PR target/52555
1373 * c-common.c (handle_optimize_attribute): Call
1374 save_optabs_if_changed.
1375
19426fe1 13762013-02-18 Jakub Jelinek <jakub@redhat.com>
1377 Steven Bosscher <steven@gcc.gnu.org>
1378
1379 PR pch/54117
1380 * c-opts.c (c_common_post_options): If debug info is enabled
1381 and non-dwarf*, refuse to load PCH files and when writing PCH
1382 file warn.
1383
df936998 13842013-02-05 Jakub Jelinek <jakub@redhat.com>
1385
1386 PR middle-end/56167
1387 * c-common.c (handle_error_attribute): Fix condition.
1388
ae0c3984 13892013-01-30 Jakub Jelinek <jakub@redhat.com>
1390
1391 PR c++/55742
1392 * c-common.c (handle_target_attribute): Revert 2012-12-26 change.
1393
1c4973d7 13942013-01-18 Jason Merrill <jason@redhat.com>
1395
1396 PR target/54908
1397 * c.opt (-fextern-tls-init): New.
1398 * c-opts.c (c_common_post_options): Handle it.
1399
7c834436 14002013-01-09 Jakub Jelinek <jakub@redhat.com>
1401
1402 PR c/48418
1403 * c-common.c (c_fully_fold_internal): Warn for LSHIFT_EXPR and
1404 RSHIFT_EXPR, if orig_op1 isn't INTEGER_CST, op1 is INTEGER_CST
1405 and is either negative or bigger or equal to type precision
1406 of the first operand.
1407
5abaa10a 14082012-12-03 Marek Polacek <polacek@redhat.com>
1409
1410 PR c/55570
1411 * c-common.c (check_user_alignment): Swap order of tests,
1412 check TREE_CODE first.
1413
324ca377 14142012-11-29 Ed Smith-Rowland <3dw4rd@verizon.net>
1415
1416 PR c++/52654
1417 * c-common.h (overflow_type): New enum.
1418 (build_userdef_literal): Add overflow_type argument.
1419 (tree_userdef_literal): Add overflow_type.
1420 (USERDEF_LITERAL_OVERFLOW): New access macro.
1421 * c-common.c (build_userdef_literal): Add overflow_type
1422 argument.
1423 * c-lex.c (c_lex_with_flags): Add overflow_type to
1424 build_userdef_literal calls.
1425 (interpret_integer, interpret_float): Add overflow_type argument.
1426
b4c4a429 14272012-11-28 Richard Biener <rguenther@suse.de>
1428
1429 PR c/35634
1430 * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
1431 here and use a type with proper overflow behavior for types that would
1432 need to be promoted for the arithmetic.
1433
d413ffdd 14342012-11-23 Jakub Jelinek <jakub@redhat.com>
1435
1436 PR sanitizer/55435
1437 * c-common.c (handle_no_address_safety_analysis_attribute): New
1438 function.
1439 (c_common_attribute_table): Add no_address_safety_analysis.
1440
52bc861d 14412012-11-16 Simon Baldwin <simonb@google.com>
1442
1443 * c.opt: Add f[no-]canonical-system-headers.
1444 * c-opts.c (c_common_handle_option): Handle
1445 OPT_fcanonical_system_headers.
1446
2dd00636 14472012-11-09 Ed Smith-Rowland <3dw4rd@verizon.net>
1448
1449 PR c++/54413
1450 * c-opts.c (c_common_handle_option): Set new flags.
1451 * c.opt: Describe new flags.
1452
d4701f6c 14532012-11-09 Jason Merrill <jason@redhat.com>
1454
1455 * c.opt (Wabi-tag): New.
1456
72d65da9 14572012-11-09 Andi Kleen <ak@linux.intel.com>
1458
1459 PR 55139
1460 * c-common.c (get_atomic_generic_size): Mask with
1461 MEMMODEL_MASK
1462
77a357e3 14632012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
1464
1465 PR c/53063
1466 * c.opt (Wformat): Make it Alias Wformat=1.
1467 (Wformat-contains-nul,Wformat-extra-args,Wformat-nonliteral,
1468 Wformat-security,Wformat-y2k,Wformat-zero-length): Use
1469 LangEnabledBy.
1470 (Wformat=): RejectNegative. Use LangEnabledBy.
1471 (Wnonnull): Use LangEnabledBy.
1472 * c-opts.c (c_common_handle_option): Do not handle Wformat here.
1473 * c-format.c (set_Wformat): Delete.
1474 (decode_format_attr): Replace OPT_Wformat with OPT_Wformat_.
1475 (maybe_read_dollar_number): Likewise.
1476 (avoid_dollar_number): Likewise.
1477 (finish_dollar_format_checking): Likewise.
1478 (check_format_info): Likewise.
1479 (check_format_info_main): Likewise.
1480 (check_format_types): Likewise.
1481 (format_type_warning): Likewise.
1482 * c-common.c (int): Likewise.
1483 (check_function_sentinel): Likewise.
1484 * c-common.h (warn_format,set_Wformat): Do not declare here.
1485
45efa6b9 14862012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
1487
1488 PR c/53063
1489 * c.opt(Warray-bounds,Wdelete-non-virtual-dtor,Wenum-compare,
1490 Wmain,Woverlength-strings, Wunknown-pragmas,Wunused-macros):
1491 Use LangEnabledBy.
1492 (Wswitch,Wswitch-default,Wswitch-enum): Likewise. Move here from
1493 common.opt.
1494 (Wvariadic-macros): Init(1).
1495 * c-opts.c (c_common_handle_option): Do not handle them
1496 explicitly.
1497 (c_common_post_options): Likewise.
1498 (sanitize_cpp_opts): warn_unused_macros is now
1499 cpp_warn_unused_macros.
1500 (push_command_line_include): Likewise.
1501 * c-common.c (warn_unknown_pragmas): Do not define.
1502 * c-common.h (warn_unknown_pragmas): Do not declare.
1503
0e4e775a 15042012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
1505
1506 PR c/51294
1507 * c-common.c (conversion_warning): Handle conditional expressions.
1508
8b447d3f 15092012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
1510
1511 PR c++/54930
1512 * c.opt (Wreturn_local_addr): Define new option.
1513
f4a61754 15142012-10-25 Jason Merrill <jason@redhat.com>
1515
ecb10e6a 1516 * c.opt (Wvirtual-move-assign): New.
1517
f4a61754 1518 * c.opt (Winherited-variadic-ctor): New.
1519
7b463b19 15202012-10-25 Marc Glisse <marc.glisse@inria.fr>
1521
1522 PR c++/54427
1523 * c-common.c (scalar_to_vector): Handle VEC_COND_EXPR.
1524
6adc88f8 15252012-10-23 Joseph Myers <joseph@codesourcery.com>
1526
1527 * c-common.h (pch_cpp_save_state): Declare.
1528 * c-target.def (c_preinclude): New hook.
1529 * c-opts.c (done_preinclude): New.
1530 (push_command_line_include): Handle default preincluded header.
1531 (cb_file_change): Call pch_cpp_save_state when calling
1532 push_command_line_include.
1533 * c-pch.c (pch_ready_to_save_cpp_state, pch_cpp_state_saved)
1534 (pch_cpp_save_state): New.
1535 (pch_init): Call pch_cpp_save_state conditionally, instead of
1536 calling cpp_save_state.
1537
fa816b0b 15382012-10-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
1539
1540 PR c/53063
1541 PR c/40989
1542 * c.opt (Waddress,Wchar-subscripts,Wsign-conversion,Wimplicit,
1543 Wimplicit-function-declaration,Wimplicit-int,Wsizeof-pointer-memaccess,
1544 Wnarrowing,Wparentheses,Wpointer-sign,Wreturn-type,Wsequence-point,
1545 Wsign-compare,Wuninitialized,Wmaybe-uninitialized,Wunused,
1546 Wvolatile-register-var): Add LangEnabledBy or EnabledBy.
1547 * c-opts.c (c_common_handle_option): Remove explicit handling from
1548 here.
1549 (c_common_post_options): Likewise.
1550
d214ccee 15512012-10-18 Eric Botcazou <ebotcazou@adacore.com>
1552
1553 * c-ada-spec.c (LOCATION_COL): Delete.
1554 (compare_location): New function.
1555 (compare_node): Use it.
1556 (compare_comment): Likewise.
1557
77b27208 15582012-10-16 Manuel López-Ibáñez <manu@gcc.gnu.org>
1559
1560 PR c/53063
1561 PR c/40989
1562 * c.opt (Wstrict-aliasing=,Wstrict-overflow=): Use LangEnabledBy.
1563 * c-opts.c (c_common_handle_option): Do not set them here. Add
1564 comment.
1565 (c_common_post_options): Likewise.
1566
cc02ca4d 15672012-10-16 Eric Botcazou <ebotcazou@adacore.com>
1568
1569 * c-ada-spec.c (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Define.
1570 (dump_generic_ada_node) <INTEGER_CST>: Deal with sizetype specially.
1571 Remove POINTER_TYPE handling, add large unsigned handling and use
1572 ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX for big numbers.
1573
57f872a2 15742012-10-12 Jakub Jelinek <jakub@redhat.com>
1575
1576 PR c/54381
1577 * c-common.h (sizeof_pointer_memaccess_warning): Adjust prototype.
1578 * c-common.c (sizeof_pointer_memaccess_warning): Take array of 3
1579 locs and array of 3 trees instead of just single loc and single
1580 sizeof_arg tree. Handle __builtin___*_chk builtins too, and
1581 also stpncpy, bcopy, bcmp, bzero, snprintf and vsnprintf builtins.
1582 For *cmp* builtins that take two sources strings report warnings
1583 about first and second source, not about destination and source.
1584
7354ad2e 15852012-10-12 Marc Glisse <marc.glisse@inria.fr>
1586
1587 PR c++/53055
1588 * c-common.h (enum ref_operator) [RO_ARROW_STAR]: New.
1589
1ac7f120 15902012-10-11 Eric Botcazou <ebotcazou@adacore.com>
1591
1592 * c-ada-spec.c (dump_ada_template): Bail out for template declarations
1593 declaring something coming from another file.
1594
1e0cc9e3 15952012-10-10 Arnaud Charlet <charlet@adacore.com>
1596
1ac7f120 1597 PR ada/54845
1e0cc9e3 1598 * c-ada-spec.c (print_ada_struct_decl): Increase buf size.
1599
b0e7825e 16002012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
1601
1602 PR c++/54194
1603 * c-common.c (warn_about_parentheses): Add location_t parameter;
1604 use EXPR_LOC_OR_LOC.
1605 * c-common.h: Update declaration.
1606
41ed701a 16072012-10-09 Marc Glisse <marc.glisse@inria.fr>
1608
1609 PR c++/54427
1610 * c-common.c (scalar_to_vector): Moved from c-typeck.c. Support
1611 more operations. Make error messages optional.
1612 * c-common.h (enum stv_conv): Moved from c-typeck.c.
1613 (scalar_to_vector): Declare.
1614
3740094c 16152012-10-08 Jason Merrill <jason@redhat.com>
1616
1617 * c-common.c (c_common_reswords): Add thread_local.
1618
ffcdbf9c 16192012-10-08 Dodji Seketeli <dodji@redhat.com>
1620
1621 PR c++/53528 C++11 attribute support
1622 * c-common.h (bitfield_p, cxx_fundamental_alignment_p): Declare
1623 new functions.
1624 * c-common.c (check_cxx_fundamental_alignment_constraints): New
1625 static function.
1626 (handle_aligned_attribute): In choose strictest alignment
1627 among many. Use new check_cxx_fundamental_alignment_constraints.
1628 (handle_transparent_union_attribute): In c++11 attribute syntax,
1629 don't look through typedefs.
1630
ef34afc1 16312012-10-04 Arnaud Charlet <charlet@adacore.com>
1632
1633 * c-ada-spec.c (print_ada_declaration): Remove handling of TDF_RAW.
1634 * c.opt (-fdump-ada-spec, -fdump-ada-spec-slim): Move switch definition
1635 out of dumpfile.h.
1636
f1ff4562 16372012-09-25 Dehao Chen <dehao@google.com>
1638
1639 PR middle-end/54645
ef34afc1 1640 * c-pch.c (c_common_read_pch): Rebuild the location_adhoc_data
f1ff4562 1641 map when read in the pch.
1642
735538a1 16432012-09-18 Arnaud Charlet <charlet@adacore.com>
1644
1645 * c-ada-spec.c: Style fixes.
1646
9120cdc8 16472012-09-18 Thomas Quinot <quinot@adacore.com>
1648
1649 * c.opt (-fada-spec-parent): Define new command line switch.
1650 * c-ada-spec.c (get_ada_package): When -fada-spec-parent
1651 is specified, generate binding spec as a child of the specified unit.
1652
8eba82c2 16532012-09-13 Paolo Carlini <paolo.carlini@oracle.com>
1654 Manuel López-Ibáñez <manu@gcc.gnu.org>
1655
1656 PR c++/53210
1657 * c.opt ([Winit-self]): Enabled by -Wall in C++.
1658
38682990 16592012-08-23 Arnaud Charlet <charlet@adacore.com>
1660
1661 * c-ada-spec.c (dump_generic_ada_node): Fix handling of name_only
1662 for pointers, and add missing Convention C pragma.
1663 (print_ada_struct_decl): Add missing aliased keyword.
1664 (dump_ads): Add pragma Ada_2005 and Style_Checks (Off).
1665
f003f5dc 16662012-08-17 Jakub Jelinek <jakub@redhat.com>
1667
1668 * c-common.c (sizeof_pointer_memaccess_warning): New function.
1669 * c.opt (-Wsizeof-pointer-memaccess): Add new option.
1670 * c-opts.c (c_common_handle_option): Enable it for -Wall.
1671 * c-common.h (sizeof_pointer_memaccess_warning): Add prototype.
1672 * c-common.def (SIZEOF_EXPR): Moved here from cp-tree.def.
1673
ec11736b 16742012-08-10 Richard Guenther <rguenther@suse.de>
1675
1676 * c-pretty-print.c (pp_c_expression): Handle anonymous SSA names.
1677
5f7f600e 16782012-08-07 Steven Bosscher <steven@gcc.gnu.org>
1679
1680 * c-pretty-print.c (pp_c_function_definition): Use pp_newline_and_flush
1681 instead of separate pp_newline and pp_flush.
1682 (print_c_tree): Likewise.
1683
758a38ab 16842012-07-26 Richard Henderson <rth@redhat.com>
1685
1686 * c-common.c (handle_hot_attribute): Allow labels.
1687 (handle_cold_attribute): Likewise.
1688
9ca77b08 16892012-07-20 Jakub Jelinek <jakub@redhat.com>
1690
1691 PR c++/28656
1692 * c-common.c (check_function_nonnull): Handle multiple nonnull
1693 attributes properly.
1694
b9ed1410 16952012-07-16 Steven Bosscher <steven@gcc.gnu.org>
1696
1697 * c-gimplify.c: Include dumpfile.h instead of tree-dump.h.
1698 * c-ada-spec.c: Likewise.
1699 * c-dump.c (dump_stmt): Move to cp/dump.c, the only user.
1700
c2a65b90 17012012-07-14 Steven Bosscher <steven@gcc.gnu.org>
1702
1703 * c-pch.c (CHECK_NO_ASM_OUT_DURING_PCH): Do not define.
1704 Remove code conditional on it.
1705
88c5a1d1 17062012-07-11 Steven Bosscher <steven@gcc.gnu.org>
1707
1708 * c-gimplify.c: Do not include basic-block.h.
1709 * c-common.c: Do not include linfuncs.h.
1710
4a020a8c 17112012-07-08 Steven Bosscher <steven@gcc.gnu.org>
1712
1713 * c-common.h: Include tree.h.
1714
c28ddc97 17152012-07-02 Jason Merrill <jason@redhat.com>
1716
1717 PR c++/53524
1718 * c-common.c (get_priority): Call default_conversion.
1719
405ed67f 17202012-07-01 Uros Bizjak <ubizjak@gmail.com>
1721
1722 * c-pch.c (c_common_write_pch): Remove unused variables.
1723
e53d55e7 17242012-06-29 Steven Bosscher <steven@gcc.gnu.org>
1725
1726 * cppspec.c: Moved from gcc/ to here.
1727
3d9c25ec 17282012-06-27 Kai Tietz <ktietz@redhat.com>
1729
1730 PR preprocessor/37215
1731 * c-ppoutput.c (preprocess_file): Check for nonempty buffer.
1732
3169c57a 17332012-06-21 Steven Bosscher <steven@gcc.gnu.org>
1734
1735 * c-common.h (c_common_print_pch_checksum): Remove.
1736 * c-pch.c: Do not include output.h.
1737 (CHECK_NO_ASM_OUT_DURING_PCH): Define and add FIXME.
1738 (asm_out_file): Define iff CHECK_NO_ASM_OUT_DURING_PCH isdefined.
1739 (asm_file_startpos): Define iff CHECK_NO_ASM_OUT_DURING_PCH is defined.
1740 (struct c_pch_header): Remove.
1741 (get_ident): Update gpch version.
1742 (pch_init): Do not print executable_checksum to asm_out_file.
1743 Do not fail if there is no asm_out_file to read back from. Set
1744 asm_file_startpos only if CHECK_NO_ASM_OUT_DURING_PCH is defined.
1745 (c_common_write_pch): Verify that nothing was written to asm_out_file
1746 since pch_init was called. Do not write a c_pch_header, and do not
1747 copy from asm_out_file to the PCH.
1748 (c_common_read_pch): Do not read a c_pch_header, and do not restore
1749 the content of asm_out_file from the PCH.
1750 (c_common_print_pch_checksum): Remove.
1751 * c-opts.c (c_common_init): Print out executable_checksum directly.
1752
ff6624bc 17532012-06-19 Steven Bosscher <steven@gcc.gnu.org>
1754
1755 * c-target.def (objc_declare_unresolved_class_reference,
1756 objc_declare_class_definition): Add new hooks.
1757
367b1459 17582012-06-19 Steven Bosscher <steven@gcc.gnu.org>
1759
1760 * c-lex.c: Do not include output.h.
1761 (cb_ident): Try to put out .ident with targetm.asm_out.output_ident.
1762 Remove uses of ASM_OUTPUT_IDENT.
1763
bf0cb017 17642012-06-15 Marc Glisse <marc.glisse@inria.fr>
1765
1766 PR c++/51033
1767 * c-common.h (c_build_vec_perm_expr): Move decl here.
1768 * c-common.c (c_build_vec_perm_expr): Move definition
1769 here.
1770
b37a3600 17712012-06-06 Steven Bosscher <steven@gcc.gnu.org>
1772
1773 * c.opt (fconserve-space): Turn into a no-op.
1774
19931eea 17752012-06-04 Sterling Augustine <saugustine@google.com>
5f9e7dd5 1776
1777 * c-pretty-print.h (pp_c_flag_gnu_v3): New enumerator.
1778 * c-pretty-print.c (pp_c_specifier_qualifier_list): Check it at
1779 both the start and end of the function.
1780
dff12c10 17812012-06-04 Steven Bosscher <steven@gcc.gnu.org>
1782
1783 * c-common.c: Do not include output.h.
1784 * c-pragma.c: Likewise.
1785
5f9e7dd5 17862012-06-04 Steven Bosscher <steven@gcc.gnu.org>
1787
1788 * error.c (dump_decl): Check pp_c_flag_gnu_v3.
1789 (decl_as_dwarf_string, lang_decl_dwarf_name): New functions.
1790 (lang_decl_name): Handle namespace decls.
1791
b5369b7d 17922012-05-31 Steven Bosscher <steven@gcc.gnu.org>
1793
1794 * c-ada-spec.c: Do not include output.h.
1795 * c-semantics.c: Likewise.
1796
8032877c 17972012-05-29 Joseph Myers <joseph@codesourcery.com>
1798
1799 * c-common.c: Fix typo.
1800
7843e4bc 18012012-05-29 Michael Matz <matz@suse.de>
1802
1803 * c-common.h (c_expand_decl): Remove prototype.
1804
8cf857d4 18052012-05-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
1806
1807 * c.opt (Wmissing-braces): Use LangEnabledBy(C ObjC,Wall).
1808 * c-opts.c (c_common_handle_option): Remove code handling
1809 warn_missing_braces.
1810
8b64dc3c 18112012-05-28 Paolo Carlini <paolo.carlini@oracle.com>
1812
1813 PR c++/25137
1814 * c-opts.c (c_common_handle_option): For C++ -Wall doesn't enable
1815 -Wmissing_braces.
1816
43cbde16 18172012-05-22 Dodji Seketeli <dodji@redhat.com>
1818
1819 PR c++/53322
1820 * c.opt (Wunused-local-typedefs): Use EnabledBy(Wunused).
1821
db490cb6 18222012-05-17 Manuel López-Ibáñez <manu@gcc.gnu.org>
1823
1824 * c.opt (--pedantic-errors,-pedantic-errors): Do not handle here.
1825 * c-opts.c (c_common_handle_option): Do not handle explicitly
1826 Wreturn-type, Wwrite-strings, warn_ecpp, and -pedantic-errors.
1827
a60f3e81 18282012-05-16 Dodji Seketeli <dodji@redhat.com>
1829
1830 PR preprocessor/7263
1831 * c-lex.c (c_lex_with_flags): Pass a virtual location to the call
1832 to cpp_classify_number. For diagnostics, use the precise location
1833 instead of the global input_location.
1834
82e6ef7c 18352012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
1836
cd4797ff 1837 PR c++/11856
82e6ef7c 1838 * c-common.c (shorten_compare): Check c_inhibit_evaluation_warnings.
1839
258a168d 18402012-05-14 Bernd Schmidt <bernds@codesourcery.com>
1841
82e6ef7c 1842 * c-common.c (DEF_ATTR_STRING): Define and undefine as necessary.
258a168d 1843
d3b7ee7c 18442012-05-14 Manuel López-Ibáñez <manu@gcc.gnu.org>
1845
1846 PR 53063
1847 * c.opt (Wc++0X-compat,Wdelete-non-virtual-dtor,Wjump-misses-init,
1848 Wreorder): Use LangEnabledBy.
1849 * c-opts.c (c_common_handle_option): Do not enable them
1850 explicitly. Call lang-specific generated functions.
1851 (c_common_post_options): Do not set them here.
1852
70059cea 18532012-05-13 Manuel López-Ibáñez <manu@gcc.gnu.org>
1854
1855 * c.opt (Wclobbered,Wempty-body,Wignored-qualifiers,
1856 Wmissing-field-initializers,Wmissing-parameter-type,
1857 Wold-style-declaration,Woverride-init): Use EnabledBy.
1858 * c-opts.c (c_common_post_options): Do not set here explicitly.
1859
fbb6fbd8 18602012-05-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
1861
1862 PR 53063
1863 * c-opts.c (c_common_handle_option): Use handle_generated_option
1864 to enable sub-options.
1865
61f69bc9 18662012-05-10 Paolo Carlini <paolo.carlini@oracle.com>
1867
1868 PR c++/53158
1869 * c-common.c (warnings_for_convert_and_check): Use warning_at.
1870
5a1fe2db 18712012-05-10 Richard Guenther <rguenther@suse.de>
1872
1873 * c-common.c (c_sizeof_or_alignof_type): Remove assert and
1874 adjust commentary about TYPE_IS_SIZETYPE types.
1875
d42e7c5a 18762012-05-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
1877
1878 PR c++/53261
1879 * c-common.c (warn_logical_operator): Check that argument of
1880 integer_zerop is not NULL.
1881
686369e8 18822012-05-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
1883
1884 PR c/43772
1885 * c-common.c (warn_logical_operator): Do not warn if either side
1886 is already true or false.
1887
03fe1dc2 18882012-05-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
1889
1890 PR c/51712
1891 * c-common.c (expr_original_type): New.
1892 (shorten_compare): Do not warn for enumeration types.
1893
bba5a206 18942012-05-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
1895
1896 * c.opt (fpermissive): Add Var(flag_permissive).
1897
7059d45d 18982012-04-30 Marc Glisse <marc.glisse@inria.fr>
1899
1900 PR c++/51033
1901 * c-common.c (convert_vector_to_pointer_for_subscript): New function.
1902 * c-common.h (convert_vector_to_pointer_for_subscript): Declare it.
1903
7edb1062 19042012-04-30 Dodji Seketeli <dodji@redhat.com>
1905
1906 Add -Wvarargs option
1907 * c.opt (Wvarargs): Define new option.
1908
068bea1e 19092012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
1910
1911 * c-common.c (check_function_arguments): Replace
1912 Wmissing-format-attribute with Wsuggest-attribute=format.
1913
b86527d8 19142012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
1915
1916 * c.opt (Wsuggest-attribute=format): New. Alias of
1917 Wmissing-format-attribute.
1918 * c-format.c (decode_format_type): Replace
1919 Wmissing-format-attribute with Wsuggest-attribute=format.
1920 (check_function_format): Likewise.
1921
19931eea 19222012-04-27 Ollie Wild <aaw@google.com>
76d340ac 1923
1924 * c-common.c: Add CPP_W_LITERAL_SUFFIX mapping.
1925 * c-opts.c (c_common_handle_option): Handle OPT_Wliteral_suffix.
1926 * c.opt: Add Wliteral-suffix.
1927
29438999 19282012-04-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
1929
1930 PR c/44774
1931 * c.opt (Wpedantic): New.
1932 (pedantic): Alias Wpedantic.
1933 * c-opts.c (c_common_handle_option): Replace -pedantic with -Wpedantic.
1934 (c_common_post_options): Likewise.
1935 (sanitize_cpp_opts): Likewise.
1936 * c-lex.c (interpret_float): Likewise.
1937 * c-format.c (check_format_types): Likewise.
1938 * c-common.c (pointer_int_sum): Likewise.
1939 (c_sizeof_or_alignof_type): Likewise.
1940 (c_add_case_label): Likewise.
1941 (c_do_switch_warnings): Likewise.
1942 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
1943
4f9d6b8b 19442012-04-15 Jason Merrill <jason@redhat.com>
1945
1946 PR c++/52818
1947 * c-format.c (CPLUSPLUS_STD_VER): C++11 inherits from C99.
1948 (C_STD_NAME): Distinguish between C++98 and C++11.
1949
74bdbe96 19502012-04-11 Eric Botcazou <ebotcazou@adacore.com>
1951
1952 PR target/52624
1953 * c-common.h (uint16_type_node): Rename into...
1954 (c_uint16_type_node): ...this.
1955 * c-common.c (c_common_nodes_and_builtins): Adjust for above renaming.
1956 * c-cppbuiltin.c (builtin_define_stdint_macros): Likewise.
1957
3d177e8c 19582012-04-10 Manuel López-Ibáñez <manu@gcc.gnu.org>
1959
1960 * c-common.c (warn_if_unused_value): Move definition to here.
1961 * c-common.h (warn_if_unused_value): Move declaration to here.
1962
6a9a958f 19632012-03-23 William Bader <williambader@hotmail.com>
1964
1965 * c-lex.c (c_lex_with_flags): Avoid declarations after stmts.
1966
543efdbe 19672012-03-20 Jason Merrill <jason@redhat.com>
1968
1969 * c-common.h (enum cxx_dialect): Add cxx1y.
1970 * c-common.c (c_common_nodes_and_builtins): Use >= for cxx_dialect
1971 test.
1972 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
1973 * c-opts.c (c_common_post_options): Likewise.
1974 (set_std_cxx1y): New.
1975 (c_common_handle_option): Call it.
1976 * c.opt (-std=c++1y, -std=gnu++1y): New flags.
1977
62206d34 19782012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
1979
1980 PR c++/14710
1981 * c.opt ([Wuseless-cast]): Add.
1982
fadf62f4 19832012-03-16 Richard Guenther <rguenther@suse.de>
1984
1985 * c-pretty-print.c (pp_c_initializer_list): Adjust.
1986
249faa35 19872012-03-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
1988
1989 PR c++/44783
1990 * c.opt (ftemplate-backtrace-limit) Add.
1991
126b6848 19922012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1993
1994 * c-cppbuiltin.c (c_cpp_builtins): Remove #pragma extern_prefix
1995 handling.
1996 * c-pragma.c (handle_pragma_extern_prefix): Remove.
1997 (init_pragma): Don't register extern_prefix.
1998
a51edb4c 19992012-03-12 Richard Guenther <rguenther@suse.de>
2000
2001 * c-common.c (c_common_get_narrower): Use c_common_type_for_size.
2002 (builtin_type_for_size): Likewise.
2003
0f6a7cb7 20042012-02-13 Jakub Jelinek <jakub@redhat.com>
2005
2006 PR c++/52215
2007 * c-common.c (sync_resolve_params): Don't decide whether to convert
2008 or not based on TYPE_SIZE comparison, convert whenever arg_type
2009 is unsigned INTEGER_TYPE.
2010
0779e32c 20112012-02-06 Paolo Carlini <paolo.carlini@oracle.com>
2012
2013 PR c/52118
2014 * c.opt ([Wunused-local-typedefs]): Fix description.
2015
baec58e1 20162012-01-24 Mike Stump <mikestump@comcast.net>
2017
2018 * c-common.c (c_common_type_for_mode): Match signed/unsigned types
2019 exactly.
2020
c779d8cc 20212012-01-18 Richard Guenther <rguenther@suse.de>
2022
2023 * c-opts.c (c_common_post_options): Reset LTO flags if
2024 we are about to generate a PCH.
2025
ee917d24 20262012-01-17 Paolo Carlini <paolo.carlini@oracle.com>
2027
2028 PR c++/51777
2029 * c-pretty-print.c (pp_c_integer_constant): For unsigned constants
2030 use pp_unsigned_wide_integer.
2031
90e2341f 20322012-01-10 Richard Guenther <rguenther@suse.de>
2033
2034 PR middle-end/51806
2035 * c-opts.c (c_common_handle_option): Move -Werror handling
2036 to language independent code.
2037
9ea022ce 20382012-01-05 Richard Guenther <rguenther@suse.de>
2039
2040 PR middle-end/51764
2041 * c.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move here
2042 from common.opt.
2043
3df19e1b 20442011-12-30 Paolo Carlini <paolo.carlini@oracle.com>
2045
2046 PR c++/51316
2047 * c-common.c (c_sizeof_or_alignof_type): In C++ allow for alignof
2048 of array types with an unknown bound.
2049
32074525 20502011-12-20 Joseph Myers <joseph@codesourcery.com>
2051
2052 * c-common.c (flag_isoc99): Update comment to refer to C11.
2053 (flag_isoc1x): Change to flag_isoc11.
2054 * c-common.h (flag_isoc99): Update comment to refer to C11.
2055 (flag_isoc1x): Change to flag_isoc11.
2056 * c-cppbuiltin.c (cpp_atomic_builtins): Change comment to refer to
2057 C11.
2058 * c-opts.c (set_std_c1x): Change to set_std_c11.
2059 (c_common_handle_option): Handle OPT_std_c11 and OPT_std_gnu11.
2060 Call set_std_c11.
2061 (set_std_c89, set_std_c99, set_std_c11): Use flag_isoc11.
2062 (set_std_c1): Use CLK_STDC11 and CLK_GNUC11.
2063 * c.opt (std=c1x): Change to std=c11. Document as non-draft
2064 standard.
2065 (std=c1x, std=iso9899:2011): Add as aliases of std=c11.
2066 (std=gnu1x): Change to std=gnu11. Refer to non-draft standard.
2067 (std=gnu1x): Make alias of std=gnu11.
2068
fca86134 20692011-12-19 Jason Merrill <jason@redhat.com>
2070
2071 PR c++/51228
2072 * c-common.c (handle_transparent_union_attribute): Check the first
2073 field if the type is complete.
2074
aa4313eb 20752011-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
2076
2077 PR libstdc++/51365
2078 * c-common.c (RID_IS_FINAL): Add.
2079 * c-common.h (RID_IS_FINAL): Add.
2080
3f3d5ad4 20812011-11-30 Iain Sandoe <iains@gcc.gnu.org>
2082
2083 * c.opt (fgnu-runtime): Provide full description.
2084 (fnext-runtime): Likewise.
2085 * c-opts.c (OPT_fgnu_runtime, OPT_fnext_runtime) Remove.
2086
c4606d19 20872011-11-28 Andrew MacLeod <amacleod@redhat.com>
2088
2089 * c-cpp-builtin.c (cpp_atomic_builtins):New. Emit all atomic
2090 predefines in one place. Add LOCK_FREE predefines.
2091 (c_cpp_builtins): Move Legacy HAVE_SYNC predefines to
2092 new func.
2093
1d581089 20942011-11-24 Andrew MacLeod <amacleod@redhat.com>
2095
2096 PR c/51256
19931eea 2097 * c-common.c (get_atomic_generic_size): Check for various error
1d581089 2098 conditions
19931eea 2099 (resolve_overloaded_atomic_exchange,
2100 resolve_overloaded_atomic_compare_exchange,
1d581089 2101 resolve_overloaded_atomic_load, resolve_overloaded_atomic_store): Return
2102 error_mark_node for error conditions.
19931eea 2103
6aa221fa 21042011-11-08 Richard Guenther <rguenther@suse.de>
2105
2106 PR middle-end/51010
2107 c-family/
2108
4c0315d0 21092011-11-07 Richard Henderson <rth@redhat.com>
2110 Aldy Hernandez <aldyh@redhat.com>
2111 Torvald Riegel <triegel@redhat.com>
2112
2113 Merged from transactional-memory.
2114
2115 * c-common.c (handle_tm_wrap_attribute,
2116 handle_tm_attribute, ignore_attribute, parse_tm_stmt_attr): New.
2117 (struct c_common_reswords): Added __transaction* keywords.
2118 (struct c_common_attribute_table): Added transaction* and tm_regparm
2119 attributes.
2120 * c-common.h: Added RID_TRANSACTION*. Added TM_ATTR* and TM_STMT*
2121 masks.
2122 (parse_tm_stmt_attr, tm_attr_to_mask, tm_mask_to_attr,
2123 find_tm_attribute): Declare.
2124
920f5a70 21252011-11-07 Jason Merrill <jason@redhat.com>
2126
2127 PR c++/35688
2128 * c-common.c, c-common.h: Revert yesterday's changes.
2129
b4f861b4 21302011-11-06 Jason Merrill <jason@redhat.com>
2131
2132 PR c++/35688
2133 * c-common.c (decl_has_visibility_attr): Split out from...
2134 (c_determine_visibility): ...here.
2135 * c-common.h: Declare it.
2136
83e25171 21372011-11-06 Joseph Myers <joseph@codesourcery.com>
2138
2139 * c-common.c (c_common_reswords): Add _Alignas and _Alignof.
2140 (c_sizeof_or_alignof_type): Diagnose alignof applied to a function
2141 type.
2142 (check_user_alignment): New. Split out of
2143 handle_aligned_attribute. Disallow integer constants with
2144 noninteger types. Conditionally allow zero.
2145 (handle_aligned_attribute): Use check_user_alignment.
2146 * c-common.h (RID_ALIGNAS, check_user_alignment): New.
2147
1cd6e20d 21482011-11-06 Andrew MacLeod <amacleod@redhat.com>
2149 Richard Henderson <rth@redhat.com>
2150
2151 Merged from cxx-mem-model.
2152
2153 * c-cppbuiltin.c (c_cpp_builtins): Test both atomic and sync patterns.
19931eea 2154 * c-common.c (sync_resolve_params, sync_resolve_return): Only tweak
1cd6e20d 2155 parameters that are the same type size.
2156 (get_atomic_generic_size): New. Find size of generic
2157 atomic function parameters and do typechecking.
2158 (add_atomic_size_parameter): New. Insert size into parameter list.
2159 (resolve_overloaded_atomic_exchange): Restructure __atomic_exchange to
2160 either __atomic_exchange_n or external library call.
19931eea 2161 (resolve_overloaded_atomic_compare_exchange): Restructure
1cd6e20d 2162 __atomic_compare_exchange to either _n variant or external library call.
19931eea 2163 (resolve_overloaded_atomic_load): Restructure __atomic_load to either
1cd6e20d 2164 __atomic_load_n or an external library call.
2165 (resolve_overloaded_atomic_store): Restructure __atomic_store to either
2166 __atomic_store_n or an external library call.
2167 (resolve_overloaded_builtin): Handle new __atomic builtins.
2168
7549df0d 21692011-11-04 Eric Botcazou <ebotcazou@adacore.com>
2170
2171 PR c++/50608
2172 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1.
2173 (fold_offsetof_1): Make global. Remove STOP_REF argument and adjust.
2174 <INDIRECT_REF>: Return the argument.
2175 <ARRAY_REF>: Remove special code for negative offset.
2176 Call fold_build_pointer_plus instead of size_binop.
2177 (fold_offsetof): Remove STOP_REF argument and adjust.
2178 * c-common.h (fold_offsetof_1): Declare.
2179 (fold_offsetof): Remove STOP_REF argument.
2180
7e783eb3 21812011-11-02 Paolo Carlini <paolo.carlini@oracle.com>
2182
2183 PR c++/50810
2184 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
2185 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
2186 Wnarrowing for C++0x and C++98.
2187 * c.opt ([Wnarrowing]): Update.
2188
8fe701f5 21892011-11-01 Paolo Carlini <paolo.carlini@oracle.com>
2190
2191 PR c++/44277
2192 * c.opt: Add Wzero-as-null-pointer-constant.
2193
0d84dc2d 21942011-10-31 Jason Merrill <jason@redhat.com>
2195
67031f52 2196 * c.opt (-fdeduce-init-list): Off by default.
2197
0d84dc2d 2198 PR c++/50920
2199 * c-common.h (cxx_dialect): Add cxx11 and cxx03.
2200 * c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03,
2201 and -Wc++11-compat.
2202 * c-opts.c (set_std_cxx11): Rename from set_std_cxx0x.
2203
66f24c41 22042011-10-27 Roberto Agostino Vitillo <ravitillo@lbl.gov>
2205
2206 PR c++/30066
2207 * c.opt (fvisibility-inlines-hidden): Description change.
2208
244db24d 22092011-10-26 Ed Smith-Rowland <3dw4rd@verizon.net>
2210
2211 Implement C++11 user-defined literals.
2212 * c-common.c (build_userdef_literal): New.
2213 * c-common.def: New tree code.
2214 * c-common.h (tree_userdef_literal): New tree struct and accessors.
2215 * c-lex.c (interpret_float): Add suffix parm.
2216 (c_lex_with_flags): Build literal tokens.
2217
235be70f 22182011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
2219
2220 PR c++/50841
2221 Revert:
2222 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
2223
2224 PR c++/50810
2225 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
2226 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
2227 Wnarrowing for C++0x and C++98.
2228 * c.opt ([Wnarrowing]): Update.
2229
4fe0fb1c 22302011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
2231
2232 PR c++/50810
2233 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
2234 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
2235 Wnarrowing for C++0x and C++98.
2236 * c.opt ([Wnarrowing]): Update.
2237
5f7504f9 22382011-10-21 Paolo Carlini <paolo.carlini@oracle.com>
2239
2240 PR c++/45385
2241 * c-common.c (conversion_warning): Remove code looking for
2242 artificial operands.
2243
2a688977 22442011-10-18 Dodji Seketeli <dodji@redhat.com>
2245
2246 PR bootstrap/50760
2247 * c-lex.c (fe_file_change): Use LINEMAP_SYSP when
19931eea 2248 !NO_IMPLICIT_EXTERN_C.
2a688977 2249
326e3391 22502011-10-17 Michael Spertus <mike_spertus@symantec.com>
2251
2252 * c-common.c (c_common_reswords): Add __bases,
2253 __direct_bases.
2254 * c-common.h: Add RID_BASES and RID_DIRECT_BASES.
2255
22562011-10-17 Paolo Carlini <paolo.carlini@oracle.com>
2257
2258 PR c++/50757
2259 * c.opt ([Wnonnull]): Add C++ and Objective-C++.
2260
62db153a 22612011-10-15 Tom Tromey <tromey@redhat.com>
2262 Dodji Seketeli <dodji@redhat.com>
2263
2264 * c.opt (fdebug-cpp): New option.
2265 * c-opts.c (c_common_handle_option): Handle the option.
2266 * c-ppoutput.c (maybe_print_line_1): New static function. Takes an
2267 output stream in parameter. Factorized from ...
2268 (maybe_print_line): ... this. Dump location debug information when
2269 -fdebug-cpp is in effect.
2270 (print_line_1): New static function. Takes an output stream in
2271 parameter. Factorized from ...
2272 (print_line): ... here. Dump location information when -fdebug-cpp
2273 is in effect.
2274 (scan_translation_unit): Dump location information when
2275 -fdebug-cpp is in effect.
2276
ce70f433 22772011-10-15 Tom Tromey <tromey@redhat.com>
2278 Dodji Seketeli <dodji@redhat.com>
2279
2280 * c.opt (ftrack-macro-expansion): New option. Handle it with and
2281 without argument.
2282 * c-opts.c (c_common_handle_option)<case
2283 OPT_ftrack_macro_expansion_, case OPT_ftrack_macro_expansion>: New
2284 cases. Handle -ftrack-macro-expansion with and without argument.
2285
97bfb9ef 22862011-10-15 Tom Tromey <tromey@redhat.com>
2287 Dodji Seketeli <dodji@redhat.com>
2288
2289 * c-ppoutput.c (scan_translation_unit, maybe_print_line)
2290 (print_line, cb_define, do_line_change): Adjust to avoid touching
2291 the internals of struct line_map. Use the public API instead.
2292 * c-pch.c (c_common_read_pch): Likewise.
2293 * c-lex.c (fe_file_change): Likewise.
2294
326e3391 22952011-10-14 Paolo Carlini <paolo.carlini@oracle.com>
2296
2297 PR c++/17212
2298 * c.opt ([Wformat-zero-length]): Add C++ and Objective-C++.
2299
23002011-10-11 Paolo Carlini <paolo.carlini@oracle.com>
2301
2302 PR c++/33067
2303 * c-pretty-print.c (pp_c_floating_constant): Output
2304 max_digits10 (in the ISO C++ WG N1822 sense) decimal digits.
2305
b9a16870 23062011-10-11 Michael Meissner <meissner@linux.vnet.ibm.com>
2307
2308 * c-common.c (def_builtin_1): Delete old interface with two
2309 parallel arrays to hold standard builtin declarations, and replace
2310 it with a function based interface that can support creating
2311 builtins on the fly in the future. Change all uses, and poison
2312 the old names. Make sure 0 is not a legitimate builtin index.
2313 * c-omp.c (c_finish_omp_barrier): Ditto.
2314 (c_finish_omp_taskwait): Ditto.
2315 (c_finish_omp_flush): Ditto.
2316
c7964868 23172011-10-11 Tristan Gingold <gingold@adacore.com>
2318
2319 * c.opt: (fallow-parameterless-variadic-functions): New.
2320
a4e3ffad 23212011-09-08 Dodji Seketeli <dodji@redhat.com>
2322
2323 PR c++/33255 - Support -Wunused-local-typedefs warning
2324 * c-common.h (struct c_language_function::local_typedefs): New
2325 field.
19931eea 2326 (record_locally_defined_typedef, maybe_record_typedef_use)
2327 (maybe_warn_unused_local_typedefs): Declare new functions.
a4e3ffad 2328 * c-common.c (record_locally_defined_typedef)
19931eea 2329 (maybe_record_typedef_use)
2330 (maybe_warn_unused_local_typedefs): Define new functions.
a4e3ffad 2331 * c.opt: Declare new -Wunused-local-typedefs flag.
2332
737a23cc 23332011-09-06 Eric Botcazou <ebotcazou@adacore.com>
2334
2335 PR middle-end/50266
2336 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Fold offsetof-like
2337 computations.
2338
7542c3b4 23392011-09-05 Richard Guenther <rguenther@suse.de>
2340
2341 * c-common.c (complete_array_type): Use ssize_int (-1) instead
2342 of integer_minus_one_node for empty array upper bounds.
2343
1dc92c59 23442011-08-28 Dodji Seketeli <dodji@redhat.com>
2345
2346 * c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as
2347 it's the first time it's being called on this main TU.
2348
2bdf2b6e 23492011-08-24 Richard Guenther <rguenther@suse.de>
2350
2351 PR c/49396
2352 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional.
2353
23542011-08-22 Gabriel Charette <gchare@google.com>
6ea2c7a3 2355
2356 * c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens
2357 defined in cpp_init_builtins and c_cpp_builtins.
2358
bff4ad11 23592011-08-19 Joseph Myers <joseph@codesourcery.com>
2360
2361 * c-common.c (c_common_reswords): Add __builtin_complex.
2362 * c-common.h (RID_BUILTIN_COMPLEX): New.
2363
985c6e3a 23642011-08-18 Joseph Myers <joseph@codesourcery.com>
2365
2366 * c-common.c (c_common_reswords): Add _Noreturn.
2367 (keyword_is_function_specifier): Handle RID_NORETURN.
2368 * c-common.h (RID_NORETURN): New.
2369
7dfa155b 23702011-08-10 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
2371
2372 * c-common.c (unsafe_conversion_p): New function. Check if it is
2373 unsafe to convert an expression to the type.
2374 (conversion_warning): Adjust, use unsafe_conversion_p.
2375 * c-common.h (unsafe_conversion_p): New function declaration.
2376
2169f33b 23772011-08-02 Jakub Jelinek <jakub@redhat.com>
2378
2379 * c-common.h (c_finish_omp_atomic): Adjust prototype.
2380 (c_finish_omp_taskyield): New prototype.
2381 * c-omp.c (c_finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1
2382 arguments. Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and
2383 OMP_ATOMIC_CAPTURE_NEW in addition to OMP_ATOMIC. If LHS1
2384 or RHS1 have side-effects, evaluate those too in the right spot,
2385 if it is a decl and LHS is also a decl, error out if they
2386 aren't the same.
2387 (c_finish_omp_taskyield): New function.
2388 * c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP to 201107.
2389 * c-pragma.c (omp_pragmas): Add taskyield.
2390 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKYIELD.
2391 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FINAL and
2392 PRAGMA_OMP_CLAUSE_MERGEABLE.
2393
ab77850e 23942011-07-25 Dodji Seketeli <dodji@redhat.com>
2395
2396 * c-common.h (set_underlying_type): Remove parm name from
2397 declaration.
2398
6ee97920 23992011-07-25 Romain Geissler <romain.geissler@gmail.com>
2400
2401 * c-pretty-print.h: Search c-common.h in c-family.
19931eea 2402
dc251364 24032011-07-22 Jason Merrill <jason@redhat.com>
2404
1a2a35f0 2405 PR c++/49793
2406 * c.opt (Wnarrowing): New.
2407
27282252 2408 PR c++/30112
2409 * c-common.h: Declare c_linkage_bindings.
2410 * c-pragma.c (handle_pragma_redefine_extname): Use it.
2411
dc251364 2412 PR c++/49813
2413 * c-opts.c (set_std_cxx0x): Set flag_isoc94 and flag_isoc99.
2414 * c-pretty-print.c (pp_c_cv_qualifiers): Check c_dialect_cxx as well
2415 as flag_isoc99 for 'restrict'.
2416 (pp_c_specifier_qualifier_list): Likewise for _Complex.
2417
fc501191 24182011-07-21 Ian Lance Taylor <iant@google.com>
2419
2420 PR middle-end/49705
2421 * c-common.c (c_disable_warnings): New static function.
2422 (c_enable_warnings): New static function.
2423 (c_fully_fold_internal): Change local unused_p to bool. Call
2424 c_disable_warnings and c_enable_warnings rather than change
2425 c_inhibit_evaluation_warnings.
2426
07b8f133 24272011-07-20 Jason Merrill <jason@redhat.com>
2428
2429 PR c++/6709 (DR 743)
2430 PR c++/42603 (DR 950)
2431 * c-common.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move from cp/parser.h.
2432 (CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise.
2433 (CPP_DECLTYPE): New.
2434 * c-common.c (c_parse_error): Handle CPP_DECLTYPE.
2435
2cc66f2a 24362011-07-19 Richard Guenther <rguenther@suse.de>
2437
2438 * c-common.c (pointer_int_sum): Use fold_build_pointer_plus.
2439 * c-omp.c (c_finish_omp_for): Likewise.
2440
3c802a1e 24412011-07-12 Eric Botcazou <ebotcazou@adacore.com>
2442
2443 * c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop
2444 body on the next line.
2445
98a33d9f 24462011-07-08 Jason Merrill <jason@redhat.com>
2447
3115bda0 2448 PR c++/45437
2449 * c-omp.c (check_omp_for_incr_expr): Handle preevaluation.
2450
98a33d9f 2451 PR c++/49673
2452 * c-common.c (c_apply_type_quals_to_decl): Don't check
2453 TYPE_NEEDS_CONSTRUCTING.
2454
c38a75b7 24552011-07-06 Richard Guenther <rguenther@suse.de>
2456
2457 * c-common.c (c_common_nodes_and_builtins):
2458 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
2459
e593356b 24602011-07-05 Richard Guenther <rguenther@suse.de>
2461
2462 * c-common.c (c_common_nodes_and_builtins): Build all common
2463 tree nodes first.
2464
fca0886c 24652011-06-27 Jakub Jelinek <jakub@redhat.com>
2466
a68f7a8d 2467 * c-common.h (c_tree_chain_next): New static inline function.
2468
fca0886c 2469 * c-common.c (check_builtin_function_arguments): Handle
2470 BUILT_IN_ASSUME_ALIGNED.
2471
2797f13a 24722011-06-21 Andrew MacLeod <amacleod@redhat.com>
2473
2474 * c-common.c: Add sync_ or SYNC__ to builtin names.
2475 * c-omp.c: Add sync_ or SYNC__ to builtin names.
9cad95b7 2476
24772011-06-20 Pierre Vittet <piervit@pvittet.com>
2478
2479 * c-pragma.h (pragma_handler_1arg, pragma_handler_2arg): New
2480 handler.
2481 (gen_pragma_handler): New union.
2482 (internal_pragma_handler): New type.
2483 (c_register_pragma_with_data)
2484 (c_register_pragma_with_expansion_and_data): New functions.
2485
2486 * c-pragma.c (registered_pragmas, c_register_pragma_1)
2487 (c_register_pragma, c_register_pragma_with_expansion)
2488 (c_invoke_pragma_handler): Changed to work with
2489 internal_pragma_handler.
2490 (c_register_pragma_with_data)
2491 (c_register_pragma_with_expansion_and_data): New functions.
2492
218e3e4e 24932011-06-14 Joseph Myers <joseph@codesourcery.com>
2494
2495 * c-common.c: Include common/common-target.h.
2496 (handle_section_attribute): Use
2497 targetm_common.have_named_sections.
2498 * c-cppbuiltin.c: Include common/common-target.h.
2499 (c_cpp_builtins): Use targetm_common.except_unwind_info.
2500
41e53ed2 25012011-06-10 Richard Guenther <rguenther@suse.de>
2502
2503 * c-pretty-print.c (pp_c_type_specifier): Use pp_c_identifier
2504 to print a IDENTIFIER_NODE.
2505
a6f06169 25062011-06-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2507 Joseph Myers <joseph@codesourcery.com>
2508
2509 * c.opt (fbuilding-libgcc): New option.
2510 * c-cppbuiltin.c (c_cpp_builtins): Define
2511 __LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc.
2512
1ea9269b 25132011-06-07 Jason Merrill <jason@redhat.com>
2514
8ce59854 2515 * c-common.c (max_tinst_depth): Lower default to 900.
2516
1ea9269b 2517 * c-format.c (gcc_cxxdiag_char_table): Add 'S' format.
2518
1af0124d 25192011-06-07 Richard Guenther <rguenther@suse.de>
2520
2521 * c-common.c (c_common_nodes_and_builtins): Do not set
2522 size_type_node or call set_sizetype.
2523
0e9a4c01 25242011-06-07 Dodji Seketeli <dodji@redhat.com>
2525
2526 PR debug/49130
2527 * c-pretty-print.c (pp_c_integer_constant): Consider the canonical
19931eea 2528 type when using pointer comparison to compare types.
0e9a4c01 2529
90b40725 25302011-06-02 Jonathan Wakely <jwakely.gcc@gmail.com>
2531
2532 * c.opt: Add -Wdelete-non-virtual-dtor.
2533 * c-opts.c (c_common_handle_option): Include it in -Wall.
2534
fc9c9e87 25352011-05-30 Nathan Froyd <froydnj@gcc.gnu.org>
2536
2537 PR bootstrap/49190
2538
2539 Revert:
2540 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
2541
2542 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
2543 not tree_common.
2544
d0389adc 25452011-05-27 Jakub Jelinek <jakub@redhat.com>
2546
2547 PR c++/49165
2548 * c-common.c (c_common_truthvalue_conversion) <case COND_EXPR>: For
2549 C++ don't call c_common_truthvalue_conversion on void type arms.
2550
cacfdc02 25512011-05-27 Nathan Froyd <froydnj@codesourcery.com>
2552
2553 * c-common.h (struct stmt_tree_s) [x_cur_stmt_list]: Change to a VEC.
2554 (stmt_list_stack): Define.
2555 (cur_stmt_list): Adjust for new type of x_cur_stmt_list.
2556 * c-semantics.c (push_stmt_list, pop_stmt_list): Likewise.
2557
027fc6ef 25582011-05-26 Nathan Froyd <froydnj@codesourcery.com>
2559
2560 * c-common.c (warning_candidate_p): Check for BLOCKs.
2561
f21317a1 25622011-05-26 Nathan Froyd <froydnj@codesourcery.com>
2563
2564 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
2565 not tree_common.
2566
789e953d 25672011-05-25 Jakub Jelinek <jakub@redhat.com>
2568
2569 * c-common.c (def_fn_type): Remove extra va_end.
2570
7f506bca 25712011-05-23 Jason Merrill <jason@redhat.com>
2572
2573 PR c++/48106
2574 * c-common.c (c_common_get_narrower): New.
2575 (shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.
2576
774e9d58 25772011-05-23 Nathan Froyd <froydnj@codesourcery.com>
2578
2579 * c-common.h (check_function_arguments): Tweak prototype of
2580 check_function_arguments.
2581 * c-common.c (check_function_arguments): Likewise. Adjust
2582 calls to check_function_nonnull, check_function_format, and
2583 check_function_sentinel.
2584 (check_function_sentinel): Take a FUNCTION_TYPE rather than
2585 separate attributes and typelist arguments. Use
2586 FOREACH_FUNCTION_ARGS to iterate over argument types.
2587
23407dc9 25882011-05-15 Paolo Carlini <paolo.carlini@oracle.com>
2589
2590 * c-common.c (c_common_reswords): Reorder.
2591 * c-common.h (rid): Likewise.
2592
3a939d12 25932011-05-10 Nathan Froyd <froydnj@codesourcery.com>
2594
2595 * c-common.c (def_fn_type): Don't call build_function_type, call
2596 build_function_type_array or build_varargs_function_type_array
2597 instead.
2598 (c_common_nodes_and_builtins): Likewise.
2599
b6e3dd65 26002011-05-05 Nathan Froyd <froydnj@codesourcery.com>
2601
2602 * c-common.c (c_add_case_label): Omit the loc argument to
2603 build_case_label.
2604 * c-common.h (build_case_label): Remove.
2605 * c-semantics.c (build_case_label): Remove.
2606
4232a958 26072011-05-05 Joseph Myers <joseph@codesourcery.com>
2608
2609 * c-objc.h (objc_start_method_definition): Update prototype.
2610 * stub-objc.c (objc_start_method_definition): Add extra parameter.
2611
d0af78c5 26122011-05-04 Nathan Froyd <froydnj@codesourcery.com>
2613
2614 * c-common.c (check_main_parameter_types): Reindent. Don't use
2615 TYPE_ARG_TYPES directly.
2616 (handle_nonnull_attribute): Likewise.
2617 (sync_resolve_params): Likewise.
2618 * c-format.c (handle_format_arg_attribute): Likewise. Adjust call
2619 to check_format_string.
2620 (handle_format_attribute): Likewise.
2621 (check_format_string): Take a function type to examine instead of
2622 a type list. Use a function_arg_iterator to step through argument
2623 types.
2624
ceb7b692 26252011-05-04 Richard Guenther <rguenther@suse.de>
2626
2627 * c-common.c (fix_string_type): Use size_int for index type bounds.
2628 (start_fname_decls): Do not pass NULL to build_int_cst.
2629 (c_init_attributes): Likewise.
2630 * c-lex.c (c_lex_with_flags): Likewise.
2631
c66c81be 26322011-04-27 Jason Merrill <jason@redhat.com>
2633
2634 * c-common.c (make_tree_vector_from_list): New.
2635 * c-common.h: Declare it.
2636
16930c72 26372011-04-26 Richard Guenther <rguenther@suse.de>
2638
2639 PR preprocessor/48248
2640 * c-ppoutput.c (maybe_print_line): Always optimize newlines
2641 for output size with -P.
2642
23407dc9 26432011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
2644
2645 * c-common.c (struct c_common_resword): Add __underlying_type.
2646 * c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
2647
dd045aee 26482011-04-20 Jim Meyering <meyering@redhat.com>
2649
2650 * c-format.c (init_dollar_format_checking): Remove useless
2651 if-before-free.
2652
394dd737 26532011-04-15 Nicola Pero <nicola.pero@meta-innovation.com>
2654
2655 * c-objc.h (objc_get_interface_ivars): Removed.
23407dc9 2656 (objc_detect_field_duplicates): New.
394dd737 2657 * stub-objc.c: Likewise.
23407dc9 2658
a758bf7d 26592011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
2660
2661 * stub-objc.c (objc_declare_protocols): Renamed to
2662 objc_declare_protocol.
2663 * c-objc.h: Likewise.
23407dc9 2664
29d7200d 26652011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
2666
2667 * stub-objc.c (objc_declare_class): Updated argument name.
2668
9b88d08d 26692011-04-12 Nathan Froyd <froydnj@codesourcery.com>
2670
2671 * c-common.h (c_common_init_ts): Declare.
2672 * c-common.c (c_common_init_ts): Define.
2673
4185cf58 26742011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
2675
2676 * c-objc.h (objc_build_message_expr): Updated prototype.
2677 * stub-objc.c (objc_build_message_expr): Likewise.
19931eea 2678
5a90471f 26792011-04-12 Martin Jambor <mjambor@suse.cz>
2680
2681 * c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
2682 of cgraph_node.
2683
783bb57e 26842011-04-11 Richard Guenther <rguenther@suse.de>
2685
2686 * c-common.c (complete_array_type): Build a range type of
2687 proper type.
2688
c33080b9 26892011-04-08 Nathan Froyd <froydnj@codesourcery.com>
2690
2691 * c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
2692 (handle_type_generic_attribute): Likewise.
2693
f8913d47 26942011-04-07 Jason Merrill <jason@redhat.com>
2695
2696 PR c++/48450
2697 * c-common.c (c_common_truthvalue_conversion): Don't ignore
2698 conversion from C++0x scoped enum.
2699
c94b1d0e 27002011-04-06 Joseph Myers <joseph@codesourcery.com>
2701
2702 * c-target-def.h: New file.
2703 * c-target.def: New file.
2704 * c-target.h: New file.
2705 * c-common.c (targetcm): Don't define here.
2706 * c-common.h (default_handle_c_option): Declare.
2707 * c-format.c: Include c-target.h instead of target.h.
2708 * c-opts.c: Include c-target.h instead of target.h. Explicitly
2709 include tm.h.
2710 (default_handle_c_option): Move from targhooks.c.
2711
acb10f41 27122011-03-29 Jakub Jelinek <jakub@redhat.com>
2713
2714 PR preprocessor/48248
2715 * c-ppoutput.c (print): Add src_file field.
2716 (init_pp_output): Initialize it.
2717 (maybe_print_line): Don't optimize by adding up to 8 newlines
2718 if map->to_file and print.src_file are different file.
2719 (print_line): Update print.src_file.
2720
82715bcd 27212011-03-25 Kai Tietz <ktietz@redhat.com>
2722
2723 * c-ada-spec.c (compare_comment): Use filename_cmp
2724 instead of strcmp for filename.
2725
451c8e2f 27262011-03-25 Jeff Law <law@redhat.com>
2727
2728 * c-family/c-common.c (def_fn_type): Add missing va_end.
2729
3c47771c 27302011-03-25 Jason Merrill <jason@redhat.com>
2731
2732 * c.opt: Add -std=c++03.
2733
97e6200f 27342011-03-22 Eric Botcazou <ebotcazou@adacore.com>
2735
2736 * c-ada-spec.c (dump_ada_template): Skip non-class instances.
2737
ac86af5d 27382011-03-17 Kai Tietz
2739
2740 PR target/12171
ee212425 2741 * c-pretty-print.c (pp_c_specifier_qualifier_list):
2742 Display allowed attributes for function pointer types.
2743 (pp_c_attributes_display): New function to display
2744 attributes having affects_type_identity flag set to true.
2745 * c-pretty-print.h (pp_c_attributes_display): New prototype.
2746
ac86af5d 2747 * c-common.c (c_common_attribute_table):
2748 Add new element.
2749 (c_common_format_attribute_table): Likewise.
2750
914d1151 27512011-03-18 Jason Merrill <jason@redhat.com>
2752
69788bdf 2753 * c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
2754 * c-common.h: Don't declare it here.
2755 * c-common.c: Or define it here.
2756 * c-opts.c (c_common_handle_option): Or set it here.
2757
914d1151 2758 PR c++/35315
2759 * c-common.c (handle_transparent_union_attribute): Don't
2760 make a duplicate type in C++.
2761
54cf6eed 27622011-03-15 Jason Merrill <jason@redhat.com>
2763
2764 * c-common.c (max_constexpr_depth): New.
2765 * c-common.h: Declare it.
2766 * c-opts.c (c_common_handle_option): Set it.
2767 * c.opt (fconstexpr-depth): New option.
2768
02cb1060 27692011-03-11 Jason Merrill <jason@redhat.com>
2770
9bf1c74e 2771 * c-common.c (attribute_takes_identifier_p): Add missing const.
2772
02cb1060 2773 PR c++/46803
2774 * c-common.c (attribute_takes_identifier_p): Assume that an
2775 unknown attribute takes an identifier.
2776
ecf2703d 27772011-03-07 Nathan Froyd <froydnj@codesourcery.com>
2778
2779 PR c/47786
2780 * c-common.c (c_type_hash): Call list_length instead of iterating
2781 through DECL_CHAIN. Rename 'i' to 'n_elements'.
2782
2b19dfe4 27832011-02-19 Jakub Jelinek <jakub@redhat.com>
2784
2785 PR c/47809
2786 * c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
2787
29cf2335 27882011-02-17 Iain Sandoe <iains@gcc.gnu.org>
2789
2790 * c.opt (fobjc-abi-version=) New.
2791 (fobjc-nilcheck): New.
2792
fad3f658 27932011-02-03 Nathan Froyd <froydnj@codesourcery.com>
2794
2795 PR c++/46890
2796 * c-common.h (keyword_is_decl_specifier): Declare.
2797 * c-common.c (keyword_is_decl_specifier): Define.
2798 (keyword_is_function_specifier): New function.
2799
a12319b3 28002011-01-26 Jakub Jelinek <jakub@redhat.com>
2801
2802 PR c/47473
2803 * c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
2804 EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
2805 REAL_TYPE.
2806
5c128dc8 28072011-01-26 Arnaud Charlet <charlet@adacore.com>
2808
2809 * c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type.
2810
8d67b0c7 28112011-01-26 Jakub Jelinek <jakub@redhat.com>
2812
2813 PR pch/47430
2814 * c-opts.c (c_common_post_options): Call c_common_no_more_pch
2815 after init_c_lex if pch_file is set.
2816
0675168d 28172011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
2818
e8911163 2819 PR c++/43601
0675168d 2820 * c.opt (-fkeep-inline-dllexport): New switch.
2821
0725e25c 28222011-01-12 Richard Guenther <rguenther@suse.de>
2823
2824 PR middle-end/32511
2825 * c-common.c (handle_weak_attribute): Warn instead of error
2826 on declaring an inline function weak.
2827
fdd84b77 28282011-01-05 Tom Tromey <tromey@redhat.com>
2829
2830 * c-common.h (lvalue_error): Update.
2831 * c-common.c (lvalue_error): Add 'loc' argument. Call error_at,
2832 not error.
2833
e6e73d14 28342010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
19931eea 2835
d67e8485 2836 PR objc/47075
2837 * c-objc.h (objc_finish_message_expr): Added argument to
2838 prototype.
2839
a36cf284 28402010-12-22 Nathan Froyd <froydnj@codesourcery.com>
2841
2842 * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute):
2843 Use prototype_p.
2844
33b3681f 28452010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
2846
2847 * c-objc.h (objc_maybe_warn_exceptions): New.
19931eea 2848 * stub-objc.c (objc_maybe_warn_exceptions): New.
33b3681f 2849
a1f90215 28502010-12-10 Nathan Froyd <froydnj@codesourcery.com>
2851
2852 * c-common.h (readonly_error): Declare.
2853 * c-common.c (readonly_error): Define.
2854
b1bbc8e5 28552010-12-09 Nathan Froyd <froydnj@codesourcery.com>
2856
2857 * c-common.h (invalid_indirection_error): Declare.
2858 * c-common.c (invalid_indirection_error): Define.
2859
b0d55af9 28602010-12-03 Richard Guenther <rguenther@suse.de>
2861
2862 PR c/46745
2863 * c-pretty-print.c (pp_c_postfix_expression): Handle MEM_REF.
2864 (pp_c_unary_expression): Likewise.
2865 (pp_c_expression): Likewise.
2866
d7489d8d 28672010-11-30 Nicola Pero <nicola.pero@meta-innovation.com>
2868
2869 * c-common.h (objc_finish_function): New.
2870 (objc_non_volatilized_type): Removed.
2871 (objc_type_quals_match): Removed.
2872 * stub-objc.c (objc_finish_function): New.
2873 (objc_non_volatilized_type): Removed.
2874 (objc_type_quals_match): Removed.
19931eea 2875
92468061 28762010-11-30 Joseph Myers <joseph@codesourcery.com>
2877
2878 * c-common.h (parse_optimize_options): Declare.
2879 * c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c,
2880 c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h.
2881
967958e4 28822010-11-29 Joseph Myers <joseph@codesourcery.com>
2883
2884 * c-opts.c (check_deps_environment_vars): Use getenv instead of
2885 GET_ENVIRONMENT.
2886 * c-pch.c (O_BINARY): Don't define here.
2887 * c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
2888
b213bf24 28892010-11-25 Joseph Myers <joseph@codesourcery.com>
2890
2891 * c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
2892 targetm.except_unwind_info.
2893
9faf44d6 28942010-11-23 Joseph Myers <joseph@codesourcery.com>
2895
2896 * c-opts.c (c_common_handle_option): Pass location to
2897 set_struct_debug_option.
2898
79396169 28992010-11-23 Joseph Myers <joseph@codesourcery.com>
2900
2901 * c-common.c (visibility_options): Move from ../opts.c.
2902 * c-common.h (struct visibility_flags, visibility_options):
2903 Declare here.
2904 * c-opts.c (finish_options): Rename to c_finish_options.
2905 (c_common_init): Update call to finish_options.
2906
b4aa4123 29072010-11-22 Nicola Pero <nicola.pero@meta-innovation.com>
2908
2909 PR objc/34033
2910 * c-lex.c (lex_string): Check that each string in an Objective-C
2911 string concat sequence starts with either one or zero '@', and
2912 that there are no spurious '@' signs at the end.
2913
3e0e49f2 29142010-11-20 Joseph Myers <joseph@codesourcery.com>
2915
2916 * c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
2917 HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
2918 HANDLE_PRAGMA_VISIBILITY.
2919 * c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
2920 HANDLE_PRAGMA_VISIBILITY): Don't define.
2921 (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.
2922
a9ffdd35 29232010-11-20 Nathan Froyd <froydnj@codesourcery.com>
2924
2925 PR c++/16189
2926 PR c++/36888
2927 PR c++/45331
2928 * c-common.h (keyword_begins_type_specifier): Declare.
2929 (keyword_is_storage_class_specifier): Declare.
2930 (keyword_is_type_qualifier): Declare.
2931 * c-common.c (keyword_begins_type_specifier): New function.
2932 (keyword_is_storage_class_specifier): New function.
2933 (keyword_is_type_qualifier): Declare.
2934
93be21c0 29352010-11-19 Joseph Myers <joseph@codesourcery.com>
2936
2937 PR c/46547
2938 * c-common.c (in_late_binary_op): Define.
2939 (c_common_truthvalue_conversion): Check in_late_binary_op before
2940 calling c_save_expr.
2941 * c-common.h (in_late_binary_op): Declare.
2942
d7175aef 29432010-11-19 Joseph Myers <joseph@codesourcery.com>
2944
2945 * c-opts.c (c_common_handle_option): Update calls to
2946 set_struct_debug_option.
2947
c213e196 29482010-11-19 Nicola Pero <nicola.pero@meta-innovation.com>
2949
2950 * c-common.h (objc_declare_protocols): Added additional argument.
2951 * stub-objc.c (objc_declare_protocol): Same change.
19931eea 2952
0b5fc5d6 29532010-11-18 Nathan Froyd <froydnj@codesourcery.com>
2954
2955 PR c/33193
2956 * c-common.h (build_real_imag_expr): Declare.
2957 * c-semantics.c (build_real_imag_expr): Define.
2958
b8ba44e7 29592010-11-17 Joseph Myers <joseph@codesourcery.com>
2960
2961 * c-opts.c (c_common_parse_file): Take no arguments.
2962 * c-common.h (c_common_parse_file): Update prototype.
2963
6ef8d12f 29642010-11-16 Jakub Jelinek <jakub@redhat.com>
2965
2966 PR c++/46401
2967 * c-common.c (warning_candidate_p): Don't track non-const calls
2968 or STRING_CSTs.
2969
929d2a90 29702010-11-15 Ian Lance Taylor <iant@google.com>
2971
2972 * c-lex.c (init_c_lex): Set macro debug callbacks if
2973 flag_dump_go_spec is set.
2974
e4a7640a 29752010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
2976
2977 * c-common.h (objc_build_incr_expr_for_property_ref): New.
2978 * stub-objc.c (objc_build_incr_expr_for_property_ref): New.
2979
597d2d81 29802010-11-15 Nathan Froyd <froydnj@codesourcery.com>
2981
2982 PR preprocessor/45038
2983 * c-cppbuiltin.c (c_cpp_builtins): Use different format for C++
2984 dialects.
2985
c123f04d 29862010-11-12 Joseph Myers <joseph@codesourcery.com>
2987
2988 * c-common.h (c_family_lang_mask): Declare.
2989 * c-opts.c (c_family_lang_mask): Make extern.
2990 * c-pragma.c (handle_pragma_diagnostic): Use
2991 control_warning_option.
2992
3c6c0e40 29932010-11-12 Joseph Myers <joseph@codesourcery.com>
2994
2995 * c-common.c (parse_optimize_options): Update call to
2996 decode_options.
2997 * c-common.h (c_common_handle_option): Update prototype.
2998 * c-opts.c (c_common_handle_option): Take location_t parameter and
2999 pass it to other functions.
3000
19ec5c9e 30012010-11-11 Joseph Myers <joseph@codesourcery.com>
3002
3003 * c-opts.c (warning_as_error_callback): Remove.
3004 (c_common_initialize_diagnostics): Don't call
3005 register_warning_as_error_callback.
3006 (c_common_handle_option): Handle -Werror=normalized= here.
3007
bf776685 30082010-11-10 Joseph Myers <joseph@codesourcery.com>
3009
3010 * c-common.c (handle_mode_attribute): Use %' and word "signedness"
3011 in diagnostic.
3012 * c-opts.c (c_common_parse_file): Start diagnostics with lowercase
3013 letter.
3014 * c-pragma.c (handle_pragma_target, handle_pragma_optimize):
3015 Remove trailing '.' from diagnostics.
3016 * c.opt (Wwrite-strings_: Avoid '`' in help text.
3017
6bd9d862 30182010-11-10 Joseph Myers <joseph@codesourcery.com>
3019
3020 * c-common.c (parse_optimize_options): Pass global_dc to
3021 decode_options.
3022 * c-opts.c (c_common_handle_option): Pass &global_options to
3023 set_Wstrict_aliasing.
3024 * c.opt (v): Don't mark Common or document here.
3025
1f6616ee 30262010-11-06 Iain Sandoe <iains@gcc.gnu.org>
3027
3028 PR target/44981
3029 * c-format.c (format_type): New type gcc_objc_string_format_type.
3030 (valid_stringptr_type_p): New.
3031 (handle_format_arg_attribute): Use valid_stringptr_type_p ().
19931eea 3032 (check_format_string): Pass expected type, use
1f6616ee 3033 valid_stringptr_type_p (), check that the format string types are
3034 consistent with the format specification.
3035 (decode_format_attr): Warn if NSString is used outside objective-c.
3036 (format_types_orig): Add NSString.
3037 (format_name): New.
3038 (format_flags): New.
3039 (check_format_arg): Handle format strings requiring an external parser.
3040 first_target_format_type: New variable.
3041 (handle_format_attribute): Set up first_target_format_type, pass the
3042 expected format arg string type to check_format_string().
3043 * c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL): New flag.
3044 * stub-objc.c (objc_string_ref_type_p): New.
3045 (objc_check_format_arg): New.
3046
b0d0931f 30472010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
3048
19931eea 3049 Fixed using the Objective-C 2.0 dot-syntax with class names.
b0d0931f 3050 * c-common.h (objc_build_class_component_ref): New.
3051 * stub-objc.c (objc_build_class_component_ref): New.
3052
f26877d5 30532010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
3054
3055 * c.opt (Wproperty-assign-default): New option.
3056
1ef143b6 30572010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
3058
3059 Implemented -fobjc-std=objc1 flag.
3060 * c.opt (fobjc-std=objc1): New option.
3061
8c582e4f 30622010-11-01 Nicola Pero <nicola.pero@meta-innovation.com>
3063
3064 Implemented format and noreturn attributes for Objective-C methods.
3065 * c-common.c (handle_noreturn_attribute): Recognize 'noreturn'
3066 attribute for Objective-C methods.
3067
8637f1db 30682010-10-31 Jason Merrill <jason@redhat.com>
3069
3070 * c-common.c (conversion_warning, warn_for_collisions_1): Use
3071 EXPR_LOC_OR_HERE.
3072
9d9f5bb3 30732010-10-30 Nicola Pero <nicola.pero@meta-innovation.com>
3074
3075 Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
3076 * c-common.h (enum rid): Removed RID_COPIES and RID_IVAR.
3077 (objc_add_property_declaration): Removed arguments for copies and
3078 ivar.
3079 (objc_build_getter_call): Renamed to
3080 objc_maybe_build_component_ref.
3081 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
3082 (objc_is_property_ref): New.
3083 * c-common.c (c_common_reswords): Removed copies and ivar.
3084 * stub-objc.c (objc_add_property_declaration): Removed arguments
3085 for copies and ivar.
3086 (objc_build_getter_call): Renamed to
3087 objc_maybe_build_component_ref.
3088 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
3089 (objc_is_property_ref): New.
19931eea 3090
56f907a0 30912010-10-29 Arnaud Charlet <charlet@adacore.com>
3092 Matthew Gingell <gingell@adacore.com>
3093
3094 * c-ada-spec.c (separate_class_package): New function.
3095 (pp_ada_tree_identifier): Prefix references to C++ classes with the
3096 name of their enclosing package.
3097 (print_ada_declaration): Use separate_class_package.
3098
b5fa273e 30992010-10-27 Jason Merrill <jason@redhat.com>
3100
5290e253 3101 * c-common.c (c_common_reswords): Add __is_literal_type.
3102 * c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
3103
b5fa273e 3104 * c-common.c (check_case_value): Remove special C++ code.
3105
7590f0e5 31062010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
3107
3108 * c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN,
3109 RID_RETAIN, RID_COPY and RID_NONATOMIC. Updated RID_FIRST_PATTR
3110 and RID_LAST_PATTR.
3111 (objc_add_property_declaration): Added additional arguments.
3112 (objc_property_attribute_kind): Removed.
3113 (objc_set_property_attr): Removed.
3114 * c-common.c (c_common_reswords): Added readwrite, assign, retain,
3115 copy and nonatomic.
3116 * stub-objc.c (objc_add_property_declaration): Added additional
3117 arguments.
3118 (objc_set_property_attr): Removed.
19931eea 3119
1d894bcf 31202010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
3121
3122 * c-common.h (objc_add_property_variable): Renamed to
3123 objc_add_property_declaration. Added location argument.
3124 * stub-objc.c (objc_add_property_variable): Same change.
3125
e23bf1fb 31262010-10-23 Nicola Pero <nicola.pero@meta-innovation.com>
3127
3128 * c-common.h (objc_maybe_printable_name): New.
3129 * stub-objc.c (objc_maybe_printable_name): New.
3130
93426222 31312010-10-22 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
3132 Andrew Pinski <pinskia@gmail.com>
3133
3134 * c-common.h (c_common_mark_addressable_vec): Declare.
3135 * c-common.c (c_common_mark_addressable_vec): New function.
3136
45b2b110 31372010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
3138
3139 * c-common.h (objc_set_method_type): Removed.
3140 (objc_add_method_declaration): Added boolean argument.
3141 (objc_start_method_definition): Same change.
3142 (objc_build_method_signature): Same change.
3143 * stub-objc.c (objc_set_method_type): Removed.
3144 (objc_add_method_declaration): Added boolean argument.
3145 (objc_start_method_definition): Same change.
3146 (objc_build_method_signature): Same change.
3147
64cd9619 31482010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
3149
3150 * c-common.h (finish_file): Removed.
3151 (objc_write_global_declarations): New.
3152 * c-opts.c (c_common_parse_file): Do not call finish_file.
3153 * stub-objc.c (objc_write_global_declarations): New.
19931eea 3154
e1f293c0 31552010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
3156
3157 Implemented parsing @synthesize and @dynamic for
3158 Objective-C/Objective-C++.
3159 * c-common.h (enum rid): Add RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
3160 (objc_add_synthesize_declaration): New.
3161 (objc_add_dynamic_declaration): New.
3162 * c-common.c (c_common_reswords): Add synthesize and dynamic.
3163 * stub-objc.c (objc_add_synthesize_declaration): New.
3164 (objc_add_dynamic_declaration): New.
19931eea 3165
ef97a312 31662010-10-18 Michael Meissner <meissner@linux.vnet.ibm.com>
3167
3168 PR target/46041
3169 * c-cppbuiltin.c (mode_has_fma): Move function here from
3170 builtins.c. Don't use the fma optab, instead just use the
3171 HAVE_fma* macros, so that __FP_FAST_FMA* will be defined when
3172 using -save-temps.
3173
69b07042 31742010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
3175
3176 Merge from 'apple/trunk' branch on FSF servers.
ef97a312 3177
69b07042 3178 2005-11-08 Fariborz Jahanian <fjahanian@apple.com>
3179
19931eea 3180 Radar 4330422
69b07042 3181 * c-common.h (objc_non_volatilized_type): New declaration
3182 * stub-objc.c (objc_non_volatilized_type): New stub.
3183
f15f2e56 31842010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
3185
69b07042 3186 Merge from 'apple/trunk' branch on FSF servers.
f15f2e56 3187
3188 2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
3189
19931eea 3190 Radar 4133425
f15f2e56 3191 * c-common.h (objc_diagnose_private_ivar): New decl.
ef97a312 3192 * stub-objc.c (objc_diagnose_private_ivar): New stub.
f15f2e56 3193
4a8875ed 31942010-10-17 Iain Sandoe <iains@gcc.gnu.org>
3195
3196 * c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
3197 * c-common.h (enum rid): Add RID_AT_PACKAGE.
3198 (objc_ivar_visibility_kind): New enum.
3199 (objc_set_visibility): Adjust prototype to use visibility enum.
ef97a312 3200 * stub-objc.c (objc_set_visibility): Adjust stub to use
4a8875ed 3201 visibility enum.
3202
7e0713b1 32032010-10-14 Michael Meissner <meissner@linux.vnet.ibm.com>
3204
3205 * c-cppbuiltin.c (builtin_define_float_constants): Emit
3206 __FP_FAST_FMA, __FP_FAST_FMAF, and __FP_FAST_FMAL if the machine
3207 has the appropriate fma builtins.
3208 (c_cpp_builtins): Adjust call to builtin_define_float_constants.
3209
86c110ac 32102010-10-14 Iain Sandoe <iains@gcc.gnu.org>
3211
7e0713b1 3212 merge from FSF apple 'trunk' branch.
86c110ac 3213 2006 Fariborz Jahanian <fjahanian@apple.com>
7e0713b1 3214
86c110ac 3215 Radars 4436866, 4505126, 4506903, 4517826
3216 * c-common.c (c_common_resword): Define @property and its attributes.
3217 * c-common.h: Define property attribute enum entries.
3218 (OBJC_IS_PATTR_KEYWORD): New.
3219 (objc_property_attribute_kind): New enum.
3220 Declare objc_set_property_attr (), objc_add_property_variable (),
3221 objc_build_getter_call () and objc_build_setter_call ().
3222 * stub-objc.c (objc_set_property_attr): New stub.
3223 (objc_add_property_variable): Likewise.
3224 (objc_build_getter_call): Likewise.
3225 (objc_build_setter_call) Likewise.
7e0713b1 3226
40c8d1dd 32272010-10-13 Iain Sandoe <iains@gcc.gnu.org>
3228
7e0713b1 3229 merge from FSF apple 'trunk' branch.
40c8d1dd 3230 2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
3231
3232 Radar 3803157 (method attributes)
3233 * c-common.c (handle_deprecated_attribute): Recognize
3234 objc methods as valid declarations.
3235 * c-common.h: Declare objc_method_decl ().
7e0713b1 3236 * stub-objc.c (objc_method_decl): New stub.
40c8d1dd 3237
f3f006ad 32382010-10-08 Joseph Myers <joseph@codesourcery.com>
3239
3240 * c-common.c (parse_optimize_options): Call
3241 decode_cmdline_options_to_array_default_mask before
3242 decode_options. Update arguments to decode_options.
3243 * c-common.h (c_common_init_options_struct): Declare.
3244 * c-opts.c (c_common_init_options_struct): New. Split out from
3245 c_common_init_options.
3246
0a65c3bb 32472010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
3248
3249 Implemented fast enumeration for Objective-C.
3250 * c-common.h (objc_finish_foreach_loop): New.
3251 * stub-objc.c (objc_finish_foreach_loop): New.
3252
24ca3b4e 32532010-10-05 Joseph Myers <joseph@codesourcery.com>
3254
3255 * c-common.h (struct diagnostic_context): Don't declare here.
3256 (c_common_initialize_diagnostics): Declare using
3257 diagnostic_context typedef.
3258 * c-opts.c (c_common_handle_option): Pass global_dc to
3259 handle_generated_option.
3260
f83b64ca 32612010-10-04 Joseph Myers <joseph@codesourcery.com>
3262
3263 * c-opts.c (c_common_handle_option): Pass &global_options_set to
3264 handle_generated_option.
3265
2fdec027 32662010-10-03 Ian Lance Taylor <iant@google.com>
3267
3268 * c.opt (-fplan9-extensions): New option.
3269
41acdfa4 32702010-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
3271
3272 * c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision):
3273 Remove.
3274 (c_cpp_builtins): Call functions from cppbuiltin.c instead
3275 of duplicating code.
3276
069761fb 32772010-09-30 Iain Sandoe <iains@gcc.gnu.org>
3278
3279 * c-common.c: Add two new entries for @optional
3280 and @required keywords.
3281
3282 merge from FSF 'apple/trunk' branch.
3283 2006-01-30 Fariborz Jahanian <fjahanian@apple.com>
3284
3285 Radar 4386773
3286 * c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new
3287 objective-c keywords.
3288 (objc_set_method_opt): New declaration.
3289 * stub-objc.c (objc_set_method_opt): New stub.
19931eea 3290
2c5d2e39 32912010-09-30 Joseph Myers <joseph@codesourcery.com>
3292
3293 * c-common.c (handle_optimize_attribute): Pass &global_options to
3294 cl_optimization_save and cl_optimization_restore.
3295 * c-opts.c (c_common_handle_option): Pass &global_options to
3296 handle_generated_option.
3297 * c-pragma.c (handle_pragma_diagnostic): Use option_flag_var.
3298 (handle_pragma_pop_options, handle_pragma_reset_options): Pass
3299 &global_options to cl_optimization_restore.
3300
e5c75ac3 33012010-09-30 Nicola Pero <nicola.pero@meta-innovation.com>
3302
3303 * c-lex.c (c_lex_with_flags): Updated comments for CPP_AT_NAME
3304 Objective-C/Objective-C++ keywords.
3305
3511333e 33062010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
e147d6aa 3307
19931eea 3308 Merge from 'apple/trunk' branch on FSF servers.
3309
e147d6aa 3310 2005-10-04 Fariborz Jahanian <fjahanian@apple.com>
3311
3312 Radar 4281748
3313 * c-common.h (objc_check_global_decl): New declaration.
3314 * stub-objc.c (objc_check_global_decl): New stub.
3315
5461e683 33162010-09-29 Joseph Myers <joseph@codesourcery.com>
3317
3318 * c.opt: Don't use VarExists.
3319
5ae82d58 33202010-09-29 Joseph Myers <joseph@codesourcery.com>
3321
3322 * c-common.c (c_cpp_error): Update names of diagnostic_context
3323 members.
3324 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of
3325 cl_optimization members.
3326 * c-opts.c (warning_as_error_callback, c_common_handle_option,
3327 sanitize_cpp_opts, finish_options): Update names of cpp_options
3328 members.
3329
b27e241e 33302010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
3331
3332 * c-common.h (OBJC_IS_CXX_KEYWORD): New macro. Updated comments.
3333 (objc_is_reserved_word): Removed.
3334 * c-common.c: Updated comments.
3335 * c-lex.c (c_lex_with_flags): Use OBJC_IS_CXX_KEYWORD instead of
3336 objc_is_reserved_word.
3337 * stub-objc.c (objc_is_reserved_word): Removed.
3338
03fc2271 33392010-09-28 Iain Sandoe <iains@gcc.gnu.org>
3340
19931eea 3341 * c-common.h (objc_add_method_declaration): Adjust prototype to
03fc2271 3342 include attributes.
3343 (objc_start_method_definition): Likewise.
3344 (objc_build_keyword_decl): Likewise.
3345 * stub-objc.c:(objc_add_method_declaration): Handle attributes.
3346 (objc_start_method_definition): Likewise.
3347 (objc_build_keyword_decl): Likewise.
3348
a336eb4b 33492010-09-28 Iain Sandoe <iains@gcc.gnu.org>
3350
3351 * c-common.h (objc_start_class_interface): Adjust prototype.
3352 (objc_start_category_interface): Likewise.
3353 (objc_start_protocol): Likewise.
3354 * stub-objc.c (objc_start_protocol): Adjust for extra argument.
3355 (objc_start_class_interface): Likewise.
3356 (objc_start_category_interface): Likewise.
3357
48b14f50 33582010-09-27 Ian Lance Taylor <iant@google.com>
3359
3360 * c-common.c (c_common_attribute_table): Add no_split_stack.
3361 (handle_no_split_stack_attribute): New static function.
3362
4abfc532 33632010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
3364
19931eea 3365 Merge from 'apple/trunk' branch on FSF servers.
4abfc532 3366
3367 2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
3368
19931eea 3369 Radar 4229905
4abfc532 3370 * c-common.h (objc_have_common_type): New declaration.
3371 * stub-objc.c (objc_have_common_type): New stub.
3372
3373 2005-06-22 Ziemowit Laski <zlaski@apple.com>
3374
3375 Radar 4154928
3376 * c-common.h (objc_common_type): New prototype.
19931eea 3377 * stub-objc.c (objc_common_type): New stub.
4abfc532 3378
7bd95dfd 33792010-09-24 Jan Hubicka <jh@suse.cz>
3380
3381 * c-common.c (handle_leaf_attribute): New function.
3382 (struct attribute_spec c_common_att): Add leaf.
3383
5789e05b 33842010-09-22 Joseph Myers <joseph@codesourcery.com>
3385
3386 * c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
3387 -comments-in-macros, -define-macro, -define-macro=, -dependencies,
3388 -dump, -dump=, -imacros, -imacros=, -include, -include=,
3389 -include-barrier, -include-directory, -include-directory=,
3390 -include-directory-after, -include-directory-after=,
3391 -include-prefix, -include-prefix=, -include-with-prefix,
3392 -include-with-prefix=, -include-with-prefix-after,
3393 -include-with-prefix-after=, -include-with-prefix-before,
3394 -include-with-prefix-before=, -no-integrated-cpp,
3395 -no-line-commands, -no-standard-includes, -no-warnings, -output,
3396 -output=, -pedantic, -pedantic-errors, -preprocess,
3397 -print-missing-file-dependencies, -trace-includes, -traditional,
3398 -traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
3399 -user-dependencies, -verbose, -write-dependencies,
3400 -write-user-dependencies, no-integrated-cpp, traditional): New.
3401
e6fb54ba 34022010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
3403
3404 PR objc/23710
9b60f3b0 3405 * c-common.h (objc_start_method_definition): Return bool instead
3406 of void.
3407 * stub-objc.c (objc_start_method_definition): Return bool instead
3408 of void.
3409
34102010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
3411
3412 PR objc/25965
3413 * c-common.h (objc_get_interface_ivars): New declaration.
3414 * stub-objc.c (objc_get_interface_ivars): New stub.
e6fb54ba 3415
e44b0a1f 34162010-09-15 Ian Lance Taylor <iant@google.com>
3417
3418 * c-common.c (parse_optimize_options): Do not capitalize warning
ebd7c4c1 3419 messages. Remove period at end of warning message.
e44b0a1f 3420
85c0a25c 34212010-09-09 Nathan Sidwell <nathan@codesourcery.com>
3422
3423 * c-common.c (handle_alias_ifunc_attribute): New, broken out of ...
3424 (handle_alias_attribute): ... here.
3425 (handle_ifunc_attribute): New.
3426
5ba33bf4 34272010-09-06 Mark Mitchell <mark@codesourcery.com>
3428
3429 * c-common.h (do_warn_double_promotion): Declare.
3430 * c-common.c (do_warn_double_promotion): Define.
3431
c920faa3 34322010-09-05 Mark Mitchell <mark@codesourcery.com>
3433
3434 * c.opt (Wdouble-promotion): New.
3435
9604e070 34362010-09-02 Joseph Myers <joseph@codesourcery.com>
3437
3438 * c.opt (falt-external-templates, fhuge-objects, fvtable-gc,
3439 fvtable-thunks, fxref): Mark no longer supported in help text.
3440
3b0273a1 34412010-09-02 Joseph Myers <joseph@codesourcery.com>
3442
3443 * c.opt (Wimport, fall-virtual, falt-external-templates,
3444 fdefault-inline, fenum-int-equiv, fexternal-templates,
3445 fguiding-decls, fhonor-std, fhuge-objects, flabels-ok,
3446 fname-mangling-version-, fnew-abi, fnonnull-objects,
3447 foptional-diags, fsquangle, fstrict-prototype, fthis-is-variable,
3448 fvtable-gc, fvtable-thunks, fxref): Mark with Ignore and Warn as
3449 applicable.
3450 (fhandle-exceptions): Mark with Alias and Warn.
3451 * c-opts.c (c_common_handle_option): Don't handle options marked
3452 as ignored.
3453
67089c6b 34542010-09-02 Joseph Myers <joseph@codesourcery.com>
3455
3456 * c.opt (Wcomments, Werror-implicit-function-declaration,
3457 ftemplate-depth-, std=c89, std=c9x, std=gnu89, std=gnu9x,
3458 std=iso9899:1990, std=iso9899:1999, std=iso9899:199x): Mark as
3459 aliases.
3460 * c-common.c (option_codes): Use OPT_Wcomment instead of
3461 OPT_Wcomments.
3462 * c-opts.c (warning_as_error_callback, c_common_handle_option):
3463 Don't handle options marked as aliases.
3464
2af087f2 34652010-08-25 Richard Guenther <rguenther@suse.de>
3466
3467 * c-common.c (c_common_get_alias_set): Remove special
3468 handling for pointers.
3469
48148244 34702010-08-20 Nathan Froyd <froydnj@codesourcery.com>
3471
3472 * c-common.c: Use FOR_EACH_VEC_ELT.
3473 * c-gimplify.c: Likewise.
3474 * c-pragma.c: Likewise.
3475
89c69892 34762010-08-16 Joseph Myers <joseph@codesourcery.com>
3477
3478 * c.opt (MDX): Change back to MD. Mark NoDriverArg instead of
3479 RejectDriver.
3480 (MMDX): Change back to MMD. Mark NoDriverArg instead of
3481 RejectDriver.
3482 * c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
3483 instead of OPT_MDX and OPT_MMDX.
3484
e28aa114 34852010-08-16 Joseph Myers <joseph@codesourcery.com>
3486
3487 * c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.
3488
99b66d21 34892010-08-12 Joseph Myers <joseph@codesourcery.com>
3490
3491 * c.opt (MD, MMD): Change to MDX and MMDX.
3492 * c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX.
3493
666f4bf0 34942010-08-11 Joseph Myers <joseph@codesourcery.com>
3495
3496 * c-opts.c (c_common_handle_option): Call handle_generated_option
3497 instead of handle_option.
3498
5ec815f6 34992010-08-08 Nathan Froyd <froydnj@codesourcery.com>
3500
3501 * c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
3502 (maybe_apply_renaming_pragma): Delete unneeded declarations.
3503
d13143cf 35042010-08-08 Nathan Froyd <froydnj@codesourcery.com>
3505
3506 * c-pragma.c (pending_redefinition): Declare. Declare a VEC of it.
3507 (pending_redefine_extname): Change type to a VEC.
3508 (add_to_renaming_pragma_list): Update for new type of
3509 pending_redefine_extname.
5ec815f6 3510 (maybe_apply_renaming_pragma): Likewise.
d13143cf 3511
2008c983 35122010-08-04 Arnaud Charlet <charlet@adacore.com>
3513
3514 * c-ada-spec.c (dump_ada_template): Mark underlying instance type as
3515 visited.
3516 (dump_generic_ada_node): Code clean up. Use TREE_VISITED flag to
3517 decide whether a type has already been declared/seen.
3518 Do not go to the original type.
3519 (dump_nested_types): New parameter forward.
3520 Generate forward declaration if needed and mark type as visited.
3521 (print_ada_declaration): Call dump_nested_types if not already done.
3522 Mark types as visited.
3523
9b091a73 35242010-08-03 Joseph Myers <joseph@codesourcery.com>
3525
3526 * c.opt (-print-pch-checksum): Remove option.
3527 * c-opts.c (c_common_handle_option): Don't handle
3528 OPT_print_pch_checksum.
3529
b78351e5 35302010-07-27 Joseph Myers <joseph@codesourcery.com>
3531
3532 * c-common.h (c_common_handle_option): Update prototype and return
3533 value type.
3534 * c-opts.c (c_common_handle_option): Update prototype and return
3535 value type. Update calls to handle_option and
3536 enable_warning_as_error.
3537
34416a90 35382010-07-27 Jakub Jelinek <jakub@redhat.com>
3539
3540 PR c/45079
3541 * c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
3542
fecf9011 35432010-07-27 Joseph Myers <joseph@codesourcery.com>
3544
3545 * c-common.h (c_common_missing_argument): Remove.
3546 * c-opts.c (c_common_missing_argument): Remove.
3547 * c.opt (A, D, F, I, MD, MMD, MQ, MT, U, fconstant-string-class=,
3548 idirafter, imacros, include, isysroot, isystem, iquote): Add
3549 MissingArgError.
3550 * c-objc-common.h (LANG_HOOKS_MISSING_ARGUMENT): Remove.
3551
e88d34f6 35522010-07-27 Joseph Myers <joseph@codesourcery.com>
3553
3554 * c-common.h (c_common_option_lang_mask,
3555 c_common_initialize_diagnostics, c_common_complain_wrong_lang_p):
3556 New.
3557 (c_common_init_options): Update prototype.
3558 * c-opts.c (c_common_option_lang_mask): New.
3559 (c_common_initialize_diagnostics): Split out of
3560 c_common_init_options.
3561 (accept_all_c_family_options, c_common_complain_wrong_lang_p):
3562 New.
3563 (c_common_init_options): Update prototype. Use decoded options in
3564 search for -lang-asm.
3565
1767a056 35662010-07-15 Nathan Froyd <froydnj@codesourcery.com>
3567
3568 * c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
3569 * c-format.c: Likewise.
3570
0b205f4c 35712010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
3572
3573 * c-common.h: Include diagnostic-core.h. Error if already
3574 included.
3575 * c-semantics.c: Do not define GCC_DIAG_STYLE here.
3576
1c58e3f1 35772010-07-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
3578
3579 * c-family/c-common.c (IN_GCC_FRONTEND): Do not undef.
3580 Do not include expr.h
3581 (vector_mode_valid_p): Move here.
3582
33cc157c 35832010-06-21 DJ Delorie <dj@redhat.com>
3584
3585 * c-pragma.c (handle_pragma_diagnostic): Add push/pop,
3586 allow these pragmas anywhere.
3587
35882010-06-14 Jakub Jelinek <jakub@redhat.com>
3589
3590 PR bootstrap/44509
3591 * c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
3592 (lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
3593 (lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
3594 ggc_strdup instead of xstrdup.
3595
35962010-06-10 Jakub Jelinek <jakub@redhat.com>
3597
3598 * c-cppbuiltin.c: Include cpp-id-data.h.
3599 (lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
3600 (lazy_hex_fp_value): New function.
3601 (builtin_define_with_hex_fp_value): Provide definitions lazily.
3602
9b40bfbf 36032010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
3604
3605 * c-gimplify.c: Do not include tree-flow.h
3606
202d6e5f 36072010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
3608
3609 PR other/44034
3610 * c-common.c: Rename targetm member:
3611 targetm.enum_va_list -> targetm.enum_va_list_p
3612
d3237426 36132010-06-28 Anatoly Sokolov <aesok@post.ru>
3614
3615 * c-common.c (shorten_compare): Adjust call to force_fit_type_double.
3616
596981c8 36172010-06-28 Steven Bosscher <steven@gcc.gnu.org>
3618
3619 * c-cppbuiltin.c: Do not include except.h.
3620
b9bdfa0b 36212010-06-24 Andi Kleen <ak@linux.intel.com>
3622
19931eea 3623 * c-common.c (warn_for_omitted_condop): New.
3624 * c-common.h (warn_for_omitted_condop): Add prototype.
b9bdfa0b 3625
55ad092d 36262010-06-21 Joseph Myers <joseph@codesourcery.com>
3627
3628 * c.opt (lang-objc): Remove.
3629 * c-opts.c (c_common_handle_option): Don't handle OPT_lang_objc.
3630
9e7c2572 36312010-06-21 Joern Rennecke <joern.rennecke@embecosm.com>
3632
3633 * c-opts.c: Include "tm_p.h".
3634
615ef0bb 36352010-06-20 Joseph Myers <joseph@codesourcery.com>
3636
3637 * c-common.c (parse_optimize_options): Update call to
3638 decode_options.
3639
aef48c9a 36402010-06-18 Nathan Froyd <froydnj@codesourcery.com>
3641
3642 * c-common.c (record_types_used_by_current_var_decl): Adjust for
3643 new type of types_used_by_cur_var_decl.
3644
d74003b4 36452010-06-17 Joern Rennecke <joern.rennecke@embecosm.com>
3646
3647 PR bootstrap/44512
3648 * c-cppbuiltin.c (builtin_define_with_hex_fp_value): Add cast
3649 for C++ standard compliance.
3650
1194d077 36512010-06-16 Jason Merrill <jason@redhat.com>
3652
3653 * c.opt: Add -Wnoexcept.
3654
d473d901 36552010-06-16 Richard Guenther <rguenther@suse.de>
3656
3657 PR c/44555
3658 * c-common.c (c_common_truthvalue_conversion): Remove
3659 premature and wrong optimization concering ADDR_EXPRs.
3660
b62dbfd3 36612010-06-15 Arnaud Charlet <charlet@adacore.com>
3662
3663 * c-ada-spec.c (dump_sloc): Remove column info.
3664 (is_simple_enum): New function.
3665 (dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada
3666 enum types when relevant.
3667
200dd99c 36682010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
3669
19931eea 3670 * c-common.c (conversion_warning): Warn at expression
200dd99c 3671 location.
3672
abf6a617 36732010-06-10 Joseph Myers <joseph@codesourcery.com>
3674
3675 * c-opts.c (c_common_handle_option): Don't handle
3676 OPT_fshow_column.
3677
ba72912a 36782010-06-08 Laurynas Biveinis <laurynas.biveinis@gmail.com>
3679
3680 * c-pragma.c (push_alignment): Use typed GC allocation.
3681 (handle_pragma_push_options): Likewise.
3682
3683 * c-common.c (parse_optimize_options): Likewise.
3684
3685 * c-common.h (struct sorted_fields_type): Add variable_size GTY
3686 option.
3687
4aafe913 36882010-06-07 Joseph Myers <joseph@codesourcery.com>
3689
3690 * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
3691 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
3692 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
3693 flag_signed_bitfields, warn_strict_null_sentinel,
3694 flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
3695 flag_gen_declaration, flag_no_gnu_keywords,
3696 flag_implement_inlines, flag_implicit_templates,
3697 flag_implicit_inline_templates, flag_optional_diags,
3698 flag_elide_constructors, flag_default_inline, flag_rtti,
3699 flag_conserve_space, flag_access_control, flag_check_new,
3700 flag_new_for_scope, flag_weak, flag_working_directory,
3701 flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
3702 flag_enforce_eh_specs, flag_threadsafe_statics,
3703 flag_pretty_templates): Remove.
3704 * c-common.h (flag_preprocess_only, flag_nil_receivers,
3705 flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
3706 flag_replace_objc_classes, flag_undef, flag_no_builtin,
3707 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
3708 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
3709 flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
3710 flag_no_gnu_keywords, flag_implement_inlines,
3711 flag_implicit_templates, flag_implicit_inline_templates,
3712 flag_optional_diags, flag_elide_constructors, flag_default_inline,
3713 flag_rtti, flag_conserve_space, flag_access_control,
3714 flag_check_new, flag_new_for_scope, flag_weak,
3715 flag_working_directory, flag_use_cxa_atexit,
3716 flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
3717 flag_threadsafe_statics, flag_pretty_templates,
3718 warn_strict_null_sentinel): Remove.
3719 * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
3720 fbuiltin, fcheck-new, fconserve-space, felide-constructors,
3721 fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
3722 fimplicit-inline-templates, fimplicit-templates,
3723 flax-vector-conversions, fms-extensions, fnil-receivers,
3724 fnonansi-builtins, fpretty-templates, freplace-objc-classes,
3725 frtti, fshort-double, fshort-enums, fshort-wchar,
3726 fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
3727 funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
3728 fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
3729 gen-decls, undef): Use Var.
3730 (fdefault-inline, foptional-diags): Document as doing nothing.
3731 * c-opts.c (c_common_handle_option): Remove cases for options now
3732 using Var. Mark ignored options as such.
3733
7bedc3a0 37342010-06-05 Steven Bosscher <steven@gcc.gnu.org>
3735
19931eea 3736 * c-common.c: Moved to here from parent directory.
7bedc3a0 3737 * c-common.def: Likewise.
3738 * c-common.h: Likewise.
3739 * c-cppbuiltin.c: Likewise.
3740 * c-dump.c: Likewise.
3741 * c-format.c: Likewise.
3742 * c-format.h : Likewise.
3743 * c-gimplify.c: Likewise.
3744 * c-lex.c: Likewise.
3745 * c-omp.c: Likewise.
3746 * c.opt: Likewise.
3747 * c-opts.c: Likewise.
3748 * c-pch.c: Likewise.
3749 * c-ppoutput.c: Likewise.
3750 * c-pragma.c: Likewise.
3751 * c-pragma.h: Likewise.
3752 * c-pretty-print.c: Likewise.
3753 * c-pretty-print.h: Likewise.
3754 * c-semantics.c: Likewise.
3755 * stub-objc.c: Likewise.
3756
3757 * c-common.c: Include gt-c-family-c-common.h.
3758 * c-pragma.c: Include gt-c-family-c-pragma.h.
3759\f
3aea1f79 3760Copyright (C) 2010-2014 Free Software Foundation, Inc.
7bedc3a0 3761
3762Copying and distribution of this file, with or without modification,
3763are permitted in any medium without royalty provided the copyright
3764notice and this notice are preserved.