]> gcc.gnu.org Git - gcc.git/blob - gcc/c-family/ChangeLog
c-common.c (c_common_truthvalue_conversion): Inhibit Wint-in-bool-context warning...
[gcc.git] / gcc / c-family / ChangeLog
1 2016-09-21 Bernd Edlinger <bernd.edlinger@hotmail.de>
2
3 * c-common.c (c_common_truthvalue_conversion): Inhibit
4 Wint-in-bool-context warning with from_macro_definition_at.
5 Mention the expression will always evaluate to true.
6
7 2016-09-21 Martin Sebor <msebor@redhat.com>
8
9 PR bootstrap/77676
10 * c.opt (fprintf-return-value): Temporarily initialize to zero
11 to unblock bootstrap failures.
12
13 2016-09-21 Jakub Jelinek <jakub@redhat.com>
14
15 PR c++/77651
16 * c.opt (Waligned-new=): Add RejectNegative.
17 (faligned-new=): Likewise. Spelling fix - change
18 aligned_new_threshhold to aligned_new_threshold.
19 * c-cppbuiltin.c (c_cpp_builtins): Change aligned_new_threshhold
20 to aligned_new_threshold.
21
22 2016-09-20 Martin Sebor <msebor@redhat.com>
23
24 PR middle-end/49905
25 * c.opt: Add -Wformat-length and -fprintf-return-value.
26
27 2016-09-19 Bernd Edlinger <bernd.edlinger@hotmail.de>
28
29 PR c++/77434
30 * c.opt (Wint-in-bool-context): New warning.
31 * c-common.c (c_common_truthvalue_conversion): Warn on integer
32 constants in boolean context.
33
34 2016-09-19 Joseph Myers <joseph@codesourcery.com>
35
36 * c-common.c (max_align_t_align): Also consider alignment of
37 float128_type_node.
38
39 2016-09-15 Jason Merrill <jason@redhat.com>
40
41 * c-common.c (check_cxx_fundamental_alignment_constraints): Check
42 DECL_EXTERNAL.
43
44 2016-09-14 Jason Merrill <jason@redhat.com>
45
46 * c-common.c (check_cxx_fundamental_alignment_constraints): Don't
47 limit FIELD_DECL, either.
48
49 2016-09-14 Marek Polacek <polacek@redhat.com>
50
51 * c-common.c (c_common_truthvalue_conversion): Use false instead of 0.
52 * c-common.h (build_unary_op): Change nonconvert parameter type to bool.
53 * c-omp.c (c_finish_omp_atomic): Use false instead of 0.
54
55 2016-09-13 David Malcolm <dmalcolm@redhat.com>
56
57 * c-common.c (warn_logical_not_parentheses): Replace
58 rich_location::add_fixit_insert calls with add_fixit_insert_before
59 and add_fixit_insert_after, eliminating the "next_loc" calculation.
60
61 2016-09-13 Jason Merrill <jason@redhat.com>
62 Tom de Vries <tom@codesourcery.com>
63
64 PR c++/77427
65 * c-common.c (set_underlying_type): Don't treat array as builtin type.
66
67 2016-09-13 Jason Merrill <jason@redhat.com>
68
69 * c-common.c (check_cxx_fundamental_alignment_constraints): Don't
70 limit types at all.
71
72 2016-09-12 Jason Merrill <jason@redhat.com>
73
74 * c-common.c (check_cxx_fundamental_alignment_constraints): Fix
75 bit/byte confusion, allow large alignment for types.
76
77 2016-09-12 Bernd Edlinger <bernd.edlinger@hotmail.de>
78
79 PR c++/77496
80 * c-common.c (warn_for_omitted_condop): Also warn for boolean data.
81
82 2016-09-12 David Malcolm <dmalcolm@redhat.com>
83
84 PR c/72858
85 * c-format.c (argument_parser::check_argument_type): Add params
86 "type_start" and "conversion_char". Use the former to generate
87 offset_to_type_start and pass it and conversion_char to
88 check_format_types.
89 (check_format_info_main): Capture the start of the type
90 information as "type_start", and pass it an format_char
91 to arg_parser.check_argument_type.
92 (check_format_types): Provide an example in the leading comment.
93 Add params "offset_to_type_start" and "conversion_char"; pass
94 them to format_type_warning calls.
95 (test_get_modifier_for_format_len): Likewise.
96 (matching_type_p): New function.
97 (get_format_for_type): Add param "conversion_char" and move
98 implementation into...
99 (get_format_for_type_1): ...new function, called twice.
100 Use new function matching_type_p rather than checking for
101 TYPE_CANONICAL equality.
102 (get_corrected_substring): New function.
103 (format_type_warning): Provide an example in the leading comment.
104 Add params "offset_to_type_start" and "conversion_char". Replace
105 call to get_format_for_type with call to get_corrected_substring
106 and move rejection of hints for widths/precisions there.
107 (assert_format_for_type_streq): Add param "conversion_char".
108 (ASSERT_FORMAT_FOR_TYPE_STREQ): Add param CONVERSION_CHAR.
109 (test_get_format_for_type_printf): Add conversion chars to the
110 tests, adding coverage for various combinations of integer
111 vs double conversions, and for preserving octal and hexadecimal
112 conversions.
113 (test_get_format_for_type_scanf): Add conversion chars to the
114 tests.
115
116 2016-09-10 Tom de Vries <tom@codesourcery.com>
117
118 PR C/71602
119 * c-common.c (build_va_arg): Handle more strict
120 targetm.canonical_va_list_type. Replace first argument type error with
121 assert.
122
123 2016-09-09 Martin Sebor <msebor@redhat.com>
124
125 PR c/77520
126 PR c/77521
127 * c-format.c (argument_parser::find_format_char_info): Use %qc
128 format directive unconditionally.
129
130 2016-09-09 Jason Merrill <jason@redhat.com>
131
132 Implement C++17 new of over-aligned types.
133 * c.opt: Add -faligned-new and -Waligned-new.
134 * c-common.c (max_align_t_align): Split out from...
135 (cxx_fundamental_alignment_p): ...here.
136 * c-common.h: Declare it.
137 * c-cppbuiltin.c (c_cpp_builtins): Handle aligned new.
138
139 2016-09-09 Joseph Myers <joseph@codesourcery.com>
140
141 * c-cppbuiltin.c (builtin_define_type_width): New function.
142 (builtin_define_stdint_macros, c_cpp_builtins): Define type width
143 macros.
144
145 2016-09-07 David Malcolm <dmalcolm@redhat.com>
146
147 * c-common.c (get_cpp_ttype_from_string_type): Handle being passed
148 a POINTER_TYPE.
149 (substring_loc::get_location): Move to substring-locations.c,
150 keeping implementation as...
151 (c_get_substring_location): New function, from the above, reworked
152 to use accessors rather than member lookup.
153 * c-common.h (class substring_loc): Move to substring-locations.h,
154 replacing with a forward decl.
155 (c_get_substring_location): New decl.
156 * c-format.c: Include "substring-locations.h".
157 (format_warning_va): Move to substring-locations.c.
158 (format_warning_at_substring): Likewise.
159
160 2016-09-06 Martin Sebor <msebor@redhat.com>
161
162 PR c/77336
163 * c-format.c (check_function_format): Avoid issuing warnings for
164 functions unless they call format functions with non-constant
165 format strings.
166
167 2016-09-06 Richard Biener <rguenther@suse.de>
168
169 PR c/77450
170 * c-common.c (c_common_mark_addressable_vec): Handle
171 COMPOUND_LITERAL_EXPR.
172
173 2016-09-05 Marek Polacek <polacek@redhat.com>
174
175 PR c/77423
176 * c-common.c (bool_promoted_to_int_p): New function.
177 (expr_has_boolean_operands_p): New function.
178 (warn_logical_not_parentheses): Return if expr_has_boolean_operands_p.
179 (maybe_warn_bool_compare): Use bool_promoted_to_int_p.
180
181 2016-09-04 Tom de Vries <tom@codesourcery.com>
182
183 revert:
184 2016-08-29 Tom de Vries <tom@codesourcery.com>
185
186 * c-common.c (build_va_arg): Replace first argument type error
187 with assert.
188
189 2016-09-02 Jakub Jelinek <jakub@redhat.com>
190
191 PR c/65467
192 * c-omp.c (c_finish_omp_atomic): Reject _Atomic qualified expressions.
193 (c_finish_omp_for): Reject _Atomic qualified iterators.
194
195 2016-09-01 Martin Sebor <msebor@redhat.com>
196
197 * c-ada-spec.c (dump_ada_function_declaration): Increase buffer
198 size to guarantee it fits the output of the formatted function
199 regardless of its arguments.
200
201 2016-09-01 Marek Polacek <polacek@redhat.com>
202
203 PR c/7652
204 * c-common.c (resolve_overloaded_builtin): Fix formatting. Add
205 FALLTHRU comments.
206
207 2016-08-29 Marek Polacek <polacek@redhat.com>
208
209 PR c/77292
210 * c-common.c (warn_logical_not_parentheses): Don't warn for
211 a comparison or a logical operator.
212
213 2016-08-29 Tom de Vries <tom@codesourcery.com>
214
215 * c-common.c (build_va_arg): Fix type comparison assert.
216
217 2016-08-29 Tom de Vries <tom@codesourcery.com>
218
219 * c-common.c (build_va_arg): Replace first argument type error
220 with assert.
221
222 2016-08-29 Tom de Vries <tom@codesourcery.com>
223
224 PR c/77398
225 * c-common.c (build_va_arg): Add first argument error. Build va_arg
226 with error_mark_node as va_list instead of with illegal va_list.
227
228 2016-08-25 Marek Polacek <polacek@redhat.com>
229 David Malcolm <dmalcolm@redhat.com>
230
231 * c-common.c (warn_logical_not_parentheses): Print fixit hints.
232 * c-common.h (warn_logical_not_parentheses): Update declaration.
233
234 2016-08-22 Marek Polacek <polacek@redhat.com>
235
236 PR c++/77321
237 * c-common.c (warn_for_memset): Check type for null.
238
239 2016-08-22 Joseph Myers <joseph@codesourcery.com>
240
241 * c-family/c-cppbuiltin.c (c_cpp_builtins): Check _FloatN and
242 _FloatNx types for suffixes for built-in functions.
243
244 2016-08-19 Joseph Myers <joseph@codesourcery.com>
245
246 PR c/32187
247 * c-common.h (RID_FLOAT16, RID_FLOATN_NX_FIRST, RID_FLOAT32)
248 (RID_FLOAT64, RID_FLOAT128, RID_FLOAT32X, RID_FLOAT64X)
249 (RID_FLOAT128X): New enum rid values.
250 (CASE_RID_FLOATN_NX): New macro.
251 * c-common.c (c_common_reswords): Add _FloatN and _FloatNx
252 keywords.
253 (c_common_type_for_mode): Check for _FloatN and _FloatNx and
254 corresponding complex types.
255 (c_common_nodes_and_builtins): For non-C++, register _FloatN and
256 _FloatNx and corresponding complex types.
257 (keyword_begins_type_specifier): Use CASE_RID_FLOATN_NX.
258 * c-cppbuiltin.c (builtin_define_float_constants): Check _FloatN
259 and _FloatNx types for the widest type for determining
260 DECIMAL_DIG. Define __LDBL_DECIMAL_DIG__ as well as
261 __DECIMAL_DIG__ for long double. Handle FMA_SUFFIX being NULL.
262 (c_cpp_builtins): Call builtin_define_float_constants for _FloatN
263 and _FloatNx types.
264 * c-lex.c (interpret_float): Handle _FloatN and _FloatNx
265 constants.
266 * c-pretty-print.c (pp_c_floating_constant): Handle _FloatN and
267 _FloatNx types.
268
269 2016-08-18 David Malcolm <dmalcolm@redhat.com>
270
271 * c-opts.c (c_diagnostic_finalizer): Update for change to
272 diagnostic_show_locus.
273
274 2016-08-18 David Malcolm <dmalcolm@redhat.com>
275
276 * c-common.c: Include "spellcheck.h".
277 (cb_get_suggestion): New function.
278 * c-common.h (cb_get_suggestion): New decl.
279 * c-lex.c (init_c_lex): Initialize cb->get_suggestion to
280 cb_get_suggestion.
281
282 2016-08-18 Marek Polacek <polacek@redhat.com>
283
284 PR c/71514
285 * c-common.c (get_atomic_generic_size): Disallow pointer-to-function
286 and pointer-to-VLA.
287
288 2016-08-16 David Malcolm <dmalcolm@redhat.com>
289
290 PR c/72857
291 * c-common.c (substring_loc::get_range): Rename to...
292 (substring_loc::get_location): ...this, converting param from a
293 source_range * to a location_t *. Call
294 get_source_location_for_substring rather than
295 get_source_range_for_substring, and pass in m_caret_idx.
296 * c-common.h (substring_loc::substring_loc): Add param "caret_idx".
297 (substring_loc::get_range): Replace with...
298 (substring_loc::get_location): ...this.
299 (substring_loc::set_caret_index): New method.
300 (substring_loc): Add field m_caret_idx.
301 * c-format.c (format_warning_va): Update for above changes.
302 Rename local "substring_loc" to "fmt_substring_loc" to avoid
303 clashing with type name.
304 (format_warning_at_char): Add caret_idx param to substring_loc ctor.
305 (check_argument_type): Likewise.
306 (format_type_warning): Rename param "fmt_loc" to "whole_fmt_loc"
307 Use a copy when emitting warnings, setting the caret index from TYPE.
308
309 2016-08-16 Eric Botcazou <ebotcazou@adacore.com>
310 Arnaud Charlet <charlet@adacore.com>
311
312 * c-ada-spec.c (dump_number): New function.
313 (handle_escape_character): Likewise.
314 (print_ada_macros): Add handling of constant integers and strings.
315
316 2016-08-12 Marek Polacek <polacek@redhat.com>
317
318 PR c/7652
319 * c-common.c (scalar_to_vector): Adjust fall through comment.
320 * c-opts.c (c_common_handle_option): Likewise.
321 * c-pragma.c (handle_pragma_pack): Add FALLTHRU.
322 * c-pretty-print.c (c_pretty_printer::postfix_expression): Adjust
323 fall through comment.
324 * cilk.c (extract_free_variables): Add FALLTHRU.
325
326 2016-08-10 Jason Merrill <jason@redhat.com>
327
328 * c-cppbuiltin.c (c_cpp_builtins): Define __cpp_if_constexpr.
329
330 2016-08-09 Jason Merrill <jason@redhat.com>
331
332 * c-common.c (c_common_attribute_table): vector_size affects type
333 identity.
334
335 2016-08-09 Marek Polacek <polacek@redhat.com>
336
337 PR c/7652
338 * c-ada-spec.c (dump_generic_ada_node): Add return.
339
340 2016-08-09 Jason Merrill <jason@redhat.com>
341
342 * c-cppbuiltin.c (c_cpp_builtins): Update __cpp_constexpr for
343 C++17 constexpr lambdas.
344
345 2016-08-08 David Malcolm <dmalcolm@redhat.com>
346
347 PR c/64955
348 * c-common.h (selftest::c_format_c_tests): New declaration.
349 (selftest::run_c_tests): New declaration.
350 * c-format.c: Include "selftest.h.
351 (format_warning_va): Add param "corrected_substring" and use
352 it to add a replacement fix-it hint.
353 (format_warning_at_substring): Likewise.
354 (format_warning_at_char): Update for new param of
355 format_warning_va.
356 (argument_parser::check_argument_type): Pass "fki" to
357 check_format_types.
358 (check_format_types): Add param "fki" and pass it to
359 format_type_warning.
360 (deref_n_times): New function.
361 (get_modifier_for_format_len): New function.
362 (selftest::test_get_modifier_for_format_len): New function.
363 (get_format_for_type): New function.
364 (format_type_warning): Add param "fki" and use it to attempt
365 to provide hints for argument types when calling
366 format_warning_at_substring.
367 (selftest::get_info): New function.
368 (selftest::assert_format_for_type_streq): New function.
369 (ASSERT_FORMAT_FOR_TYPE_STREQ): New macro.
370 (selftest::test_get_format_for_type_printf): New function.
371 (selftest::test_get_format_for_type_scanf): New function.
372 (selftest::c_format_c_tests): New function.
373
374 2016-08-08 David Malcolm <dmalcolm@redhat.com>
375
376 PR c/52952
377 * c-format.c: Include "diagnostic.h".
378 (location_column_from_byte_offset): Delete.
379 (location_from_offset): Delete.
380 (format_warning_va): New function.
381 (format_warning_at_substring): New function.
382 (format_warning_at_char): New function.
383 (check_format_arg): Capture location of format_tree and pass to
384 check_format_info_main.
385 (argument_parser): Add fields "start_of_this_format" and
386 "format_string_cst".
387 (flag_chars_t::validate): Add param "format_string_cst". Convert
388 warning_at call using location_from_offset to call to
389 format_warning_at_char.
390 (argument_parser::argument_parser): Add param "format_string_cst_"
391 and use use it to initialize field "format_string_cst".
392 Initialize new field "start_of_this_format".
393 (argument_parser::read_format_flags): Convert warning_at call
394 using location_from_offset to a call to format_warning_at_char.
395 (argument_parser::read_any_format_left_precision): Likewise.
396 (argument_parser::read_any_format_precision): Likewise.
397 (argument_parser::read_any_other_modifier): Likewise.
398 (argument_parser::find_format_char_info): Likewise, in three places.
399 (argument_parser::parse_any_scan_set): Likewise, in one place.
400 (argument_parser::handle_conversions): Likewise, in two places.
401 (argument_parser::check_argument_type): Add param "fmt_param_loc"
402 and use it to make a substring_loc. Pass the latter to
403 check_format_types.
404 (check_format_info_main): Add params "fmt_param_loc" and
405 "format_string_cst". Convert warning_at calls using
406 location_from_offset to calls to format_warning_at_char. Pass the
407 new params to the arg_parser ctor. Pass "format_string_cst" to
408 flag_chars.validate. Pass "fmt_param_loc" to
409 arg_parser.check_argument_type.
410 (check_format_types): Convert first param from a location_t
411 to a const substring_loc & and rename to "fmt_loc". Attempt
412 to extract the range of the relevant parameter and pass it
413 to format_type_warning.
414 (format_type_warning): Convert first param from a location_t
415 to a const substring_loc & and rename to "fmt_loc". Add
416 params "param_range" and "type". Replace calls to warning_at
417 with calls to format_warning_at_substring.
418
419 2016-08-08 David Malcolm <dmalcolm@redhat.com>
420
421 * c-format.c (class flag_chars_t): New class.
422 (struct length_modifier): New struct.
423 (class argument_parser): New class.
424 (flag_chars_t::flag_chars_t): New ctor.
425 (flag_chars_t::has_char_p): New method.
426 (flag_chars_t::add_char): New method.
427 (flag_chars_t::validate): New method.
428 (flag_chars_t::get_alloc_flag): New method.
429 (flag_chars_t::assignment_suppression_p): New method.
430 (argument_parser::argument_parser): New ctor.
431 (argument_parser::read_any_dollar): New method.
432 (argument_parser::read_format_flags): New method.
433 (argument_parser::read_any_format_width): New method.
434 (argument_parser::read_any_format_left_precision): New method.
435 (argument_parser::read_any_format_precision): New method.
436 (argument_parser::handle_alloc_chars): New method.
437 (argument_parser::read_any_length_modifier): New method.
438 (argument_parser::read_any_other_modifier): New method.
439 (argument_parser::find_format_char_info): New method.
440 (argument_parser::validate_flag_pairs): New method.
441 (argument_parser::give_y2k_warnings): New method.
442 (argument_parser::parse_any_scan_set): New method.
443 (argument_parser::handle_conversions): New method.
444 (argument_parser::check_argument_type): New method.
445 (check_format_info_main): Introduce classes argument_parser
446 and flag_chars_t, moving the code within the loop into methods
447 of these classes. Make various locals "const".
448
449 2016-08-05 David Malcolm <dmalcolm@redhat.com>
450
451 * c-common.c: Include "substring-locations.h".
452 (get_cpp_ttype_from_string_type): New function.
453 (g_string_concat_db): New global.
454 (substring_loc::get_range): New method.
455 * c-common.h (g_string_concat_db): New declaration.
456 (class substring_loc): New class.
457 * c-lex.c (lex_string): When concatenating strings, capture the
458 locations of all tokens using a new obstack, and record the
459 concatenation locations within g_string_concat_db.
460 * c-opts.c (c_common_init_options): Construct g_string_concat_db
461 on the ggc-heap.
462
463 2016-07-29 Marek Polacek <polacek@redhat.com>
464
465 PR c/71926
466 * c-common.c (c_common_truthvalue_conversion): Use LOCATION for the
467 parentheses warning.
468
469 PR c/71574
470 * c-common.c (handle_alloc_align_attribute): Also check FUNCTION_DECL.
471
472 2016-07-28 Martin Liska <mliska@suse.cz>
473
474 PR gcov-profile/68025
475 * c-common.c (handle_no_profile_instrument_function_attribute):
476
477 2016-07-27 Bernd Edlinger <bernd.edlinger@hotmail.de>
478
479 * c-common.c (check_user_alignment): Use LOG2_BITS_PER_UNIT instead of
480 BITS_PER_UNIT_LOG.
481
482 2016-07-25 Jason Merrill <jason@redhat.com>
483
484 PR c++/65970
485 * c.opt (fconstexpr-loop-limit): New.
486
487 2016-07-22 Martin Sebor <msebor@redhat.com>
488
489 PR c++/71675
490 * c-common.c (resolve_overloaded_builtin): Avoid converting
491 __atomic_compare_exchange_n return type to that of what its
492 first argument points to.
493
494 2016-07-22 Uros Bizjak <ubizjak@gmail.com>
495
496 * c-common.c: Use HOST_WIDE_INT_M1U instead of
497 ~(unsigned HOST_WIDE_INT) 0.
498
499 2016-07-22 Martin Liska <mliska@suse.cz>
500
501 PR gcov-profile/69028
502 PR gcov-profile/62047
503 * cilk.c (create_cilk_helper_decl): Set location of a new decl
504 to the current_function_decl.
505
506 2016-07-21 Jason Merrill <jason@redhat.com>
507
508 PR c++/65168
509 * c-common.c (c_common_truthvalue_conversion): Check
510 c_inhibit_evaluation_warnings for warning about address of
511 reference.
512
513 2016-07-20 David Malcolm <dmalcolm@redhat.com>
514
515 * c-common.h (lookup_name_fuzzy): Convert return type from tree to
516 const char *.
517
518 2016-07-15 Jason Merrill <jason@redhat.com>
519
520 * c-opts.c (c_common_post_options): Update -fabi-version default to 11.
521
522 2016-07-15 Jakub Jelinek <jakub@redhat.com>
523
524 PR c/71858
525 * c-common.h (enum lookup_name_fuzzy_kind): Add
526 FUZZY_LOOKUP_FUNCTION_NAME.
527
528 2016-07-08 Jason Merrill <jason@redhat.com>
529
530 P0145: Refining Expression Order for C++.
531 * c.opts (-fargs-in-order): Rename to -fstrong-eval-order.
532 * c-opts.c: Adjust.
533
534 2016-07-05 Markus Trippelsdorf <markus@trippelsdorf.de>
535
536 PR c++/71214
537 * c-cppbuiltin.c (c_cpp_builtins): Define __cpp_rvalue_references.
538
539 2016-06-29 Thomas Schwinge <thomas@codesourcery.com>
540
541 * c-pragma.h (enum pragma_kind): Rename
542 PRAGMA_OMP_DECLARE_REDUCTION to PRAGMA_OMP_DECLARE. Adjust all
543 users.
544
545 2016-06-29 Richard Biener <rguenther@suse.de>
546
547 PR middle-end/71002
548 * c-common.c (c_common_get_alias_set): Remove union type punning case.
549
550 2016-06-24 Jason Merrill <jason@redhat.com>
551
552 P0145R2: Refining Expression Order for C++.
553 * c-common.c (verify_tree) [COMPOUND_EXPR]: Fix handling on LHS of
554 MODIFY_EXPR.
555
556 2016-06-24 Jakub Jelinek <jakub@redhat.com>
557
558 * c-common.c (check_builtin_function_arguments): Require last
559 argument of BUILT_IN_*_OVERFLOW_P to have INTEGER_TYPE type.
560 Adjust wording of diagnostics for BUILT_IN_*_OVERLFLOW
561 if the last argument is pointer to enumerated or boolean type.
562
563 2016-06-22 David Malcolm <dmalcolm@redhat.com>
564
565 PR c/70339
566 * c-common.h (enum lookup_name_fuzzy_kind): New enum.
567 (lookup_name_fuzzy): New prototype.
568
569 2016-06-21 John David Anglin <danglin@gcc.gnu.org>
570
571 * c-common.c (get_source_date_epoch): Use int64_t instead of long long.
572
573 2016-06-14 Jason Merrill <jason@redhat.com>
574
575 P0145R2: Refining Expression Order for C++.
576 * c.opt (fargs-in-order): New.
577 * c-opts.c (c_common_post_options): Adjust flag_args_in_order.
578
579 2016-06-13 Jakub Jelinek <jakub@redhat.com>
580
581 PR sanitizer/71498
582 * c-gimplify.c (ubsan_walk_array_refs_r): Set *walk_subtrees = 0 on
583 all BIND_EXPRs, and on all BIND_EXPRs recurse also on BIND_EXPR_BODY.
584
585 PR preprocessor/71183
586 * c-ppoutput.c (init_pp_output): Set cb->get_source_date_epoch
587 to cb_get_source_date_epoch.
588
589 2016-06-10 Jakub Jelinek <jakub@redhat.com>
590
591 PR c/68657
592 * c.opt (Wpsabi): Add Warning flag.
593
594 2016-06-10 Martin Sebor <msebor@redhat.com>
595
596 PR c/71392
597 * gcc/c-family/c-common.c (handle_nonnull_attribute): Accept
598 the nonnull attribute in type-generic builtins.
599
600 2016-06-09 Martin Sebor <msebor@redhat.com>
601
602 PR c/70883
603 * c-common.c (builtin_function_validate_nargs): Make text of error
604 message consistent with others like it.
605
606 2016-06-08 Martin Sebor <msebor@redhat.com>
607 Jakub Jelinek <jakub@redhat.com>
608
609 PR c++/70507
610 PR c/68120
611 * c-common.c (check_builtin_function_arguments): Handle
612 BUILT_IN_{ADD,SUB,MUL}_OVERFLOW_P.
613
614 2016-06-08 Richard Biener <rguenther@suse.de>
615
616 * c-common.c (parse_optimize_options): Improve diagnostic messages.
617
618 2016-06-07 Richard Biener <rguenther@suse.de>
619
620 PR c/61564
621 * c-common.c (parse_optimize_options): Only apply CL_OPTIMIZATION
622 options and warn about others.
623
624 2016-06-01 Eduard Sanou <dhole@openmailbox.org>
625
626 * c-common.c (get_source_date_epoch): Rename to
627 cb_get_source_date_epoch.
628 * c-common.c (cb_get_source_date_epoch): Use a single generic erorr
629 message when the parsing fails. Use error_at instead of fatal_error.
630 * c-common.h (get_source_date_epoch): Rename to
631 cb_get_source_date_epoch.
632 * c-common.h (cb_get_source_date_epoch): Prototype.
633 * c-common.h (MAX_SOURCE_DATE_EPOCH): Define.
634 * c-common.h (c_omp_region_type): Remove trailing comma.
635 * c-lex.c (init_c_lex): Set cb->get_source_date_epoch callback.
636 * c-lex.c (c_lex_with_flags): Remove initialization of
637 pfile->source_date_epoch.
638
639 2016-05-30 Jakub Jelinek <jakub@redhat.com>
640
641 PR c++/71349
642 * c-omp.c (c_omp_split_clauses): Put OMP_CLAUSE_DEPEND to
643 C_OMP_CLAUSE_SPLIT_TARGET. Put OMP_CLAUSE_NOWAIT to
644 C_OMP_CLAUSE_SPLIT_TARGET if combined with target construct,
645 instead of C_OMP_CLAUSE_SPLIT_FOR.
646
647 2016-05-24 Richard Biener <rguenther@suse.de>
648
649 PR middle-end/70434
650 PR c/69504
651 * c-common.h (convert_vector_to_pointer_for_subscript): Rename to ...
652 (convert_vector_to_array_for_subscript): ... this.
653 * c-common.c (convert_vector_to_pointer_for_subscript): Use a
654 VIEW_CONVERT_EXPR to an array type. Rename to ...
655 (convert_vector_to_array_for_subscript): ... this.
656
657 2016-05-12 Marek Polacek <polacek@redhat.com>
658
659 PR c/70756
660 * c-common.c (pointer_int_sum): Call size_in_bytes_loc instead of
661 size_in_bytes and pass LOC to it.
662
663 2016-05-11 Mikhail Maltsev <maltsevm@gmail.com>
664
665 PR c/43651
666 * c.opt (Wduplicate-decl-specifier): New option.
667
668 2016-05-11 Marek Polacek <polacek@redhat.com>
669
670 PR c++/71024
671 * c-common.c (diagnose_mismatched_attributes): New function.
672 * c-common.h (diagnose_mismatched_attributes): Declare.
673
674 2016-05-04 Marek Polacek <polacek@redhat.com>
675
676 * c.opt (Wdangling-else): New option.
677
678 2016-05-03 Marek Polacek <polacek@redhat.com>
679
680 PR c/70859
681 * c-common.c (builtin_function_validate_nargs): Add location
682 parameter. Use it.
683 (check_builtin_function_arguments): Add location and arguments
684 parameters. Use them.
685 * c-common.h (check_builtin_function_arguments): Update declaration.
686
687 2016-05-03 Richard Biener <rguenther@suse.de>
688
689 * cilk.c (cilk_gimplify_call_params_in_spawned_fn): Do not
690 allow call args to gimplify to SSA names.
691
692 2016-05-03 Marek Polacek <polacek@redhat.com>
693
694 * c-common.h (enum c_omp_region_type): Remove stray comma.
695
696 2016-05-02 Cesar Philippidis <cesar@codesourcery.com>
697
698 * c-common.h (enum c_omp_region_type): Define.
699
700 2016-05-02 Richard Sandiford <richard.sandiford@arm.com>
701
702 * c-common.c (shorten_compare): Use wi::to_wide.
703
704 2016-04-29 Cesar Philippidis <cesar@codesourcery.com>
705
706 PR middle-end/70626
707 * c-common.h (c_oacc_split_loop_clauses): Add boolean argument.
708 * c-omp.c (c_oacc_split_loop_clauses): Use it to duplicate
709 reduction clauses in acc parallel loops.
710
711 2016-04-29 Marek Polacek <polacek@redhat.com>
712
713 PR c/70852
714 * c-common.c (warn_for_memset): Check domain before accessing it.
715
716 2016-04-29 Dominik Vogt <vogt@linux.vnet.ibm.com>
717
718 PR/69089
719 * c-common.c (handle_aligned_attribute): Allow 0 as an argument to the
720 "aligned" attribute.
721
722 2016-04-28 Jason Merrill <jason@redhat.com>
723
724 * c-lex.c (c_common_has_attribute): Handle nodiscard.
725
726 2016-04-28 Eduard Sanou <dhole@openmailbox.org>
727 Matthias Klose <doko@debian.org>
728
729 * c-common.c (get_source_date_epoch): New function, gets the environment
730 variable SOURCE_DATE_EPOCH and parses it as long long with error
731 handling.
732 * c-common.h (get_source_date_epoch): Prototype.
733 * c-lex.c (c_lex_with_flags): set parse_in->source_date_epoch.
734
735 2015-04-27 Ryan Burn <contact@rnburn.com>
736
737 PR c++/69024
738 PR c++/68997
739 * cilk.c (cilk_ignorable_spawn_rhs_op): Change to external linkage.
740 (cilk_recognize_spawn): Renamed from recognize_spawn and change to
741 external linkage.
742 (cilk_detect_and_unwrap): Corresponding changes.
743 (extract_free_variables): Don't extract free variables from
744 AGGR_INIT_EXPR slot.
745 * c-common.h (cilk_ignorable_spawn_rhs_op): Prototype.
746 (cilk_recognize_spawn): Likewise.
747
748 2016-04-27 Bernd Schmidt <bschmidt@redhat.com>
749
750 * c.opt (Wmemset-elt-size): New option.
751 * c-common.c (warn_for_memset): New function.
752 * c-common.h (warn_for_memset): Declare.
753
754 2016-04-25 Jason Merrill <jason@redhat.com>
755
756 * c-common.c (handle_unused_attribute): Accept CONST_DECL.
757 No longer static.
758 * c-common.h: Declare it.
759 * c-lex.c (c_common_has_attribute): Add maybe_unused.
760
761 2016-04-22 Jason Merrill <jason@redhat.com>
762
763 * c-cppbuiltin.c (c_cpp_builtins): Fix __cpp_range_based_for.
764
765 2016-04-20 Ilya Verbin <ilya.verbin@intel.com>
766
767 PR c++/69363
768 * c-cilkplus.c (c_finish_cilk_clauses): Remove function.
769 * c-common.h (c_finish_cilk_clauses): Remove declaration.
770
771 2016-04-18 Michael Matz <matz@suse.de>
772
773 * c-common.c (handle_aligned_attribute): Use SET_TYPE_ALIGN
774 and SET_DECL_ALIGN.
775
776 2016-04-17 Eric Botcazou <ebotcazou@adacore.com>
777
778 * c-ada-spec.c (get_underlying_decl): Return the typedef, if any.
779 (dump_generic_ada_node) <POINTER_TYPE>: Clean up handling of access
780 to incomplete types.
781 (dump_nested_type): Remove redundant tests and tidy up.
782 (print_ada_declaration): Also set TREE_VISITED on the declaration of
783 a type which is the typedef of an original type.
784
785 2016-04-15 Marek Polacek <polacek@redhat.com>
786
787 PR c/70651
788 * c-common.c (build_va_arg): Change two asserts into errors and return
789 error_mark_node.
790
791 2016-04-13 Marek Polacek <polacek@redhat.com>
792
793 PR c++/70639
794 * c-indentation.c (should_warn_for_misleading_indentation): Bail out
795 for switch statements, too.
796
797 2016-03-28 Jason Merrill <jason@redhat.com>
798
799 * c-cppbuiltin.c (c_cpp_builtins): Update __cpp_range_based_for.
800
801 2016-03-23 Marek Polacek <polacek@redhat.com>
802
803 PR c++/69884
804 * c.opt (Wignored-attributes): New option.
805
806 2016-03-22 David Malcolm <dmalcolm@redhat.com>
807
808 PR c/69993
809 * c-indentation.c (warn_for_misleading_indentation): Rewrite the
810 diagnostic text, reversing the order of the warning and note so
811 that they appear in source order.
812
813 2016-03-17 Marek Polacek <polacek@redhat.com>
814
815 PR c/69407
816 * c-common.c (resolve_overloaded_builtin): Set TREE_USED for the fetch
817 operations.
818
819 2016-03-14 Jason Merrill <jason@redhat.com>
820
821 * c-cppbuiltin.c (c_cpp_builtins): Set __cpp_hex_float.
822
823 * c-cppbuiltin.c (c_cpp_builtins): Bump __cpp_range_based_for.
824
825 2016-03-09 Richard Biener <rguenther@suse.de>
826
827 PR c/70143
828 * c-common.c (strict_aliasing_warning): Add back
829 alias_sets_conflict_p check.
830
831 2016-03-08 Jason Merrill <jason@redhat.com>
832
833 * c-opts.c (set_std_cxx1z): Don't enable concepts.
834
835 2016-03-04 David Malcolm <dmalcolm@redhat.com>
836
837 PR c/68187
838 * c-indentation.c (get_visual_column): Move code to determine next
839 tab stop to...
840 (next_tab_stop): ...this new function.
841 (line_contains_hash_if): Delete function.
842 (detect_preprocessor_logic): Delete function.
843 (get_first_nws_vis_column): New function.
844 (detect_intervening_unindent): New function.
845 (should_warn_for_misleading_indentation): Replace call to
846 detect_preprocessor_logic with a call to
847 detect_intervening_unindent.
848
849 2016-03-04 David Malcolm <dmalcolm@redhat.com>
850
851 PR c/68187
852 * c-indentation.c (should_warn_for_misleading_indentation): When
853 suppressing warnings about cases where the guard and body are on
854 the same column, only use the first non-whitespace column in place
855 of the guard token column when dealing with "else" clauses.
856 When rejecting aligned BODY and NEXT, loosen the requirement
857 from equality with the first non-whitespace of guard to simply
858 that they not be indented relative to it.
859
860 2016-03-04 Richard Biener <rguenther@suse.de>
861
862 PR c++/70054
863 * c-common.c (strict_aliasing_warning): Use alias_set_subset_of
864 instead of alias_sets_conflict_p.
865
866 2016-03-01 Marek Polacek <polacek@redhat.com>
867
868 PR c++/69795
869 * c-common.c (reject_gcc_builtin): Check for FUNCTION_DECL rather than
870 any DECL.
871
872 2016-02-22 Martin Sebor <msebor@redhat.com>
873
874 PR middle-end/69780
875 * c-common.c (check_builtin_function_arguments): Validate and
876 reject invalid arguments to __builtin_alloca_with_align.
877
878 2016-02-20 Mark Wielaard <mjw@redhat.com>
879
880 PR c/28901
881 * c.opt (Wunused-const-variable): Turn into Alias for...
882 (Wunused-const-variable=): New option.
883
884 2016-02-19 Bernd Edlinger <bernd.edlinger@hotmail.de>
885
886 PR c++/69865
887 * c-opts.c (c_common_post_options): Move call to set_std_cxx14 from
888 here...
889 (c_common_init_options): ...to here.
890 (set_std_cxx98): Initialize flag_isoc94 and flag_isoc99.
891
892 2016-02-19 Jakub Jelinek <jakub@redhat.com>
893
894 PR c++/69826
895 * c-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_GRAINSIZE.
896 (init_pragma): Register PRAGMA_CILK_GRAINSIZE even for
897 flag_preprocess_only.
898
899 2016-02-16 Jakub Jelinek <jakub@redhat.com>
900
901 PR c/69835
902 * c.opt (Wnonnull-compare): Enable for -Wall.
903
904 2016-02-15 Jakub Jelinek <jakub@redhat.com>
905
906 PR c++/69797
907 * c-common.c (sync_resolve_size): Diagnose too few arguments
908 even when params is non-NULL empty vector.
909
910 2016-02-08 Bernd Schmidt <bschmidt@redhat.com>
911
912 PR target/60410
913 * c.opt (fshort-double): Remove.
914
915 2016-02-05 Martin Sebor <msebor@redhat.com>
916
917 PR c++/69662
918 * c.opt (Warning options): Update -Wplacement-new to take
919 an optional argument.
920
921 2016-02-01 Jakub Jelinek <jakub@redhat.com>
922
923 PR preprocessor/69543
924 PR c/69558
925 * c-pragma.c (handle_pragma_diagnostic): Pass input_location
926 instead of loc to control_warning_option.
927
928 2016-02-01 Nathan Sidwell <nathan@codesourcery.com>
929
930 * c.opt (fopenacc-dim=): New option.
931
932 2016-01-27 Ryan Burn <contact@rnburn.com>
933
934 PR cilkplus/69267
935 * cilk.c (cilk_gimplify_call_params_in_spawned_fn): Change to use
936 gimplify_arg. Removed superfluous post_p argument.
937 * c-family.h (cilk_gimplify_call_params_in_spawned_fn): Removed
938 superfluous post_p argument.
939 * c-gimplify.c (c_gimplify_expr): Likewise.
940
941 2016-01-26 David Malcolm <dmalcolm@redhat.com>
942
943 PR other/69006
944 * c-opts.c (c_diagnostic_finalizer): Replace invocation of
945 pp_newline_and_flush with pp_flush.
946
947 2016-01-20 Martin Sebor <msebor@redhat.com>
948
949 PR c/69405
950 * c-common.c (sync_resolve_size): Avoid printing diagnostic about
951 an incompatible argument when the argument isn't a valid tree node.
952
953 2016-01-18 Jason Merrill <jason@redhat.com>
954
955 PR c++/68767
956 * c-common.c (check_function_arguments_recurse): Fold the whole
957 COND_EXPR, not just the condition.
958
959 2016-01-18 Tom de Vries <tom@codesourcery.com>
960
961 * c-omp.c (c_oacc_split_loop_clauses): Don't copy OMP_CLAUSE_REDUCTION,
962 classify as loop clause.
963
964 2016-01-15 Jakub Jelinek <jakub@redhat.com>
965
966 PR bootstrap/68271
967 * c-pragma.c (c_register_pragma_1): Adjust comment to note that
968 C++ FE no longer has limit on number of pragmas.
969
970 2015-01-14 Ryan Burn <contact@rnburn.com>
971
972 PR c++/69048
973 * cilk.c (create_cilk_wrapper_body): Call fold_build_cleanup_point_expr
974 to add missing cleanup point.
975
976 2016-01-14 David Malcolm <dmalcolm@redhat.com>
977
978 PR c++/68819
979 * c-indentation.c (get_visual_column): Add location_t param.
980 Handle the column number being zero by effectively disabling the
981 warning, with an "inform".
982 (should_warn_for_misleading_indentation): Add location_t argument
983 for all uses of get_visual_column.
984
985 2016-01-10 Patrick Palka <ppalka@gcc.gnu.org>
986
987 PR c++/69029
988 * c-indentation.c (should_warn_for_misleading_indentation):
989 Don't warn about do-while statements.
990
991 2016-01-07 Martin Sebor <msebor@redhat.com>
992
993 PR c/68966
994 * c-common.c (sync_resolve_size): Reject first argument when it's
995 a pointer to _Bool.
996
997 2016-01-05 David Malcolm <dmalcolm@redhat.com>
998
999 PR c/69122
1000 * c-indentation.c (get_visual_column): Remove default argument.
1001 (should_warn_for_misleading_indentation): For the multiline case,
1002 update call to get_visual_column for next_stmt_exploc so that it
1003 captures the location of the first non-whitespace character in the
1004 relevant line. Don't issue warnings if there is non-whitespace
1005 before the next statement.
1006
1007 2016-01-04 Jakub Jelinek <jakub@redhat.com>
1008
1009 Update copyright years.
1010
1011 2015-12-21 David Malcolm <dmalcolm@redhat.com>
1012
1013 * c-common.c (binary_op_error): Convert first param from
1014 location_t to rich_location * and use it when emitting an error.
1015 * c-common.h (binary_op_error): Convert first param from
1016 location_t to rich_location *.
1017
1018 2015-12-16 David Malcolm <dmalcolm@redhat.com>
1019
1020 * c-common.h (conflict_marker_get_final_tok_kind): New prototype.
1021 * c-lex.c (conflict_marker_get_final_tok_kind): New function.
1022
1023 2015-12-15 Ilya Verbin <ilya.verbin@intel.com>
1024
1025 * c-common.c (c_common_attribute_table): Handle "omp declare target
1026 link" attribute.
1027
1028 2015-12-14 Jakub Jelinek <jakub@redhat.com>
1029
1030 PR c/68833
1031 * c.opt (Wmissing-format-attribute, Wnormalized): Add Warning option.
1032
1033 2014-12-12 Tobias Burnus <burnus@net-b.de>
1034
1035 PR fortran/68815
1036 * c-format.c (gcc_gfc_char_table): Add 'q' flag to remaining
1037 specifiers (%d, %i,%u and %c).
1038
1039 2015-12-10 David Malcolm <dmalcolm@redhat.com>
1040
1041 * c.opt (Wmisleading-indentation): Add to -Wall for C and C++.
1042
1043 2015-12-08 Jakub Jelinek <jakub@redhat.com>
1044
1045 PR c/48088
1046 PR c/68657
1047 * c.opt (Wfloat-conversion, Wsign-conversion): Add Warning.
1048 * c-pragma.c (handle_pragma_diagnostic): Adjust
1049 control_warning_option caller.
1050
1051 2015-12-07 David Malcolm <dmalcolm@redhat.com>
1052
1053 * c-common.c (c_cpp_error): Update for change to
1054 rich_location::set_range.
1055
1056 2015-12-04 Paolo Bonzini <bonzini@gnu.org>
1057
1058 * c-common.c (maybe_warn_shift_overflow): Warn on all overflows if
1059 shifting 1 out of the sign bit.
1060
1061 2015-12-04 Kirill Yukhin <kirill.yukhin@intel.com>
1062
1063 * c-common.c (c_common_attribute_table[]): Update max arguments
1064 count for "simd" attribute.
1065 (handle_simd_attribute): Parse "notinbranch" and "inbranch" arguments.
1066
1067 2015-12-03 Jakub Jelinek <jakub@redhat.com>
1068
1069 PR preprocessor/57580
1070 * c-ppoutput.c (print): Change printed field to bool.
1071 Move src_file last for smaller padding.
1072 (init_pp_output): Set print.printed to false instead of 0.
1073 (scan_translation_unit): Fix up formatting. Set print.printed
1074 to true after printing something other than newline.
1075 (scan_translation_unit_trad): Set print.printed to true instead of 1.
1076 (maybe_print_line_1): Set print.printed to false instead of 0.
1077 (print_line_1): Likewise.
1078 (do_line_change): Set print.printed to true instead of 1.
1079 (cb_define, dump_queued_macros, cb_include, cb_def_pragma,
1080 dump_macro): Set print.printed to false after printing newline.
1081
1082 2015-12-02 Jason Merrill <jason@redhat.com>
1083
1084 * c-common.c (fold_for_warn): New.
1085 (warn_logical_operator, warn_tautological_cmp)
1086 (check_function_arguments_recurse, maybe_warn_bool_compare): Use it.
1087
1088 * c-common.c (c_disable_warnings, c_enable_warnings, c_fully_fold)
1089 (c_fully_fold_internal, decl_constant_value_for_optimization):
1090 Move to c/c-fold.c.
1091 * c-common.h: Don't declare decl_constant_value_for_optimization.
1092
1093 2015-12-02 Joseph Myers <joseph@codesourcery.com>
1094
1095 PR c/68162
1096 * c-common.h (c_build_qualified_type): Add extra default
1097 arguments.
1098
1099 2015-12-01 Julian Brown <julian@codesourcery.com>
1100 Cesar Philippidis <cesar@codesourcery.com>
1101 James Norris <James_Norris@mentor.com>
1102
1103 * c-pragma.c (oacc_pragmas): Add PRAGMA_OACC_HOST_DATA.
1104 * c-pragma.h (pragma_kind): Add PRAGMA_OACC_HOST_DATA.
1105 (pragma_omp_clause): Add PRAGMA_OACC_CLAUSE_USE_DEVICE.
1106
1107 2015-11-30 Eric Botcazou <ebotcazou@adacore.com>
1108
1109 * c-ada-spec.c (print_ada_macros): Remove redundant blank line.
1110 (decl_sloc_common): Delete and move bulk of processing to...
1111 (decl_sloc): ...here.
1112 (pp_ada_tree_identifier): Remove reference to QUAL_UNION_TYPE.
1113 (dump_ada_double_name): Remove S parameter and compute the suffix.
1114 (dump_ada_array_type): Add PARENT parameter. Simplify computation of
1115 element type and deal with an anonymous one.
1116 (dump_ada_template): Use RECORD_OR_UNION_TYPE_P macro.
1117 (dump_generic_ada_node): Tweak. Adjust call to dump_ada_array_type
1118 and remove reference to QUAL_UNION_TYPE.
1119 (dump_nested_types): Make 2 passes on the fields and move bulk to...
1120 (dump_nested_type): ...here. New function extracted from above.
1121 Generate a full declaration for anonymous element type of arrays.
1122 (print_ada_declaration): Really skip anonymous declarations. Remove
1123 references to QUAL_UNION_TYPE. Adjust call to dump_ada_array_type.
1124 Clean up processing of declarations of array types and objects.
1125 (print_ada_struct_decl): Remove reference to QUAL_UNION_TYPE.
1126 Remove obsolete code and tidy up.
1127
1128 2015-11-29 Jan Hubicka <hubicka@ucw.cz>
1129
1130 PR c/67581
1131 * c-common.c (handle_transparent_union_attribute): Update
1132 also type variants.
1133
1134 2015-11-27 Martin Liska <mliska@suse.cz>
1135
1136 PR c++/68312
1137 * array-notation-common.c (cilkplus_extract_an_triplets):
1138 Release vector of vectors.
1139 * cilk.c (gimplify_cilk_spawn): Free allocated memory.
1140
1141 2015-11-26 Eric Botcazou <ebotcazou@adacore.com>
1142
1143 PR c++/68527
1144 * c-ada-spec.c (dump_nested_types): Add guard for error_mark_node.
1145 (print_ada_struct_decl): Likewise.
1146
1147 2015-11-23 Igor Zamyatin <igor.zamyatin@intel.com>
1148
1149 PR c++/68001
1150 * c-gimplify.c (c_gimplify_expr): Stop the process if see an error.
1151 * cilk.c (recognize_spawn): Determine location in a more precise
1152 way.
1153
1154 2015-11-19 Jason Merrill <jason@redhat.com>
1155
1156 * c-common.c (shorten_compare): But look through macros from
1157 system headers.
1158
1159 2015-11-18 Jason Merrill <jason@redhat.com>
1160
1161 * c-common.c (shorten_compare): Don't -Wtype-limits if the
1162 non-constant operand comes from a macro.
1163
1164 2015-11-17 Jason Merrill <jason@redhat.com>
1165
1166 PR bootstrap/68346
1167 * c-common.c (warn_tautological_cmp): Fold before checking for
1168 constants.
1169
1170 2015-11-16 Marek Polacek <polacek@redhat.com>
1171
1172 PR c++/68362
1173 * c-common.c (check_case_bounds): Fold low and high cases.
1174
1175 2015-11-16 Marek Polacek <polacek@redhat.com>
1176
1177 * c-ada-spec.c (dump_ada_template): Use RECORD_OR_UNION_TYPE_P.
1178 * c-common.c (c_common_get_alias_set): Likewise.
1179 (handle_visibility_attribute): Likewise.
1180
1181 2015-11-16 Kirill Yukhin <kirill.yukhin@intel.com>
1182
1183 * c-common.c (handle_simd_attribute): New.
1184 (struct attribute_spec): Add entry for "simd".
1185 (handle_simd_attribute): New.
1186
1187 2015-11-13 Kai Tietz <ktietz70@googlemail.com>
1188
1189 * c-lex.c (interpret_float): Use fold_convert.
1190
1191 2015-11-13 David Malcolm <dmalcolm@redhat.com>
1192
1193 * c-common.c (c_fully_fold_internal): Capture existing souce_range,
1194 and store it on the result.
1195 * c-opts.c (c_common_init_options): Set
1196 global_dc->colorize_source_p.
1197
1198 2015-11-12 James Norris <jnorris@codesourcery.com>
1199 Joseph Myers <joseph@codesourcery.com>
1200
1201 * c-pragma.c (oacc_pragmas): Add entry for declare directive.
1202 * c-pragma.h (enum pragma_kind): Add PRAGMA_OACC_DECLARE.
1203 (enum pragma_omp_clause): Add PRAGMA_OACC_CLAUSE_DEVICE_RESIDENT and
1204 PRAGMA_OACC_CLAUSE_LINK.
1205
1206 2015-11-11 Marek Polacek <polacek@redhat.com>
1207
1208 PR c/68107
1209 PR c++/68266
1210 * c-common.c (valid_array_size_p): New function.
1211 * c-common.h (valid_array_size_p): Declare.
1212
1213 2015-11-11 Dominique d'Humieres <dominiq@lps.ens.fr>
1214
1215 PR bootstrap/68271
1216 * c-pragma.c (c_register_pragma_1): Update the gcc_assert to 256.
1217
1218 2015-11-11 Andrew MacLeod <amacleod@redhat.com>
1219
1220 * array-notation-common.c: Remove unused header files.
1221 * c-ada-spec.c: Likewise.
1222 * c-cilkplus.c: Likewise.
1223 * c-common.c: Likewise.
1224 * c-cppbuiltin.c: Likewise.
1225 * c-dump.c: Likewise.
1226 * c-format.c: Likewise.
1227 * c-gimplify.c: Likewise.
1228 * c-indentation.c: Likewise.
1229 * c-lex.c: Likewise.
1230 * c-omp.c: Likewise.
1231 * c-opts.c: Likewise.
1232 * c-pch.c: Likewise.
1233 * c-ppoutput.c: Likewise.
1234 * c-pragma.c: Likewise.
1235 * c-pretty-print.c: Likewise.
1236 * c-semantics.c: Likewise.
1237 * c-ubsan.c: Likewise.
1238 * cilk.c: Likewise.
1239 * stub-objc.c: Likewise.
1240
1241 2015-11-09 Thomas Schwinge <thomas@codesourcery.com>
1242 Cesar Philippidis <cesar@codesourcery.com>
1243 James Norris <jnorris@codesourcery.com>
1244 Julian Brown <julian@codesourcery.com>
1245 Nathan Sidwell <nathan@codesourcery.com>
1246
1247 * c-pragma.c (oacc_pragmas): Add "routine".
1248 * c-pragma.h (pragma_kind): Add PRAGMA_OACC_ROUTINE.
1249
1250 2015-11-08 Eric Botcazou <ebotcazou@adacore.com>
1251
1252 * c-common.c (c_common_attributes): Add scalar_storage_order.
1253 (handle_scalar_storage_order_attribute): New function.
1254 * c-pragma.c (global_sso): New variable.
1255 (maybe_apply_pragma_scalar_storage_order): New function.
1256 (handle_pragma_scalar_storage_order): Likewise.
1257 (init_pragma): Register scalar_storage_order.
1258 * c-pragma.h (maybe_apply_pragma_scalar_storage_order): Declare.
1259 * c.opt (Wscalar-storage-order): New warning.
1260 (fsso-struct=): New option.
1261
1262 2015-11-08 Martin Sebor <msebor@redhat.com>
1263
1264 * c.opt (Wplacement-new): Add a period to the end of a sentence.
1265
1266 2015-11-07 Richard Sandiford <richard.sandiford@arm.com>
1267
1268 * c-common.c: Don't undef DEF_BUILTIN.
1269
1270 2015-11-06 David Malcolm <dmalcolm@redhat.com>
1271
1272 * c-common.c (c_cpp_error): Convert parameter from location_t to
1273 rich_location *. Eliminate the "column_override" parameter and
1274 the call to diagnostic_override_column.
1275 Update the "done_lexing" clause to set range 0
1276 on the rich_location, rather than overwriting a location_t.
1277 * c-common.h (c_cpp_error): Convert parameter from location_t to
1278 rich_location *. Eliminate the "column_override" parameter.
1279
1280 2015-11-05 Cesar Philippidis <cesar@codesourcery.com>
1281 Thomas Schwinge <thomas@codesourcery.com>
1282 James Norris <jnorris@codesourcery.com>
1283
1284 * c-omp.c (c_oacc_split_loop_clauses): Make TILE, GANG, WORKER, VECTOR,
1285 AUTO, SEQ, INDEPENDENT and PRIVATE loop clauses. Associate REDUCTION
1286 clauses with parallel and kernels and loops.
1287 * c-pragma.h (enum pragma_omp_clause): Add entries for
1288 PRAGMA_OACC_CLAUSE_{INDEPENDENT,TILE,DEFAULT}.
1289 * pt.c (tsubst_omp_clauses): Add support for OMP_CLAUSE_{NUM_GANGS,
1290 NUM_WORKERS,VECTOR_LENGTH,GANG,WORKER,VECTOR,ASYNC,WAIT,TILE,AUTO,
1291 INDEPENDENT,SEQ}.
1292 (tsubst_expr): Add support for OMP_CLAUSE_{KERNELS,PARALLEL,LOOP}.
1293
1294 2015-11-05 Martin Sebor <msebor@redhat.com>
1295
1296 PR c++/67942
1297 * c.opt (-Wplacement-new): New option.
1298
1299 2015-11-05 Jakub Jelinek <jakub@redhat.com>
1300
1301 * c-common.h (c_finish_omp_atomic): Add TEST argument.
1302 (c_omp_check_loop_iv, c_omp_check_loop_iv_exprs): New prototypes.
1303 * c-omp.c (c_finish_omp_atomic): Add TEST argument. Don't call
1304 save_expr or create_tmp_var* if TEST is true.
1305 (c_finish_omp_for): Store OMP_FOR_ORIG_DECLS always.
1306 Don't call add_stmt here.
1307 (struct c_omp_check_loop_iv_data): New type.
1308 (c_omp_check_loop_iv_r, c_omp_check_loop_iv,
1309 c_omp_check_loop_iv_exprs): New functions.
1310 (c_omp_split_clauses): Adjust for lastprivate being allowed on
1311 distribute.
1312 (c_omp_declare_simd_clauses_to_numbers): Change
1313 OMP_CLAUSE_LINEAR_VARIABLE_STRIDE OMP_CLAUSE_LINEAR_STEP into numbers.
1314 (c_omp_declare_simd_clauses_to_decls): Similarly change those
1315 from numbers to PARM_DECLs.
1316
1317 2015-11-04 Mikhail Maltsev <maltsevm@gmail.com>
1318
1319 * c-omp.c (c_omp_split_clauses): Remove conditional compilation. Use
1320 flag_checking.
1321
1322 2015-11-03 Bernd Schmidt <bschmidt@redhat.com>
1323
1324 PR c++-common/67882
1325 * c-common.h (fold_offsetof_1): Add argument.
1326 * c-common.c (fold_offsetof_1): Diagnose more invalid
1327 offsetof expressions that reference elements past the end of
1328 an array.
1329
1330 2015-11-03 Thomas Schwinge <thomas@codesourcery.com>
1331 Chung-Lin Tang <cltang@codesourcery.com>
1332
1333 * c-pragma.c (oacc_pragmas): Add "atomic".
1334 * c-pragma.h (pragma_kind): Add PRAGMA_OACC_ATOMIC.
1335
1336 2015-10-30 Evgeny Stupachenko <evstupac@gmail.com>
1337
1338 * c-common.c (handle_target_clones_attribute): New.
1339 (c_common_attribute_table): Add handle_target_clones_attribute.
1340 (handle_always_inline_attribute): Add check on target_clones attribute.
1341 (handle_target_attribute): Ditto.
1342
1343 2015-10-29 Andrew MacLeod <amacleod@redhat.com>
1344
1345 * array-notation-common.c: Reorder #include's and remove duplicates.
1346 * c-ada-spec.c: Likewise.
1347 * c-cilkplus.c: Likewise.
1348 * c-common.c: Likewise.
1349 * c-cppbuiltin.c: Likewise.
1350 * c-dump.c: Likewise.
1351 * c-format.c: Likewise.
1352 * c-gimplify.c: Likewise.
1353 * c-indentation.c: Likewise.
1354 * c-lex.c: Likewise.
1355 * c-omp.c: Likewise.
1356 * c-opts.c: Likewise.
1357 * c-pch.c: Likewise.
1358 * c-ppoutput.c: Likewise.
1359 * c-pragma.c: Likewise.
1360 * c-pretty-print.c: Likewise.
1361 * c-semantics.c: Likewise.
1362 * c-ubsan.c: Likewise.
1363 * cilk.c: Likewise.
1364 * stub-objc.c: Likewise.
1365
1366 2015-10-28 Jason Merrill <jason@redhat.com>
1367
1368 * c-common.c (pointer_int_sum): Fold the MULT_EXPR.
1369
1370 2015-10-27 Thomas Schwinge <thomas@codesourcery.com>
1371 James Norris <jnorris@codesourcery.com>
1372 Cesar Philippidis <cesar@codesourcery.com>
1373
1374 PR c/64765
1375 PR c/64880
1376 * c-common.h (c_oacc_split_loop_clauses): Declare function.
1377 * c-omp.c (c_oacc_split_loop_clauses): New function.
1378
1379 2015-10-21 Martin Sebor <msebor@redhat.com>
1380
1381 PR driver/68043
1382 * c.opt: End each sentence that describes an option with a period.
1383
1384 2015-10-20 Marek Polacek <polacek@redhat.com>
1385
1386 * array-notation-common.c (is_cilkplus_vector_p): Define.
1387 * c-common.h (is_cilkplus_vector_p): Declare.
1388
1389 2015-10-20 Marek Polacek <polacek@redhat.com>
1390
1391 * c.opt (std=gnu++11): Do not describe as experimental.
1392 (std=gnu++14): Likewise.
1393
1394 2015-10-19 Jason Merrill <jason@redhat.com>
1395
1396 * c-cppbuiltin.c (c_cpp_builtins): Define
1397 __cpp_nontype_template_args.
1398
1399 2015-10-19 Jason Merrill <jason@redhat.com>
1400
1401 * c-cppbuiltin.c (c_cpp_builtins): Define
1402 __cpp_enumerator_attributes, __cpp_fold_expressions,
1403 __cpp_unicode_characters.
1404
1405 2015-10-13 Jakub Jelinek <jakub@redhat.com>
1406 Aldy Hernandez <aldyh@redhat.com>
1407
1408 * c-common.c (enum c_builtin_type): Define DEF_FUNCTION_TYPE_9,
1409 DEF_FUNCTION_TYPE_10 and DEF_FUNCTION_TYPE_11.
1410 (c_define_builtins): Likewise.
1411 * c-common.h (enum c_omp_clause_split): Add
1412 C_OMP_CLAUSE_SPLIT_TASKLOOP.
1413 (c_finish_omp_critical, c_finish_omp_ordered): Add CLAUSES argument.
1414 (c_finish_omp_for): Add ORIG_DECLV argument.
1415 * c-cppbuiltin.c (c_cpp_builtins): Predefine _OPENMP as
1416 201511 instead of 201307.
1417 * c-omp.c (c_finish_omp_critical): Add CLAUSES argument, set
1418 OMP_CRITICAL_CLAUSES to it.
1419 (c_finish_omp_ordered): Add CLAUSES argument, set
1420 OMP_ORDERED_CLAUSES to it.
1421 (c_finish_omp_for): Add ORIG_DECLV argument, set OMP_FOR_ORIG_DECLS
1422 to it if OMP_FOR. Clear DECL_INITIAL on the IVs.
1423 (c_omp_split_clauses): Handle OpenMP 4.5 combined/composite
1424 constructs and new OpenMP 4.5 clauses. Clear
1425 OMP_CLAUSE_SCHEDULE_SIMD if not combined with OMP_SIMD. Add
1426 verification code.
1427 * c-pragma.c (omp_pragmas_simd): Add taskloop.
1428 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKLOOP.
1429 (enum pragma_omp_clause): Add
1430 PRAGMA_OMP_CLAUSE_{DEFAULTMAP,GRAINSIZE,HINT,{IS,USE}_DEVICE_PTR}
1431 and PRAGMA_OMP_CLAUSE_{LINK,NOGROUP,NUM_TASKS,PRIORITY,SIMD,THREADS}.
1432
1433 2015-10-05 Richard Sandiford <richard.sandiford@arm.com>
1434
1435 * c-lex.c (interpret_float): Use real_equal instead of
1436 REAL_VALUES_EQUAL.
1437
1438 2015-10-04 Jason Merrill <jason@redhat.com>
1439
1440 Implement N4514, C++ Extensions for Transactional Memory.
1441 * c-common.c (c_common_reswords): Add C++ TM TS keywords.
1442 (c_common_attribute_table): Add transaction_safe_dynamic.
1443 transaction_safe now affects type identity.
1444 (handle_tm_attribute): Handle transaction_safe_dynamic.
1445 * c-common.h (enum rid): Add RID_ATOMIC_NOEXCEPT,
1446 RID_ATOMIC_CANCEL, RID_SYNCHRONIZED.
1447 (OBJC_IS_CXX_KEYWORD): Add RID_SYNCHRONIZED.
1448 (D_TRANSMEM): New.
1449 * c-cppbuiltin.c (c_cpp_builtins): Define __cpp_transactional_memory.
1450 * c-pretty-print.c (pp_c_attributes_display): Don't print
1451 transaction_safe in C++.
1452
1453 2015-10-02 Marek Polacek <polacek@redhat.com>
1454
1455 * c.opt (Wduplicated-cond): Don't enable by -Wall anymore.
1456
1457 2015-10-02 Marek Polacek <polacek@redhat.com>
1458
1459 PR c/64249
1460 * c-common.c (warn_duplicated_cond_add_or_warn): New function.
1461 * c-common.h (warn_duplicated_cond_add_or_warn): Declare.
1462 * c.opt (Wduplicated-cond): New option.
1463
1464 2015-10-01 Joseph Myers <joseph@codesourcery.com>
1465
1466 * c.opt (std=c11): Do not describe as experimental.
1467 (std=gnu11): Likewise.
1468 (std=iso9899:2011): Likewise.
1469
1470 2015-09-28 Nathan Sidwell <nathan@codesourcery.com>
1471
1472 * c-common.c (DEF_FUNCTION_TYPE_VAR_6): New.
1473 (DEF_FUNCTION_TYPE_VAR_11): Delete.
1474
1475 2015-09-25 Marek Polacek <polacek@redhat.com>
1476
1477 * c-ubsan.c (ubsan_instrument_division): Remove unnecessary code.
1478 (ubsan_instrument_shift): Likewise.
1479
1480 2015-09-25 Marek Polacek <polacek@redhat.com>
1481
1482 PR sanitizer/64906
1483 * c-ubsan.c (ubsan_instrument_division): Also pre-evaluate OP1.
1484
1485 2015-09-24 Patrick Palka <ppalka@gcc.gnu.org>
1486
1487 * c-indentation.c (should_warn_for_misleading_indentation):
1488 Compare next_stmt_vis_column with guard_line_first_nws instead
1489 of with guard_line_vis_column.
1490
1491 2015-09-23 Manuel López-Ibáñez <manu@gcc.gnu.org>
1492
1493 PR c/49654
1494 PR c/49655
1495 * c-pragma.c (handle_pragma_diagnostic): Detect non-warning
1496 options and options not valid for the current language.
1497
1498 2015-09-22 Patrick Palka <ppalka@gcc.gnu.org>
1499
1500 * c-indentation.c (should_warn_for_misleading_indentation):
1501 Float out and consolidate the calls to get_visual_column that
1502 are passed guard_exploc as an argument. Compare
1503 next_stmt_vis_column with guard_line_first_nws instead of with
1504 body_line_first_nws.
1505
1506 2015-09-22 Nathan Sidwell <nathan@codesourcery.com>
1507
1508 * c.opt (Wmultiple-inheritance, Wvirtual-inheritance, Wtemplates,
1509 Wnamespaces): New C++ warnings.
1510
1511 2015-09-22 Jason Merrill <jason@redhat.com>
1512
1513 * c-common.h (abi_compat_version_crosses): New.
1514 (warn_abi_version): Declare.
1515 * c-common.c: Define it.
1516 * c-opts.c (c_common_post_options): Handle it.
1517 flag_abi_compat_version defaults to 8.
1518
1519 2015-09-21 Ville Voutilainen <ville.voutilainen@gmail.com>
1520
1521 Complete the implementation of N4230, Nested namespace definition.
1522 * c-cppbuiltin.c: Add __cpp_namespace_attributes and
1523 __cpp_nested_namespace_definitions.
1524
1525 2015-09-18 Manuel López-Ibáñez <manu@gcc.gnu.org>
1526
1527 * c-pragma.c (handle_pragma_diagnostic): Fix wrong return.
1528
1529 2015-09-18 Manuel López-Ibáñez <manu@gcc.gnu.org>
1530
1531 * c-pragma.c (handle_pragma_diagnostic): Use explicit location
1532 when warning.
1533 * c-pragma.h (pragma_lex): Add optional loc argument.
1534
1535 2015-09-16 Mikhail Maltsev <maltsevm@gmail.com>
1536
1537 * c-format.c (check_format_arg): Adjust to use common block size in all
1538 object pools.
1539
1540 2015-09-15 David Malcolm <dmalcolm@redhat.com>
1541
1542 * c-format.c (location_from_offset): Update for change in
1543 signature of location_get_source_line.
1544 * c-indentation.c (get_visual_column): Likewise.
1545 (line_contains_hash_if): Likewise.
1546
1547 2015-09-14 Marek Polacek <polacek@redhat.com>
1548
1549 * c-opts.c (c_common_post_options): Set C++ standard earlier, before
1550 setting various warnings.
1551
1552 2015-09-14 Marek Polacek <polacek@redhat.com>
1553
1554 * c-common.c (warn_for_sign_compare): Cast to unsigned when shifting
1555 a negative value.
1556
1557 2015-09-11 Mark Wielaard <mjw@redhat.com>
1558
1559 PR c/28901
1560 * c.opt (Wunused-variable): Option from common.opt.
1561 (Wunused-const-variable): New option.
1562
1563 2015-09-09 Paolo Carlini <paolo.carlini@oracle.com>
1564
1565 PR c++/53184
1566 * c.opt ([Wsubobject-linkage]): Add.
1567
1568 2015-09-03 Martin Sebor <msebor@redhat.com>
1569
1570 PR c/66516
1571 * c-common.h (c_decl_implicit, reject_gcc_builtin): Declare new
1572 functions.
1573 * c-common.c (reject_gcc_builtin): Define.
1574
1575 2015-09-02 Balaji V. Iyer <balaji.v.iyer@intel.com>
1576
1577 PR middle-end/60586
1578 * c-common.h (cilk_gimplify_call_params_in_spawned_fn): New
1579 prototype.
1580 * c-gimplify.c (c_gimplify_expr): Added a call to the function
1581 cilk_gimplify_call_params_in_spawned_fn.
1582 * cilk.c (cilk_gimplify_call_params_in_spawned_fn): New function.
1583 (gimplify_cilk_spawn): Removed EXPR_STMT and CLEANUP_POINT_EXPR
1584 unwrapping.
1585
1586 2015-08-25 Marek Polacek <polacek@redhat.com>
1587
1588 PR middle-end/67330
1589 * c-common.c (handle_weak_attribute): Don't check whether the
1590 visibility can be changed here.
1591
1592 2015-08-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
1593
1594 * c-lex.c (c_lex_with_flags): Use explicit locations.
1595
1596 2015-08-18 Trevor Saunders <tbsaunde@tbsaunde.org>
1597
1598 * c-ada-spec.h, c-common.c, c-common.h, c-format.c, c-format.h,
1599 c-objc.h, c-ppoutput.c, c-pragma.c, c-pragma.h: Remove useless
1600
1601 2015-08-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1602
1603 PR middle-end/36757
1604 * c-common.c (check_builtin_function_arguments): Add check
1605 for BUILT_IN_SIGNBIT argument.
1606
1607 2015-08-18 Paolo Carlini <paolo.carlini@oracle.com>
1608
1609 PR c++/67160
1610 * c-cppbuiltin.c (c_cpp_builtins): Fix __cpp_static_assert value
1611 in c++1z mode.
1612
1613 2015-08-17 Marek Polacek <polacek@redhat.com>
1614
1615 * c-pretty-print.c (pp_c_cv_qualifiers): Remove code dealing
1616 with whitespaces before qualifier names.
1617
1618 2015-08-12 Marek Polacek <polacek@redhat.com>
1619
1620 PR c++/55095
1621 * c-common.c (maybe_warn_shift_overflow): Properly handle
1622 left-shifting 1 into the sign bit.
1623
1624 2015-08-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
1625
1626 * c.opt (Wchkp): Use LangEnabledBy instead of EnabledBy.
1627
1628 2015-08-06 Andrew Sutton <andrew.n.sutton@gmail.com>
1629 Braden Obrzut <admin@maniacsvault.net>
1630 Jason Merrill <jason@redhat.com>
1631
1632 Add C++ Concepts TS support.
1633 * c-common.c (c_common_reswords): Add __is_same_as, concept, requires.
1634 * c-common.h (enum rid): Add RID_IS_SAME_AS, RID_CONCEPT, RID_REQUIRES.
1635 (D_CXX_CONCEPTS, D_CXX_CONCEPTS_FLAGS): New.
1636 * c-cppbuiltin.c (c_cpp_builtins): Define __cpp_concepts.
1637 * c-opts.c (set_std_cxx1z): Set flag_concepts.
1638 * c.opt (fconcepts): New.
1639
1640 2015-08-02 Martin Sebor <msebor@redhat.com>
1641
1642 * c.opt (-Wframe-address): New warning option.
1643
1644 2015-08-02 Patrick Palka <ppalka@gcc.gnu.org>
1645
1646 * c-indentation.c (should_warn_for_misleading_indentation):
1647 Improve heuristics.
1648
1649 2015-08-02 Patrick Palka <ppalka@gcc.gnu.org>
1650
1651 * c-indentation.c (get_visual_column): Add parameter first_nws,
1652 use it. Update comment documenting the function.
1653 (is_first_nonwhitespace_on_line): Remove.
1654 (should_warn_for_misleading_indentation): Replace usage of
1655 of is_first_nonwhitespace_on_line with get_visual_column.
1656
1657 2015-08-02 Patrick Palka <ppalka@gcc.gnu.org>
1658
1659 * c-indentation.h (struct token_indent_info): Define.
1660 (get_token_indent_info): Define.
1661 (warn_for_misleading_information): Declare.
1662 * c-common.h (warn_for_misleading_information): Remove.
1663 * c-identation.c (warn_for_misleading_indentation):
1664 Change declaration to take three token_indent_infos. Adjust
1665 accordingly.
1666 * c-identation.c (should_warn_for_misleading_indentation):
1667 Likewise. Bail out early if the body is a compound statement.
1668 (guard_tinfo_to_string): Define.
1669
1670 2015-07-30 Jason Merrill <jason@redhat.com>
1671
1672 * c-pretty-print.c (unary_expression) [INDIRECT_REF]: Don't print
1673 '*' for reference decay.
1674
1675 2015-07-30 Marek Polacek <polacek@redhat.com>
1676
1677 * c-common.c (warn_tautological_cmp): Bail for float types.
1678
1679 2015-07-27 Marek Polacek <polacek@redhat.com>
1680
1681 PR bootstrap/67030
1682 * c-common.c (warn_tautological_cmp): Don't warn for macro expansion.
1683
1684 2015-07-27 Marek Polacek <polacek@redhat.com>
1685
1686 PR c++/66555
1687 PR c/54979
1688 * c-common.c (find_array_ref_with_const_idx_r): New function.
1689 (warn_tautological_cmp): New function.
1690 * c-common.h (warn_tautological_cmp): Declare.
1691 * c.opt (Wtautological-compare): New option.
1692
1693 2015-07-23 Marek Polacek <polacek@redhat.com>
1694
1695 * c-ubsan.c (ubsan_instrument_division): Use unshare_expr throughout.
1696 (ubsan_instrument_shift): Likewise.
1697
1698 2015-07-23 Marek Polacek <polacek@redhat.com>
1699
1700 PR sanitizer/66908
1701 * c-ubsan.c: Include gimplify.h.
1702 (ubsan_instrument_division): Unshare OP0 and OP1.
1703 (ubsan_instrument_shift): Likewise.
1704
1705 2015-07-20 Marek Polacek <polacek@redhat.com>
1706 Richard Sandiford <richard.sandiford@arm.com>
1707
1708 PR c++/55095
1709 * c-common.c (c_fully_fold_internal): Warn about left shift overflows.
1710 Use EXPR_LOC_OR_LOC.
1711 (maybe_warn_shift_overflow): New function.
1712 * c-common.h (maybe_warn_shift_overflow): Declare.
1713 * c-opts.c (c_common_post_options): Set warn_shift_overflow.
1714 * c.opt (Wshift-overflow): New option.
1715
1716 2015-07-16 Martin Liska <mliska@suse.cz>
1717
1718 * c-format.c (static void check_format_info_main): Use
1719 object_allocator instead of pool_allocator.
1720 (check_format_arg): Likewise.
1721 (check_format_info_main): Likewise.
1722
1723 2015-07-15 Andrew MacLeod <amacleod@redhat.com>
1724
1725 * c-opts.c: Remove multiline #include comment.
1726
1727 2015-07-12 Aldy Hernandez <aldyh@redhat.com>
1728
1729 * c-common.c: Fix double word typos.
1730
1731 2015-07-10 Eric Botcazou <ebotcazou@adacore.com>
1732
1733 * c-ada-spec.h (cpp_operation): Revert latest change.
1734 * c-ada-spec.c (print_ada_declaration): Likewise. Skip implicit
1735 constructors and destructors.
1736
1737 2015-07-09 Andrew MacLeod <amacleod@redhat.com>
1738
1739 * c-common.h: Adjust includes for flags.h changes.
1740 * stub-objc.c: Likewise.
1741
1742 2015-07-08 Eric Botcazou <ebotcazou@adacore.com>
1743
1744 * c-ada-spec.h (cpp_operation): Add IS_CONSTEXPR.
1745 * c-ada-spec.c (print_ada_declaration): Skip constexpr constructors.
1746
1747 2015-07-08 Jakub Jelinek <jakub@redhat.com>
1748
1749 * c-omp.c (c_omp_declare_simd_clauses_to_numbers): If all clauses
1750 are to be removed, return NULL rather than original clauses list.
1751
1752 2015-07-07 Andrew MacLeod <amacleod@redhat.com>
1753
1754 * array-notation-common.c: Adjust includes.
1755 * c-ada-spec.c: Likewise.
1756 * c-cilkplus.c: Likewise.
1757 * c-common.h: Likewise.
1758 * c-cppbuiltin.c: Likewise.
1759 * c-dump.c: Likewise.
1760 * c-format.c: Likewise.
1761 * c-gimplify.c: Likewise.
1762 * c-indentation.c: Likewise.
1763 * c-lex.c: Likewise.
1764 * c-omp.c: Likewise.
1765 * c-opts.c: Likewise.
1766 * c-pch.c: Likewise.
1767 * c-ppoutput.c: Likewise.
1768 * c-pragma.c: Likewise.
1769 * c-pretty-print.c: Likewise.
1770 * c-semantics.c: Likewise.
1771 * c-ubsan.c: Likewise.
1772 * cilk.c: Likewise.
1773 * stub-objc.c: Likewise.
1774
1775 2015-07-07 Eric Botcazou <ebotcazou@adacore.com>
1776
1777 * c-ada-spec.h (cpp_operation): Add IS_MOVE_CONSTRUCTOR.
1778 * c-ada-spec.c (print_ada_declaration): Skip move constructors.
1779
1780 2015-07-01 Jason Merrill <jason@redhat.com>
1781
1782 * c-common.h (D_CXX11): Rename from D_CXX0X.
1783 (RID_FIRST_CXX11, RID_LAST_CXX11): Rename from *_CXX0X.
1784 * c-common.c: Adjust.
1785
1786 * c-opts.c (c_common_post_options): Default to C++14.
1787
1788 * c-opts.c (c_common_post_options): Highest ABI level is now 10.
1789
1790 2015-06-30 Edward Smith-Rowland <3dw4rd@verizon.net>
1791
1792 Implement N4197 - Adding u8 character literals
1793 * c-ada-spec.c (print_ada_macros): Treat CPP_UTF8CHAR like
1794 CPP_CHAR.
1795 * c-common.c (c_parse_error): Print CPP_UTF8CHAR and
1796 CPP_UTF8CHAR_USERDEF tokens.
1797 * c-lex.c (c_lex_with_flags): Treat CPP_UTF8CHAR_USERDEF
1798 and CPP_UTF8CHAR tokens.
1799 (lex_charconst): Treat CPP_UTF8CHAR token.
1800
1801 2015-06-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
1802
1803 PR fortran/66605
1804 * c-common.c (do_warn_unused_parameter): Move here.
1805 * c-common.h (do_warn_unused_parameter): Declare.
1806
1807 2015-06-29 Marek Polacek <polacek@redhat.com>
1808
1809 PR c/66322
1810 * c-common.c (check_case_bounds): Add bool * parameter. Set
1811 OUTSIDE_RANGE_P.
1812 (c_add_case_label): Add bool * parameter. Pass it down to
1813 check_case_bounds.
1814 (c_do_switch_warnings): Add bool parameters. Implement -Wswitch-bool
1815 warning here.
1816 * c-common.h (c_add_case_label, c_do_switch_warnings): Update
1817 declarations.
1818
1819 2015-06-27 Marek Polacek <polacek@redhat.com>
1820
1821 * c-common.c (check_main_parameter_types): Use VECTOR_TYPE_P
1822 or VECTOR_INTEGER_TYPE_P throughout.
1823 * c-gimplify.c: Likewise.
1824
1825 2015-06-26 Marek Polacek <polacek@redhat.com>
1826
1827 * array-notation-common.c (find_rank): Use INDIRECT_REF_P.
1828 * c-common.c (c_fully_fold_internal): Likewise.
1829 (c_alignof_expr): Likewise.
1830 * c-pretty-print.c (c_pretty_printer::postfix_expression): Likewise.
1831 * c-ubsan.c (ubsan_instrument_bounds): Likewise.
1832 * cilk.c (create_parm_list): Likewise.
1833
1834 2015-06-26 Marek Polacek <polacek@redhat.com>
1835
1836 * c-common.c (handle_unused_attribute): Use VAR_OR_FUNCTION_DECL_P.
1837
1838 2015-06-25 Andrew MacLeod <amacleod@redhat.com>
1839
1840 * c-common.c: Remove ipa-ref.h and plugin-api.h from include list.
1841 * c-gimplify.c: Likewise.
1842 * c-pragma.c: Likewise.
1843 * c-ubsan.c: Likewise.
1844 * cilk.c: Likewise.
1845
1846 2015-06-25 Richard Sandiford <richard.sandiford@arm.com>
1847
1848 * c-common.c (c_type_hasher): Inherit from ggc_ptr_hash rather than
1849 ggc_hasher.
1850
1851 2015-06-25 Andrew MacLeod <amacleod@redhat.com>
1852
1853 * cilk.c: Move calls.h after tm.h in the include chain.
1854
1855 2015-06-25 Marek Polacek <polacek@redhat.com>
1856
1857 * array-notation-common.c: Use VAR_P throughout.
1858 * c-ada-spec.c: Likewise.
1859 * c-common.c: Likewise.
1860 * c-format.c: Likewise.
1861 * c-gimplify.c: Likewise.
1862 * c-omp.c: Likewise.
1863 * c-pragma.c: Likewise.
1864 * c-pretty-print.c: Likewise.
1865 * cilk.c: Likewise.
1866
1867 2015-06-25 Marek Polacek <polacek@redhat.com>
1868
1869 * cilk.c (extract_free_variables): Use is_global_var.
1870
1871 2015-06-23 Richard Sandiford <richard.sandiford@arm.com>
1872
1873 * c-common.c: Don't include target-def.h.
1874
1875 2015-06-23 Marek Polacek <polacek@redhat.com>
1876
1877 * c-common.c (warn_logical_operator): Use tree_int_cst_equal
1878 when comparing INTEGER_CSTs.
1879
1880 2015-06-22 Pierre-Marie de Rodat <derodat@adacore.com>
1881
1882 * c-ada-spec.h (cpp_operation): Add HAS_DEPENDENT_TEMPLATE_ARGS.
1883 * c-ada-spec.c (collect_ada_nodes): Skip NAMESPACE_DECL
1884 (dump_ada_template): Skip partially specialized types.
1885
1886 2015-06-22 Mikhail Maltsev <maltsevm@gmail.com>
1887
1888 * c-common.c (scalar_to_vector): Use std::swap instead of manually
1889 swapping.
1890
1891 2015-06-17 Andrew MacLeod <amacleod@redhat.com>
1892
1893 * array-notation-common.c: Do not include input.h, line-map.h or is-a.h.
1894 * c-ada-spec.c: Likewise.
1895 * c-cilkplus.c: Likewise.
1896 * c-common.c: Likewise.
1897 * c-common.h: Likewise.
1898 * c-cppbuiltin.c: Likewise.
1899 * c-dump.c: Likewise.
1900 * c-format.c: Likewise.
1901 * c-gimplify.c: Likewise.
1902 * c-indentation.c: Likewise.
1903 * c-lex.c: Likewise.
1904 * c-omp.c: Likewise.
1905 * c-opts.c: Likewise.
1906 * c-pch.c: Likewise.
1907 * c-ppoutput.c: Likewise.
1908 * c-pragma.c: Likewise.
1909 * c-pretty-print.c: Likewise.
1910 * c-semantics.c: Likewise.
1911 * c-ubsan.c: Likewise.
1912 * cilk.c: Likewise.
1913 * stub-objc.c: Likewise.
1914
1915 2015-06-13 Patrick Palka <ppalka@gcc.gnu.org>
1916
1917 PR c++/65168
1918 * c-common.c (c_common_truthvalue_conversion): Warn when
1919 converting an address of a reference to a truth value.
1920
1921 2015-06-08 Andrew MacLeod <amacleod@redhat.com>
1922
1923 * array-notation-common.c : Adjust include files.
1924 * c-ada-spec.c : Likewise.
1925 * c-cilkplus.c : Likewise.
1926 * c-common.c : Likewise.
1927 * c-common.h : Likewise.
1928 * c-cppbuiltin.c : Likewise.
1929 * c-dump.c : Likewise.
1930 * c-format.c : Likewise.
1931 * c-gimplify.c : Likewise.
1932 * c-indentation.c : Likewise.
1933 * c-lex.c : Likewise.
1934 * c-omp.c : Likewise.
1935 * c-opts.c : Likewise.
1936 * c-pch.c : Likewise.
1937 * c-ppoutput.c : Likewise.
1938 * c-pragma.c : Likewise.
1939 * c-pretty-print.c : Likewise.
1940 * c-semantics.c : Likewise.
1941 * c-ubsan.c : Likewise.
1942 * cilk.c : Likewise.
1943 * stub-objc.c : Likewise.
1944
1945 2015-06-08 Marek Polacek <polacek@redhat.com>
1946
1947 PR c/66415
1948 * c-format.c (location_from_offset): Return LOC if LINE is null.
1949
1950 2015-06-05 Aldy Hernandez <aldyh@redhat.com>
1951
1952 * c-common.h (c_parse_final_cleanups): New prototype.
1953 * c-opts.c (c_common_parse_file): Call c_parse_final_cleanups.
1954
1955 2015-06-04 Sriraman Tallam <tmsriram@google.com>
1956
1957 * c-common.c (noplt): New attribute.
1958 (handle_noplt_attribute): New handler.
1959
1960 2015-06-04 Andrew MacLeod <amacleod@redhat.com>
1961
1962 * array-notation-common.c: Adjust includes for restructured coretypes.h.
1963 * c-ada-spec.c: Likewise.
1964 * c-cilkplus.c: Likewise.
1965 * c-common.c: Likewise.
1966 * c-common.h: Likewise.
1967 * c-cppbuiltin.c: Likewise.
1968 * c-dump.c: Likewise.
1969 * c-format.c: Likewise.
1970 * c-gimplify.c: Likewise.
1971 * c-indentation.c: Likewise.
1972 * c-lex.c: Likewise.
1973 * c-omp.c: Likewise.
1974 * c-opts.c: Likewise.
1975 * c-pch.c: Likewise.
1976 * c-ppoutput.c: Likewise.
1977 * c-pragma.c: Likewise.
1978 * c-pretty-print.c: Likewise.
1979 * c-semantics.c: Likewise.
1980 * c-ubsan.c: Likewise.
1981 * cilk.c: Likewise.
1982 * stub-objc.c: Likewise.
1983
1984 2015-06-02 David Malcolm <dmalcolm@redhat.com>
1985
1986 PR c/66220:
1987 * c-indentation.c (should_warn_for_misleading_indentation): Use
1988 expand_location rather than expand_location_to_spelling_point.
1989 Don't warn if the guarding statement is more indented than the
1990 next/body stmts.
1991
1992 2015-06-02 David Malcolm <dmalcolm@redhat.com>
1993
1994 * c-indentation.c (warn_for_misleading_indentation): Bail out
1995 immediately if -Wmisleading-indentation isn't enabled.
1996
1997 2015-06-01 Martin Liska <mliska@suse.cz>
1998
1999 * c-format.c (check_format_arg):Use new type-based pool allocator.
2000 (check_format_info_main) Likewise.
2001
2002 2015-05-31 Eric Botcazou <ebotcazou@adacore.com>
2003
2004 * c-ada-spec.c (is_tagged_type): Test for TYPE_METHODS on main variant.
2005 (has_nontrivial_methods): Likewise.
2006
2007 2015-05-25 Marek Polacek <polacek@redhat.com>
2008
2009 * c-ubsan.c (ubsan_instrument_shift): Use type0.
2010
2011 2015-05-22 Marek Polacek <polacek@redhat.com>
2012
2013 PR c/47043
2014 * c-common.c (handle_deprecated_attribute): Allow CONST_DECL.
2015
2016 2015-05-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
2017
2018 * c-cppbuiltin.c (c_cpp_builtins): Use if instead of #if with
2019 STACK_GROWS_DOWNWARD.
2020
2021 2015-05-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
2022
2023 * c-cppbuiltin.c (c_cpp_builtins): Check the value of
2024 STACK_GROWS_DOWNWARD rather than if it is defined.
2025
2026 2015-05-21 Manuel López-Ibáñez <manu@gcc.gnu.org>
2027
2028 PR c/52952
2029 * c-format.c (location_column_from_byte_offset): New.
2030 (location_from_offset): New.
2031 (struct format_wanted_type): Add offset_loc field.
2032 (check_format_info): Move handling of location for extra arguments
2033 closer to the point of warning.
2034 (check_format_info_main): Pass the result of location_from_offset
2035 to warning_at.
2036 (format_type_warning): Pass the result of location_from_offset
2037 to warning_at.
2038
2039 2015-05-20 Marek Polacek <polacek@redhat.com>
2040
2041 * c-omp.c (check_omp_for_incr_expr): Use BINARY_CLASS_P.
2042
2043 2015-05-20 Marek Polacek <polacek@redhat.com>
2044
2045 * c-ada-spec.c (dump_sloc): Use DECL_P.
2046
2047 2015-05-20 Marek Polacek <polacek@redhat.com>
2048
2049 * c-pragma.c: Use VAR_OR_FUNCTION_DECL_P throughout.
2050 * c-common.c: Likewise.
2051
2052 2015-05-19 David Malcolm <dmalcolm@redhat.com>
2053
2054 * c-common.h (fe_file_change): Strengthen param from
2055 const line_map * to const line_map_ordinary *.
2056 (pp_file_change): Likewise.
2057 * c-lex.c (fe_file_change): Likewise.
2058 (cb_define): Use linemap_check_ordinary when invoking
2059 SOURCE_LINE.
2060 (cb_undef): Likewise.
2061 * c-opts.c (c_finish_options): Use linemap_check_ordinary when
2062 invoking cb_file_change.
2063 (c_finish_options): Likewise.
2064 (push_command_line_include): Likewise.
2065 (cb_file_change): Strengthen param "new_map" from
2066 const line_map * to const line_map_ordinary *.
2067 * c-ppoutput.c (cb_define): Likewise for local "map".
2068 (pp_file_change): Likewise for param "map" and local "from".
2069
2070 2015-05-19 Mikhail Maltsev <maltsevm@gmail.com>
2071
2072 * c-common.c (shorten_compare): Use std::swap instead of explicit swaps.
2073
2074 2015-05-18 Tom de Vries <tom@codesourcery.com>
2075
2076 * c-common.c (build_va_arg_1): New function.
2077 (build_va_arg): Add address operator to va_list operand if necessary.
2078
2079 2015-05-15 Mikhail Maltsev <maltsevm@gmail.com>
2080
2081 PR c/48956
2082 * c-common.c (int_safely_convertible_to_real_p): Define.
2083 (unsafe_conversion_p): Check conversions involving complex types.
2084 (conversion_warning): Add new warning message for conversions which
2085 discard imaginary component.
2086 * c-common.h: (enum conversion_safety): Add new enumerator for such
2087 conversions.
2088
2089 2015-05-14 Marek Polacek <polacek@redhat.com>
2090
2091 PR c/66066
2092 PR c/66127
2093 * c-common.c (c_fully_fold): Pass false down to c_fully_fold_internal.
2094 (c_fully_fold_internal): Fold C_MAYBE_CONST_EXPRs with
2095 C_MAYBE_CONST_EXPR_INT_OPERANDS set. Add FOR_INT_CONST argument and
2096 use it. If FOR_INT_CONST, require that all evaluated operands be
2097 INTEGER_CSTs.
2098
2099 2015-05-12 David Malcolm <dmalcolm@redhat.com>
2100
2101 * c-common.h (warn_for_misleading_indentation): New prototype.
2102 * c-indentation.c: New file.
2103 * c.opt (Wmisleading-indentation): New option.
2104
2105 2015-05-12 Tom de Vries <tom@codesourcery.com>
2106
2107 PR tree-optimization/66010
2108 * c-common.c (build_va_arg): Don't mark ap addressable unless necessary.
2109
2110 2015-05-09 Jason Merrill <jason@redhat.com>
2111
2112 * c-opts.c (c_common_post_options): Also clear
2113 cpp_opts->cpp_warn_cxx11_compat.
2114
2115 * c-common.h (enum cxx_dialect): Add cxx_unset.
2116 * c-common.c (cxx_dialect): Initialize to cxx_unset.
2117 * c-opts.c (c_common_post_options): Set C++ dialect to C++98 if unset.
2118
2119 * c.opt (std=c++14): Remove Undocumented flag and experimental warning.
2120 (std=gnu++0x): Mark as Undocumented.
2121 (std=gnu++1y): Add deprecated message.
2122
2123 2015-05-08 Jason Merrill <jason@redhat.com>
2124
2125 * c.opt (Wc++11-compat): Make primary. Rename var warn_cxx11_compat.
2126 * c-opts.c: Adjust.
2127
2128 * c.opt (Wc++0x-compat): Also set cpp_warn_cxx11_compat.
2129
2130 2015-05-08 Marek Polacek <polacek@redhat.com>
2131
2132 PR c/64918
2133 * c.opt (Woverride-init-side-effects): New option.
2134
2135 2015-05-07 Marek Polacek <polacek@redhat.com>
2136
2137 PR c/65179
2138 * c-common.c (c_fully_fold_internal): Warn when left shifting a
2139 negative value.
2140 * c.opt (Wshift-negative-value): New option.
2141 * c-opts.c (c_common_post_options): Set warn_shift_negative_value
2142 when -Wextra and C99/C++11 mode.
2143
2144 2015-05-07 Marek Polacek <polacek@redhat.com>
2145 Martin Uecker <uecker@eecs.berkeley.edu>
2146
2147 * c-ubsan.c (ubsan_instrument_bounds): Don't skip instrumenting
2148 flexible member array-like members if SANITIZE_BOUNDS_STRICT.
2149
2150 2015-05-05 Jason Merrill <jason@redhat.com>
2151
2152 * c.opt (Wterminate): New.
2153
2154 2015-04-30 Marek Polacek <polacek@redhat.com>
2155
2156 * c-common.c (maybe_warn_bool_compare): When comparing with 0/1,
2157 require that the non-constant be of a boolean type.
2158
2159 2015-04-29 Josh Triplett <josh@joshtriplett.org>
2160
2161 * c-common.c (handle_section_attribute): Refactor to reduce
2162 nesting and distinguish between error cases.
2163
2164 2015-04-29 Marek Polacek <polacek@redhat.com>
2165
2166 PR c/64610
2167 * c-common.c (maybe_warn_bool_compare): Warn when comparing a boolean
2168 with 0/1.
2169
2170 2015-04-29 Jakub Jelinek <jakub@redhat.com>
2171
2172 * c-common.h (omp_clause_mask): Unconditionally define as a class.
2173 Use uint64_t instead of unsigned HOST_WIDE_INT and 64 instead of
2174 HOST_BITS_PER_WIDE_INT.
2175
2176 2015-04-28 Tom de Vries <tom@codesourcery.com>
2177
2178 PR tree-optimization/65887
2179 * c-common.c (build_va_arg): Mark va_arg ap argument as addressable.
2180
2181 2015-04-28 Eric Botcazou <ebotcazou@adacore.com>
2182 Pierre-Marie de Rodat <derodat@adacore.com>
2183
2184 * c-ada-spec.c (in_function): Delete.
2185 (dump_generic_ada_node): Do not change in_function and remove the
2186 redundant code dealing with it.
2187 (print_ada_declaration): Do not change in_function. Use INDENT_INCR.
2188 (print_ada_methods): Output the static member functions in a nested
2189 package after the regular methods as well as associated renamings.
2190
2191 2015-04-24 Marek Polacek <polacek@redhat.com>
2192
2193 PR c/65830
2194 * c-common.c (c_fully_fold_internal): Use OPT_Wshift_count_negative
2195 and OPT_Wshift_count_overflow.
2196
2197 PR c/63357
2198 * c-common.c (warn_logical_operator): Warn if the operands have the
2199 same expressions.
2200
2201 2015-04-24 Marek Polacek <polacek@redhat.com>
2202
2203 PR c/61534
2204 * c-common.c (warn_logical_operator): Bail if either operand comes
2205 from a macro expansion.
2206
2207 2015-04-10 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
2208
2209 PR target/55143
2210 * c-common.c (c_default_pointer_mode): Add definition.
2211 * c-common.h (c_default_pointer_mode): Add declaration.
2212
2213 2015-03-11 Jakub Jelinek <jakub@redhat.com>
2214
2215 * c-common.c (c_common_nodes_and_builtins): Don't call xstrdup
2216 on record_builtin_type argument.
2217
2218 2015-03-10 Jakub Jelinek <jakub@redhat.com>
2219
2220 PR c/65120
2221 * c-common.c (warn_logical_not_parentheses): Don't warn for
2222 !x == 0 or !x != 0.
2223
2224 2015-03-07 Marek Polacek <polacek@redhat.com>
2225
2226 PR sanitizer/65280
2227 * c-ubsan.c (ubsan_instrument_bounds): Check for COMPONENT_REF
2228 before trying to figure out whether we have a flexible array member.
2229
2230 2015-03-06 Eric Botcazou <ebotcazou@adacore.com>
2231 Jonathan Wakely <jwakely.gcc@gmail.com>
2232
2233 * c-ada-spec.c (dump_ada_double_name): Fix pasto.
2234
2235 2015-03-05 Eric Botcazou <ebotcazou@adacore.com>
2236
2237 PR ada/65319
2238 * c-ada-spec.c (print_destructor): Remove obsolete code.
2239
2240 2015-03-01 Eric Botcazou <ebotcazou@adacore.com>
2241
2242 * c-ada-spec.c (is_tagged_type): Add guard for DECL_VINDEX.
2243 (dump_template_types): Adjust DECL_TEMPLATE_INSTANTIATIONS and
2244 DECL_TEMPLATE_RESULT emulations.
2245 (dump_ada_template)): Add guard for TYPE_METHODS.
2246
2247 2015-02-27 Marek Polacek <polacek@redhat.com>
2248
2249 PR c/65040
2250 * c.opt (Wformat-signedness): Don't enable by -Wformat=2.
2251
2252 2015-02-27 Kai Tietz <ktietz@redhat.com>
2253
2254 PR c/35330
2255 * c-pragma.c (handle_pragma_weak): Do not try to create
2256 weak/alias of declarations not being function, or variable
2257 declarations.
2258
2259 2015-02-24 Thomas Schwinge <thomas@codesourcery.com>
2260
2261 PR libgomp/64625
2262 * c-common.c (DEF_FUNCTION_TYPE_VAR_8, DEF_FUNCTION_TYPE_VAR_12):
2263 Remove macros.
2264 (DEF_FUNCTION_TYPE_VAR_7, DEF_FUNCTION_TYPE_VAR_11): New macros.
2265
2266 2015-02-16 Marek Polacek <polacek@redhat.com>
2267
2268 PR c/65066
2269 * c-format.c (check_format_types): Handle null param.
2270
2271 2015-02-13 Marek Polacek <polacek@redhat.com>
2272
2273 PR c/65040
2274 * c-format.c (check_format_types): Don't warn about different
2275 signedness if the original value is in the range of WANTED_TYPE.
2276
2277 2015-02-12 Jason Merrill <jason@redhat.com>
2278
2279 PR c++/64956
2280 * c-opts.c (c_common_post_options): Change flag_abi_version from 0
2281 to the current highest version.
2282 * c-cppbuiltin.c (c_cpp_builtins): Assert that it isn't 0.
2283
2284 2015-02-04 Jakub Jelinek <jakub@redhat.com>
2285
2286 PR c/64824
2287 PR c/64868
2288 * c-omp.c (c_finish_omp_atomic): Use TRUNC_DIV_EXPR
2289 instead of RDIV_EXPR. Use build_binary_op instead of
2290 build2_loc.
2291
2292 2015-01-30 Joseph Myers <joseph@codesourcery.com>
2293
2294 * c-opts.c, c-pch.c, cppspec.c: All callers of fatal_error changed
2295 to pass input_location as first argument.
2296
2297 2015-01-23 Tom de Vries <tom@codesourcery.com>
2298
2299 PR libgomp/64672
2300 * c.opt (fopenacc): Mark as LTO option.
2301
2302 2015-01-23 Tom de Vries <tom@codesourcery.com>
2303
2304 PR libgomp/64707
2305 * c.opt (fopenmp): Mark as LTO option.
2306
2307 2015-01-21 Jakub Jelinek <jakub@redhat.com>
2308
2309 PR c/63307
2310 * cilk.c (fill_decls_vec): Only put decls into vector v.
2311 (compare_decls): Fix up formatting.
2312
2313 2015-01-21 Igor Zamyatin <igor.zamyatin@intel.com>
2314
2315 PR c/63307
2316 * cilk.c: Include vec.h.
2317 (struct cilk_decls): New structure.
2318 (wrapper_parm_cb): Split this function to...
2319 (fill_decls_vec): ...this...
2320 (create_parm_list): ...and this.
2321 (compare_decls): New function.
2322 (for_local_cb): Remove.
2323 (wrapper_local_cb): Ditto.
2324 (build_wrapper_type): For now first traverse and fill vector of
2325 declarations then sort it and then deal with sorted vector.
2326 (cilk_outline): Ditto.
2327 (declare_one_free_variable): Ditto.
2328
2329 2015-01-21 Jason Merrill <jason@redhat.com>
2330
2331 PR c++/64629
2332 * c-format.c (check_format_arg): Call decl_constant_value.
2333
2334 2015-01-19 Martin Liska <mliska@suse.cz>
2335
2336 * c-common.c (handle_noicf_attribute): New function.
2337
2338 2015-01-15 Thomas Schwinge <thomas@codesourcery.com>
2339 Bernd Schmidt <bernds@codesourcery.com>
2340 James Norris <jnorris@codesourcery.com>
2341 Cesar Philippidis <cesar@codesourcery.com>
2342 Ilmir Usmanov <i.usmanov@samsung.com>
2343 Jakub Jelinek <jakub@redhat.com>
2344
2345 * c.opt (fopenacc): New option.
2346 * c-cppbuiltin.c (c_cpp_builtins): Conditionally define _OPENACC.
2347 * c-common.c (DEF_FUNCTION_TYPE_VAR_8, DEF_FUNCTION_TYPE_VAR_12):
2348 New macros.
2349 * c-common.h (c_finish_oacc_wait): New prototype.
2350 * c-omp.c: Include "omp-low.h" and "gomp-constants.h".
2351 (c_finish_oacc_wait): New function.
2352 * c-pragma.c (oacc_pragmas): New variable.
2353 (c_pp_lookup_pragma, init_pragma): Handle it.
2354 * c-pragma.h (enum pragma_kind): Add PRAGMA_OACC_CACHE,
2355 PRAGMA_OACC_DATA, PRAGMA_OACC_ENTER_DATA, PRAGMA_OACC_EXIT_DATA,
2356 PRAGMA_OACC_KERNELS, PRAGMA_OACC_LOOP, PRAGMA_OACC_PARALLEL,
2357 PRAGMA_OACC_UPDATE, PRAGMA_OACC_WAIT.
2358 (enum pragma_omp_clause): Add PRAGMA_OACC_CLAUSE_ASYNC,
2359 PRAGMA_OACC_CLAUSE_AUTO, PRAGMA_OACC_CLAUSE_COLLAPSE,
2360 PRAGMA_OACC_CLAUSE_COPY, PRAGMA_OACC_CLAUSE_COPYIN,
2361 PRAGMA_OACC_CLAUSE_COPYOUT, PRAGMA_OACC_CLAUSE_CREATE,
2362 PRAGMA_OACC_CLAUSE_DELETE, PRAGMA_OACC_CLAUSE_DEVICE,
2363 PRAGMA_OACC_CLAUSE_DEVICEPTR, PRAGMA_OACC_CLAUSE_FIRSTPRIVATE,
2364 PRAGMA_OACC_CLAUSE_GANG, PRAGMA_OACC_CLAUSE_HOST,
2365 PRAGMA_OACC_CLAUSE_IF, PRAGMA_OACC_CLAUSE_NUM_GANGS,
2366 PRAGMA_OACC_CLAUSE_NUM_WORKERS, PRAGMA_OACC_CLAUSE_PRESENT,
2367 PRAGMA_OACC_CLAUSE_PRESENT_OR_COPY,
2368 PRAGMA_OACC_CLAUSE_PRESENT_OR_COPYIN,
2369 PRAGMA_OACC_CLAUSE_PRESENT_OR_COPYOUT,
2370 PRAGMA_OACC_CLAUSE_PRESENT_OR_CREATE, PRAGMA_OACC_CLAUSE_PRIVATE,
2371 PRAGMA_OACC_CLAUSE_REDUCTION, PRAGMA_OACC_CLAUSE_SELF,
2372 PRAGMA_OACC_CLAUSE_SEQ, PRAGMA_OACC_CLAUSE_VECTOR,
2373 PRAGMA_OACC_CLAUSE_VECTOR_LENGTH, PRAGMA_OACC_CLAUSE_WAIT,
2374 PRAGMA_OACC_CLAUSE_WORKER.
2375
2376 2015-01-14 Marcos Diaz <marcos.diaz@tallertechnologies.com>
2377
2378 * c-cppbuiltin.c (c_cpp_builtins): New cpp define __SSP_EXPLICIT__
2379 for the new option fstack-protector_explicit.
2380 * c-common.c (c_common_attribute_table): Add stack_protect attribute.
2381 (handle_stack_protect_attribute): New function.
2382
2383 2015-01-13 Martin Uecker <uecker@eecs.berkeley.edu>
2384
2385 * c.opt: New option -Warray-bounds=.
2386
2387 2015-01-09 Michael Collison <michael.collison@linaro.org>
2388
2389 * array-notation-common.c: Include hash-set.h, machmode.h,
2390 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
2391 fold-const.h, wide-int.h, and inchash.h due to flattening of tree.h.
2392 * c-ada-spec.c: Ditto.
2393 * c-cilkplus.c: Ditto.
2394 * c-common.c: Include input.h due to flattening of tree.h.
2395 Define macro GCC_C_COMMON_C.
2396 * c-common.h: Flatten tree.h header files into c-common.h.
2397 Remove include of tree-core.h.
2398 * c-cppbuiltin.c: Include hash-set.h, machmode.h,
2399 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
2400 fold-const.h, wide-int.h, and inchash.h due to
2401 flattening of tree.h.
2402 * c-dump.c: Ditto.
2403 * c-format.c: Flatten tree.h header files into c-common.h.
2404 * c-cppbuiltin.c: Include hash-set.h, machmode.h,
2405 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
2406 fold-const.h, wide-int.h, and inchash.h due to
2407 flattening of tree.h.
2408 * c-dump.c: Include hash-set.h, machmode.h,
2409 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
2410 fold-const.h, wide-int.h, and inchash.h due to
2411 flattening of tree.h.
2412 * c-format.c: Include hash-set.h, machmode.h,
2413 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
2414 fold-const.h, wide-int.h, inchash.h and real.h due to
2415 flattening of tree.h.
2416 * c-gimplify.c: Include hash-set.h, machmode.h,
2417 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
2418 fold-const.h, wide-int.h, and inchash.h due to
2419 flattening of tree.h.
2420 * cilk.c: Ditto.
2421 * c-lex.c: Ditto.
2422 * c-omp.c: Ditto.
2423 * c-opts.c: Ditto.
2424 * c-pch.c: Ditto.
2425 * c-ppoutput.c: Ditto.
2426 * c-pragma.c: Ditto.
2427 * c-pretty-print.c: Ditto.
2428 * c-semantics.c: Ditto.
2429 * c-ubsan.c: Ditto.
2430 * stub-objc.c: Ditto.
2431
2432 2015-01-08 Jason Merrill <jason@redhat.com>
2433
2434 * c-ubsan.c (ubsan_maybe_instrument_array_ref): Use
2435 do_ubsan_in_current_function.
2436 (ubsan_maybe_instrument_reference_or_call): Likewise.
2437 * c-ubsan.h: Declare it.
2438
2439 2015-01-08 Mike Stump <mikestump@comcast.net>
2440
2441 * c-common.c (c_common_attribute_table): Add no_sanitize_thread.
2442
2443 2015-01-07 Marek Polacek <polacek@redhat.com>
2444
2445 PR c/64440
2446 * c-common.c (c_fully_fold_internal): Warn for division and modulo
2447 if orig_op1 isn't INTEGER_CST, op1 is INTEGER_CST and is zero.
2448
2449 2015-01-05 Trevor Saunders <tsaunders@mozilla.com>
2450
2451 PR c++/31397
2452 * c.opt (Wsuggest-override): New option.
2453
2454 2015-01-05 Jakub Jelinek <jakub@redhat.com>
2455
2456 Update copyright years.
2457
2458 2015-01-05 Marek Polacek <polacek@redhat.com>
2459
2460 PR c/64423
2461 * c-common.c (warn_array_subscript_with_type_char): Add location_t
2462 parameter. Use it.
2463 * c-common.h (warn_array_subscript_with_type_char): Update
2464 declaration.
2465
2466 2014-12-20 Edward Smith-Rowland <3dw4rd@verizon.net>
2467
2468 * c-cppbuiltin.c (__cpp_sized_deallocation): Uncomment and move macro.
2469 Control macro with flag_sized_deallocation.
2470
2471 2014-12-20 Martin Uecker <uecker@eecs.berkeley.edu>
2472
2473 * c.opt (Wdiscarded-array-qualifiers): New option.
2474
2475 2014-12-19 Jakub Jelinek <jakub@redhat.com>
2476
2477 PR preprocessor/63831
2478 * c-cppbuiltin.c (c_cpp_builtins): Don't define __has_attribute
2479 and __has_cpp_attribute here.
2480 * c-ppoutput.c (init_pp_output): Set cb->has_attribute to
2481 c_common_has_attribute.
2482 * c-common.h (c_common_has_attribute): New prototype.
2483 * c-lex.c (init_c_lex): Set cb->has_attribute to
2484 c_common_has_attribute instead of cb_has_attribute.
2485 (get_token_no_padding): New function.
2486 (cb_has_attribute): Renamed to ...
2487 (c_common_has_attribute): ... this. No longer static. Use
2488 get_token_no_padding, require ()s, don't build TREE_LIST
2489 unnecessarily, fix up formatting, adjust diagnostics, call
2490 init_attributes.
2491
2492 2014-12-15 Jason Merrill <jason@redhat.com>
2493
2494 * c.opt (-fsized-deallocation, -Wc++14-compat): New.
2495 (-Wsized-deallocation): New.
2496 * c-opts.c (c_common_post_options): -fsized-deallocation defaults
2497 to on in C++14 and up.
2498
2499 2014-12-11 Jason Merrill <jason@redhat.com>
2500
2501 * c-cppbuiltin.c (c_cpp_builtins): Enable C++14 __cpp_constexpr.
2502
2503 * c-cppbuiltin.c (c_cpp_builtins): Define __cpp_runtime_arrays if
2504 we aren't complaining about VLAs.
2505
2506 2014-12-06 Marek Polacek <polacek@redhat.com>
2507
2508 PR tree-optimization/64183
2509 * c-gimplify.c (c_gimplify_expr): Don't convert the RHS of a
2510 shift-expression if it is integer_type_node. Use types_compatible_p.
2511
2512 2014-11-29 Jakub Jelinek <jakub@redhat.com>
2513
2514 * c-common.c (convert_vector_to_pointer_for_subscript): Remove NULL
2515 last argument from create_tmp_var_raw and create_tmp_var calls.
2516 * cilk.c (gimplify_cilk_spawn): Likewise.
2517 * c-omp.c (c_finish_omp_atomic): Likewise.
2518
2519 2014-11-28 Marek Polacek <polacek@redhat.com>
2520
2521 * c-ubsan.c (ubsan_instrument_shift): Use op1_utype for MINUS_EXPR
2522 instead of unsigned_type_node.
2523
2524 2014-11-28 Marek Polacek <polacek@redhat.com>
2525
2526 PR c/63862
2527 * c-ubsan.c (ubsan_instrument_shift): Change the type of a MINUS_EXPR
2528 to op1_utype.
2529 * c-gimplify.c (c_gimplify_expr): Convert right operand of a shift
2530 expression to unsigned_type_node.
2531
2532 2014-11-20 Mark Wielaard <mjw@redhat.com>
2533
2534 PR debug/38757
2535 * c-opts.c (set_std_c89): Set lang_hooks.name.
2536 (set_std_c99): Likewise.
2537 (set_std_c11): Likewise.
2538 (set_std_cxx98): Likewise.
2539 (set_std_cxx11): Likewise.
2540 (set_std_cxx14): Likewise.
2541 (set_std_cxx1z): Likewise.
2542
2543 2014-11-21 Jakub Jelinek <jakub@redhat.com>
2544
2545 PR target/63764
2546 * c-common.h (convert_vector_to_pointer_for_subscript): Change
2547 return type to bool.
2548 * c-common.c: Include gimple-expr.h.
2549 (convert_vector_to_pointer_for_subscript): Change return type to
2550 bool. If *vecp is not lvalue_p and has VECTOR_TYPE, return true
2551 and copy it into a TARGET_EXPR and use that instead of *vecp
2552 directly.
2553
2554 2014-11-19 David Malcolm <dmalcolm@redhat.com>
2555
2556 Merger of git branch "gimple-classes-v2-option-3".
2557 * ChangeLog.gimple-classes: New.
2558 * c-gimplify.c (add_block_to_enclosing): Strengthen local "stack"
2559 from being just a vec<gimple> to a vec<gbind *>.
2560
2561 2014-11-18 Jakub Jelinek <jakub@redhat.com>
2562
2563 PR sanitizer/63813
2564 * c-ubsan.c (ubsan_maybe_instrument_reference_or_call): Change type
2565 argument to ptype, set type to TREE_TYPE (ptype). Don't call
2566 get_pointer_alignment for non-pointers. Use ptype, or if it is
2567 reference type, corresponding pointer type, as type of kind
2568 argument.
2569 (ubsan_maybe_instrument_reference,
2570 ubsan_maybe_instrument_member_call): Adjust callers.
2571
2572 2014-11-15 Marek Polacek <polacek@redhat.com>
2573
2574 PR middle-end/63884
2575 * array-notation-common.c (is_sec_implicit_index_fn): Return false
2576 for NULL fndecl.
2577 (extract_array_notation_exprs): Return for NULL node.
2578
2579 2014-11-12 Joseph Myers <joseph@codesourcery.com>
2580
2581 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Define and
2582 undefine __NO_MATH_ERRNO__ based on changes to -fmath-errno state.
2583
2584 2014-11-12 Jakub Jelinek <jakub@redhat.com>
2585
2586 PR c/59708
2587 * c-common.c (check_builtin_function_arguments): Handle
2588 BUILT_IN_{ADD,SUB,MUL}_OVERFLOW.
2589
2590 2014-11-10 Andi Kleen <ak@linux.intel.com>
2591
2592 PR c/60804
2593 * c-common.h (check_no_cilk): Declare.
2594 * cilk.c (get_error_location): New function.
2595 (check_no_cilk): Dito.
2596
2597 2014-11-10 Andi Kleen <ak@linux.intel.com>
2598
2599 * cilk.c (recognize_spawn): Use expression location
2600 for error message.
2601
2602 2014-11-10 Paolo Carlini <paolo.carlini@oracle.com>
2603
2604 * c.opt ([Wshift-count-negative, Wshift-count-overflow]): Add.
2605
2606 2014-11-10 Edward Smith-Rowland <3dw4rd@verizon.net>
2607
2608 * c-cppbuiltin.c (__has_attribute, __has_cpp_attribute): New macros;
2609 (__cpp_rtti, __cpp_exceptions): New macros for C++98;
2610 (__cpp_range_based_for, __cpp_initializer_lists,
2611 __cpp_delegating_constructors, __cpp_nsdmi,
2612 __cpp_inheriting_constructors, __cpp_ref_qualifiers): New macros
2613 for C++11; (__cpp_attribute_deprecated): Remove in favor of
2614 __has_cpp_attribute.
2615 * c-lex.c (cb_has_attribute): New callback CPP function;
2616 (init_c_lex): Set has_attribute callback.
2617
2618 2014-11-04 Richard Biener <rguenther@suse.de>
2619
2620 * c-common.c (shorten_compare): Do not shorten mixed
2621 DFP and non-DFP compares.
2622
2623 2014-11-01 Edward Smith-Rowland <3dw4rd@verizon.net>
2624
2625 * g++.dg/cpp1y/feat-cxx11.C: Commentary and rearrangement of tests.
2626 * g++.dg/cpp1y/feat-cxx11-neg.C: Add aggregate NSDMI test.
2627 Commentary and rearrangement of tests.
2628 * g++.dg/cpp1y/feat-cxx14.C: Enable aggregate NSDMI test.
2629 Commentary and rearrangement of tests.
2630 * g++.dg/cpp1y/feat-cxx98-neg.C: Ditto
2631 * g++.dg/cpp1y/feat-cxx98.C: Commentary.
2632
2633 2014-10-29 Richard Sandiford <richard.sandiford@arm.com>
2634
2635 * c-common.c, c-common.h, c-cppbuiltin.c, c-lex.c: Remove redundant
2636 enum from machine_mode.
2637
2638 2014-10-28 Andrew MacLeod <amacleod@redhat.com>
2639
2640 * c-common.c: Adjust include files.
2641 * c-gimplify.c: Ditto.
2642 * cilk.c: Ditto.
2643 * c-pragma.c: Ditto.
2644 * c-ubsan.c: Ditto.
2645
2646 2014-10-27 Andrew MacLeod <amacleod@redhat.com>
2647
2648 * c-gimplify.c: Adjust include files.
2649
2650 2014-10-26 Manuel López-Ibáñez <manu@gcc.gnu.org>
2651
2652 PR c++/53061
2653 * c-opts.c (c_common_diagnostics_set_defaults): Renamed from
2654 c_common_initialize_diagnostics.
2655 * c-common.h: Likewise.
2656
2657 2014-10-24 Marek Polacek <polacek@redhat.com>
2658
2659 PR c/56980
2660 * c-pretty-print.c (c_pretty_printer::simple_type_specifier): Don't
2661 print "struct"/"union"/"enum" for typedefed names.
2662
2663 2014-10-23 Marek Polacek <polacek@redhat.com>
2664
2665 * c-ubsan.c (ubsan_instrument_shift): Perform the MINUS_EXPR
2666 in unsigned type.
2667
2668 2014-10-22 Jakub Jelinek <jakub@redhat.com>
2669 Yury Gribov <y.gribov@samsung.com>
2670
2671 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
2672 ubsan_instrument_vla): Check bits in flag_sanitize_recover bitmask
2673 instead of flag_sanitize_recover as bool flag.
2674
2675 2014-10-21 Kirill Yukhin <kirill.yukhin@intel.com>
2676
2677 * cilk.c: Revert previous change.
2678
2679 2014-10-20 Igor Zamyatin <igor.zamyatin@intel.com>
2680
2681 PR c/63307
2682 * cilk.c: Include vec.h.
2683 (struct cilk_decls): New structure.
2684 (wrapper_parm_cb): Split this function to...
2685 (fill_decls_vec): ...this...
2686 (create_parm_list): ...and this.
2687 (compare_decls): New function.
2688 (for_local_cb): Remove.
2689 (wrapper_local_cb): Ditto.
2690 (build_wrapper_type): For now first traverse and fill vector of
2691 declarations then sort it and then deal with sorted vector.
2692 (cilk_outline): Ditto.
2693 (declare_one_free_variable): Ditto.
2694
2695 2014-10-17 Marek Polacek <polacek@redhat.com>
2696
2697 * c-opts.c (c_common_post_options): Set warn_implicit_int.
2698 * c.opt (Wimplicit-int): Initialize to -1.
2699
2700 2014-10-16 Andrew MacLeod <amacleod@redhat.com>
2701
2702 * c-pragma.c: Adjust include files.
2703 * c-semantics.c: Likewise.
2704
2705 2014-10-16 DJ Delorie <dj@redhat.com>
2706
2707 * c-cppbuiltin.c (cpp_atomic_builtins): Don't assume pointers are
2708 multiples of bytes.
2709
2710 2014-10-14 Jason Merrill <jason@redhat.com>
2711
2712 PR c++/63455
2713 * c-common.h (CPP_PREPARSED_EXPR): New.
2714 (N_CP_TTYPES): Adjust.
2715
2716 2014-10-15 Marek Polacek <polacek@redhat.com>
2717
2718 * c-opts.c (c_common_init_options): Make -std=gnu11 the default for C.
2719
2720 2014-10-14 DJ Delorie <dj@redhat.com>
2721
2722 * c-pretty-print.c (pp_c_integer_constant): Check for all __intN
2723 types, not just __int128.
2724 * c-cppbuiltin.c (c_cpp_builtins): Add builtins for all __intN
2725 types, not just __int128.
2726 (cpp_atomic_builtins): Round pointer sizes up.
2727 (type_suffix): Use type precision, not specific types.
2728 * c-common.c (c_common_reswords): Remove __int128 special case.
2729 (c_common_type_for_size): Check for all __intN types, not just
2730 __int128.
2731 (c_common_type_for_mode): Likewise.
2732 (c_common_signed_or_unsigned_type): Likewise.
2733 (c_build_bitfield_integer_type): Likewise.
2734 (c_common_nodes_and_builtins): Likewise.
2735 (keyword_begins_type_specifier): Likewise.
2736 * c-common.h (rid): Remove RID_INT128 and add RID_INT_N_* for all
2737 __intN variants.
2738
2739 2014-10-12 Trevor Saunders <tsaunders@mozilla.com>
2740
2741 * c-common.c: Use hash_table instead of hashtab.
2742
2743 2014-10-06 Edward Smith-Rowland <3dw4rd@verizon.net>
2744
2745 * c-cppbuiltin.c: Move __cpp_attribute_deprecated to the
2746 C++11 section.
2747
2748 2014-10-03 Marc Glisse <marc.glisse@inria.fr>
2749
2750 PR c++/54427
2751 PR c++/57198
2752 PR c++/58845
2753 * c-common.c (warn_logical_operator): Punt for vectors.
2754
2755 2014-10-01 Edward Smith-Rowland <3dw4rd@verizon.net>
2756
2757 Implement SD-6: SG10 Feature Test Recommendations
2758 * c-cppbuiltin.c (c_cpp_builtins()): Define language feature
2759 macros and the __has_header macro.
2760
2761 2014-09-30 Jason Merrill <jason@redhat.com>
2762
2763 * c-common.h (enum rid): Add RID_IS_TRIVIALLY_ASSIGNABLE and
2764 RID_IS_TRIVIALLY_CONSTRUCTIBLE.
2765 * c-common.c (c_common_reswords): Add __is_trivially_copyable.
2766
2767 * c-common.h (enum rid): Add RID_IS_TRIVIALLY_COPYABLE.
2768 * c-common.c (c_common_reswords): Add __is_trivially_copyable.
2769
2770 * c-common.h (enum rid): Remove RID_IS_CONVERTIBLE_TO.
2771 * c-common.c (c_common_reswords): Remove __is_convertible_to.
2772
2773 2014-09-24 Marek Polacek <polacek@redhat.com>
2774
2775 PR c/61405
2776 PR c/53874
2777 * c-common.h (struct c_common_resword): Don't define CPP_KEYWORD.
2778
2779 2014-09-23 Andi Kleen <ak@linux.intel.com>
2780
2781 * c-common.c (handle_no_reorder_attribute): New function.
2782 (c_common_attribute_table): Add no_reorder attribute.
2783
2784 2014-09-22 Joseph Myers <joseph@codesourcery.com>
2785
2786 * c-cppbuiltin.c (c_cpp_builtins): Define
2787 __LIBGCC_*_EXCESS_PRECISION__ macros for supported floating-point
2788 modes.
2789
2790 2014-09-18 Joseph Myers <joseph@codesourcery.com>
2791
2792 * c-cppbuiltin.c (c_cpp_builtins): Define __LIBGCC_*_FUNC_EXT__
2793 for supported floating-point modes.
2794
2795 2014-09-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
2796
2797 * c.opt (Wpsabi): Use LangEnabledBy.
2798 * c-opts.c (c_common_handle_option): Do not handle here.
2799
2800 2014-09-12 Joseph Myers <joseph@codesourcery.com>
2801
2802 * c-cppbuiltin.c (c_cpp_builtins): Define __LIBGCC_HAS_%s_MODE__
2803 macros for floating-point modes.
2804
2805 2014-09-11 Marc Glisse <marc.glisse@inria.fr>
2806
2807 PR target/58757
2808 * c-cppbuiltin.c (builtin_define_float_constants): Correct
2809 __*_DENORM_MIN__ without denormals.
2810
2811 2014-09-10 Jakub Jelinek <jakub@redhat.com>
2812
2813 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
2814 ubsan_instrument_vla, ubsan_instrument_return): Adjust
2815 ubsan_create_data callers.
2816 (ubsan_instrument_bounds): Don't emit UBSAN_BOUNDS at all if
2817 index is constant or BIT_AND_EXPR with constant mask and is
2818 small enough for the bound.
2819 * c-gimplify.c (ubsan_walk_array_refs_r): For ADDR_EXPR of
2820 ARRAY_REF, make sure the inner ARRAY_REF is not walked again.
2821
2822 2014-09-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
2823
2824 * c.opt: Add CppReason to various flags.
2825 (Wdate-time): Re-sort.
2826 * c-common.c: Include c-common.h earlier.
2827 (struct reason_option_codes_t): Delete.
2828 (c_option_controlling_cpp_error): Prefix global type and struct
2829 with cpp_.
2830
2831 2014-09-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
2832
2833 * c.opt (Wnormalized): New.
2834 (Wnormalized=): Use Enum and Reject Negative.
2835 * c-opts.c (c_common_handle_option): Do not handle Wnormalized here.
2836
2837 2014-09-08 Joseph Myers <joseph@codesourcery.com>
2838
2839 * c-cppbuiltin.c (c_cpp_builtins): Define macros for mantissa
2840 digits of floating-point modes if -fbuilding-libgcc.
2841
2842 2014-09-05 Joseph Myers <joseph@codesourcery.com>
2843
2844 * c-cppbuiltin.c (c_cpp_builtins): Also define
2845 __LIBGCC_EH_TABLES_CAN_BE_READ_ONLY__,
2846 __LIBGCC_EH_FRAME_SECTION_NAME__, __LIBGCC_JCR_SECTION_NAME__,
2847 __LIBGCC_CTORS_SECTION_ASM_OP__, __LIBGCC_DTORS_SECTION_ASM_OP__,
2848 __LIBGCC_TEXT_SECTION_ASM_OP__, __LIBGCC_INIT_SECTION_ASM_OP__,
2849 __LIBGCC_INIT_ARRAY_SECTION_ASM_OP__,
2850 __LIBGCC_STACK_GROWS_DOWNWARD__,
2851 __LIBGCC_DONT_USE_BUILTIN_SETJMP__,
2852 __LIBGCC_DWARF_ALT_FRAME_RETURN_COLUMN__,
2853 __LIBGCC_DWARF_FRAME_REGISTERS__,
2854 __LIBGCC_EH_RETURN_STACKADJ_RTX__, __LIBGCC_JMP_BUF_SIZE__,
2855 __LIBGCC_STACK_POINTER_REGNUM__ and
2856 __LIBGCC_VTABLE_USES_DESCRIPTORS__ for -fbuilding-libgcc.
2857 (builtin_define_with_value): Handle backslash-escaping in string
2858 macro values.
2859
2860 2014-09-05 Richard Biener <rguenther@suse.de>
2861
2862 PR middle-end/63148
2863 * c-format.c (check_format_arg): Properly handle
2864 effectively signed POINTER_PLUS_EXPR offset.
2865
2866 2014-09-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
2867
2868 * c.opt (Wc90-c99-compat,Wc++-compat,Wcomment,Wendif-labels,
2869 Winvalid-pch,Wlong-long,Wmissing-include-dirs,Wmultichar,Wpedantic,
2870 (Wdate-time,Wtraditional,Wundef,Wvariadic-macros): Add CPP, Var
2871 and Init.
2872 * c-opts.c (c_common_handle_option): Do not handle here.
2873 (sanitize_cpp_opts): Likewise.
2874 * c-common.c (struct reason_option_codes_t): Handle
2875 CPP_W_C90_C99_COMPAT and CPP_W_PEDANTIC.
2876
2877 2014-09-03 Marek Polacek <polacek@redhat.com>
2878
2879 * c.opt (Wlogical-not-parentheses): Enable by -Wall.
2880
2881 2014-09-02 Jakub Jelinek <jakub@redhat.com>
2882 Balaji V. Iyer <balaji.v.iyer@intel.com>
2883 Igor Zamyatin <igor.zamyatin@intel.com>
2884
2885 * c-cilkplus.c (cilk_for_number_of_iterations): New function.
2886 * c-common.c (c_common_reswords): Added _Cilk_for.
2887 * c-common.h (enum rid): Added RID_CILK_FOR.
2888 (cilk_for_number_of_iterations): Add declaration.
2889 * c-omp.c (c_finish_omp_for): Added checks for CILK_SIMD and
2890 CILK_FOR.
2891 * c-pragma.c (init_pragma): Register "grainsize" pragma.
2892 * c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_GRAINSIZE.
2893
2894 2014-08-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
2895
2896 * c.opt (Wbuiltin-macro-redefined,Wdeprecated,Wendif-labels,
2897 Winvalid-pch,Wliteral-suffix,Wmissing-include-dirs,Wtrigraphs,
2898 Wundef): Use CPP, Var and Init.
2899 * c-opts.c (c_common_handle_option): Do not handle the above flags here.
2900
2901 2014-08-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
2902
2903 * c.opt (Wbuiltin-macro-redefined): Use CPP, Var and Init.
2904 * c-opts.c (c_common_handle_option): Do not handle here.
2905
2906 2014-08-25 Jason Merrill <jason@redhat.com>
2907
2908 * c.opt: Change -std=c++1y and -std=gnu++1y to be aliases for
2909 -std=c++14 and -std=gnu++14, rather than the reverse.
2910 * c-opts.c (c_common_handle_option): Change OPT_std_c__1y and
2911 OPT_std_gnu__1y to OPT_std_c__14 and OPT_std_gnu__14.
2912 * c-common.h (cxx_dialect): Remove cxx1y.
2913
2914 2014-08-23 Edward Smith-Rowland <3dw4rd@verizon.net>
2915
2916 * c-common.h (enum cxx_dialect): Add cxx14.
2917 * c-opts.c (set_std_cxx1y): Rename to set_std_cxx14; Use cxx14.
2918 * c-ubsan.c (ubsan_instrument_shift): Change comment and logic from
2919 cxx_dialect == cxx11 || cxx_dialect == cxx1y to cxx_dialect >= cxx11.
2920
2921 2014-08-22 Jason Merrill <jason@redhat.com>
2922
2923 * c.opt (std=gnu++17): Fix alias.
2924
2925 2014-08-22 Marek Polacek <polacek@redhat.com>
2926
2927 PR c++/62199
2928 * c-common.c (warn_logical_not_parentheses): Don't check LHS. Don't
2929 check for vector types. Drop LHS argument.
2930 * c-common.h (warn_logical_not_parentheses): Adjust.
2931
2932 2014-08-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
2933
2934 * c.opt (Wcomment): Use CPP, Var and LangEnabledBy.
2935 (Wmultichar): Likewise.
2936 (Wdate-time): Use C-family languages instead of Common. Use CPP
2937 and Var.
2938 * c-opts.c (c_common_handle_option): Do not handle the above
2939 options here.
2940 (sanitize_cpp_opts): Likewise.
2941
2942 2014-08-21 Manuel López-Ibáñez <manu@gcc.gnu.org>
2943
2944 PR fortran/44054
2945 * c-opts.c: Include tree-diagnostics.h.
2946 (c_diagnostic_finalizer): New.
2947 (c_common_initialize_diagnostics): Use it.
2948
2949 2014-08-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
2950
2951 PR preprocessor/51303
2952 * c-common.c (struct reason_option_codes_t option_codes):
2953 Add CPP_W_MISSING_INCLUDE_DIRS. Sort alphabetically.
2954
2955 2014-08-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
2956
2957 PR c/60975
2958 PR c/53063
2959 * c.opt (Wvariadic-macros): Use CPP and LangEnabledBy.
2960 * c-opts.c (c_common_handle_option): Call cpp_handle_option_auto.
2961 (c_common_post_options): Call init_global_opts_from_cpp.
2962 (sanitize_cpp_opts): Do not handle Wvariadic-macros here.
2963
2964 2014-08-19 Marek Polacek <polacek@redhat.com>
2965
2966 PR c++/62153
2967 * c-common.c (maybe_warn_bool_compare): New function.
2968 * c-common.h (maybe_warn_bool_compare): Declare.
2969 * c.opt (Wbool-compare): New option.
2970
2971 2014-08-19 Marek Polacek <polacek@redhat.com>
2972
2973 * c.opt (Wc99-c11-compat): New option.
2974
2975 2014-08-19 Marek Polacek <polacek@redhat.com>
2976
2977 * c-opts.c (sanitize_cpp_opts): Make warn_long_long be set according
2978 to warn_c90_c99_compat.
2979 * c.opt (Wc90-c99-compat, Wdeclaration-after-statement): Initialize
2980 to -1.
2981
2982 2014-08-19 Manuel López-Ibáñez <manu@gcc.gnu.org>
2983 Steven Bosscher <steven@gcc.gnu.org>
2984
2985 PR c/52952
2986 * c-format.c: Add extra_arg_loc and format_string_loc to struct
2987 format_check_results.
2988 (check_function_format): Use true and add comment for boolean
2989 argument.
2990 (finish_dollar_format_checking): Use explicit location when warning.
2991 (check_format_info): Likewise.
2992 (check_format_arg): Set extra_arg_loc and format_string_loc.
2993 (check_format_info_main): Use explicit location when warning.
2994 (check_format_types): Pass explicit location.
2995 (format_type_warning): Likewise.
2996
2997 2014-08-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
2998
2999 PR fortran/44054
3000 * c-format.c: Handle Fortran flags.
3001
3002 2014-08-12 Igor Zamyatin <igor.zamyatin@intel.com>
3003
3004 PR other/61962
3005 * array-notation-common.c (find_rank): Added handling for other
3006 types of references.
3007
3008 2014-08-10 Marek Polacek <polacek@redhat.com>
3009
3010 PR c/51849
3011 * c-opts.c (sanitize_cpp_opts): Pass warn_c90_c99_compat to libcpp.
3012 * c.opt (Wc90-c99-compat): Add option.
3013
3014 2014-08-07 Trevor Saunders <tsaunders@mozilla.com>
3015
3016 * c-gimplify.c, cilk.c: Remove includes of pointer-set.h.
3017
3018 2014-08-03 Marek Polacek <polacek@redhat.com>
3019
3020 * c-common.c (check_case_value): Add location_t parameter. Use it.
3021 (c_add_case_label): Pass loc to check_case_value.
3022
3023 2014-08-02 Trevor Saunders <tsaunders@mozilla.com>
3024
3025 * cilk.c: Use hash_map instead of pointer_map.
3026
3027 2014-08-02 Trevor Saunders <tsaunders@mozilla.com>
3028
3029 * c-gimplify.c: Use hash_set instead of pointer_set.
3030
3031 2014-08-01 Igor Zamyatin <igor.zamyatin@intel.com>
3032
3033 PR middle-end/61455
3034 * array-notation-common.c (extract_array_notation_exprs): Handling
3035 of DECL_EXPR added.
3036
3037 2014-08-01 Jakub Jelinek <jakub@redhat.com>
3038
3039 * c-common.h (min_align_of_type): Removed prototype.
3040 * c-common.c (min_align_of_type): Removed.
3041 * c-ubsan.h (ubsan_maybe_instrument_reference,
3042 ubsan_maybe_instrument_member_call): New prototypes.
3043 * c-ubsan.c: Include stor-layout.h and builtins.h.
3044 (ubsan_maybe_instrument_reference_or_call,
3045 ubsan_maybe_instrument_reference, ubsan_maybe_instrument_call): New
3046 functions.
3047
3048 2014-07-31 Marc Glisse <marc.glisse@inria.fr>
3049
3050 PR c++/60517
3051 * c.opt (-Wreturn-local-addr): Move to common.opt.
3052
3053 2014-07-30 Jason Merrill <jason@redhat.com>
3054
3055 PR c++/61659
3056 PR c++/61687
3057 Revert:
3058 * c.opt (-fuse-all-virtuals): New.
3059
3060 2014-07-30 Tom Tromey <tromey@redhat.com>
3061
3062 PR c/59855
3063 * c.opt (Wdesignated-init): New option.
3064 * c-common.c (c_common_attribute_table): Add "designated_init".
3065 (handle_designated_init): New function.
3066
3067 2014-07-24 Marek Polacek <polacek@redhat.com>
3068
3069 PR c/57653
3070 * c-opts.c (c_finish_options): If -imacros is in effect, return.
3071
3072 2014-07-16 Dodji Seketeli <dodji@redhat.com>
3073
3074 PR preprocessor/60723 - missing system-ness marks for macro tokens
3075 * c-ppoutput.c (struct print::prev_was_system_token): New data
3076 member.
3077 (init_pp_output): Initialize it.
3078 (maybe_print_line_1, maybe_print_line, print_line_1, print_line)
3079 (do_line_change): Return a flag saying if a line marker was
3080 emitted or not.
3081 (scan_translation_unit): Detect if the system-ness of the token we
3082 are about to emit is different from the one of the previously
3083 emitted token. If so, emit a line marker. Avoid emitting useless
3084 adjacent line markers. Avoid emitting line markers for tokens
3085 originating from the expansion of built-in macros.
3086 (scan_translation_unit_directives_only): Adjust.
3087
3088 2014-07-15 Marek Polacek <polacek@redhat.com>
3089
3090 * c-ubsan.c (ubsan_instrument_bounds): Don't instrument if
3091 TYPE_MAX_VALUE is NULL.
3092
3093 2014-07-14 Jakub Jelinek <jakub@redhat.com>
3094
3095 PR middle-end/61294
3096 * c.opt (Wmemset-transposed-args): New warning.
3097
3098 2014-07-10 Jason Merrill <jason@redhat.com>
3099
3100 PR c++/61659
3101 PR c++/61687
3102 * c.opt (-fuse-all-virtuals): New.
3103
3104 2014-07-09 Richard Biener <rguenther@suse.de>
3105
3106 PR c-family/61741
3107 * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
3108 using unsigned arithmetic if overflow does not wrap instead of
3109 if overflow is undefined.
3110
3111 2014-07-06 Marek Polacek <polacek@redhat.com>
3112
3113 PR c/6940
3114 * c.opt (Wsizeof-array-argument): New option.
3115
3116 2014-07-03 Jakub Jelinek <jakub@redhat.com>
3117
3118 * c-ada-spec.c (dump_ada_nodes): Don't call qsort if
3119 comments->count <= 1, as comments->entries might be NULL.
3120
3121 2014-07-01 Marek Polacek <polacek@redhat.com>
3122
3123 * c.opt (Wint-conversion): New option.
3124
3125 2014-07-01 Marek Polacek <polacek@redhat.com>
3126
3127 PR c/58286
3128 * c.opt (Wincompatible-pointer-types): New option.
3129
3130 2014-06-30 Paolo Carlini <paolo.carlini@oracle.com>
3131
3132 PR c++/51400
3133 * c-common.c (handle_noreturn_attribute, handle_const_attribute):
3134 Do not discard TYPE_QUALS of type.
3135
3136 2014-06-26 Jason Merrill <jason@redhat.com>
3137
3138 * c-common.h (enum cxx_dialect): Add cxx1z.
3139 * c.opt (std=c++1z, std=c++17, std=gnu++1z, std=gnu++17): New.
3140 * c-opts.c (c_common_handle_option, set_std_cxx1z): Handle it.
3141
3142 2014-06-26 Teresa Johnson <tejohnson@google.com>
3143
3144 * c-common.h (get_dump_info): Declare.
3145 * c-gimplify.c (c_genericize): Use saved dump files.
3146 * c-opts.c (c_common_parse_file): Begin and end dumps
3147 once around parsing invocation.
3148 (get_dump_info): New function.
3149
3150 2014-06-23 Marek Polacek <polacek@redhat.com>
3151 Andrew MacLeod <amacleod@redhat.com>
3152
3153 PR c/61553
3154 * c-common.c (get_atomic_generic_size): Don't segfault if the
3155 type doesn't have a size.
3156
3157 2014-06-20 Marek Polacek <polacek@redhat.com>
3158
3159 * c-gimplify.c: Include "c-ubsan.h" and "pointer-set.h".
3160 (ubsan_walk_array_refs_r): New function.
3161 (c_genericize): Instrument array bounds.
3162 * c-ubsan.c: Include "internal-fn.h".
3163 (ubsan_instrument_division): Mark instrumented arrays as having
3164 side effects. Adjust ubsan_type_descriptor call.
3165 (ubsan_instrument_shift): Likewise.
3166 (ubsan_instrument_vla): Adjust ubsan_type_descriptor call.
3167 (ubsan_instrument_bounds): New function.
3168 (ubsan_array_ref_instrumented_p): New function.
3169 (ubsan_maybe_instrument_array_ref): New function.
3170 * c-ubsan.h (ubsan_instrument_bounds): Declare.
3171 (ubsan_array_ref_instrumented_p): Declare.
3172 (ubsan_maybe_instrument_array_ref): Declare.
3173
3174 2014-06-20 Hale Wang <hale.wang@arm.com>
3175
3176 PR lto/61123
3177 * c.opt (fshort-enums): Add to LTO.
3178 * c.opt (fshort-wchar): Likewise.
3179
3180 2014-06-16 Marek Polacek <polacek@redhat.com>
3181
3182 PR c/60439
3183 * c.opt (Wswitch-bool): Add Var.
3184
3185 2014-06-12 Jakub Jelinek <jakub@redhat.com>
3186
3187 PR middle-end/61486
3188 * c-omp.c (c_omp_split_clauses): Don't crash on firstprivate in
3189 #pragma omp target teams or
3190 #pragma omp {,target }teams distribute simd.
3191
3192 2014-06-12 Jason Merrill <jason@redhat.com>
3193
3194 * c.opt (Wabi=, fabi-compat-version): New.
3195 * c-opts.c (c_common_handle_option): Handle -Wabi=.
3196 (c_common_post_options): Handle flag_abi_compat_version default.
3197 Disallow -fabi-compat-version=1.
3198 * c-common.h (abi_version_crosses): New.
3199
3200 2014-06-11 Jan Hubicka <hubicka@ucw.cz>
3201
3202 * c-common.c (handle_section_attribute): Update handling for
3203 section names that are no longer trees.
3204
3205 2014-06-10 Jakub Jelinek <jakub@redhat.com>
3206
3207 PR fortran/60928
3208 * c-pragma.c (omp_pragmas_simd): Move PRAGMA_OMP_TASK...
3209 (omp_pragmas): ... back here.
3210
3211 2014-06-05 Marek Polacek <polacek@redhat.com>
3212
3213 PR c/49706
3214 * c-common.c (warn_logical_not_parentheses): New function.
3215 * c-common.h (warn_logical_not_parentheses): Declare.
3216 * c.opt (Wlogical-not-parentheses): New option.
3217
3218 2014-06-04 Marek Polacek <polacek@redhat.com>
3219
3220 PR c/30020
3221 * c-common.c (check_case_bounds): Add location parameter.
3222 Use it.
3223 (c_add_case_label): Pass loc to check_case_bounds.
3224
3225 2014-06-03 Marek Polacek <polacek@redhat.com>
3226
3227 PR c/60439
3228 * c.opt (Wswitch-bool): New option.
3229
3230 2014-05-22 Thomas Schwinge <thomas@codesourcery.com>
3231
3232 * c-common.h (c_omp_sharing_predetermined, c_omp_remap_decl):
3233 Remove prototypes.
3234 (record_types_used_by_current_var_decl): Move prototype to where
3235 it belongs.
3236
3237 * c-common.c (DEF_FUNCTION_TYPE_0, DEF_FUNCTION_TYPE_6)
3238 (DEF_FUNCTION_TYPE_7, DEF_FUNCTION_TYPE_8)
3239 (DEF_FUNCTION_TYPE_VAR_5): Cosmetic fixes.
3240
3241 2014-05-21 Richard Sandiford <rsandifo@linux.vnet.ibm.com>
3242
3243 * c-common.h (CTI_VOID_ZERO, void_zero_node): Delete.
3244 * c-common.c (c_common_nodes_and_builtins): Don't initialize
3245 void_zero_node.
3246 * c-pretty-print.c (pp_c_void_constant): New function.
3247 (c_pretty_printer::constant, c_pretty_printer::primary_expression)
3248 (c_pretty_printer::expression): Handle VOID_CST.
3249 * cilk.c (extract_free_variables): Likewise.
3250 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift)
3251 (ubsan_instrument_vla): Use void_node instead of void_zero_node.
3252
3253 2014-05-17 Trevor Saunders <tsaunders@mozilla.com>
3254
3255 * c-common.h (sorted_fields_type): Remove variable_size GTY attribute.
3256 * c-pragma.c (push_alignment): Adjust.
3257 (handle_pragma_push_options): Likewise.
3258
3259 2014-05-09 Marek Polacek <polacek@redhat.com>
3260
3261 PR c/50459
3262 * c-common.c (check_user_alignment): Return -1 if alignment is error
3263 node.
3264 (handle_aligned_attribute): Don't call default_conversion on
3265 FUNCTION_DECLs.
3266 (handle_vector_size_attribute): Likewise.
3267 (handle_tm_wrap_attribute): Handle case when wrap_decl is error node.
3268 (handle_sentinel_attribute): Call default_conversion and allow even
3269 integral types as an argument.
3270
3271 2014-05-08 Marek Polacek <polacek@redhat.com>
3272
3273 PR c/61053
3274 * c-common.c (min_align_of_type): New function factored out from...
3275 (c_sizeof_or_alignof_type): ...here.
3276 * c-common.h (min_align_of_type): Declare.
3277
3278 2014-05-08 Marek Polacek <polacek@redhat.com>
3279
3280 PR c/61077
3281 * c-common.c (check_main_parameter_types): Warn for _Atomic-qualified
3282 parameter type of main.
3283
3284 2014-05-07 DJ Delorie <dj@redhat.com>
3285
3286 * c-cppbuiltin.c (print_bits_of_hex): New.
3287 (builtin_define_type_minmax): Print values using hex so as not to
3288 require a pre-computed list of string values.
3289
3290 2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
3291 Mike Stump <mikestump@comcast.net>
3292 Richard Sandiford <rdsandiford@googlemail.com>
3293
3294 * c-ada-spec.c: Include wide-int.h.
3295 (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Remove.
3296 (dump_generic_ada_node): Use wide-int interfaces.
3297 * c-common.c: Include wide-int-print.h.
3298 (shorten_compare): Use wide-int interfaces and tree_int_cst_lt.
3299 (pointer_int_sum): Use wide-int interfaces.
3300 (c_common_nodes_and_builtins): Use make_int_cst.
3301 (match_case_to_enum_1): Use tree_fits_uhwi_p and tree_fits_shwi_p.
3302 (handle_alloc_size_attribute): Use wide-int interfaces.
3303 (get_nonnull_operand): Likewise.
3304 * c-format.c (get_constant): Use tree_fits_uhwi_p.
3305 * c-lex.c: Include wide-int.h.
3306 (narrowest_unsigned_type): Take a widest_int rather than two
3307 HOST_WIDE_INTs.
3308 (narrowest_signed_type): Likewise.
3309 (interpret_integer): Update accordingly. Use wide-int interfaces.
3310 (lex_charconst): Use wide-int interfaces.
3311 * c-pretty-print.c: Include wide-int.h.
3312 (pp_c_integer_constant): Use wide-int interfaces.
3313 * cilk.c (declare_one_free_variable): Use tree_int_cst_lt instead of
3314 INT_CST_LT_UNSIGNED.
3315
3316 2014-05-06 Richard Biener <rguenther@suse.de>
3317
3318 * c-opts.c (c_common_post_options): For -freestanding,
3319 -fno-hosted and -fno-builtin disable pattern recognition
3320 if not enabled explicitely.
3321
3322 2014-05-02 Marek Polacek <polacek@redhat.com>
3323
3324 * c.opt (Wsizeof-pointer-memaccess): Describe option.
3325
3326 2014-05-01 Marek Polacek <polacek@redhat.com>
3327
3328 PR c/43245
3329 * c.opt (Wdiscarded-qualifiers): Add.
3330
3331 2014-04-30 Marek Polacek <polacek@redhat.com>
3332
3333 * c-ubsan.c (ubsan_instrument_division): Handle REAL_TYPEs. Perform
3334 INT_MIN / -1 sanitization only for integer types.
3335
3336 2014-04-25 Marek Polacek <polacek@redhat.com>
3337
3338 PR c/18079
3339 * c-common.c (handle_noinline_attribute): Warn if the attribute
3340 conflicts with always_inline attribute.
3341 (handle_always_inline_attribute): Warn if the attribute conflicts
3342 with noinline attribute.
3343
3344 2014-04-25 Marek Polacek <polacek@redhat.com>
3345
3346 PR c/60156
3347 * c-common.c (check_main_parameter_types): Warn about variadic main.
3348
3349 2014-04-24 Mike Stump <mikestump@comcast.net>
3350
3351 * c.opt (Wshadow-ivar): Default to on.
3352
3353 2014-04-24 Dimitris Papavasiliou <dpapavas@gmail.com>
3354
3355 * c.opt (Wshadow-ivar, flocal-ivars, fivar-visibility): Add.
3356
3357 2014-04-23 Marek Polacek <polacek@redhat.com>
3358
3359 * c-common.c (handle_tm_wrap_attribute): Tweak error message.
3360
3361 2014-04-22 Jakub Jelinek <jakub@redhat.com>
3362
3363 PR sanitizer/60275
3364 * c-ubsan.c (ubsan_instrument_return): Return __builtin_trap ()
3365 if flag_sanitize_undefined_trap_on_error.
3366 (ubsan_instrument_division, ubsan_instrument_shift,
3367 ubsan_instrument_vla): Likewise. Use __ubsan_handle_*_abort ()
3368 if !flag_sanitize_recover.
3369
3370 2014-04-22 Marc Glisse <marc.glisse@inria.fr>
3371
3372 PR libstdc++/43622
3373 * c-common.c (registered_builtin_types): Make non-static.
3374 * c-common.h (registered_builtin_types): Declare.
3375
3376 2014-04-14 Richard Biener <rguenther@suse.de>
3377 Marc Glisse <marc.glisse@inria.fr>
3378
3379 PR c/60819
3380 * c-common.c (convert_vector_to_pointer_for_subscript): Properly
3381 apply may-alias the scalar pointer type when applicable.
3382
3383 2014-04-12 Igor Zamyatin <igor.zamyatin@intel.com>
3384
3385 PR middle-end/60467
3386 * cilk.c (cilk_set_spawn_marker): Remove FUNCTION_DECL
3387 as possible argument for Cilk_spawn.
3388
3389 2014-04-11 Tobias Burnus <burnus@net-b.de>
3390
3391 PR c/60194
3392 * c.opt (Wformat-signedness): Add
3393 * c-format.c(check_format_types): Use it.
3394
3395 2014-04-11 Jason Merrill <jason@redhat.com>
3396
3397 PR c++/57926
3398 * c-common.c (sync_resolve_size, get_atomic_generic_size): Call
3399 default_conversion for an array argument.
3400
3401 2014-04-08 Marek Polacek <polacek@redhat.com>
3402
3403 PR sanitizer/60745
3404 * c-ubsan.c: Include asan.h.
3405 (ubsan_instrument_return): Call initialize_sanitizer_builtins.
3406
3407 2014-04-03 Nathan Sidwell <nathan@codesourcery.com>
3408
3409 * c.opt (Wnon-virtual-dtor): Auto set when Weffc++.
3410
3411 2014-04-02 Marek Polacek <polacek@redhat.com>
3412
3413 * c-common.h (c_expand_expr): Remove declaration.
3414
3415 2014-03-28 Jakub Jelinek <jakub@redhat.com>
3416
3417 PR c++/60689
3418 * c-common.c (add_atomic_size_parameter): When creating new
3419 params vector, push the size argument first.
3420
3421 2014-03-26 Jakub Jelinek <jakub@redhat.com>
3422
3423 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
3424 ubsan_instrument_vla, ubsan_instrument_return): Adjust
3425 ubsan_create_data callers.
3426
3427 2014-03-22 Jakub Jelinek <jakub@redhat.com>
3428
3429 PR debug/60603
3430 * c-opts.c (c_finish_options): Restore cb_file_change call to
3431 <built-in>.
3432
3433 2014-03-13 Jakub Jelinek <jakub@redhat.com>
3434
3435 PR middle-end/36282
3436 * c-pragma.c (apply_pragma_weak): Only look at
3437 TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl)) if
3438 DECL_ASSEMBLER_NAME_SET_P (decl).
3439 (maybe_apply_pending_pragma_weaks): Exit early if
3440 vec_safe_is_empty (pending_weaks) rather than only when
3441 !pending_weaks.
3442 (maybe_apply_pragma_weak): Likewise. If !DECL_ASSEMBLER_NAME_SET_P,
3443 set assembler name back to NULL afterwards.
3444
3445 2014-03-11 Jason Merrill <jason@redhat.com>
3446
3447 * c.opt: Add -std=gnu++14.
3448
3449 2014-03-11 Ian Bolton <ian.bolton@arm.com>
3450
3451 * c-opts.c (c_common_post_options): Don't override
3452 -ffp-contract=fast if unsafe-math-optimizations is on.
3453
3454 2014-03-08 Paulo Matos <paulo@matos-sorge.com>
3455
3456 * c.opt: Enable LTO FE for fshort-double.
3457
3458 2014-03-07 Jason Merrill <jason@redhat.com>
3459
3460 * c.opt: Add -std=c++14.
3461
3462 2014-03-06 Marek Polacek <polacek@redhat.com>
3463
3464 PR c/60197
3465 * cilk.c (contains_cilk_spawn_stmt): New function.
3466 (contains_cilk_spawn_stmt_walker): Likewise.
3467 (recognize_spawn): Give error on invalid use of _Cilk_spawn.
3468 * c-common.h (contains_cilk_spawn_stmt): Add declaration.
3469
3470 2014-03-03 Jakub Jelinek <jakub@redhat.com>
3471
3472 * c-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_SIMD.
3473 (init_pragma): Call cpp_register_deferred_pragma for PRAGMA_CILK_SIMD
3474 even when flag_preprocess_only.
3475
3476 2014-02-26 Jason Merrill <jason@redhat.com>
3477
3478 PR c++/59231
3479 PR c++/11586
3480 * c-common.c (shorten_compare): Don't check
3481 c_inhibit_evaluation_warnings.
3482
3483 2014-02-19 Jakub Jelinek <jakub@redhat.com>
3484
3485 PR c/37743
3486 * c-common.c (c_common_nodes_and_builtins): When initializing
3487 c_uint{16,32,64}_type_node, also set corresponding
3488 uint{16,32,64}_type_node to the same value.
3489
3490 PR c++/60267
3491 * c-pragma.c (init_pragma): Don't call cpp_register_deferred_pragma
3492 for PRAGMA_IVDEP if flag_preprocess_only.
3493
3494 2014-02-12 Jakub Jelinek <jakub@redhat.com>
3495
3496 PR c/60101
3497 * c-common.c (merge_tlist): If copy is true, call new_tlist,
3498 if false, add ADD itself, rather than vice versa.
3499 (verify_tree): For COND_EXPR, don't call merge_tlist with non-zero
3500 copy. For SAVE_EXPR, only call merge_tlist once.
3501
3502 2014-02-08 Jakub Jelinek <jakub@redhat.com>
3503
3504 PR middle-end/60092
3505 * c-common.c (handle_alloc_size_attribute): Use tree_fits_uhwi_p
3506 and tree_to_uhwi.
3507 (handle_alloc_align_attribute, handle_assume_aligned_attribute): New
3508 functions.
3509 (c_common_attribute_table): Add alloc_align and assume_aligned
3510 attributes.
3511
3512 2014-02-06 Marek Polacek <polacek@redhat.com>
3513
3514 PR c/60087
3515 * c-common.c (warn_for_sign_compare): Call warning_at with location
3516 instead of warning.
3517
3518 2014-02-05 Marek Polacek <polacek@redhat.com>
3519
3520 PR c/53123
3521 * c-omp.c (c_finish_omp_atomic): Remove unreachable return
3522 statement.
3523
3524 2014-02-04 Marek Polacek <polacek@redhat.com>
3525
3526 PR c/60036
3527 * c-common.c (conversion_warning): Unwrap C_MAYBE_CONST_EXPR and/or
3528 SAVE_EXPR.
3529
3530 2014-02-03 Marc Glisse <marc.glisse@inria.fr>
3531
3532 PR c++/53017
3533 PR c++/59211
3534 * c-common.c (handle_aligned_attribute, handle_alloc_size_attribute,
3535 handle_vector_size_attribute, handle_nonnull_attribute): Call
3536 default_conversion on the attribute argument.
3537 (handle_nonnull_attribute): Increment the argument number.
3538
3539 2014-01-31 Marek Polacek <polacek@redhat.com>
3540
3541 PR c/59963
3542 * c-common.c (add_atomic_size_parameter): Pass vNULL to
3543 build_function_call_vec.
3544 (resolve_overloaded_builtin): Likewise.
3545 * c-common.h (build_function_call_vec): Adjust declaration.
3546
3547 2014-01-30 Marek Polacek <polacek@redhat.com>
3548
3549 PR c/59940
3550 * c-common.h (unsafe_conversion_p): Adjust declaration.
3551 (warnings_for_convert_and_check): Likewise.
3552 (convert_and_check): Likewise.
3553 * c-common.c (unsafe_conversion_p): Add location parameter. Call
3554 expansion_point_location_if_in_system_header on it.
3555 (warnings_for_convert_and_check): Add location parameter. Call
3556 expansion_point_location_if_in_system_header on it. Use it.
3557 (convert_and_check): Add location parameter. Use it.
3558 (conversion_warning): Likewise.
3559 (c_add_case_label): Adjust convert_and_check calls.
3560 (scalar_to_vector): Adjust unsafe_conversion_p calls.
3561
3562 2014-01-24 Balaji V. Iyer <balaji.v.iyer@intel.com>
3563
3564 * c-common.c (c_define_builtins): Replaced flag_enable_cilkplus with
3565 flag_cilkplus.
3566 * c-pragma.c (init_pragma): Likewise.
3567 * c.opt: Likewise.
3568
3569 2014-01-23 Marek Polacek <polacek@redhat.com>
3570
3571 PR c/59846
3572 * c-common.c (shorten_compare): Add location_t parameter.
3573 * c-common.h (shorten_binary_op): Adjust declaration.
3574
3575 2014-01-23 Marek Polacek <polacek@redhat.com>
3576
3577 PR c/58346
3578 * c-common.c (pointer_to_zero_sized_aggr_p): New function.
3579 * c-common.h: Declare it.
3580
3581 2014-01-20 Eric Botcazou <ebotcazou@adacore.com>
3582
3583 * c-ada-spec.h (dump_ada_specs): Revert prototype change.
3584 * c-ada-spec.c (dump_ads): Likewise.
3585 (cpp_check): Likewise.
3586 (dump_ada_specs): Likewise.
3587
3588 2014-01-15 Laurent Alfonsi <laurent.alfonsi@st.com>
3589
3590 PR c++/49718
3591 * c-common.c (handle_no_instrument_function_attribute): Allow
3592 no_instrument_function attribute in class member
3593 definition/declaration.
3594
3595 2014-01-15 Jakub Jelinek <jakub@redhat.com>
3596
3597 PR c/58943
3598 * c-omp.c (c_finish_omp_atomic): Set in_late_binary_op around
3599 build_modify_expr with non-NOP_EXPR opcode. Handle return from it
3600 being COMPOUND_EXPR.
3601 (c_finish_omp_for): Handle incr being COMPOUND_EXPR with first
3602 operand a SAVE_EXPR and second MODIFY_EXPR.
3603
3604 2014-01-09 Jakub Jelinek <jakub@redhat.com>
3605
3606 PR target/58115
3607 * c-pch.c (c_common_write_pch): Call
3608 prepare_target_option_nodes_for_pch.
3609
3610 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
3611
3612 Update copyright years
3613
3614 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
3615
3616 * array-notation-common.c, c-cilkplus.c: Use the standard form for
3617 the copyright notice.
3618
3619 2013-12-28 Eric Botcazou <ebotcazou@adacore.com>
3620
3621 * c-ada-spec.c (print_constructor): New function.
3622 (print_destructor): Retrieve the origin of the destructor.
3623 (print_ada_declaration): Revamp handling of constructors/destructors.
3624
3625 2013-12-23 Stuart Hastings <stuart@apple.com>
3626 Bill Maddox <maddox@google.com>
3627 Jason Merrill <jason@redhat.com>
3628
3629 * c.opt: Add -fdeclone-ctor-dtor.
3630 * c-opts.c (c_common_post_options): Default to on iff -Os.
3631
3632 2013-12-18 Balaji V. Iyer <balaji.v.iyer@intel.com>
3633
3634 * c-common.c (c_common_attribute_table): Added "cilk simd function"
3635 attribute.
3636 * c-pragma.h (enum pragma_cilk_clause): Remove.
3637 (enum pragma_omp_clause): Added the following fields:
3638 PRAGMA_CILK_CLAUSE_NOMASK, PRAGMA_CILK_CLAUSE_MASK,
3639 PRAGMA_CILK_CLAUSE_VECTORLENGTH, PRAGMA_CILK_CLAUSE_NONE,
3640 PRAGMA_CILK_CLAUSE_LINEAR, PRAGMA_CILK_CLAUSE_PRIVATE,
3641 PRAGMA_CILK_CLAUSE_FIRSTPRIVATE, PRAGMA_CILK_CLAUSE_LASTPRIVATE,
3642 PRAGMA_CILK_CLAUSE_UNIFORM.
3643
3644
3645 2013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com>
3646
3647 * cilk.c (cilk_outline): Made this function non-static.
3648 (gimplify_cilk_spawn): Removed pre_p and post_p arguments.
3649 (create_cilk_wrapper): Added a new parameter: a function pointer.
3650 (c_install_body_w_frame_cleanup): Remove
3651 (extract_free_variables): Added VEC_INIT_EXPR and CONSTRUCTOR case.
3652 * c-common.h (cilk_outline): New prototype.
3653 (gimplify_cilk_spawn): Removed two parameters.
3654 (cilk_install_body_with_frame_cleanup): New prototype.
3655 * c-gimplify.c (c_gimplify_expr): Added MODIFY_EXPR, CALL_EXPR and
3656 CILK_SPAWN_STMT case.
3657
3658 2013-12-11 Bernd Schmidt <bernds@codesourcery.com>
3659
3660 * c-common.c (c_fully_fold_internal): Handle ADDR_SPACE_CONVERT_EXPR.
3661
3662 * c-common.h (enum c_tree_index): Remove CTI_INT_ARRAY_TYPE.
3663 (int_array_type_node): Remove.
3664 * c-common.c (c_common_nodes_and_builtins): Don't build it.
3665
3666 2013-12-05 Marek Polacek <polacek@redhat.com>
3667
3668 PR c/52023
3669 * c-common.c (c_sizeof_or_alignof_type): Move a declaration into
3670 [ADJUST_FIELD_ALIGN].
3671
3672 2013-12-04 Joseph Myers <joseph@codesourcery.com>
3673
3674 PR c/52023
3675 * c-common.c (c_sizeof_or_alignof_type): Add parameter min_alignof
3676 and check field alignment if set.
3677 * c-common.h (c_sizeof_or_alignof_type): Update prototype.
3678 (c_sizeof, c_alignof): Update calls to c_sizeof_or_alignof_type.
3679
3680 2013-12-04 Jakub Jelinek <jakub@redhat.com>
3681 Marek Polacek <polacek@redhat.com>
3682
3683 * c-gimplify.c (c_gimplify_expr): If doing the integer-overflow
3684 sanitization, call unsigned_type_for only when !TYPE_OVERFLOW_WRAPS.
3685
3686 2013-11-29 H.J. Lu <hongjiu.lu@intel.com>
3687
3688 PR c/59309
3689 * cilk.c (gimplify_cilk_spawn): Properly handle function without
3690 arguments.
3691
3692 2013-11-29 Jakub Jelinek <jakub@redhat.com>
3693
3694 PR c/59280
3695 * c-common.c (get_priority): If TREE_VALUE (args) is IDENTIFIER_NODE,
3696 goto invalid. If it is error_mark_node, don't issue further
3697 diagnostics.
3698
3699 2013-11-28 Sergey Ostanevich <sergos.gnu@gmail.com>
3700
3701 * c.opt (Wopenmp-simd): New.
3702
3703 2013-11-22 Jakub Jelinek <jakub@redhat.com>
3704
3705 * c-ubsan.h (ubsan_instrument_return): New prototype.
3706 * c-ubsan.c (ubsan_instrument_return): New function.
3707
3708 2013-11-22 Andrew MacLeod <amacleod@redhat.com>
3709
3710 * c-common.c: Add required include files from gimple.h.
3711 * c-gimplify.c: Likewise
3712 * cilk.c: Likewise
3713
3714 2013-11-22 David Malcolm <dmalcolm@redhat.com>
3715
3716 * c-common.c (unsafe_conversion_p): Remove use of
3717 EXPR_LOC_OR_HERE macro.
3718 (conversion_warning): Likewise.
3719 (warnings_for_convert_and_check): Likewise.
3720 (warn_for_collisions_1): Likewise.
3721 (shorten_compare): Likewise, and remove use of in_system_header
3722 macro, using the location from the former.
3723 * c-lex.c (dump_one_header): Remove use of input_filename macro.
3724 (cb_def_pragma): Remove use of in_system_header macro.
3725 (lex_string): Likewise.
3726 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
3727
3728 2013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com>
3729 Mike Stump <mikestump@comcast.net>
3730 Richard Sandiford <rdsandiford@googlemail.com>
3731
3732 * c-ada-spec.c (is_simple_enum): Use tree_to_shwi and tree_to_uhwi
3733 instead of TREE_INT_CST_LOW, in cases where there is a protecting
3734 tree_fits_shwi_p or tree_fits_uhwi_p.
3735 (dump_generic_ada_node): Likewise.
3736 * c-format.c (check_format_arg): Likewise.
3737 * c-pretty-print.c (pp_c_integer_constant): Likewise.
3738
3739 2013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com>
3740
3741 * c-common.c (check_function_arguments_recurse): Use tree_to_uhwi.
3742
3743 2013-11-19 Joshua J Cogliati <jrincayc@yahoo.com>
3744
3745 PR c/53001
3746 * c-common.c (unsafe_conversion_p): Make this function
3747 return an enumeration with more detail.
3748 (conversion_warning): Use the new return type of
3749 unsafe_conversion_p to separately warn either about conversions
3750 that lower floating point number precision or about the other
3751 kinds of conversions.
3752 * c-common.h (enum conversion_safety): New enumeration.
3753 (unsafe_conversion_p): switching return type to
3754 conversion_safety enumeration.
3755 * c.opt: Adding new warning -Wfloat-conversion and
3756 enabling it with -Wconversion.
3757
3758 2013-11-19 Basile Starynkevitch <basile@starynkevitch.net>
3759
3760 * c-opts.c: Include plugin.h.
3761 (cb_file_change): Invoke plugin event PLUGIN_INCLUDE_FILE.
3762
3763 2013-11-19 Marek Polacek <polacek@redhat.com>
3764
3765 * c-ubsan.c (ubsan_instrument_division): Adjust ubsan_create_data
3766 call.
3767 (ubsan_instrument_shift): Likewise.
3768 (ubsan_instrument_vla): Likewise.
3769
3770 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
3771
3772 * c-common.c (convert_vector_to_pointer_for_subscript): Remove
3773 cast to unsigned type.
3774
3775 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
3776
3777 * c-common.c (fold_offsetof_1): Use tree_to_uhwi rather than
3778 tree_low_cst.
3779 (complete_array_type): Update comment to refer to tree_to_[su]hwi
3780 rather than tree_low_cst.
3781
3782 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
3783
3784 * c-common.c, c-cppbuiltin.c: Replace tree_low_cst (..., 1) with
3785 tree_to_uhwi throughout.
3786
3787 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
3788
3789 * c-common.c, c-format.c, c-omp.c, c-pretty-print.c: Replace
3790 tree_low_cst (..., 0) with tree_to_shwi throughout.
3791
3792 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
3793
3794 * c-ada-spec.c, c-common.c, c-pretty-print.c: Replace
3795 host_integerp (..., 1) with tree_fits_uhwi_p throughout.
3796
3797 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
3798
3799 * c-ada-spec.c, c-common.c, c-format.c, c-pretty-print.c: Replace
3800 host_integerp (..., 0) with tree_fits_shwi_p throughout.
3801
3802 2013-11-15 Aldy Hernandez <aldyh@redhat.com>
3803
3804 * c-cilkplus.c: New file.
3805 * c-common.c (readonly_error): Add location argument.
3806 * c-common.h (readonly_error): Same.
3807 (c_finish_cilk_clauses): Protoize.
3808 (c_check_cilk_loop): Same.
3809 c-omp.c (c_finish_omp_for): Handle CILK_SIMD nodes.
3810 Do not fail on error_mark_node.
3811 Abstract increment canonicalization to here...
3812 (c_omp_for_incr_canonicalize_ptr): New.
3813 c-pragma.c (init_pragma): Register "simd" pragma.
3814 c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_SIMD.
3815 (enum pragma_cilk_clause): New.
3816
3817 2013-11-15 Richard Sandiford <rdsandiford@googlemail.com>
3818
3819 * c-pretty-print.c (pp_c_character_constant): Remove unnecessary
3820 wchar_type and host_integerp checks.
3821
3822 2013-11-14 Andrew MacLeod <amacleod@redhat.com>
3823
3824 * c-common.c: Likewise.
3825 * c-gimplify.c: Likewise.
3826 * cilk.c: Likewise.
3827
3828 2013-11-14 Diego Novillo <dnovillo@google.com>
3829
3830 * c-common.c: Include fold-const.h.
3831 Include stor-layout.h.
3832 Include calls.h.
3833 Include stringpool.h.
3834 Include attribs.h.
3835 Include varasm.h.
3836 Include trans-mem.h.
3837 * c-cppbuiltin.c: Include stor-layout.h.
3838 Include stringpool.h.
3839 * c-format.c: Include stringpool.h.
3840 * c-lex.c: Include stringpool.h.
3841 Include stor-layout.h.
3842 * c-pragma.c: Include stringpool.h.
3843 Include attribs.h.
3844 Include varasm.h.
3845 Include gcc-symtab.h.
3846 * c-pretty-print.c: Include stor-layout.h.
3847 Include attribs.h.
3848 * cilk.c: Include stringpool.h.
3849 Include calls.h.
3850
3851 2013-11-13 Joseph Myers <joseph@codesourcery.com>
3852
3853 * c-common.h (enum rid): Add RID_AUTO_TYPE.
3854 * c-common.c (c_common_reswords): Add __auto_type.
3855 (keyword_begins_type_specifier): Handle RID_AUTO_TYPE.
3856
3857 2013-11-12 Andrew MacLeod <amacleod@redhat.com>
3858
3859 * c-common.c: Include gimplify.h.
3860 * c-gimplify.c: Likewise.
3861 * cilk.c: Likewise.
3862 * c-omp.c: Include gimple-expr.h instead of gimple.h.
3863 * c-ubsan.c: Don't include gimple.h.
3864
3865 2013-11-12 Joseph Myers <joseph@codesourcery.com>
3866
3867 * c-common.c (c_common_reswords): Add _Thread_local.
3868
3869 2013-11-09 Joseph Myers <joseph@codesourcery.com>
3870
3871 * c-common.c (atomic_size_supported_p): New function.
3872 (resolve_overloaded_atomic_exchange)
3873 (resolve_overloaded_atomic_compare_exchange)
3874 (resolve_overloaded_atomic_load, resolve_overloaded_atomic_store):
3875 Use it instead of comparing size with a local list of sizes.
3876
3877 2013-11-07 Andrew MacLeod <amacleod@redhat.com>
3878 Joseph Myers <joseph@codesourcery.com>
3879
3880 * c-common.h (enum rid): Add RID_ATOMIC.
3881 * c-common.c (c_common_reswords): Add _Atomic.
3882 (sync_resolve_params): Use TYPE_MAIN_VARIANT on pointer argument.
3883 (keyword_is_type_qualifier): Accept RID_ATOMIC.
3884 * c-format.c (check_format_types): Check for extra _Atomic
3885 qualifiers in format argument.
3886 * c-pretty-print.c (pp_c_cv_qualifiers): Handle atomic qualifier.
3887 (pp_c_type_qualifier_list): Mention _Atomic in comment.
3888
3889 2013-11-06 Tobias Burnus <burnus@net-b.de>
3890
3891 * c-common.c (reason_option_codes_t): Add CPP_W_DATE_TIME.
3892
3893 2013-11-06 Joseph Myers <joseph@codesourcery.com>
3894
3895 * c-opts.c (c_common_post_options): Set -ffp-contract=off in C
3896 standards modes.
3897 * c-cppbuiltin.c (cpp_iec_559_value): Consider -ffp-contract=fast
3898 to mean lack of IEEE 754 support.
3899
3900 2013-11-05 Tobias Burnus <burnus@net-b.de>
3901
3902 * c.opt (-Wdate-time): New option
3903 * c-opts.c (sanitize_cpp_opts): Pass on to libcpp.
3904
3905 2013-11-05 Joseph Myers <joseph@codesourcery.com>
3906
3907 * c-cppbuiltin.c (cpp_iec_559_value): Test
3908 flag_excess_precision_cmdline not flag_excess_precision.
3909
3910 2013-11-05 Tobias Burnus <burnus@net-b.de>
3911
3912 * c.opt (fopenmp-simd): New option.
3913 * c-pragma.c (omp_pragmas): Move pragmas which can contain simd to ...
3914 (omp_pragmas): ... this new struct.
3915 (c_pp_lookup_pragma): Also walk omp_pragmas.
3916 (init_pragma): Init pragmas for -fopenmp-simd.
3917
3918 2013-11-04 Marek Polacek <polacek@redhat.com>
3919
3920 PR c++/58979
3921 * c-common.c (invalid_indirection_error): Handle RO_ARROW_STAR case.
3922
3923 2013-11-04 Joseph Myers <joseph@codesourcery.com>
3924
3925 * c-cppbuiltin.c (cpp_iec_559_value, cpp_iec_559_complex_value):
3926 New functions.
3927 (c_cpp_builtins): Define __GCC_IEC_559 and __GCC_IEC_559_COMPLEX.
3928
3929 2013-11-04 Eric Botcazou <ebotcazou@adacore.com>
3930
3931 * c-ada-spec.h (cpp_operation): Add IS_TRIVIAL.
3932 (dump_ada_specs): Adjust prototype of second callback.
3933 * c-ada-spec.c (cpp_check): New global variable.
3934 (dump_ada_nodes): Remove cpp_check parameter and do not pass it down.
3935 (print_generic_ada_decl): Likewise.
3936 (has_static_fields): Change return type to bool and add guard.
3937 (has_nontrivial_methods): New predicate.
3938 (is_tagged_type): Change return type to bool.
3939 (separate_class_package): Call has_nontrivial_methods.
3940 (pp_ada_tree_identifier): Minor tweaks.
3941 (dump_ada_function_declaration): Adjust calls to dump_generic_ada_node.
3942 (dump_ada_array_domains): Likewise.
3943 (dump_ada_array_type): Likewise.
3944 (dump_template_types): Remove cpp_check parameter and do not pass it to
3945 dump_generic_ada_node.
3946 (dump_ada_template): Likewise.
3947 (dump_generic_ada_node): Remove cpp_check parameter and do not pass it
3948 recursively.
3949 (print_ada_methods): Change return type to integer. Remove cpp_check
3950 parameter and do not pass it down.
3951 (dump_nested_types): Remove cpp_check parameter and do not pass it to
3952 dump_generic_ada_node.
3953 (print_ada_declaration): Likewise. Test RECORD_OR_UNION_TYPE_P before
3954 accessing methods.
3955 (print_ada_struct_decl): Remove cpp_check parameter and do not pass it
3956 down. Use has_nontrivial_methods to recognize C++ classes. Use return
3957 value of print_ada_methods.
3958 (dump_ads): Rename cpp_check parameter to check and adjust prototype.
3959 Set cpp_check to it before invoking dump_ada_nodes.
3960 (dump_ada_specs): Likewise.
3961
3962 2013-11-03 Marek Polacek <polacek@redhat.com>
3963
3964 * c-ubsan.c: Don't include hash-table.h.
3965 (ubsan_instrument_vla): New function.
3966 * c-ubsan.h: Declare it.
3967
3968 2013-10-31 David Malcolm <dmalcolm@redhat.com>
3969
3970 Automated part of renaming of symtab_node_base to symtab_node.
3971
3972 Patch autogenerated by rename_symtab.py from
3973 https://github.com/davidmalcolm/gcc-refactoring-scripts
3974 revision 58bb219cc090b2f4516a9297d868c245495ee622
3975
3976 * c-pragma.c (maybe_apply_pending_pragma_weaks): Rename
3977 symtab_node_base to symtab_node.
3978
3979 2013-10-31 Edward Smith-Rowland <3dw4rd@verizon.net>
3980
3981 Implement C++14 digit separators.
3982 * c-lex.c (interpret_float): Remove digit separators from scratch string
3983 before building real literal.
3984
3985 2013-10-30 Jakub Jelinek <jakub@redhat.com>
3986
3987 * cilk.c (create_cilk_helper_decl): Use HOST_WIDE_INT_PRINT_DEC.
3988
3989 2013-10-29 Balaji V. Iyer <balaji.v.iyer@intel.com>
3990
3991 * c-common.c (c_common_reswords[]): Added _Cilk_spawn and _Cilk_sync
3992 fields.
3993 (c_define_builtins): Called cilk_init_builtins if Cilk Plus is
3994 enabled.
3995 * c-common.h (enum rid): Added RID_CILK_SPAWN and RID_CILK_SYNC.
3996 (insert_cilk_frame): New prototype.
3997 (cilk_init_builtins): Likewise.
3998 (gimplify_cilk_spawn): Likewise.
3999 (c_cilk_install_body_w_frame_cleanup): Likewise.
4000 (cilk_detect_spawn_and_unwrap): Likewise.
4001 (cilk_set_spawn_marker): Likewise.
4002 (build_cilk_sync): Likewise.
4003 (build_cilk_spawn): Likewise.
4004 * cilk.c: New file.
4005
4006 2013-10-29 David Malcolm <dmalcolm@redhat.com>
4007
4008 Patch autogenerated by refactor_symtab.py from
4009 https://github.com/davidmalcolm/gcc-refactoring-scripts
4010 revision 58bb219cc090b2f4516a9297d868c245495ee622
4011
4012 * c-gimplify.c (c_genericize): Update for conversion of symtab types
4013 to a true class hierarchy.
4014 * c-pragma.c (maybe_apply_pending_pragma_weaks): Likewise.
4015
4016 2013-10-27 Richard Sandiford <rdsandiford@googlemail.com>
4017
4018 * c-lex.c (interpret_integer): Remove call to cpp_num_sign_extend.
4019
4020 2013-10-26 Jeff Law <law@redhat.com>
4021
4022 * c-common.c (c_define_builtins): Remove mudflap support.
4023 * c.opt: Ignore and warn for mudflap options.
4024
4025 2013-10-24 Tobias Burnus <burnus@net-b.de>
4026
4027 PR other/33426
4028 * c-pragma.c (init_pragma) Add #pragma ivdep handling.
4029 * c-pragma.h (pragma_kind): Add PRAGMA_IVDEP.
4030
4031 2013-10-23 Jason Merrill <jason@redhat.com>
4032
4033 * c-format.c (gcc_cxxdiag_char_table): Add %X.
4034
4035 2013-10-11 Jakub Jelinek <jakub@redhat.com>
4036
4037 * c-common.h (omp_clause_mask::operator !=): New method.
4038 * c-omp.c (c_omp_split_clauses): Use if ((mask & something) != 0)
4039 instead of if (mask & something) tests everywhere.
4040
4041 * c-cppbuiltin.c (c_cpp_builtins): Predefine _OPENMP to
4042 201307 instead of 201107.
4043 * c-common.c (DEF_FUNCTION_TYPE_8): Define.
4044 (c_common_attribute_table): Add "omp declare target" and
4045 "omp declare simd" attributes.
4046 (handle_omp_declare_target_attribute,
4047 handle_omp_declare_simd_attribute): New functions.
4048 * c-omp.c: Include c-pragma.h.
4049 (c_finish_omp_taskgroup): New function.
4050 (c_finish_omp_atomic): Add swapped argument, if true,
4051 build the operation first with rhs, lhs arguments and use NOP_EXPR
4052 build_modify_expr.
4053 (c_finish_omp_for): Add code argument, pass it down to make_code.
4054 (c_omp_split_clauses): New function.
4055 (c_split_parallel_clauses): Removed.
4056 (c_omp_declare_simd_clause_cmp, c_omp_declare_simd_clauses_to_numbers,
4057 c_omp_declare_simd_clauses_to_decls): New functions.
4058 * c-common.h (omp_clause_mask): New type.
4059 (OMP_CLAUSE_MASK_1): Define.
4060 (omp_clause_mask::omp_clause_mask, omp_clause_mask::operator &=,
4061 omp_clause_mask::operator |=, omp_clause_mask::operator ~,
4062 omp_clause_mask::operator |, omp_clause_mask::operator &,
4063 omp_clause_mask::operator <<, omp_clause_mask::operator >>,
4064 omp_clause_mask::operator ==): New methods.
4065 (enum c_omp_clause_split): New.
4066 (c_finish_omp_taskgroup): New prototype.
4067 (c_finish_omp_atomic): Add swapped argument.
4068 (c_finish_omp_for): Add code argument.
4069 (c_omp_split_clauses): New prototype.
4070 (c_split_parallel_clauses): Removed.
4071 (c_omp_declare_simd_clauses_to_numbers,
4072 c_omp_declare_simd_clauses_to_decls): New prototypes.
4073 * c-pragma.c (omp_pragmas): Add new OpenMP 4.0 constructs.
4074 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_CANCEL,
4075 PRAGMA_OMP_CANCELLATION_POINT, PRAGMA_OMP_DECLARE_REDUCTION,
4076 PRAGMA_OMP_DISTRIBUTE, PRAGMA_OMP_END_DECLARE_TARGET, PRAGMA_OMP_SIMD,
4077 PRAGMA_OMP_TARGET, PRAGMA_OMP_TASKGROUP and PRAGMA_OMP_TEAMS.
4078 Remove PRAGMA_OMP_PARALLEL_FOR and PRAGMA_OMP_PARALLEL_SECTIONS.
4079 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_ALIGNED,
4080 PRAGMA_OMP_CLAUSE_DEPEND, PRAGMA_OMP_CLAUSE_DEVICE,
4081 PRAGMA_OMP_CLAUSE_DIST_SCHEDULE, PRAGMA_OMP_CLAUSE_FOR,
4082 PRAGMA_OMP_CLAUSE_FROM, PRAGMA_OMP_CLAUSE_INBRANCH,
4083 PRAGMA_OMP_CLAUSE_LINEAR, PRAGMA_OMP_CLAUSE_MAP,
4084 PRAGMA_OMP_CLAUSE_NOTINBRANCH, PRAGMA_OMP_CLAUSE_NUM_TEAMS,
4085 PRAGMA_OMP_CLAUSE_PARALLEL, PRAGMA_OMP_CLAUSE_PROC_BIND,
4086 PRAGMA_OMP_CLAUSE_SAFELEN, PRAGMA_OMP_CLAUSE_SECTIONS,
4087 PRAGMA_OMP_CLAUSE_SIMDLEN, PRAGMA_OMP_CLAUSE_TASKGROUP,
4088 PRAGMA_OMP_CLAUSE_THREAD_LIMIT, PRAGMA_OMP_CLAUSE_TO and
4089 PRAGMA_OMP_CLAUSE_UNIFORM.
4090
4091 2013-10-09 Marc Glisse <marc.glisse@inria.fr>
4092
4093 PR tree-optimization/20318
4094 * c-common.c (handle_returns_nonnull_attribute): New function.
4095 (c_common_attribute_table): Add returns_nonnull.
4096
4097 2013-10-03 Marc Glisse <marc.glisse@inria.fr>
4098
4099 PR c++/19476
4100 * c.opt (fcheck-new): Move to common.opt.
4101
4102 2013-09-25 Marek Polacek <polacek@redhat.com>
4103 Jakub Jelinek <jakub@redhat.com>
4104
4105 PR sanitizer/58413
4106 * c-ubsan.c (ubsan_instrument_shift): Don't instrument
4107 an expression if we can prove it is correct.
4108 (ubsan_instrument_division): Likewise. Remove unnecessary
4109 check.
4110
4111 2013-09-18 Marek Polacek <polacek@redhat.com>
4112
4113 PR sanitizer/58411
4114 * c-common.c (handle_no_sanitize_undefined_attribute): New function.
4115 Declare it.
4116 (struct attribute_spec c_common_att): Add no_sanitize_undefined.
4117
4118 2013-09-14 Iain Sandoe <iain@codesourcery.com>
4119
4120 PR target/48094
4121 * c.opt (fgnu-runtime, fnext-runtime, fobjc-abi-version,
4122 fobjc-gc, freplace-objc-classes): Accept for LTO.
4123
4124 2013-09-13 Jacek Caban <jacek@codeweavers.com>
4125
4126 * c-target.def: New hook
4127
4128 2013-09-09 Paolo Carlini <paolo.carlini@oracle.com>
4129
4130 PR c++/43452
4131 * c.opt (Wdelete-incomplete): Add.
4132
4133 2013-09-08 Joern Rennecke <joern.rennecke@embecosm.com>
4134
4135 * c-common.c (same_scalar_type_ignoring_signedness): Delete.
4136 (vector_types_compatible_elements_p): New function.
4137 * c-common.h: (same_scalar_type_ignoring_signedness): Delete
4138 declaration.
4139 (vector_types_compatible_elements_p): Declare.
4140
4141 2013-09-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
4142
4143 * c-pretty-print.h (c_pretty_printer::simple_type_specifier): Now
4144 a virtual member function.
4145 (pp_simple_type_specifier): Remove.
4146 (pp_c_type_specifier): Likewise.
4147 * c-pretty-print.c (c_pretty_printer::simple_type_specifier):
4148 Rename from pp_c_type_specifier. Adjust.
4149 (c_pretty_printer::c_pretty_printer): Do not assign to
4150 simple_type_specifier.
4151
4152 2013-09-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
4153
4154 * c-pretty-print.h (c_pretty_printer::type_id): Now a virtual
4155 member function.
4156 (c_pretty_printer::storage_class_specifier): Likewise.
4157 (c_pretty_printer::initializer): Likewise.
4158 (pp_declaration): Remove.
4159 (pp_declaration_specifiers): Likewise.
4160 (pp_abstract_declarator): Likewise.
4161 (pp_declarator): Likewise.
4162 (pp_type_id): Likewise.
4163 (pp_statement): Likewise.
4164 (pp_constant): Likewise.
4165 (pp_id_expression): Likewise.
4166 (pp_primary_expression): Likewise.
4167 (pp_unary_expression): Likewise.
4168 (pp_multiplicative_expression): Likewise.
4169 (pp_conditional_expression): Likewise.
4170 (pp_assignment_expression): Likewise.
4171 (pp_expression): Likewise.
4172 (pp_c_type_id): Likewise.
4173 (pp_c_storage_class_specifier): Likewise.
4174 * c-pretty-print.c (pp_c_type_cast): Tidy.
4175 (pp_c_pointer): Likewise.
4176 (pp_c_type_specifier): Likewise.
4177 (pp_c_parameter_type_list): Likewise.
4178 (pp_c_function_definition): Likewise.
4179 (pp_c_init_declarator): Likewise.
4180 (pp_c_initializer_list): Likewise.
4181 (pp_c_constructor_elts): Likewise.
4182 (c_pretty_printer::direct_abstract_declarator): Likewise.
4183 (c_pretty_printer::declaration_specifiers): Likewise.
4184 (c_pretty_printer::primary_expression): Likewise.
4185 (c_pretty_printer::postfix_expression): Likewise.
4186 (c_pretty_printer::type_id): Rename from pp_c_type_id.
4187 (c_pretty_printer::storage_class_specifier): Rename from
4188 pp_c_storage_class_specifier.
4189 (c_pretty_printer::initializer): Rename from pp_c_initializer.
4190 (c_pretty_printer::c_pretty_printer): Do not assign to type_id,
4191 storage_class_specifier, initializer, offset_list, flags.
4192
4193 2013-08-30 Marek Polacek <polacek@redhat.com>
4194
4195 * c-ubsan.c: New file.
4196 * c-ubsan.h: New file.
4197
4198 2013-08-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
4199
4200 * c-pretty-print.h (c_pretty_printer::declaration): Now a virtual
4201 member function.
4202 (c_pretty_printer::declaration_specifiers): Likewise.
4203 (c_pretty_printer::declarator): Likewise.
4204 (c_pretty_printer::abstract_declarator): Likewise.
4205 (c_pretty_printer::direct_abstract_declarator): Likewise.
4206 (c_pretty_printer::direct_declarator): Likewise.
4207 (c_pretty_printer::function_specifier): Likewise.
4208 (pp_declaration): Adjust.
4209 (pp_declaration_specifiers): Likewise.
4210 (pp_abstract_declarator): Likewise.
4211 (pp_direct_declarator): Likewise.
4212 (pp_function_specifier): Likewise.
4213 (pp_direct_abstract_declarator): Remove as unused.
4214 (pp_c_declaration): Remove.
4215 (pp_c_declaration_specifiers): Likewise.
4216 (pp_c_declarator): Likewise.
4217 (pp_c_direct_declarator): Likewise.
4218 (pp_c_function_specifier): Likewise.
4219 (pp_c_direct_abstract_declarator): Likewise.
4220 * c-pretty-print.c (c_pretty_printer::abstract_declarator): Rename
4221 from pp_c_abstract_declarator. Adjust.
4222 (c_pretty_printer::direct_abstract_declarator): Rename from
4223 pp_c_direct_abstract_declarator. Adjust.
4224 (c_pretty_printer::function_specifier): Rename from
4225 pp_c_function_specifier. Adjust.
4226 (c_pretty_printer::declaration_specifiers): Rename from
4227 pp_c_declaration_specifiers. Adjust.
4228 (c_pretty_printer::direct_declarator): Rename from
4229 pp_c_direct_declarator. Adjust.
4230 (c_pretty_printer::declarator): Rename from pp_c_declarator. Adjust.
4231 (c_pretty_printer::declaration): Rename from pp_c_declaration. Adjust.
4232 (c_pretty_printer::c_pretty_printer): Do not assign to
4233 declaration, declaration_specifiers, declarator,
4234 direct_declarator, direct_abstract_declarator, function_specifier.
4235
4236 2013-08-26 Gabriel Dos Reis <gdre@integrable-solutions.net>
4237
4238 * c-pretty-print.h (c_pretty_printer::unary_expression): Now a
4239 virtual member function.
4240 (c_pretty_printer::multiplicative_expression): Likewise.
4241 (c_pretty_printer::conditional_expression): Likewise.
4242 (c_pretty_printer::assignment_expression): Likewise.
4243 (c_pretty_printer::expression): Likewise.
4244 (pp_unary_expression): Adjust.
4245 (pp_multiplicative_expression): Likewise.
4246 (pp_assignment_expression): Likewise.
4247 (pp_conditional_expression): Likewise.
4248 (pp_expression): Likewise.
4249 * c-pretty-print.c (c_pretty_printer::unary_expression): Rename
4250 from pp_c_unary_expression. Adjust.
4251 (c_pretty_printer::multiplicative_expression): Rename from
4252 pp_c_multiplicative_expression. Adjust.
4253 (c_pretty_printer::conditional_expression): Rename from
4254 pp_c_conditional_expression. Adjust.
4255 (c_pretty_printer::assignment_expression): Rename from
4256 pp_c_assignment_expression. Adjust.
4257 (c_pretty_printer::expression): Rename from pp_c_expression. Adjust.
4258 (c_pretty_printer::c_pretty_printer): Do not assign to
4259 unary_expression, multiplicative_expression,
4260 conditional_expression, expression.
4261
4262 2013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
4263
4264 * c-pretty-print.h (c_pretty_printer::postfix_expression): Now a
4265 virtual member function.
4266 (pp_postfix_expression): Adjust.
4267 (pp_c_postfix_expression): Remove.
4268 * c-pretty-print.c (c_pretty_printer::postfix_expression): Rename
4269 from pp_c_postfix_expression. Adjust.
4270 (c_pretty_printer::c_pretty_printer): Do not assign to
4271 postfix_expression.
4272
4273 2013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
4274
4275 * c-pretty-print.h (c_pretty_printer::primary_expression): Now a
4276 virtua member function.
4277 (pp_primary_expression): Adjust.
4278 (pp_c_primary_expression): Remove.
4279 * c-pretty-print.c (c_pretty_printer::primary_expression): Rename
4280 from pp_c_primary_expression. Adjust.
4281 (pp_c_initializer_list): Use pp_primary_expression.
4282 (c_pretty_printer::c_pretty_printer): Do not assign to
4283 primary_expression.
4284
4285 2013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
4286
4287 * c-pretty-print.h (c_pretty_printer::translate_string): Declare.
4288 * c-pretty-print.c (M_): Remove.
4289 (c_pretty_printer::translate_string): Define.
4290 (pp_c_type_specifier): Use it.
4291 (pp_c_primary_expression): Likewise.
4292 (pp_c_expression): Likewise.
4293
4294 2013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
4295
4296 * c-pretty-print.h (c_pretty_printer::id_expression): Now a
4297 virtual function.
4298 (pp_c_id_expression): Remove.
4299 (pp_id_expression): Adjust.
4300 * c-pretty-print.c (c_pretty_printer::id_expression): Rename from
4301 pp_c_id_expression. Adjust.
4302 (pp_c_postfix_expression): Use pp_id_expression.
4303 (c_pretty_printer::c_pretty_printer): Do not assign to id_expression.
4304
4305 2013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
4306
4307 * c-pretty-print.h (c_pretty_printer::constant): Now a virtual
4308 member function.
4309 (pp_constant): Adjust.
4310 (pp_c_constant): Remove.
4311 * c-pretty-print.c (c_pretty_printer::constant): Rename from
4312 pp_c_constant. Adjust.
4313 (pp_c_constant)
4314 (pp_c_primary_expression): Call pp_constant in lieu of pp_c_constant.
4315 (c_pretty_printer::c_pretty_printer): Remove assignment to constant.
4316
4317 2013-08-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
4318
4319 * c-pretty-print.h (pp_c_pretty_printer_init): Remove.
4320 (c_pretty_printer::c_pretty_printer): Declare.
4321 * c-pretty-print.c (pretty_printer::c_pretty_printer): Rename from
4322 c_pretty_printer_init. Adjust.
4323 (print_c_tree): Do not call c_pretty_printer_init.
4324 * c-ada-spec.c (dump_ads): Remove call to pp_construct.
4325
4326 2013-08-09 Arnaud Charlet <charlet@adacore.com>
4327
4328 * c-ada-spec.c (print_ada_declaration): Prevent accessing null asm name
4329
4330 2013-08-05 Paolo Carlini <paolo.carlini@oracle.com>
4331
4332 PR c++/58080
4333 * c-common.c (pointer_int_sum): Add bool parameter.
4334 * c-common.h (pointer_int_sum): Adjust declaration.
4335
4336 2013-08-05 Gabriel Dos Reis <gdr@integrable-solutions.net>
4337
4338 * c-pretty-print.c (print_c_tree): Simplify. Use non-static local
4339 c_pretty_printer variable.
4340
4341 2013-08-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
4342
4343 * c-pretty-print.h (c_pretty_printer): Derive from pretty_printer.
4344 (pp_base): Remove.
4345 (pp_c_base): Likewise. Adjust users.
4346 * c-pretty-print.c (pp_c_maybe_whitespace): Adjust.
4347 (pp_c_whitespace): Do not call pp_base.
4348 (pp_c_left_paren): Likewise.
4349 (pp_c_right_paren): Likewise.
4350 (pp_c_left_brace): Likewise.
4351 (pp_c_right_brace): Likewise.
4352 (pp_c_left_bracket): Likewise.
4353 (pp_c_right_bracket): Likewise.
4354 (pp_c_dot): Likewise.
4355 (pp_c_ampersand): Likewise.
4356 (pp_c_star): Likewise.
4357 (pp_c_arrow): Likewise.
4358 (pp_c_semicolon): Likewise.
4359 (pp_c_complement): Likewise.
4360 (pp_c_exclamation): Likewise.
4361 (pp_c_direct_declarator): Likewise.
4362 (pp_c_ws_string): Likewise.
4363 (pp_c_identifier): Likewise.
4364 (pp_c_statement): Likewise.
4365 (print_c_tree): Likewise.
4366
4367 2013-08-04 Ed Smith-Rowland <3dw4rd@verizon.net>
4368
4369 PR c++/58072
4370 * c-common.c (c_parse_error): Catch user-defined literal tokens and
4371 provide useful error strings.
4372
4373 2013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
4374
4375 * c-ada-spec.c (pp_ada_tree_identifier): Use specialized pretty
4376 printer functions instead of pp_string or operators and punctuators.
4377 (dump_generic_ada_node): Likewise.
4378 * c-pretty-print.c (pp_c_type_specifier): Likewise.
4379 (pp_c_relational_expression): Likewise.
4380 (pp_c_logical_or_expression): Likewise.
4381
4382 2013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
4383
4384 * c-ada-spec.c (print_ada_macros): Use specialized pretty printer
4385 functions instead of pp_character.
4386 (pp_ada_tree_identifier): Likewise.
4387 (dump_ada_double_name): Likewise.
4388 (dump_ada_function_declaration): Likewise.
4389 (dump_ada_array_domains): Likewise.
4390 (dump_template_types): Likewise.
4391 (dump_generic_ada_node): Likewise.
4392 (print_ada_declaration): Likewise.
4393 (print_ada_struct_decl): Likewise.
4394 * c-pretty-print.c (pp_c_integer_constant): Likewise.
4395
4396 2013-07-23 Tom Tromey <tromey@redhat.com>
4397
4398 * c-common.h (enum rid) <RID_GENERIC>: New constant.
4399 * c-common.c (c_common_reswords): Add _Generic.
4400
4401 2013-07-21 OndÅ\99ej Bílka <neleai@seznam.cz>
4402
4403 * c-common.c: Fix typos.
4404 * c-common.h: Likewise.
4405
4406 2013-07-13 Lubos Lunak <l.lunak@suse.cz>
4407
4408 PR c++/55203
4409 * c-common.c (c_common_attribute_table): Add warn_unused.
4410 (handle_warn_unused_attribute): New.
4411
4412 2013-07-10 Jakub Jelinek <jakub@redhat.com>
4413
4414 * c-ppoutput.c (scan_translation_unit): Call account_for_newlines
4415 for all CPP_TOKEN_FLD_STR tokens, not just CPP_COMMENT.
4416
4417 2013-07-10 Paolo Carlini <paolo.carlini@oracle.com>
4418
4419 PR c++/57869
4420 * c.opt: Add Wconditionally-supported.
4421
4422 2013-07-08 Graham Stott <graham.stott@btinternet.com>
4423
4424 * array-notation-common.c (length_mismatch_in_expr_p): Delete
4425 unused variables l_length and l_node.
4426
4427 2013-07-04 Joern Rennecke <joern.rennecke@embecosm.com>
4428
4429 PR c/57821
4430 * c-common.c (complete_array_type): Delay folding first index
4431 like other indices. When folding, check for index overflow.
4432
4433 2013-06-27 Marc Glisse <marc.glisse@inria.fr>
4434
4435 PR c++/57509
4436 * c-common.h (c_build_vec_perm_expr): New complain argument.
4437 * c-common.c (c_build_vec_perm_expr): Likewise.
4438 Use save_expr also in C++.
4439
4440 2013-06-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
4441
4442 * c-common.c (c_common_nodes_and_builtins): Use cxx11 in lieu of cxx0x.
4443 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
4444 * c-opts.c (c_common_post_options): Likewise.
4445
4446 2013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
4447
4448 * array-notation-common.c (length_mismatch_in_expr): Changed the
4449 parameter type's from a dynamic array to a vec_tree. Also removed
4450 the size parameters.
4451 * c-common.h (length_mismatch_in_expr_p): Fixed prototype's as per
4452 the change above.
4453
4454 2013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
4455
4456 * c-common.h (struct cilkplus_an_parts): New structure.
4457 (struct cilkplus_an_loop_parts): Likewise.
4458 (cilkplus_extract_an_triplets): New prototype.
4459 (fix_sec_implicit_args): Likewise.
4460 * array-notation-common.c (cilkplus_extract_an_triplets): New function.
4461 (fix_sec_implicit_args): Likewise.
4462
4463 2013-06-20 Balaji V. Iyer <balaji.v.iyer@intel.com>
4464
4465 * array-notation-common.c (find_inv_trees): Removed an unwanted
4466 typecasting.
4467 * c-common.h (struct inv_list::additional_tcodes): Changed type from
4468 enum rid to enum tree_code.
4469
4470 2013-06-11 Jan Hubicka <jh@suse.cz>
4471
4472 * c-common.c (handle_alias_ifunc_attribute): Do not set
4473 DECL_EXTERNAL for weakref variables.
4474 * c-pragma.c (handle_pragma_weak): Make sure aliases
4475 are not declared as external.
4476
4477 2013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
4478
4479 * array-notation-common.c (length_mismatch_in_expr_p): Moved this
4480 function from c/c-array-notation.c.
4481 (is_cilkplus_reduce_builtin): Likewise.
4482 (find_rank): Likewise.
4483 (extract_array_notation_exprs): Likewise.
4484 (replace_array_notations): Likewise.
4485 (find_inv_trees): Likewise.
4486 (replace_inv_trees): Likewise.
4487 (contains_array_notation_expr): Likewise.
4488 (find_correct_array_notation_type): Likewise.
4489 * c-common.h (struct inv_list): Moved this struct from the file
4490 c/c-array-notation.c and added a new field called additional tcodes.
4491 (length_mismatch_in_expr_p): New prototype.
4492 (is_cilkplus_reduce_builtin): Likewise.
4493 (find_rank): Likewise.
4494 (extract_array_notation_exprs): Likewise.
4495 (replace_array_notation): Likewise.
4496 (find_inv_trees): Likewise.
4497 (replace_inv_trees): Likewise.
4498 (find_correct_array_notation_type): Likewise.
4499
4500 2013-05-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
4501
4502 * c-common.c (c_define_builtins): When cilkplus is enabled, the
4503 function array_notation_init_builtins is called.
4504 (c_common_init_ts): Added ARRAY_NOTATION_REF as typed.
4505 * c-common.def (ARRAY_NOTATION_REF): New tree.
4506 * c-common.h (build_array_notation_expr): New function declaration.
4507 (build_array_notation_ref): Likewise.
4508 (extract_sec_implicit_index_arg): New extern declaration.
4509 (is_sec_implicit_index_fn): Likewise.
4510 (ARRAY_NOTATION_CHECK): New define.
4511 (ARRAY_NOTATION_ARRAY): Likewise.
4512 (ARRAY_NOTATION_START): Likewise.
4513 (ARRAY_NOTATION_LENGTH): Likewise.
4514 (ARRAY_NOTATION_STRIDE): Likewise.
4515 * c-pretty-print.c (pp_c_postifix_expression): Added a new case for
4516 ARRAY_NOTATION_REF.
4517 (pp_c_expression): Likewise.
4518 * c.opt (flag_enable_cilkplus): New flag.
4519 * array-notation-common.c: New file.
4520
4521 2013-05-14 Jakub Jelinek <jakub@redhat.com>
4522
4523 PR c++/57274
4524 * c-common.c (verify_tree): Don't recurse into SIZEOF_EXPR.
4525
4526 2013-05-10 Marc Glisse <marc.glisse@inria.fr>
4527
4528 * c-common.c (vector_types_convertible_p): No TYPE_PRECISION for
4529 vectors.
4530
4531 2013-05-07 Han Shen <shenhan@google.com>
4532
4533 * c-cppbuiltin.c (c_cpp_builtins): Added "__SSP_STRONG__=3".
4534
4535 2013-04-29 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
4536
4537 * c-common.c (check_user_alignment): Emit error for negative values.
4538
4539 2013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
4540
4541 * c-opts.c (set_std_cxx11): Use CLK_CXX1Y and CLK_GNUCXX1Y.
4542
4543 2013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
4544
4545 * c-cppbuiltin.c (c_cpp_builtins): Do not define
4546 __GXX_EXPERIMENTAL_CXX1Y__.
4547
4548 2013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
4549 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
4550
4551 * c.opt ([Wpointer-arith]): Enabled by -Wpedantic, as documented.
4552 * c-common.c (pointer_int_sum): Change -Wpointer-arith pedwarns
4553 to simply use OPT_Wpointer_arith.
4554 (c_sizeof_or_alignof_type): Likewise.
4555
4556 2013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
4557
4558 * c-cppbuiltin.c (c_cpp_builtins): Define __GXX_EXPERIMENTAL_CXX1Y__.
4559
4560 2013-04-12 Jakub Jelinek <jakub@redhat.com>
4561
4562 * c-format.c (gcc_diag_char_table, gcc_tdiag_char_table,
4563 gcc_cdiag_char_table, gcc_cxxdiag_char_table): Add %r and %R format
4564 specifiers.
4565
4566 2013-04-07 Steven Bosscher <steven@gcc.gnu.org>
4567
4568 * c-pragma.c (add_to_renaming_pragma_list): Fix leading comment.
4569
4570 2013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
4571
4572 * c-common.c (pointer_int_sum): Remove dead code.
4573
4574 2013-03-09 Richard Sandiford <rdsandiford@googlemail.com>
4575
4576 PR middle-end/56524
4577 * c-common.c (handle_optimize_attribute): Don't call
4578 save_optabs_if_changed.
4579
4580 2013-03-05 Jakub Jelinek <jakub@redhat.com>
4581
4582 PR middle-end/56461
4583 * c-pch.c (pch_init): Free target_validity at the end.
4584
4585 2013-03-04 Jakub Jelinek <jakub@redhat.com>
4586
4587 * c-pretty-print.c (pp_c_pretty_printer_init): Clear pp->flags.
4588
4589 2013-02-28 Konstantin Serebryany <konstantin.s.serebryany@gmail.com>
4590 Jakub Jelinek <jakub@redhat.com>
4591
4592 PR sanitizer/56454
4593 * c-common.c (handle_no_sanitize_address_attribute): New function.
4594 (c_common_attribute_table): Add no_sanitize_address attribute.
4595 (handle_no_address_safety_analysis_attribute): Add
4596 no_sanitize_address attribute, not no_address_safety_analysis
4597 attribute.
4598
4599 2013-02-18 Aldy Hernandez <aldyh@redhat.com>
4600
4601 PR target/52555
4602 * c-common.c (handle_optimize_attribute): Call
4603 save_optabs_if_changed.
4604
4605 2013-02-18 Jakub Jelinek <jakub@redhat.com>
4606 Steven Bosscher <steven@gcc.gnu.org>
4607
4608 PR pch/54117
4609 * c-opts.c (c_common_post_options): If debug info is enabled
4610 and non-dwarf*, refuse to load PCH files and when writing PCH
4611 file warn.
4612
4613 2013-02-05 Jakub Jelinek <jakub@redhat.com>
4614
4615 PR middle-end/56167
4616 * c-common.c (handle_error_attribute): Fix condition.
4617
4618 2013-01-30 Jakub Jelinek <jakub@redhat.com>
4619
4620 PR c++/55742
4621 * c-common.c (handle_target_attribute): Revert 2012-12-26 change.
4622
4623 2013-01-18 Jason Merrill <jason@redhat.com>
4624
4625 PR target/54908
4626 * c.opt (-fextern-tls-init): New.
4627 * c-opts.c (c_common_post_options): Handle it.
4628
4629 2013-01-09 Jakub Jelinek <jakub@redhat.com>
4630
4631 PR c/48418
4632 * c-common.c (c_fully_fold_internal): Warn for LSHIFT_EXPR and
4633 RSHIFT_EXPR, if orig_op1 isn't INTEGER_CST, op1 is INTEGER_CST
4634 and is either negative or bigger or equal to type precision
4635 of the first operand.
4636
4637 2012-12-03 Marek Polacek <polacek@redhat.com>
4638
4639 PR c/55570
4640 * c-common.c (check_user_alignment): Swap order of tests,
4641 check TREE_CODE first.
4642
4643 2012-11-29 Ed Smith-Rowland <3dw4rd@verizon.net>
4644
4645 PR c++/52654
4646 * c-common.h (overflow_type): New enum.
4647 (build_userdef_literal): Add overflow_type argument.
4648 (tree_userdef_literal): Add overflow_type.
4649 (USERDEF_LITERAL_OVERFLOW): New access macro.
4650 * c-common.c (build_userdef_literal): Add overflow_type
4651 argument.
4652 * c-lex.c (c_lex_with_flags): Add overflow_type to
4653 build_userdef_literal calls.
4654 (interpret_integer, interpret_float): Add overflow_type argument.
4655
4656 2012-11-28 Richard Biener <rguenther@suse.de>
4657
4658 PR c/35634
4659 * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
4660 here and use a type with proper overflow behavior for types that would
4661 need to be promoted for the arithmetic.
4662
4663 2012-11-23 Jakub Jelinek <jakub@redhat.com>
4664
4665 PR sanitizer/55435
4666 * c-common.c (handle_no_address_safety_analysis_attribute): New
4667 function.
4668 (c_common_attribute_table): Add no_address_safety_analysis.
4669
4670 2012-11-16 Simon Baldwin <simonb@google.com>
4671
4672 * c.opt: Add f[no-]canonical-system-headers.
4673 * c-opts.c (c_common_handle_option): Handle
4674 OPT_fcanonical_system_headers.
4675
4676 2012-11-09 Ed Smith-Rowland <3dw4rd@verizon.net>
4677
4678 PR c++/54413
4679 * c-opts.c (c_common_handle_option): Set new flags.
4680 * c.opt: Describe new flags.
4681
4682 2012-11-09 Jason Merrill <jason@redhat.com>
4683
4684 * c.opt (Wabi-tag): New.
4685
4686 2012-11-09 Andi Kleen <ak@linux.intel.com>
4687
4688 PR 55139
4689 * c-common.c (get_atomic_generic_size): Mask with
4690 MEMMODEL_MASK
4691
4692 2012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
4693
4694 PR c/53063
4695 * c.opt (Wformat): Make it Alias Wformat=1.
4696 (Wformat-contains-nul,Wformat-extra-args,Wformat-nonliteral,
4697 Wformat-security,Wformat-y2k,Wformat-zero-length): Use
4698 LangEnabledBy.
4699 (Wformat=): RejectNegative. Use LangEnabledBy.
4700 (Wnonnull): Use LangEnabledBy.
4701 * c-opts.c (c_common_handle_option): Do not handle Wformat here.
4702 * c-format.c (set_Wformat): Delete.
4703 (decode_format_attr): Replace OPT_Wformat with OPT_Wformat_.
4704 (maybe_read_dollar_number): Likewise.
4705 (avoid_dollar_number): Likewise.
4706 (finish_dollar_format_checking): Likewise.
4707 (check_format_info): Likewise.
4708 (check_format_info_main): Likewise.
4709 (check_format_types): Likewise.
4710 (format_type_warning): Likewise.
4711 * c-common.c (int): Likewise.
4712 (check_function_sentinel): Likewise.
4713 * c-common.h (warn_format,set_Wformat): Do not declare here.
4714
4715 2012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
4716
4717 PR c/53063
4718 * c.opt(Warray-bounds,Wdelete-non-virtual-dtor,Wenum-compare,
4719 Wmain,Woverlength-strings, Wunknown-pragmas,Wunused-macros):
4720 Use LangEnabledBy.
4721 (Wswitch,Wswitch-default,Wswitch-enum): Likewise. Move here from
4722 common.opt.
4723 (Wvariadic-macros): Init(1).
4724 * c-opts.c (c_common_handle_option): Do not handle them
4725 explicitly.
4726 (c_common_post_options): Likewise.
4727 (sanitize_cpp_opts): warn_unused_macros is now
4728 cpp_warn_unused_macros.
4729 (push_command_line_include): Likewise.
4730 * c-common.c (warn_unknown_pragmas): Do not define.
4731 * c-common.h (warn_unknown_pragmas): Do not declare.
4732
4733 2012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
4734
4735 PR c/51294
4736 * c-common.c (conversion_warning): Handle conditional expressions.
4737
4738 2012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
4739
4740 PR c++/54930
4741 * c.opt (Wreturn_local_addr): Define new option.
4742
4743 2012-10-25 Jason Merrill <jason@redhat.com>
4744
4745 * c.opt (Wvirtual-move-assign): New.
4746
4747 * c.opt (Winherited-variadic-ctor): New.
4748
4749 2012-10-25 Marc Glisse <marc.glisse@inria.fr>
4750
4751 PR c++/54427
4752 * c-common.c (scalar_to_vector): Handle VEC_COND_EXPR.
4753
4754 2012-10-23 Joseph Myers <joseph@codesourcery.com>
4755
4756 * c-common.h (pch_cpp_save_state): Declare.
4757 * c-target.def (c_preinclude): New hook.
4758 * c-opts.c (done_preinclude): New.
4759 (push_command_line_include): Handle default preincluded header.
4760 (cb_file_change): Call pch_cpp_save_state when calling
4761 push_command_line_include.
4762 * c-pch.c (pch_ready_to_save_cpp_state, pch_cpp_state_saved)
4763 (pch_cpp_save_state): New.
4764 (pch_init): Call pch_cpp_save_state conditionally, instead of
4765 calling cpp_save_state.
4766
4767 2012-10-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
4768
4769 PR c/53063
4770 PR c/40989
4771 * c.opt (Waddress,Wchar-subscripts,Wsign-conversion,Wimplicit,
4772 Wimplicit-function-declaration,Wimplicit-int,Wsizeof-pointer-memaccess,
4773 Wnarrowing,Wparentheses,Wpointer-sign,Wreturn-type,Wsequence-point,
4774 Wsign-compare,Wuninitialized,Wmaybe-uninitialized,Wunused,
4775 Wvolatile-register-var): Add LangEnabledBy or EnabledBy.
4776 * c-opts.c (c_common_handle_option): Remove explicit handling from
4777 here.
4778 (c_common_post_options): Likewise.
4779
4780 2012-10-18 Eric Botcazou <ebotcazou@adacore.com>
4781
4782 * c-ada-spec.c (LOCATION_COL): Delete.
4783 (compare_location): New function.
4784 (compare_node): Use it.
4785 (compare_comment): Likewise.
4786
4787 2012-10-16 Manuel López-Ibáñez <manu@gcc.gnu.org>
4788
4789 PR c/53063
4790 PR c/40989
4791 * c.opt (Wstrict-aliasing=,Wstrict-overflow=): Use LangEnabledBy.
4792 * c-opts.c (c_common_handle_option): Do not set them here. Add
4793 comment.
4794 (c_common_post_options): Likewise.
4795
4796 2012-10-16 Eric Botcazou <ebotcazou@adacore.com>
4797
4798 * c-ada-spec.c (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Define.
4799 (dump_generic_ada_node) <INTEGER_CST>: Deal with sizetype specially.
4800 Remove POINTER_TYPE handling, add large unsigned handling and use
4801 ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX for big numbers.
4802
4803 2012-10-12 Jakub Jelinek <jakub@redhat.com>
4804
4805 PR c/54381
4806 * c-common.h (sizeof_pointer_memaccess_warning): Adjust prototype.
4807 * c-common.c (sizeof_pointer_memaccess_warning): Take array of 3
4808 locs and array of 3 trees instead of just single loc and single
4809 sizeof_arg tree. Handle __builtin___*_chk builtins too, and
4810 also stpncpy, bcopy, bcmp, bzero, snprintf and vsnprintf builtins.
4811 For *cmp* builtins that take two sources strings report warnings
4812 about first and second source, not about destination and source.
4813
4814 2012-10-12 Marc Glisse <marc.glisse@inria.fr>
4815
4816 PR c++/53055
4817 * c-common.h (enum ref_operator) [RO_ARROW_STAR]: New.
4818
4819 2012-10-11 Eric Botcazou <ebotcazou@adacore.com>
4820
4821 * c-ada-spec.c (dump_ada_template): Bail out for template declarations
4822 declaring something coming from another file.
4823
4824 2012-10-10 Arnaud Charlet <charlet@adacore.com>
4825
4826 PR ada/54845
4827 * c-ada-spec.c (print_ada_struct_decl): Increase buf size.
4828
4829 2012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
4830
4831 PR c++/54194
4832 * c-common.c (warn_about_parentheses): Add location_t parameter;
4833 use EXPR_LOC_OR_LOC.
4834 * c-common.h: Update declaration.
4835
4836 2012-10-09 Marc Glisse <marc.glisse@inria.fr>
4837
4838 PR c++/54427
4839 * c-common.c (scalar_to_vector): Moved from c-typeck.c. Support
4840 more operations. Make error messages optional.
4841 * c-common.h (enum stv_conv): Moved from c-typeck.c.
4842 (scalar_to_vector): Declare.
4843
4844 2012-10-08 Jason Merrill <jason@redhat.com>
4845
4846 * c-common.c (c_common_reswords): Add thread_local.
4847
4848 2012-10-08 Dodji Seketeli <dodji@redhat.com>
4849
4850 PR c++/53528 C++11 attribute support
4851 * c-common.h (bitfield_p, cxx_fundamental_alignment_p): Declare
4852 new functions.
4853 * c-common.c (check_cxx_fundamental_alignment_constraints): New
4854 static function.
4855 (handle_aligned_attribute): In choose strictest alignment
4856 among many. Use new check_cxx_fundamental_alignment_constraints.
4857 (handle_transparent_union_attribute): In c++11 attribute syntax,
4858 don't look through typedefs.
4859
4860 2012-10-04 Arnaud Charlet <charlet@adacore.com>
4861
4862 * c-ada-spec.c (print_ada_declaration): Remove handling of TDF_RAW.
4863 * c.opt (-fdump-ada-spec, -fdump-ada-spec-slim): Move switch definition
4864 out of dumpfile.h.
4865
4866 2012-09-25 Dehao Chen <dehao@google.com>
4867
4868 PR middle-end/54645
4869 * c-pch.c (c_common_read_pch): Rebuild the location_adhoc_data
4870 map when read in the pch.
4871
4872 2012-09-18 Arnaud Charlet <charlet@adacore.com>
4873
4874 * c-ada-spec.c: Style fixes.
4875
4876 2012-09-18 Thomas Quinot <quinot@adacore.com>
4877
4878 * c.opt (-fada-spec-parent): Define new command line switch.
4879 * c-ada-spec.c (get_ada_package): When -fada-spec-parent
4880 is specified, generate binding spec as a child of the specified unit.
4881
4882 2012-09-13 Paolo Carlini <paolo.carlini@oracle.com>
4883 Manuel López-Ibáñez <manu@gcc.gnu.org>
4884
4885 PR c++/53210
4886 * c.opt ([Winit-self]): Enabled by -Wall in C++.
4887
4888 2012-08-23 Arnaud Charlet <charlet@adacore.com>
4889
4890 * c-ada-spec.c (dump_generic_ada_node): Fix handling of name_only
4891 for pointers, and add missing Convention C pragma.
4892 (print_ada_struct_decl): Add missing aliased keyword.
4893 (dump_ads): Add pragma Ada_2005 and Style_Checks (Off).
4894
4895 2012-08-17 Jakub Jelinek <jakub@redhat.com>
4896
4897 * c-common.c (sizeof_pointer_memaccess_warning): New function.
4898 * c.opt (-Wsizeof-pointer-memaccess): Add new option.
4899 * c-opts.c (c_common_handle_option): Enable it for -Wall.
4900 * c-common.h (sizeof_pointer_memaccess_warning): Add prototype.
4901 * c-common.def (SIZEOF_EXPR): Moved here from cp-tree.def.
4902
4903 2012-08-10 Richard Guenther <rguenther@suse.de>
4904
4905 * c-pretty-print.c (pp_c_expression): Handle anonymous SSA names.
4906
4907 2012-08-07 Steven Bosscher <steven@gcc.gnu.org>
4908
4909 * c-pretty-print.c (pp_c_function_definition): Use pp_newline_and_flush
4910 instead of separate pp_newline and pp_flush.
4911 (print_c_tree): Likewise.
4912
4913 2012-07-26 Richard Henderson <rth@redhat.com>
4914
4915 * c-common.c (handle_hot_attribute): Allow labels.
4916 (handle_cold_attribute): Likewise.
4917
4918 2012-07-20 Jakub Jelinek <jakub@redhat.com>
4919
4920 PR c++/28656
4921 * c-common.c (check_function_nonnull): Handle multiple nonnull
4922 attributes properly.
4923
4924 2012-07-16 Steven Bosscher <steven@gcc.gnu.org>
4925
4926 * c-gimplify.c: Include dumpfile.h instead of tree-dump.h.
4927 * c-ada-spec.c: Likewise.
4928 * c-dump.c (dump_stmt): Move to cp/dump.c, the only user.
4929
4930 2012-07-14 Steven Bosscher <steven@gcc.gnu.org>
4931
4932 * c-pch.c (CHECK_NO_ASM_OUT_DURING_PCH): Do not define.
4933 Remove code conditional on it.
4934
4935 2012-07-11 Steven Bosscher <steven@gcc.gnu.org>
4936
4937 * c-gimplify.c: Do not include basic-block.h.
4938 * c-common.c: Do not include linfuncs.h.
4939
4940 2012-07-08 Steven Bosscher <steven@gcc.gnu.org>
4941
4942 * c-common.h: Include tree.h.
4943
4944 2012-07-02 Jason Merrill <jason@redhat.com>
4945
4946 PR c++/53524
4947 * c-common.c (get_priority): Call default_conversion.
4948
4949 2012-07-01 Uros Bizjak <ubizjak@gmail.com>
4950
4951 * c-pch.c (c_common_write_pch): Remove unused variables.
4952
4953 2012-06-29 Steven Bosscher <steven@gcc.gnu.org>
4954
4955 * cppspec.c: Moved from gcc/ to here.
4956
4957 2012-06-27 Kai Tietz <ktietz@redhat.com>
4958
4959 PR preprocessor/37215
4960 * c-ppoutput.c (preprocess_file): Check for nonempty buffer.
4961
4962 2012-06-21 Steven Bosscher <steven@gcc.gnu.org>
4963
4964 * c-common.h (c_common_print_pch_checksum): Remove.
4965 * c-pch.c: Do not include output.h.
4966 (CHECK_NO_ASM_OUT_DURING_PCH): Define and add FIXME.
4967 (asm_out_file): Define iff CHECK_NO_ASM_OUT_DURING_PCH isdefined.
4968 (asm_file_startpos): Define iff CHECK_NO_ASM_OUT_DURING_PCH is defined.
4969 (struct c_pch_header): Remove.
4970 (get_ident): Update gpch version.
4971 (pch_init): Do not print executable_checksum to asm_out_file.
4972 Do not fail if there is no asm_out_file to read back from. Set
4973 asm_file_startpos only if CHECK_NO_ASM_OUT_DURING_PCH is defined.
4974 (c_common_write_pch): Verify that nothing was written to asm_out_file
4975 since pch_init was called. Do not write a c_pch_header, and do not
4976 copy from asm_out_file to the PCH.
4977 (c_common_read_pch): Do not read a c_pch_header, and do not restore
4978 the content of asm_out_file from the PCH.
4979 (c_common_print_pch_checksum): Remove.
4980 * c-opts.c (c_common_init): Print out executable_checksum directly.
4981
4982 2012-06-19 Steven Bosscher <steven@gcc.gnu.org>
4983
4984 * c-target.def (objc_declare_unresolved_class_reference,
4985 objc_declare_class_definition): Add new hooks.
4986
4987 2012-06-19 Steven Bosscher <steven@gcc.gnu.org>
4988
4989 * c-lex.c: Do not include output.h.
4990 (cb_ident): Try to put out .ident with targetm.asm_out.output_ident.
4991 Remove uses of ASM_OUTPUT_IDENT.
4992
4993 2012-06-15 Marc Glisse <marc.glisse@inria.fr>
4994
4995 PR c++/51033
4996 * c-common.h (c_build_vec_perm_expr): Move decl here.
4997 * c-common.c (c_build_vec_perm_expr): Move definition
4998 here.
4999
5000 2012-06-06 Steven Bosscher <steven@gcc.gnu.org>
5001
5002 * c.opt (fconserve-space): Turn into a no-op.
5003
5004 2012-06-04 Sterling Augustine <saugustine@google.com>
5005
5006 * c-pretty-print.h (pp_c_flag_gnu_v3): New enumerator.
5007 * c-pretty-print.c (pp_c_specifier_qualifier_list): Check it at
5008 both the start and end of the function.
5009
5010 2012-06-04 Steven Bosscher <steven@gcc.gnu.org>
5011
5012 * c-common.c: Do not include output.h.
5013 * c-pragma.c: Likewise.
5014
5015 2012-06-04 Steven Bosscher <steven@gcc.gnu.org>
5016
5017 * error.c (dump_decl): Check pp_c_flag_gnu_v3.
5018 (decl_as_dwarf_string, lang_decl_dwarf_name): New functions.
5019 (lang_decl_name): Handle namespace decls.
5020
5021 2012-05-31 Steven Bosscher <steven@gcc.gnu.org>
5022
5023 * c-ada-spec.c: Do not include output.h.
5024 * c-semantics.c: Likewise.
5025
5026 2012-05-29 Joseph Myers <joseph@codesourcery.com>
5027
5028 * c-common.c: Fix typo.
5029
5030 2012-05-29 Michael Matz <matz@suse.de>
5031
5032 * c-common.h (c_expand_decl): Remove prototype.
5033
5034 2012-05-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
5035
5036 * c.opt (Wmissing-braces): Use LangEnabledBy(C ObjC,Wall).
5037 * c-opts.c (c_common_handle_option): Remove code handling
5038 warn_missing_braces.
5039
5040 2012-05-28 Paolo Carlini <paolo.carlini@oracle.com>
5041
5042 PR c++/25137
5043 * c-opts.c (c_common_handle_option): For C++ -Wall doesn't enable
5044 -Wmissing_braces.
5045
5046 2012-05-22 Dodji Seketeli <dodji@redhat.com>
5047
5048 PR c++/53322
5049 * c.opt (Wunused-local-typedefs): Use EnabledBy(Wunused).
5050
5051 2012-05-17 Manuel López-Ibáñez <manu@gcc.gnu.org>
5052
5053 * c.opt (--pedantic-errors,-pedantic-errors): Do not handle here.
5054 * c-opts.c (c_common_handle_option): Do not handle explicitly
5055 Wreturn-type, Wwrite-strings, warn_ecpp, and -pedantic-errors.
5056
5057 2012-05-16 Dodji Seketeli <dodji@redhat.com>
5058
5059 PR preprocessor/7263
5060 * c-lex.c (c_lex_with_flags): Pass a virtual location to the call
5061 to cpp_classify_number. For diagnostics, use the precise location
5062 instead of the global input_location.
5063
5064 2012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
5065
5066 PR c++/11856
5067 * c-common.c (shorten_compare): Check c_inhibit_evaluation_warnings.
5068
5069 2012-05-14 Bernd Schmidt <bernds@codesourcery.com>
5070
5071 * c-common.c (DEF_ATTR_STRING): Define and undefine as necessary.
5072
5073 2012-05-14 Manuel López-Ibáñez <manu@gcc.gnu.org>
5074
5075 PR 53063
5076 * c.opt (Wc++0X-compat,Wdelete-non-virtual-dtor,Wjump-misses-init,
5077 Wreorder): Use LangEnabledBy.
5078 * c-opts.c (c_common_handle_option): Do not enable them
5079 explicitly. Call lang-specific generated functions.
5080 (c_common_post_options): Do not set them here.
5081
5082 2012-05-13 Manuel López-Ibáñez <manu@gcc.gnu.org>
5083
5084 * c.opt (Wclobbered,Wempty-body,Wignored-qualifiers,
5085 Wmissing-field-initializers,Wmissing-parameter-type,
5086 Wold-style-declaration,Woverride-init): Use EnabledBy.
5087 * c-opts.c (c_common_post_options): Do not set here explicitly.
5088
5089 2012-05-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
5090
5091 PR 53063
5092 * c-opts.c (c_common_handle_option): Use handle_generated_option
5093 to enable sub-options.
5094
5095 2012-05-10 Paolo Carlini <paolo.carlini@oracle.com>
5096
5097 PR c++/53158
5098 * c-common.c (warnings_for_convert_and_check): Use warning_at.
5099
5100 2012-05-10 Richard Guenther <rguenther@suse.de>
5101
5102 * c-common.c (c_sizeof_or_alignof_type): Remove assert and
5103 adjust commentary about TYPE_IS_SIZETYPE types.
5104
5105 2012-05-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
5106
5107 PR c++/53261
5108 * c-common.c (warn_logical_operator): Check that argument of
5109 integer_zerop is not NULL.
5110
5111 2012-05-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
5112
5113 PR c/43772
5114 * c-common.c (warn_logical_operator): Do not warn if either side
5115 is already true or false.
5116
5117 2012-05-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
5118
5119 PR c/51712
5120 * c-common.c (expr_original_type): New.
5121 (shorten_compare): Do not warn for enumeration types.
5122
5123 2012-05-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
5124
5125 * c.opt (fpermissive): Add Var(flag_permissive).
5126
5127 2012-04-30 Marc Glisse <marc.glisse@inria.fr>
5128
5129 PR c++/51033
5130 * c-common.c (convert_vector_to_pointer_for_subscript): New function.
5131 * c-common.h (convert_vector_to_pointer_for_subscript): Declare it.
5132
5133 2012-04-30 Dodji Seketeli <dodji@redhat.com>
5134
5135 Add -Wvarargs option
5136 * c.opt (Wvarargs): Define new option.
5137
5138 2012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
5139
5140 * c-common.c (check_function_arguments): Replace
5141 Wmissing-format-attribute with Wsuggest-attribute=format.
5142
5143 2012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
5144
5145 * c.opt (Wsuggest-attribute=format): New. Alias of
5146 Wmissing-format-attribute.
5147 * c-format.c (decode_format_type): Replace
5148 Wmissing-format-attribute with Wsuggest-attribute=format.
5149 (check_function_format): Likewise.
5150
5151 2012-04-27 Ollie Wild <aaw@google.com>
5152
5153 * c-common.c: Add CPP_W_LITERAL_SUFFIX mapping.
5154 * c-opts.c (c_common_handle_option): Handle OPT_Wliteral_suffix.
5155 * c.opt: Add Wliteral-suffix.
5156
5157 2012-04-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
5158
5159 PR c/44774
5160 * c.opt (Wpedantic): New.
5161 (pedantic): Alias Wpedantic.
5162 * c-opts.c (c_common_handle_option): Replace -pedantic with -Wpedantic.
5163 (c_common_post_options): Likewise.
5164 (sanitize_cpp_opts): Likewise.
5165 * c-lex.c (interpret_float): Likewise.
5166 * c-format.c (check_format_types): Likewise.
5167 * c-common.c (pointer_int_sum): Likewise.
5168 (c_sizeof_or_alignof_type): Likewise.
5169 (c_add_case_label): Likewise.
5170 (c_do_switch_warnings): Likewise.
5171 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
5172
5173 2012-04-15 Jason Merrill <jason@redhat.com>
5174
5175 PR c++/52818
5176 * c-format.c (CPLUSPLUS_STD_VER): C++11 inherits from C99.
5177 (C_STD_NAME): Distinguish between C++98 and C++11.
5178
5179 2012-04-11 Eric Botcazou <ebotcazou@adacore.com>
5180
5181 PR target/52624
5182 * c-common.h (uint16_type_node): Rename into...
5183 (c_uint16_type_node): ...this.
5184 * c-common.c (c_common_nodes_and_builtins): Adjust for above renaming.
5185 * c-cppbuiltin.c (builtin_define_stdint_macros): Likewise.
5186
5187 2012-04-10 Manuel López-Ibáñez <manu@gcc.gnu.org>
5188
5189 * c-common.c (warn_if_unused_value): Move definition to here.
5190 * c-common.h (warn_if_unused_value): Move declaration to here.
5191
5192 2012-03-23 William Bader <williambader@hotmail.com>
5193
5194 * c-lex.c (c_lex_with_flags): Avoid declarations after stmts.
5195
5196 2012-03-20 Jason Merrill <jason@redhat.com>
5197
5198 * c-common.h (enum cxx_dialect): Add cxx1y.
5199 * c-common.c (c_common_nodes_and_builtins): Use >= for cxx_dialect
5200 test.
5201 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
5202 * c-opts.c (c_common_post_options): Likewise.
5203 (set_std_cxx1y): New.
5204 (c_common_handle_option): Call it.
5205 * c.opt (-std=c++1y, -std=gnu++1y): New flags.
5206
5207 2012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
5208
5209 PR c++/14710
5210 * c.opt ([Wuseless-cast]): Add.
5211
5212 2012-03-16 Richard Guenther <rguenther@suse.de>
5213
5214 * c-pretty-print.c (pp_c_initializer_list): Adjust.
5215
5216 2012-03-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
5217
5218 PR c++/44783
5219 * c.opt (ftemplate-backtrace-limit) Add.
5220
5221 2012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
5222
5223 * c-cppbuiltin.c (c_cpp_builtins): Remove #pragma extern_prefix
5224 handling.
5225 * c-pragma.c (handle_pragma_extern_prefix): Remove.
5226 (init_pragma): Don't register extern_prefix.
5227
5228 2012-03-12 Richard Guenther <rguenther@suse.de>
5229
5230 * c-common.c (c_common_get_narrower): Use c_common_type_for_size.
5231 (builtin_type_for_size): Likewise.
5232
5233 2012-02-13 Jakub Jelinek <jakub@redhat.com>
5234
5235 PR c++/52215
5236 * c-common.c (sync_resolve_params): Don't decide whether to convert
5237 or not based on TYPE_SIZE comparison, convert whenever arg_type
5238 is unsigned INTEGER_TYPE.
5239
5240 2012-02-06 Paolo Carlini <paolo.carlini@oracle.com>
5241
5242 PR c/52118
5243 * c.opt ([Wunused-local-typedefs]): Fix description.
5244
5245 2012-01-24 Mike Stump <mikestump@comcast.net>
5246
5247 * c-common.c (c_common_type_for_mode): Match signed/unsigned types
5248 exactly.
5249
5250 2012-01-18 Richard Guenther <rguenther@suse.de>
5251
5252 * c-opts.c (c_common_post_options): Reset LTO flags if
5253 we are about to generate a PCH.
5254
5255 2012-01-17 Paolo Carlini <paolo.carlini@oracle.com>
5256
5257 PR c++/51777
5258 * c-pretty-print.c (pp_c_integer_constant): For unsigned constants
5259 use pp_unsigned_wide_integer.
5260
5261 2012-01-10 Richard Guenther <rguenther@suse.de>
5262
5263 PR middle-end/51806
5264 * c-opts.c (c_common_handle_option): Move -Werror handling
5265 to language independent code.
5266
5267 2012-01-05 Richard Guenther <rguenther@suse.de>
5268
5269 PR middle-end/51764
5270 * c.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move here
5271 from common.opt.
5272
5273 2011-12-30 Paolo Carlini <paolo.carlini@oracle.com>
5274
5275 PR c++/51316
5276 * c-common.c (c_sizeof_or_alignof_type): In C++ allow for alignof
5277 of array types with an unknown bound.
5278
5279 2011-12-20 Joseph Myers <joseph@codesourcery.com>
5280
5281 * c-common.c (flag_isoc99): Update comment to refer to C11.
5282 (flag_isoc1x): Change to flag_isoc11.
5283 * c-common.h (flag_isoc99): Update comment to refer to C11.
5284 (flag_isoc1x): Change to flag_isoc11.
5285 * c-cppbuiltin.c (cpp_atomic_builtins): Change comment to refer to
5286 C11.
5287 * c-opts.c (set_std_c1x): Change to set_std_c11.
5288 (c_common_handle_option): Handle OPT_std_c11 and OPT_std_gnu11.
5289 Call set_std_c11.
5290 (set_std_c89, set_std_c99, set_std_c11): Use flag_isoc11.
5291 (set_std_c1): Use CLK_STDC11 and CLK_GNUC11.
5292 * c.opt (std=c1x): Change to std=c11. Document as non-draft
5293 standard.
5294 (std=c1x, std=iso9899:2011): Add as aliases of std=c11.
5295 (std=gnu1x): Change to std=gnu11. Refer to non-draft standard.
5296 (std=gnu1x): Make alias of std=gnu11.
5297
5298 2011-12-19 Jason Merrill <jason@redhat.com>
5299
5300 PR c++/51228
5301 * c-common.c (handle_transparent_union_attribute): Check the first
5302 field if the type is complete.
5303
5304 2011-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
5305
5306 PR libstdc++/51365
5307 * c-common.c (RID_IS_FINAL): Add.
5308 * c-common.h (RID_IS_FINAL): Add.
5309
5310 2011-11-30 Iain Sandoe <iains@gcc.gnu.org>
5311
5312 * c.opt (fgnu-runtime): Provide full description.
5313 (fnext-runtime): Likewise.
5314 * c-opts.c (OPT_fgnu_runtime, OPT_fnext_runtime) Remove.
5315
5316 2011-11-28 Andrew MacLeod <amacleod@redhat.com>
5317
5318 * c-cpp-builtin.c (cpp_atomic_builtins):New. Emit all atomic
5319 predefines in one place. Add LOCK_FREE predefines.
5320 (c_cpp_builtins): Move Legacy HAVE_SYNC predefines to
5321 new func.
5322
5323 2011-11-24 Andrew MacLeod <amacleod@redhat.com>
5324
5325 PR c/51256
5326 * c-common.c (get_atomic_generic_size): Check for various error
5327 conditions
5328 (resolve_overloaded_atomic_exchange,
5329 resolve_overloaded_atomic_compare_exchange,
5330 resolve_overloaded_atomic_load, resolve_overloaded_atomic_store): Return
5331 error_mark_node for error conditions.
5332
5333 2011-11-08 Richard Guenther <rguenther@suse.de>
5334
5335 PR middle-end/51010
5336 c-family/
5337
5338 2011-11-07 Richard Henderson <rth@redhat.com>
5339 Aldy Hernandez <aldyh@redhat.com>
5340 Torvald Riegel <triegel@redhat.com>
5341
5342 Merged from transactional-memory.
5343
5344 * c-common.c (handle_tm_wrap_attribute,
5345 handle_tm_attribute, ignore_attribute, parse_tm_stmt_attr): New.
5346 (struct c_common_reswords): Added __transaction* keywords.
5347 (struct c_common_attribute_table): Added transaction* and tm_regparm
5348 attributes.
5349 * c-common.h: Added RID_TRANSACTION*. Added TM_ATTR* and TM_STMT*
5350 masks.
5351 (parse_tm_stmt_attr, tm_attr_to_mask, tm_mask_to_attr,
5352 find_tm_attribute): Declare.
5353
5354 2011-11-07 Jason Merrill <jason@redhat.com>
5355
5356 PR c++/35688
5357 * c-common.c, c-common.h: Revert yesterday's changes.
5358
5359 2011-11-06 Jason Merrill <jason@redhat.com>
5360
5361 PR c++/35688
5362 * c-common.c (decl_has_visibility_attr): Split out from...
5363 (c_determine_visibility): ...here.
5364 * c-common.h: Declare it.
5365
5366 2011-11-06 Joseph Myers <joseph@codesourcery.com>
5367
5368 * c-common.c (c_common_reswords): Add _Alignas and _Alignof.
5369 (c_sizeof_or_alignof_type): Diagnose alignof applied to a function
5370 type.
5371 (check_user_alignment): New. Split out of
5372 handle_aligned_attribute. Disallow integer constants with
5373 noninteger types. Conditionally allow zero.
5374 (handle_aligned_attribute): Use check_user_alignment.
5375 * c-common.h (RID_ALIGNAS, check_user_alignment): New.
5376
5377 2011-11-06 Andrew MacLeod <amacleod@redhat.com>
5378 Richard Henderson <rth@redhat.com>
5379
5380 Merged from cxx-mem-model.
5381
5382 * c-cppbuiltin.c (c_cpp_builtins): Test both atomic and sync patterns.
5383 * c-common.c (sync_resolve_params, sync_resolve_return): Only tweak
5384 parameters that are the same type size.
5385 (get_atomic_generic_size): New. Find size of generic
5386 atomic function parameters and do typechecking.
5387 (add_atomic_size_parameter): New. Insert size into parameter list.
5388 (resolve_overloaded_atomic_exchange): Restructure __atomic_exchange to
5389 either __atomic_exchange_n or external library call.
5390 (resolve_overloaded_atomic_compare_exchange): Restructure
5391 __atomic_compare_exchange to either _n variant or external library call.
5392 (resolve_overloaded_atomic_load): Restructure __atomic_load to either
5393 __atomic_load_n or an external library call.
5394 (resolve_overloaded_atomic_store): Restructure __atomic_store to either
5395 __atomic_store_n or an external library call.
5396 (resolve_overloaded_builtin): Handle new __atomic builtins.
5397
5398 2011-11-04 Eric Botcazou <ebotcazou@adacore.com>
5399
5400 PR c++/50608
5401 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1.
5402 (fold_offsetof_1): Make global. Remove STOP_REF argument and adjust.
5403 <INDIRECT_REF>: Return the argument.
5404 <ARRAY_REF>: Remove special code for negative offset.
5405 Call fold_build_pointer_plus instead of size_binop.
5406 (fold_offsetof): Remove STOP_REF argument and adjust.
5407 * c-common.h (fold_offsetof_1): Declare.
5408 (fold_offsetof): Remove STOP_REF argument.
5409
5410 2011-11-02 Paolo Carlini <paolo.carlini@oracle.com>
5411
5412 PR c++/50810
5413 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
5414 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
5415 Wnarrowing for C++0x and C++98.
5416 * c.opt ([Wnarrowing]): Update.
5417
5418 2011-11-01 Paolo Carlini <paolo.carlini@oracle.com>
5419
5420 PR c++/44277
5421 * c.opt: Add Wzero-as-null-pointer-constant.
5422
5423 2011-10-31 Jason Merrill <jason@redhat.com>
5424
5425 * c.opt (-fdeduce-init-list): Off by default.
5426
5427 PR c++/50920
5428 * c-common.h (cxx_dialect): Add cxx11 and cxx03.
5429 * c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03,
5430 and -Wc++11-compat.
5431 * c-opts.c (set_std_cxx11): Rename from set_std_cxx0x.
5432
5433 2011-10-27 Roberto Agostino Vitillo <ravitillo@lbl.gov>
5434
5435 PR c++/30066
5436 * c.opt (fvisibility-inlines-hidden): Description change.
5437
5438 2011-10-26 Ed Smith-Rowland <3dw4rd@verizon.net>
5439
5440 Implement C++11 user-defined literals.
5441 * c-common.c (build_userdef_literal): New.
5442 * c-common.def: New tree code.
5443 * c-common.h (tree_userdef_literal): New tree struct and accessors.
5444 * c-lex.c (interpret_float): Add suffix parm.
5445 (c_lex_with_flags): Build literal tokens.
5446
5447 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
5448
5449 PR c++/50841
5450 Revert:
5451 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
5452
5453 PR c++/50810
5454 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
5455 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
5456 Wnarrowing for C++0x and C++98.
5457 * c.opt ([Wnarrowing]): Update.
5458
5459 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
5460
5461 PR c++/50810
5462 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
5463 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
5464 Wnarrowing for C++0x and C++98.
5465 * c.opt ([Wnarrowing]): Update.
5466
5467 2011-10-21 Paolo Carlini <paolo.carlini@oracle.com>
5468
5469 PR c++/45385
5470 * c-common.c (conversion_warning): Remove code looking for
5471 artificial operands.
5472
5473 2011-10-18 Dodji Seketeli <dodji@redhat.com>
5474
5475 PR bootstrap/50760
5476 * c-lex.c (fe_file_change): Use LINEMAP_SYSP when
5477 !NO_IMPLICIT_EXTERN_C.
5478
5479 2011-10-17 Michael Spertus <mike_spertus@symantec.com>
5480
5481 * c-common.c (c_common_reswords): Add __bases,
5482 __direct_bases.
5483 * c-common.h: Add RID_BASES and RID_DIRECT_BASES.
5484
5485 2011-10-17 Paolo Carlini <paolo.carlini@oracle.com>
5486
5487 PR c++/50757
5488 * c.opt ([Wnonnull]): Add C++ and Objective-C++.
5489
5490 2011-10-15 Tom Tromey <tromey@redhat.com>
5491 Dodji Seketeli <dodji@redhat.com>
5492
5493 * c.opt (fdebug-cpp): New option.
5494 * c-opts.c (c_common_handle_option): Handle the option.
5495 * c-ppoutput.c (maybe_print_line_1): New static function. Takes an
5496 output stream in parameter. Factorized from ...
5497 (maybe_print_line): ... this. Dump location debug information when
5498 -fdebug-cpp is in effect.
5499 (print_line_1): New static function. Takes an output stream in
5500 parameter. Factorized from ...
5501 (print_line): ... here. Dump location information when -fdebug-cpp
5502 is in effect.
5503 (scan_translation_unit): Dump location information when
5504 -fdebug-cpp is in effect.
5505
5506 2011-10-15 Tom Tromey <tromey@redhat.com>
5507 Dodji Seketeli <dodji@redhat.com>
5508
5509 * c.opt (ftrack-macro-expansion): New option. Handle it with and
5510 without argument.
5511 * c-opts.c (c_common_handle_option)<case
5512 OPT_ftrack_macro_expansion_, case OPT_ftrack_macro_expansion>: New
5513 cases. Handle -ftrack-macro-expansion with and without argument.
5514
5515 2011-10-15 Tom Tromey <tromey@redhat.com>
5516 Dodji Seketeli <dodji@redhat.com>
5517
5518 * c-ppoutput.c (scan_translation_unit, maybe_print_line)
5519 (print_line, cb_define, do_line_change): Adjust to avoid touching
5520 the internals of struct line_map. Use the public API instead.
5521 * c-pch.c (c_common_read_pch): Likewise.
5522 * c-lex.c (fe_file_change): Likewise.
5523
5524 2011-10-14 Paolo Carlini <paolo.carlini@oracle.com>
5525
5526 PR c++/17212
5527 * c.opt ([Wformat-zero-length]): Add C++ and Objective-C++.
5528
5529 2011-10-11 Paolo Carlini <paolo.carlini@oracle.com>
5530
5531 PR c++/33067
5532 * c-pretty-print.c (pp_c_floating_constant): Output
5533 max_digits10 (in the ISO C++ WG N1822 sense) decimal digits.
5534
5535 2011-10-11 Michael Meissner <meissner@linux.vnet.ibm.com>
5536
5537 * c-common.c (def_builtin_1): Delete old interface with two
5538 parallel arrays to hold standard builtin declarations, and replace
5539 it with a function based interface that can support creating
5540 builtins on the fly in the future. Change all uses, and poison
5541 the old names. Make sure 0 is not a legitimate builtin index.
5542 * c-omp.c (c_finish_omp_barrier): Ditto.
5543 (c_finish_omp_taskwait): Ditto.
5544 (c_finish_omp_flush): Ditto.
5545
5546 2011-10-11 Tristan Gingold <gingold@adacore.com>
5547
5548 * c.opt: (fallow-parameterless-variadic-functions): New.
5549
5550 2011-09-08 Dodji Seketeli <dodji@redhat.com>
5551
5552 PR c++/33255 - Support -Wunused-local-typedefs warning
5553 * c-common.h (struct c_language_function::local_typedefs): New
5554 field.
5555 (record_locally_defined_typedef, maybe_record_typedef_use)
5556 (maybe_warn_unused_local_typedefs): Declare new functions.
5557 * c-common.c (record_locally_defined_typedef)
5558 (maybe_record_typedef_use)
5559 (maybe_warn_unused_local_typedefs): Define new functions.
5560 * c.opt: Declare new -Wunused-local-typedefs flag.
5561
5562 2011-09-06 Eric Botcazou <ebotcazou@adacore.com>
5563
5564 PR middle-end/50266
5565 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Fold offsetof-like
5566 computations.
5567
5568 2011-09-05 Richard Guenther <rguenther@suse.de>
5569
5570 * c-common.c (complete_array_type): Use ssize_int (-1) instead
5571 of integer_minus_one_node for empty array upper bounds.
5572
5573 2011-08-28 Dodji Seketeli <dodji@redhat.com>
5574
5575 * c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as
5576 it's the first time it's being called on this main TU.
5577
5578 2011-08-24 Richard Guenther <rguenther@suse.de>
5579
5580 PR c/49396
5581 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional.
5582
5583 2011-08-22 Gabriel Charette <gchare@google.com>
5584
5585 * c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens
5586 defined in cpp_init_builtins and c_cpp_builtins.
5587
5588 2011-08-19 Joseph Myers <joseph@codesourcery.com>
5589
5590 * c-common.c (c_common_reswords): Add __builtin_complex.
5591 * c-common.h (RID_BUILTIN_COMPLEX): New.
5592
5593 2011-08-18 Joseph Myers <joseph@codesourcery.com>
5594
5595 * c-common.c (c_common_reswords): Add _Noreturn.
5596 (keyword_is_function_specifier): Handle RID_NORETURN.
5597 * c-common.h (RID_NORETURN): New.
5598
5599 2011-08-10 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
5600
5601 * c-common.c (unsafe_conversion_p): New function. Check if it is
5602 unsafe to convert an expression to the type.
5603 (conversion_warning): Adjust, use unsafe_conversion_p.
5604 * c-common.h (unsafe_conversion_p): New function declaration.
5605
5606 2011-08-02 Jakub Jelinek <jakub@redhat.com>
5607
5608 * c-common.h (c_finish_omp_atomic): Adjust prototype.
5609 (c_finish_omp_taskyield): New prototype.
5610 * c-omp.c (c_finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1
5611 arguments. Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and
5612 OMP_ATOMIC_CAPTURE_NEW in addition to OMP_ATOMIC. If LHS1
5613 or RHS1 have side-effects, evaluate those too in the right spot,
5614 if it is a decl and LHS is also a decl, error out if they
5615 aren't the same.
5616 (c_finish_omp_taskyield): New function.
5617 * c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP to 201107.
5618 * c-pragma.c (omp_pragmas): Add taskyield.
5619 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKYIELD.
5620 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FINAL and
5621 PRAGMA_OMP_CLAUSE_MERGEABLE.
5622
5623 2011-07-25 Dodji Seketeli <dodji@redhat.com>
5624
5625 * c-common.h (set_underlying_type): Remove parm name from
5626 declaration.
5627
5628 2011-07-25 Romain Geissler <romain.geissler@gmail.com>
5629
5630 * c-pretty-print.h: Search c-common.h in c-family.
5631
5632 2011-07-22 Jason Merrill <jason@redhat.com>
5633
5634 PR c++/49793
5635 * c.opt (Wnarrowing): New.
5636
5637 PR c++/30112
5638 * c-common.h: Declare c_linkage_bindings.
5639 * c-pragma.c (handle_pragma_redefine_extname): Use it.
5640
5641 PR c++/49813
5642 * c-opts.c (set_std_cxx0x): Set flag_isoc94 and flag_isoc99.
5643 * c-pretty-print.c (pp_c_cv_qualifiers): Check c_dialect_cxx as well
5644 as flag_isoc99 for 'restrict'.
5645 (pp_c_specifier_qualifier_list): Likewise for _Complex.
5646
5647 2011-07-21 Ian Lance Taylor <iant@google.com>
5648
5649 PR middle-end/49705
5650 * c-common.c (c_disable_warnings): New static function.
5651 (c_enable_warnings): New static function.
5652 (c_fully_fold_internal): Change local unused_p to bool. Call
5653 c_disable_warnings and c_enable_warnings rather than change
5654 c_inhibit_evaluation_warnings.
5655
5656 2011-07-20 Jason Merrill <jason@redhat.com>
5657
5658 PR c++/6709 (DR 743)
5659 PR c++/42603 (DR 950)
5660 * c-common.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move from cp/parser.h.
5661 (CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise.
5662 (CPP_DECLTYPE): New.
5663 * c-common.c (c_parse_error): Handle CPP_DECLTYPE.
5664
5665 2011-07-19 Richard Guenther <rguenther@suse.de>
5666
5667 * c-common.c (pointer_int_sum): Use fold_build_pointer_plus.
5668 * c-omp.c (c_finish_omp_for): Likewise.
5669
5670 2011-07-12 Eric Botcazou <ebotcazou@adacore.com>
5671
5672 * c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop
5673 body on the next line.
5674
5675 2011-07-08 Jason Merrill <jason@redhat.com>
5676
5677 PR c++/45437
5678 * c-omp.c (check_omp_for_incr_expr): Handle preevaluation.
5679
5680 PR c++/49673
5681 * c-common.c (c_apply_type_quals_to_decl): Don't check
5682 TYPE_NEEDS_CONSTRUCTING.
5683
5684 2011-07-06 Richard Guenther <rguenther@suse.de>
5685
5686 * c-common.c (c_common_nodes_and_builtins):
5687 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
5688
5689 2011-07-05 Richard Guenther <rguenther@suse.de>
5690
5691 * c-common.c (c_common_nodes_and_builtins): Build all common
5692 tree nodes first.
5693
5694 2011-06-27 Jakub Jelinek <jakub@redhat.com>
5695
5696 * c-common.h (c_tree_chain_next): New static inline function.
5697
5698 * c-common.c (check_builtin_function_arguments): Handle
5699 BUILT_IN_ASSUME_ALIGNED.
5700
5701 2011-06-21 Andrew MacLeod <amacleod@redhat.com>
5702
5703 * c-common.c: Add sync_ or SYNC__ to builtin names.
5704 * c-omp.c: Add sync_ or SYNC__ to builtin names.
5705
5706 2011-06-20 Pierre Vittet <piervit@pvittet.com>
5707
5708 * c-pragma.h (pragma_handler_1arg, pragma_handler_2arg): New
5709 handler.
5710 (gen_pragma_handler): New union.
5711 (internal_pragma_handler): New type.
5712 (c_register_pragma_with_data)
5713 (c_register_pragma_with_expansion_and_data): New functions.
5714
5715 * c-pragma.c (registered_pragmas, c_register_pragma_1)
5716 (c_register_pragma, c_register_pragma_with_expansion)
5717 (c_invoke_pragma_handler): Changed to work with
5718 internal_pragma_handler.
5719 (c_register_pragma_with_data)
5720 (c_register_pragma_with_expansion_and_data): New functions.
5721
5722 2011-06-14 Joseph Myers <joseph@codesourcery.com>
5723
5724 * c-common.c: Include common/common-target.h.
5725 (handle_section_attribute): Use
5726 targetm_common.have_named_sections.
5727 * c-cppbuiltin.c: Include common/common-target.h.
5728 (c_cpp_builtins): Use targetm_common.except_unwind_info.
5729
5730 2011-06-10 Richard Guenther <rguenther@suse.de>
5731
5732 * c-pretty-print.c (pp_c_type_specifier): Use pp_c_identifier
5733 to print a IDENTIFIER_NODE.
5734
5735 2011-06-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
5736 Joseph Myers <joseph@codesourcery.com>
5737
5738 * c.opt (fbuilding-libgcc): New option.
5739 * c-cppbuiltin.c (c_cpp_builtins): Define
5740 __LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc.
5741
5742 2011-06-07 Jason Merrill <jason@redhat.com>
5743
5744 * c-common.c (max_tinst_depth): Lower default to 900.
5745
5746 * c-format.c (gcc_cxxdiag_char_table): Add 'S' format.
5747
5748 2011-06-07 Richard Guenther <rguenther@suse.de>
5749
5750 * c-common.c (c_common_nodes_and_builtins): Do not set
5751 size_type_node or call set_sizetype.
5752
5753 2011-06-07 Dodji Seketeli <dodji@redhat.com>
5754
5755 PR debug/49130
5756 * c-pretty-print.c (pp_c_integer_constant): Consider the canonical
5757 type when using pointer comparison to compare types.
5758
5759 2011-06-02 Jonathan Wakely <jwakely.gcc@gmail.com>
5760
5761 * c.opt: Add -Wdelete-non-virtual-dtor.
5762 * c-opts.c (c_common_handle_option): Include it in -Wall.
5763
5764 2011-05-30 Nathan Froyd <froydnj@gcc.gnu.org>
5765
5766 PR bootstrap/49190
5767
5768 Revert:
5769 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
5770
5771 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
5772 not tree_common.
5773
5774 2011-05-27 Jakub Jelinek <jakub@redhat.com>
5775
5776 PR c++/49165
5777 * c-common.c (c_common_truthvalue_conversion) <case COND_EXPR>: For
5778 C++ don't call c_common_truthvalue_conversion on void type arms.
5779
5780 2011-05-27 Nathan Froyd <froydnj@codesourcery.com>
5781
5782 * c-common.h (struct stmt_tree_s) [x_cur_stmt_list]: Change to a VEC.
5783 (stmt_list_stack): Define.
5784 (cur_stmt_list): Adjust for new type of x_cur_stmt_list.
5785 * c-semantics.c (push_stmt_list, pop_stmt_list): Likewise.
5786
5787 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
5788
5789 * c-common.c (warning_candidate_p): Check for BLOCKs.
5790
5791 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
5792
5793 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
5794 not tree_common.
5795
5796 2011-05-25 Jakub Jelinek <jakub@redhat.com>
5797
5798 * c-common.c (def_fn_type): Remove extra va_end.
5799
5800 2011-05-23 Jason Merrill <jason@redhat.com>
5801
5802 PR c++/48106
5803 * c-common.c (c_common_get_narrower): New.
5804 (shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.
5805
5806 2011-05-23 Nathan Froyd <froydnj@codesourcery.com>
5807
5808 * c-common.h (check_function_arguments): Tweak prototype of
5809 check_function_arguments.
5810 * c-common.c (check_function_arguments): Likewise. Adjust
5811 calls to check_function_nonnull, check_function_format, and
5812 check_function_sentinel.
5813 (check_function_sentinel): Take a FUNCTION_TYPE rather than
5814 separate attributes and typelist arguments. Use
5815 FOREACH_FUNCTION_ARGS to iterate over argument types.
5816
5817 2011-05-15 Paolo Carlini <paolo.carlini@oracle.com>
5818
5819 * c-common.c (c_common_reswords): Reorder.
5820 * c-common.h (rid): Likewise.
5821
5822 2011-05-10 Nathan Froyd <froydnj@codesourcery.com>
5823
5824 * c-common.c (def_fn_type): Don't call build_function_type, call
5825 build_function_type_array or build_varargs_function_type_array
5826 instead.
5827 (c_common_nodes_and_builtins): Likewise.
5828
5829 2011-05-05 Nathan Froyd <froydnj@codesourcery.com>
5830
5831 * c-common.c (c_add_case_label): Omit the loc argument to
5832 build_case_label.
5833 * c-common.h (build_case_label): Remove.
5834 * c-semantics.c (build_case_label): Remove.
5835
5836 2011-05-05 Joseph Myers <joseph@codesourcery.com>
5837
5838 * c-objc.h (objc_start_method_definition): Update prototype.
5839 * stub-objc.c (objc_start_method_definition): Add extra parameter.
5840
5841 2011-05-04 Nathan Froyd <froydnj@codesourcery.com>
5842
5843 * c-common.c (check_main_parameter_types): Reindent. Don't use
5844 TYPE_ARG_TYPES directly.
5845 (handle_nonnull_attribute): Likewise.
5846 (sync_resolve_params): Likewise.
5847 * c-format.c (handle_format_arg_attribute): Likewise. Adjust call
5848 to check_format_string.
5849 (handle_format_attribute): Likewise.
5850 (check_format_string): Take a function type to examine instead of
5851 a type list. Use a function_arg_iterator to step through argument
5852 types.
5853
5854 2011-05-04 Richard Guenther <rguenther@suse.de>
5855
5856 * c-common.c (fix_string_type): Use size_int for index type bounds.
5857 (start_fname_decls): Do not pass NULL to build_int_cst.
5858 (c_init_attributes): Likewise.
5859 * c-lex.c (c_lex_with_flags): Likewise.
5860
5861 2011-04-27 Jason Merrill <jason@redhat.com>
5862
5863 * c-common.c (make_tree_vector_from_list): New.
5864 * c-common.h: Declare it.
5865
5866 2011-04-26 Richard Guenther <rguenther@suse.de>
5867
5868 PR preprocessor/48248
5869 * c-ppoutput.c (maybe_print_line): Always optimize newlines
5870 for output size with -P.
5871
5872 2011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
5873
5874 * c-common.c (struct c_common_resword): Add __underlying_type.
5875 * c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
5876
5877 2011-04-20 Jim Meyering <meyering@redhat.com>
5878
5879 * c-format.c (init_dollar_format_checking): Remove useless
5880 if-before-free.
5881
5882 2011-04-15 Nicola Pero <nicola.pero@meta-innovation.com>
5883
5884 * c-objc.h (objc_get_interface_ivars): Removed.
5885 (objc_detect_field_duplicates): New.
5886 * stub-objc.c: Likewise.
5887
5888 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
5889
5890 * stub-objc.c (objc_declare_protocols): Renamed to
5891 objc_declare_protocol.
5892 * c-objc.h: Likewise.
5893
5894 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
5895
5896 * stub-objc.c (objc_declare_class): Updated argument name.
5897
5898 2011-04-12 Nathan Froyd <froydnj@codesourcery.com>
5899
5900 * c-common.h (c_common_init_ts): Declare.
5901 * c-common.c (c_common_init_ts): Define.
5902
5903 2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
5904
5905 * c-objc.h (objc_build_message_expr): Updated prototype.
5906 * stub-objc.c (objc_build_message_expr): Likewise.
5907
5908 2011-04-12 Martin Jambor <mjambor@suse.cz>
5909
5910 * c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
5911 of cgraph_node.
5912
5913 2011-04-11 Richard Guenther <rguenther@suse.de>
5914
5915 * c-common.c (complete_array_type): Build a range type of
5916 proper type.
5917
5918 2011-04-08 Nathan Froyd <froydnj@codesourcery.com>
5919
5920 * c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
5921 (handle_type_generic_attribute): Likewise.
5922
5923 2011-04-07 Jason Merrill <jason@redhat.com>
5924
5925 PR c++/48450
5926 * c-common.c (c_common_truthvalue_conversion): Don't ignore
5927 conversion from C++0x scoped enum.
5928
5929 2011-04-06 Joseph Myers <joseph@codesourcery.com>
5930
5931 * c-target-def.h: New file.
5932 * c-target.def: New file.
5933 * c-target.h: New file.
5934 * c-common.c (targetcm): Don't define here.
5935 * c-common.h (default_handle_c_option): Declare.
5936 * c-format.c: Include c-target.h instead of target.h.
5937 * c-opts.c: Include c-target.h instead of target.h. Explicitly
5938 include tm.h.
5939 (default_handle_c_option): Move from targhooks.c.
5940
5941 2011-03-29 Jakub Jelinek <jakub@redhat.com>
5942
5943 PR preprocessor/48248
5944 * c-ppoutput.c (print): Add src_file field.
5945 (init_pp_output): Initialize it.
5946 (maybe_print_line): Don't optimize by adding up to 8 newlines
5947 if map->to_file and print.src_file are different file.
5948 (print_line): Update print.src_file.
5949
5950 2011-03-25 Kai Tietz <ktietz@redhat.com>
5951
5952 * c-ada-spec.c (compare_comment): Use filename_cmp
5953 instead of strcmp for filename.
5954
5955 2011-03-25 Jeff Law <law@redhat.com>
5956
5957 * c-common.c (def_fn_type): Add missing va_end.
5958
5959 2011-03-25 Jason Merrill <jason@redhat.com>
5960
5961 * c.opt: Add -std=c++03.
5962
5963 2011-03-22 Eric Botcazou <ebotcazou@adacore.com>
5964
5965 * c-ada-spec.c (dump_ada_template): Skip non-class instances.
5966
5967 2011-03-17 Kai Tietz <ktietz@redhat.com>
5968
5969 PR target/12171
5970 * c-pretty-print.c (pp_c_specifier_qualifier_list):
5971 Display allowed attributes for function pointer types.
5972 (pp_c_attributes_display): New function to display
5973 attributes having affects_type_identity flag set to true.
5974 * c-pretty-print.h (pp_c_attributes_display): New prototype.
5975
5976 * c-common.c (c_common_attribute_table):
5977 Add new element.
5978 (c_common_format_attribute_table): Likewise.
5979
5980 2011-03-18 Jason Merrill <jason@redhat.com>
5981
5982 * c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
5983 * c-common.h: Don't declare it here.
5984 * c-common.c: Or define it here.
5985 * c-opts.c (c_common_handle_option): Or set it here.
5986
5987 PR c++/35315
5988 * c-common.c (handle_transparent_union_attribute): Don't
5989 make a duplicate type in C++.
5990
5991 2011-03-15 Jason Merrill <jason@redhat.com>
5992
5993 * c-common.c (max_constexpr_depth): New.
5994 * c-common.h: Declare it.
5995 * c-opts.c (c_common_handle_option): Set it.
5996 * c.opt (fconstexpr-depth): New option.
5997
5998 2011-03-11 Jason Merrill <jason@redhat.com>
5999
6000 * c-common.c (attribute_takes_identifier_p): Add missing const.
6001
6002 PR c++/46803
6003 * c-common.c (attribute_takes_identifier_p): Assume that an
6004 unknown attribute takes an identifier.
6005
6006 2011-03-07 Nathan Froyd <froydnj@codesourcery.com>
6007
6008 PR c/47786
6009 * c-common.c (c_type_hash): Call list_length instead of iterating
6010 through DECL_CHAIN. Rename 'i' to 'n_elements'.
6011
6012 2011-02-19 Jakub Jelinek <jakub@redhat.com>
6013
6014 PR c/47809
6015 * c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
6016
6017 2011-02-17 Iain Sandoe <iains@gcc.gnu.org>
6018
6019 * c.opt (fobjc-abi-version=) New.
6020 (fobjc-nilcheck): New.
6021
6022 2011-02-03 Nathan Froyd <froydnj@codesourcery.com>
6023
6024 PR c++/46890
6025 * c-common.h (keyword_is_decl_specifier): Declare.
6026 * c-common.c (keyword_is_decl_specifier): Define.
6027 (keyword_is_function_specifier): New function.
6028
6029 2011-01-26 Jakub Jelinek <jakub@redhat.com>
6030
6031 PR c/47473
6032 * c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
6033 EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
6034 REAL_TYPE.
6035
6036 2011-01-26 Arnaud Charlet <charlet@adacore.com>
6037
6038 * c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type.
6039
6040 2011-01-26 Jakub Jelinek <jakub@redhat.com>
6041
6042 PR pch/47430
6043 * c-opts.c (c_common_post_options): Call c_common_no_more_pch
6044 after init_c_lex if pch_file is set.
6045
6046 2011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
6047
6048 PR c++/43601
6049 * c.opt (-fkeep-inline-dllexport): New switch.
6050
6051 2011-01-12 Richard Guenther <rguenther@suse.de>
6052
6053 PR middle-end/32511
6054 * c-common.c (handle_weak_attribute): Warn instead of error
6055 on declaring an inline function weak.
6056
6057 2011-01-05 Tom Tromey <tromey@redhat.com>
6058
6059 * c-common.h (lvalue_error): Update.
6060 * c-common.c (lvalue_error): Add 'loc' argument. Call error_at,
6061 not error.
6062
6063 2010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
6064
6065 PR objc/47075
6066 * c-objc.h (objc_finish_message_expr): Added argument to
6067 prototype.
6068
6069 2010-12-22 Nathan Froyd <froydnj@codesourcery.com>
6070
6071 * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute):
6072 Use prototype_p.
6073
6074 2010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
6075
6076 * c-objc.h (objc_maybe_warn_exceptions): New.
6077 * stub-objc.c (objc_maybe_warn_exceptions): New.
6078
6079 2010-12-10 Nathan Froyd <froydnj@codesourcery.com>
6080
6081 * c-common.h (readonly_error): Declare.
6082 * c-common.c (readonly_error): Define.
6083
6084 2010-12-09 Nathan Froyd <froydnj@codesourcery.com>
6085
6086 * c-common.h (invalid_indirection_error): Declare.
6087 * c-common.c (invalid_indirection_error): Define.
6088
6089 2010-12-03 Richard Guenther <rguenther@suse.de>
6090
6091 PR c/46745
6092 * c-pretty-print.c (pp_c_postfix_expression): Handle MEM_REF.
6093 (pp_c_unary_expression): Likewise.
6094 (pp_c_expression): Likewise.
6095
6096 2010-11-30 Nicola Pero <nicola.pero@meta-innovation.com>
6097
6098 * c-common.h (objc_finish_function): New.
6099 (objc_non_volatilized_type): Removed.
6100 (objc_type_quals_match): Removed.
6101 * stub-objc.c (objc_finish_function): New.
6102 (objc_non_volatilized_type): Removed.
6103 (objc_type_quals_match): Removed.
6104
6105 2010-11-30 Joseph Myers <joseph@codesourcery.com>
6106
6107 * c-common.h (parse_optimize_options): Declare.
6108 * c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c,
6109 c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h.
6110
6111 2010-11-29 Joseph Myers <joseph@codesourcery.com>
6112
6113 * c-opts.c (check_deps_environment_vars): Use getenv instead of
6114 GET_ENVIRONMENT.
6115 * c-pch.c (O_BINARY): Don't define here.
6116 * c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
6117
6118 2010-11-25 Joseph Myers <joseph@codesourcery.com>
6119
6120 * c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
6121 targetm.except_unwind_info.
6122
6123 2010-11-23 Joseph Myers <joseph@codesourcery.com>
6124
6125 * c-opts.c (c_common_handle_option): Pass location to
6126 set_struct_debug_option.
6127
6128 2010-11-23 Joseph Myers <joseph@codesourcery.com>
6129
6130 * c-common.c (visibility_options): Move from ../opts.c.
6131 * c-common.h (struct visibility_flags, visibility_options):
6132 Declare here.
6133 * c-opts.c (finish_options): Rename to c_finish_options.
6134 (c_common_init): Update call to finish_options.
6135
6136 2010-11-22 Nicola Pero <nicola.pero@meta-innovation.com>
6137
6138 PR objc/34033
6139 * c-lex.c (lex_string): Check that each string in an Objective-C
6140 string concat sequence starts with either one or zero '@', and
6141 that there are no spurious '@' signs at the end.
6142
6143 2010-11-20 Joseph Myers <joseph@codesourcery.com>
6144
6145 * c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
6146 HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
6147 HANDLE_PRAGMA_VISIBILITY.
6148 * c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
6149 HANDLE_PRAGMA_VISIBILITY): Don't define.
6150 (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.
6151
6152 2010-11-20 Nathan Froyd <froydnj@codesourcery.com>
6153
6154 PR c++/16189
6155 PR c++/36888
6156 PR c++/45331
6157 * c-common.h (keyword_begins_type_specifier): Declare.
6158 (keyword_is_storage_class_specifier): Declare.
6159 (keyword_is_type_qualifier): Declare.
6160 * c-common.c (keyword_begins_type_specifier): New function.
6161 (keyword_is_storage_class_specifier): New function.
6162 (keyword_is_type_qualifier): Declare.
6163
6164 2010-11-19 Joseph Myers <joseph@codesourcery.com>
6165
6166 PR c/46547
6167 * c-common.c (in_late_binary_op): Define.
6168 (c_common_truthvalue_conversion): Check in_late_binary_op before
6169 calling c_save_expr.
6170 * c-common.h (in_late_binary_op): Declare.
6171
6172 2010-11-19 Joseph Myers <joseph@codesourcery.com>
6173
6174 * c-opts.c (c_common_handle_option): Update calls to
6175 set_struct_debug_option.
6176
6177 2010-11-19 Nicola Pero <nicola.pero@meta-innovation.com>
6178
6179 * c-common.h (objc_declare_protocols): Added additional argument.
6180 * stub-objc.c (objc_declare_protocol): Same change.
6181
6182 2010-11-18 Nathan Froyd <froydnj@codesourcery.com>
6183
6184 PR c/33193
6185 * c-common.h (build_real_imag_expr): Declare.
6186 * c-semantics.c (build_real_imag_expr): Define.
6187
6188 2010-11-17 Joseph Myers <joseph@codesourcery.com>
6189
6190 * c-opts.c (c_common_parse_file): Take no arguments.
6191 * c-common.h (c_common_parse_file): Update prototype.
6192
6193 2010-11-16 Jakub Jelinek <jakub@redhat.com>
6194
6195 PR c++/46401
6196 * c-common.c (warning_candidate_p): Don't track non-const calls
6197 or STRING_CSTs.
6198
6199 2010-11-15 Ian Lance Taylor <iant@google.com>
6200
6201 * c-lex.c (init_c_lex): Set macro debug callbacks if
6202 flag_dump_go_spec is set.
6203
6204 2010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
6205
6206 * c-common.h (objc_build_incr_expr_for_property_ref): New.
6207 * stub-objc.c (objc_build_incr_expr_for_property_ref): New.
6208
6209 2010-11-15 Nathan Froyd <froydnj@codesourcery.com>
6210
6211 PR preprocessor/45038
6212 * c-cppbuiltin.c (c_cpp_builtins): Use different format for C++
6213 dialects.
6214
6215 2010-11-12 Joseph Myers <joseph@codesourcery.com>
6216
6217 * c-common.h (c_family_lang_mask): Declare.
6218 * c-opts.c (c_family_lang_mask): Make extern.
6219 * c-pragma.c (handle_pragma_diagnostic): Use
6220 control_warning_option.
6221
6222 2010-11-12 Joseph Myers <joseph@codesourcery.com>
6223
6224 * c-common.c (parse_optimize_options): Update call to
6225 decode_options.
6226 * c-common.h (c_common_handle_option): Update prototype.
6227 * c-opts.c (c_common_handle_option): Take location_t parameter and
6228 pass it to other functions.
6229
6230 2010-11-11 Joseph Myers <joseph@codesourcery.com>
6231
6232 * c-opts.c (warning_as_error_callback): Remove.
6233 (c_common_initialize_diagnostics): Don't call
6234 register_warning_as_error_callback.
6235 (c_common_handle_option): Handle -Werror=normalized= here.
6236
6237 2010-11-10 Joseph Myers <joseph@codesourcery.com>
6238
6239 * c-common.c (handle_mode_attribute): Use %' and word "signedness"
6240 in diagnostic.
6241 * c-opts.c (c_common_parse_file): Start diagnostics with lowercase
6242 letter.
6243 * c-pragma.c (handle_pragma_target, handle_pragma_optimize):
6244 Remove trailing '.' from diagnostics.
6245 * c.opt (Wwrite-strings_: Avoid '`' in help text.
6246
6247 2010-11-10 Joseph Myers <joseph@codesourcery.com>
6248
6249 * c-common.c (parse_optimize_options): Pass global_dc to
6250 decode_options.
6251 * c-opts.c (c_common_handle_option): Pass &global_options to
6252 set_Wstrict_aliasing.
6253 * c.opt (v): Don't mark Common or document here.
6254
6255 2010-11-06 Iain Sandoe <iains@gcc.gnu.org>
6256
6257 PR target/44981
6258 * c-format.c (format_type): New type gcc_objc_string_format_type.
6259 (valid_stringptr_type_p): New.
6260 (handle_format_arg_attribute): Use valid_stringptr_type_p ().
6261 (check_format_string): Pass expected type, use
6262 valid_stringptr_type_p (), check that the format string types are
6263 consistent with the format specification.
6264 (decode_format_attr): Warn if NSString is used outside objective-c.
6265 (format_types_orig): Add NSString.
6266 (format_name): New.
6267 (format_flags): New.
6268 (check_format_arg): Handle format strings requiring an external parser.
6269 first_target_format_type: New variable.
6270 (handle_format_attribute): Set up first_target_format_type, pass the
6271 expected format arg string type to check_format_string().
6272 * c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL): New flag.
6273 * stub-objc.c (objc_string_ref_type_p): New.
6274 (objc_check_format_arg): New.
6275
6276 2010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
6277
6278 Fixed using the Objective-C 2.0 dot-syntax with class names.
6279 * c-common.h (objc_build_class_component_ref): New.
6280 * stub-objc.c (objc_build_class_component_ref): New.
6281
6282 2010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
6283
6284 * c.opt (Wproperty-assign-default): New option.
6285
6286 2010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
6287
6288 Implemented -fobjc-std=objc1 flag.
6289 * c.opt (fobjc-std=objc1): New option.
6290
6291 2010-11-01 Nicola Pero <nicola.pero@meta-innovation.com>
6292
6293 Implemented format and noreturn attributes for Objective-C methods.
6294 * c-common.c (handle_noreturn_attribute): Recognize 'noreturn'
6295 attribute for Objective-C methods.
6296
6297 2010-10-31 Jason Merrill <jason@redhat.com>
6298
6299 * c-common.c (conversion_warning, warn_for_collisions_1): Use
6300 EXPR_LOC_OR_HERE.
6301
6302 2010-10-30 Nicola Pero <nicola.pero@meta-innovation.com>
6303
6304 Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
6305 * c-common.h (enum rid): Removed RID_COPIES and RID_IVAR.
6306 (objc_add_property_declaration): Removed arguments for copies and
6307 ivar.
6308 (objc_build_getter_call): Renamed to
6309 objc_maybe_build_component_ref.
6310 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
6311 (objc_is_property_ref): New.
6312 * c-common.c (c_common_reswords): Removed copies and ivar.
6313 * stub-objc.c (objc_add_property_declaration): Removed arguments
6314 for copies and ivar.
6315 (objc_build_getter_call): Renamed to
6316 objc_maybe_build_component_ref.
6317 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
6318 (objc_is_property_ref): New.
6319
6320 2010-10-29 Arnaud Charlet <charlet@adacore.com>
6321 Matthew Gingell <gingell@adacore.com>
6322
6323 * c-ada-spec.c (separate_class_package): New function.
6324 (pp_ada_tree_identifier): Prefix references to C++ classes with the
6325 name of their enclosing package.
6326 (print_ada_declaration): Use separate_class_package.
6327
6328 2010-10-27 Jason Merrill <jason@redhat.com>
6329
6330 * c-common.c (c_common_reswords): Add __is_literal_type.
6331 * c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
6332
6333 * c-common.c (check_case_value): Remove special C++ code.
6334
6335 2010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
6336
6337 * c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN,
6338 RID_RETAIN, RID_COPY and RID_NONATOMIC. Updated RID_FIRST_PATTR
6339 and RID_LAST_PATTR.
6340 (objc_add_property_declaration): Added additional arguments.
6341 (objc_property_attribute_kind): Removed.
6342 (objc_set_property_attr): Removed.
6343 * c-common.c (c_common_reswords): Added readwrite, assign, retain,
6344 copy and nonatomic.
6345 * stub-objc.c (objc_add_property_declaration): Added additional
6346 arguments.
6347 (objc_set_property_attr): Removed.
6348
6349 2010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
6350
6351 * c-common.h (objc_add_property_variable): Renamed to
6352 objc_add_property_declaration. Added location argument.
6353 * stub-objc.c (objc_add_property_variable): Same change.
6354
6355 2010-10-23 Nicola Pero <nicola.pero@meta-innovation.com>
6356
6357 * c-common.h (objc_maybe_printable_name): New.
6358 * stub-objc.c (objc_maybe_printable_name): New.
6359
6360 2010-10-22 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
6361 Andrew Pinski <pinskia@gmail.com>
6362
6363 * c-common.h (c_common_mark_addressable_vec): Declare.
6364 * c-common.c (c_common_mark_addressable_vec): New function.
6365
6366 2010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
6367
6368 * c-common.h (objc_set_method_type): Removed.
6369 (objc_add_method_declaration): Added boolean argument.
6370 (objc_start_method_definition): Same change.
6371 (objc_build_method_signature): Same change.
6372 * stub-objc.c (objc_set_method_type): Removed.
6373 (objc_add_method_declaration): Added boolean argument.
6374 (objc_start_method_definition): Same change.
6375 (objc_build_method_signature): Same change.
6376
6377 2010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
6378
6379 * c-common.h (finish_file): Removed.
6380 (objc_write_global_declarations): New.
6381 * c-opts.c (c_common_parse_file): Do not call finish_file.
6382 * stub-objc.c (objc_write_global_declarations): New.
6383
6384 2010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
6385
6386 Implemented parsing @synthesize and @dynamic for
6387 Objective-C/Objective-C++.
6388 * c-common.h (enum rid): Add RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
6389 (objc_add_synthesize_declaration): New.
6390 (objc_add_dynamic_declaration): New.
6391 * c-common.c (c_common_reswords): Add synthesize and dynamic.
6392 * stub-objc.c (objc_add_synthesize_declaration): New.
6393 (objc_add_dynamic_declaration): New.
6394
6395 2010-10-18 Michael Meissner <meissner@linux.vnet.ibm.com>
6396
6397 PR target/46041
6398 * c-cppbuiltin.c (mode_has_fma): Move function here from
6399 builtins.c. Don't use the fma optab, instead just use the
6400 HAVE_fma* macros, so that __FP_FAST_FMA* will be defined when
6401 using -save-temps.
6402
6403 2010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
6404
6405 Merge from 'apple/trunk' branch on FSF servers.
6406
6407 2005-11-08 Fariborz Jahanian <fjahanian@apple.com>
6408
6409 Radar 4330422
6410 * c-common.h (objc_non_volatilized_type): New declaration
6411 * stub-objc.c (objc_non_volatilized_type): New stub.
6412
6413 2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
6414
6415 Merge from 'apple/trunk' branch on FSF servers.
6416
6417 2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
6418
6419 Radar 4133425
6420 * c-common.h (objc_diagnose_private_ivar): New decl.
6421 * stub-objc.c (objc_diagnose_private_ivar): New stub.
6422
6423 2010-10-17 Iain Sandoe <iains@gcc.gnu.org>
6424
6425 * c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
6426 * c-common.h (enum rid): Add RID_AT_PACKAGE.
6427 (objc_ivar_visibility_kind): New enum.
6428 (objc_set_visibility): Adjust prototype to use visibility enum.
6429 * stub-objc.c (objc_set_visibility): Adjust stub to use
6430 visibility enum.
6431
6432 2010-10-14 Michael Meissner <meissner@linux.vnet.ibm.com>
6433
6434 * c-cppbuiltin.c (builtin_define_float_constants): Emit
6435 __FP_FAST_FMA, __FP_FAST_FMAF, and __FP_FAST_FMAL if the machine
6436 has the appropriate fma builtins.
6437 (c_cpp_builtins): Adjust call to builtin_define_float_constants.
6438
6439 2010-10-14 Iain Sandoe <iains@gcc.gnu.org>
6440
6441 merge from FSF apple 'trunk' branch.
6442 2006 Fariborz Jahanian <fjahanian@apple.com>
6443
6444 Radars 4436866, 4505126, 4506903, 4517826
6445 * c-common.c (c_common_resword): Define @property and its attributes.
6446 * c-common.h: Define property attribute enum entries.
6447 (OBJC_IS_PATTR_KEYWORD): New.
6448 (objc_property_attribute_kind): New enum.
6449 Declare objc_set_property_attr (), objc_add_property_variable (),
6450 objc_build_getter_call () and objc_build_setter_call ().
6451 * stub-objc.c (objc_set_property_attr): New stub.
6452 (objc_add_property_variable): Likewise.
6453 (objc_build_getter_call): Likewise.
6454 (objc_build_setter_call) Likewise.
6455
6456 2010-10-13 Iain Sandoe <iains@gcc.gnu.org>
6457
6458 merge from FSF apple 'trunk' branch.
6459 2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
6460
6461 Radar 3803157 (method attributes)
6462 * c-common.c (handle_deprecated_attribute): Recognize
6463 objc methods as valid declarations.
6464 * c-common.h: Declare objc_method_decl ().
6465 * stub-objc.c (objc_method_decl): New stub.
6466
6467 2010-10-08 Joseph Myers <joseph@codesourcery.com>
6468
6469 * c-common.c (parse_optimize_options): Call
6470 decode_cmdline_options_to_array_default_mask before
6471 decode_options. Update arguments to decode_options.
6472 * c-common.h (c_common_init_options_struct): Declare.
6473 * c-opts.c (c_common_init_options_struct): New. Split out from
6474 c_common_init_options.
6475
6476 2010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
6477
6478 Implemented fast enumeration for Objective-C.
6479 * c-common.h (objc_finish_foreach_loop): New.
6480 * stub-objc.c (objc_finish_foreach_loop): New.
6481
6482 2010-10-05 Joseph Myers <joseph@codesourcery.com>
6483
6484 * c-common.h (struct diagnostic_context): Don't declare here.
6485 (c_common_initialize_diagnostics): Declare using
6486 diagnostic_context typedef.
6487 * c-opts.c (c_common_handle_option): Pass global_dc to
6488 handle_generated_option.
6489
6490 2010-10-04 Joseph Myers <joseph@codesourcery.com>
6491
6492 * c-opts.c (c_common_handle_option): Pass &global_options_set to
6493 handle_generated_option.
6494
6495 2010-10-03 Ian Lance Taylor <iant@google.com>
6496
6497 * c.opt (-fplan9-extensions): New option.
6498
6499 2010-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
6500
6501 * c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision):
6502 Remove.
6503 (c_cpp_builtins): Call functions from cppbuiltin.c instead
6504 of duplicating code.
6505
6506 2010-09-30 Iain Sandoe <iains@gcc.gnu.org>
6507
6508 * c-common.c: Add two new entries for @optional
6509 and @required keywords.
6510
6511 merge from FSF 'apple/trunk' branch.
6512 2006-01-30 Fariborz Jahanian <fjahanian@apple.com>
6513
6514 Radar 4386773
6515 * c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new
6516 objective-c keywords.
6517 (objc_set_method_opt): New declaration.
6518 * stub-objc.c (objc_set_method_opt): New stub.
6519
6520 2010-09-30 Joseph Myers <joseph@codesourcery.com>
6521
6522 * c-common.c (handle_optimize_attribute): Pass &global_options to
6523 cl_optimization_save and cl_optimization_restore.
6524 * c-opts.c (c_common_handle_option): Pass &global_options to
6525 handle_generated_option.
6526 * c-pragma.c (handle_pragma_diagnostic): Use option_flag_var.
6527 (handle_pragma_pop_options, handle_pragma_reset_options): Pass
6528 &global_options to cl_optimization_restore.
6529
6530 2010-09-30 Nicola Pero <nicola.pero@meta-innovation.com>
6531
6532 * c-lex.c (c_lex_with_flags): Updated comments for CPP_AT_NAME
6533 Objective-C/Objective-C++ keywords.
6534
6535 2010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
6536
6537 Merge from 'apple/trunk' branch on FSF servers.
6538
6539 2005-10-04 Fariborz Jahanian <fjahanian@apple.com>
6540
6541 Radar 4281748
6542 * c-common.h (objc_check_global_decl): New declaration.
6543 * stub-objc.c (objc_check_global_decl): New stub.
6544
6545 2010-09-29 Joseph Myers <joseph@codesourcery.com>
6546
6547 * c.opt: Don't use VarExists.
6548
6549 2010-09-29 Joseph Myers <joseph@codesourcery.com>
6550
6551 * c-common.c (c_cpp_error): Update names of diagnostic_context
6552 members.
6553 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of
6554 cl_optimization members.
6555 * c-opts.c (warning_as_error_callback, c_common_handle_option,
6556 sanitize_cpp_opts, finish_options): Update names of cpp_options
6557 members.
6558
6559 2010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
6560
6561 * c-common.h (OBJC_IS_CXX_KEYWORD): New macro. Updated comments.
6562 (objc_is_reserved_word): Removed.
6563 * c-common.c: Updated comments.
6564 * c-lex.c (c_lex_with_flags): Use OBJC_IS_CXX_KEYWORD instead of
6565 objc_is_reserved_word.
6566 * stub-objc.c (objc_is_reserved_word): Removed.
6567
6568 2010-09-28 Iain Sandoe <iains@gcc.gnu.org>
6569
6570 * c-common.h (objc_add_method_declaration): Adjust prototype to
6571 include attributes.
6572 (objc_start_method_definition): Likewise.
6573 (objc_build_keyword_decl): Likewise.
6574 * stub-objc.c:(objc_add_method_declaration): Handle attributes.
6575 (objc_start_method_definition): Likewise.
6576 (objc_build_keyword_decl): Likewise.
6577
6578 2010-09-28 Iain Sandoe <iains@gcc.gnu.org>
6579
6580 * c-common.h (objc_start_class_interface): Adjust prototype.
6581 (objc_start_category_interface): Likewise.
6582 (objc_start_protocol): Likewise.
6583 * stub-objc.c (objc_start_protocol): Adjust for extra argument.
6584 (objc_start_class_interface): Likewise.
6585 (objc_start_category_interface): Likewise.
6586
6587 2010-09-27 Ian Lance Taylor <iant@google.com>
6588
6589 * c-common.c (c_common_attribute_table): Add no_split_stack.
6590 (handle_no_split_stack_attribute): New static function.
6591
6592 2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
6593
6594 Merge from 'apple/trunk' branch on FSF servers.
6595
6596 2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
6597
6598 Radar 4229905
6599 * c-common.h (objc_have_common_type): New declaration.
6600 * stub-objc.c (objc_have_common_type): New stub.
6601
6602 2005-06-22 Ziemowit Laski <zlaski@apple.com>
6603
6604 Radar 4154928
6605 * c-common.h (objc_common_type): New prototype.
6606 * stub-objc.c (objc_common_type): New stub.
6607
6608 2010-09-24 Jan Hubicka <jh@suse.cz>
6609
6610 * c-common.c (handle_leaf_attribute): New function.
6611 (struct attribute_spec c_common_att): Add leaf.
6612
6613 2010-09-22 Joseph Myers <joseph@codesourcery.com>
6614
6615 * c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
6616 -comments-in-macros, -define-macro, -define-macro=, -dependencies,
6617 -dump, -dump=, -imacros, -imacros=, -include, -include=,
6618 -include-barrier, -include-directory, -include-directory=,
6619 -include-directory-after, -include-directory-after=,
6620 -include-prefix, -include-prefix=, -include-with-prefix,
6621 -include-with-prefix=, -include-with-prefix-after,
6622 -include-with-prefix-after=, -include-with-prefix-before,
6623 -include-with-prefix-before=, -no-integrated-cpp,
6624 -no-line-commands, -no-standard-includes, -no-warnings, -output,
6625 -output=, -pedantic, -pedantic-errors, -preprocess,
6626 -print-missing-file-dependencies, -trace-includes, -traditional,
6627 -traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
6628 -user-dependencies, -verbose, -write-dependencies,
6629 -write-user-dependencies, no-integrated-cpp, traditional): New.
6630
6631 2010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
6632
6633 PR objc/23710
6634 * c-common.h (objc_start_method_definition): Return bool instead
6635 of void.
6636 * stub-objc.c (objc_start_method_definition): Return bool instead
6637 of void.
6638
6639 2010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
6640
6641 PR objc/25965
6642 * c-common.h (objc_get_interface_ivars): New declaration.
6643 * stub-objc.c (objc_get_interface_ivars): New stub.
6644
6645 2010-09-15 Ian Lance Taylor <iant@google.com>
6646
6647 * c-common.c (parse_optimize_options): Do not capitalize warning
6648 messages. Remove period at end of warning message.
6649
6650 2010-09-09 Nathan Sidwell <nathan@codesourcery.com>
6651
6652 * c-common.c (handle_alias_ifunc_attribute): New, broken out of ...
6653 (handle_alias_attribute): ... here.
6654 (handle_ifunc_attribute): New.
6655
6656 2010-09-06 Mark Mitchell <mark@codesourcery.com>
6657
6658 * c-common.h (do_warn_double_promotion): Declare.
6659 * c-common.c (do_warn_double_promotion): Define.
6660
6661 2010-09-05 Mark Mitchell <mark@codesourcery.com>
6662
6663 * c.opt (Wdouble-promotion): New.
6664
6665 2010-09-02 Joseph Myers <joseph@codesourcery.com>
6666
6667 * c.opt (falt-external-templates, fhuge-objects, fvtable-gc,
6668 fvtable-thunks, fxref): Mark no longer supported in help text.
6669
6670 2010-09-02 Joseph Myers <joseph@codesourcery.com>
6671
6672 * c.opt (Wimport, fall-virtual, falt-external-templates,
6673 fdefault-inline, fenum-int-equiv, fexternal-templates,
6674 fguiding-decls, fhonor-std, fhuge-objects, flabels-ok,
6675 fname-mangling-version-, fnew-abi, fnonnull-objects,
6676 foptional-diags, fsquangle, fstrict-prototype, fthis-is-variable,
6677 fvtable-gc, fvtable-thunks, fxref): Mark with Ignore and Warn as
6678 applicable.
6679 (fhandle-exceptions): Mark with Alias and Warn.
6680 * c-opts.c (c_common_handle_option): Don't handle options marked
6681 as ignored.
6682
6683 2010-09-02 Joseph Myers <joseph@codesourcery.com>
6684
6685 * c.opt (Wcomments, Werror-implicit-function-declaration,
6686 ftemplate-depth-, std=c89, std=c9x, std=gnu89, std=gnu9x,
6687 std=iso9899:1990, std=iso9899:1999, std=iso9899:199x): Mark as
6688 aliases.
6689 * c-common.c (option_codes): Use OPT_Wcomment instead of
6690 OPT_Wcomments.
6691 * c-opts.c (warning_as_error_callback, c_common_handle_option):
6692 Don't handle options marked as aliases.
6693
6694 2010-08-25 Richard Guenther <rguenther@suse.de>
6695
6696 * c-common.c (c_common_get_alias_set): Remove special
6697 handling for pointers.
6698
6699 2010-08-20 Nathan Froyd <froydnj@codesourcery.com>
6700
6701 * c-common.c: Use FOR_EACH_VEC_ELT.
6702 * c-gimplify.c: Likewise.
6703 * c-pragma.c: Likewise.
6704
6705 2010-08-16 Joseph Myers <joseph@codesourcery.com>
6706
6707 * c.opt (MDX): Change back to MD. Mark NoDriverArg instead of
6708 RejectDriver.
6709 (MMDX): Change back to MMD. Mark NoDriverArg instead of
6710 RejectDriver.
6711 * c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
6712 instead of OPT_MDX and OPT_MMDX.
6713
6714 2010-08-16 Joseph Myers <joseph@codesourcery.com>
6715
6716 * c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.
6717
6718 2010-08-12 Joseph Myers <joseph@codesourcery.com>
6719
6720 * c.opt (MD, MMD): Change to MDX and MMDX.
6721 * c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX.
6722
6723 2010-08-11 Joseph Myers <joseph@codesourcery.com>
6724
6725 * c-opts.c (c_common_handle_option): Call handle_generated_option
6726 instead of handle_option.
6727
6728 2010-08-08 Nathan Froyd <froydnj@codesourcery.com>
6729
6730 * c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
6731 (maybe_apply_renaming_pragma): Delete unneeded declarations.
6732
6733 2010-08-08 Nathan Froyd <froydnj@codesourcery.com>
6734
6735 * c-pragma.c (pending_redefinition): Declare. Declare a VEC of it.
6736 (pending_redefine_extname): Change type to a VEC.
6737 (add_to_renaming_pragma_list): Update for new type of
6738 pending_redefine_extname.
6739 (maybe_apply_renaming_pragma): Likewise.
6740
6741 2010-08-04 Arnaud Charlet <charlet@adacore.com>
6742
6743 * c-ada-spec.c (dump_ada_template): Mark underlying instance type as
6744 visited.
6745 (dump_generic_ada_node): Code clean up. Use TREE_VISITED flag to
6746 decide whether a type has already been declared/seen.
6747 Do not go to the original type.
6748 (dump_nested_types): New parameter forward.
6749 Generate forward declaration if needed and mark type as visited.
6750 (print_ada_declaration): Call dump_nested_types if not already done.
6751 Mark types as visited.
6752
6753 2010-08-03 Joseph Myers <joseph@codesourcery.com>
6754
6755 * c.opt (-print-pch-checksum): Remove option.
6756 * c-opts.c (c_common_handle_option): Don't handle
6757 OPT_print_pch_checksum.
6758
6759 2010-07-27 Joseph Myers <joseph@codesourcery.com>
6760
6761 * c-common.h (c_common_handle_option): Update prototype and return
6762 value type.
6763 * c-opts.c (c_common_handle_option): Update prototype and return
6764 value type. Update calls to handle_option and
6765 enable_warning_as_error.
6766
6767 2010-07-27 Jakub Jelinek <jakub@redhat.com>
6768
6769 PR c/45079
6770 * c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
6771
6772 2010-07-27 Joseph Myers <joseph@codesourcery.com>
6773
6774 * c-common.h (c_common_missing_argument): Remove.
6775 * c-opts.c (c_common_missing_argument): Remove.
6776 * c.opt (A, D, F, I, MD, MMD, MQ, MT, U, fconstant-string-class=,
6777 idirafter, imacros, include, isysroot, isystem, iquote): Add
6778 MissingArgError.
6779 * c-objc-common.h (LANG_HOOKS_MISSING_ARGUMENT): Remove.
6780
6781 2010-07-27 Joseph Myers <joseph@codesourcery.com>
6782
6783 * c-common.h (c_common_option_lang_mask,
6784 c_common_initialize_diagnostics, c_common_complain_wrong_lang_p):
6785 New.
6786 (c_common_init_options): Update prototype.
6787 * c-opts.c (c_common_option_lang_mask): New.
6788 (c_common_initialize_diagnostics): Split out of
6789 c_common_init_options.
6790 (accept_all_c_family_options, c_common_complain_wrong_lang_p):
6791 New.
6792 (c_common_init_options): Update prototype. Use decoded options in
6793 search for -lang-asm.
6794
6795 2010-07-15 Nathan Froyd <froydnj@codesourcery.com>
6796
6797 * c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
6798 * c-format.c: Likewise.
6799
6800 2010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
6801
6802 * c-common.h: Include diagnostic-core.h. Error if already
6803 included.
6804 * c-semantics.c: Do not define GCC_DIAG_STYLE here.
6805
6806 2010-07-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
6807
6808 * c-common.c (IN_GCC_FRONTEND): Do not undef.
6809 Do not include expr.h
6810 (vector_mode_valid_p): Move here.
6811
6812 2010-06-21 DJ Delorie <dj@redhat.com>
6813
6814 * c-pragma.c (handle_pragma_diagnostic): Add push/pop,
6815 allow these pragmas anywhere.
6816
6817 2010-06-14 Jakub Jelinek <jakub@redhat.com>
6818
6819 PR bootstrap/44509
6820 * c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
6821 (lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
6822 (lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
6823 ggc_strdup instead of xstrdup.
6824
6825 2010-06-10 Jakub Jelinek <jakub@redhat.com>
6826
6827 * c-cppbuiltin.c: Include cpp-id-data.h.
6828 (lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
6829 (lazy_hex_fp_value): New function.
6830 (builtin_define_with_hex_fp_value): Provide definitions lazily.
6831
6832 2010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
6833
6834 * c-gimplify.c: Do not include tree-flow.h
6835
6836 2010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
6837
6838 PR other/44034
6839 * c-common.c: Rename targetm member:
6840 targetm.enum_va_list -> targetm.enum_va_list_p
6841
6842 2010-06-28 Anatoly Sokolov <aesok@post.ru>
6843
6844 * c-common.c (shorten_compare): Adjust call to force_fit_type_double.
6845
6846 2010-06-28 Steven Bosscher <steven@gcc.gnu.org>
6847
6848 * c-cppbuiltin.c: Do not include except.h.
6849
6850 2010-06-24 Andi Kleen <ak@linux.intel.com>
6851
6852 * c-common.c (warn_for_omitted_condop): New.
6853 * c-common.h (warn_for_omitted_condop): Add prototype.
6854
6855 2010-06-21 Joseph Myers <joseph@codesourcery.com>
6856
6857 * c.opt (lang-objc): Remove.
6858 * c-opts.c (c_common_handle_option): Don't handle OPT_lang_objc.
6859
6860 2010-06-21 Joern Rennecke <joern.rennecke@embecosm.com>
6861
6862 * c-opts.c: Include "tm_p.h".
6863
6864 2010-06-20 Joseph Myers <joseph@codesourcery.com>
6865
6866 * c-common.c (parse_optimize_options): Update call to
6867 decode_options.
6868
6869 2010-06-18 Nathan Froyd <froydnj@codesourcery.com>
6870
6871 * c-common.c (record_types_used_by_current_var_decl): Adjust for
6872 new type of types_used_by_cur_var_decl.
6873
6874 2010-06-17 Joern Rennecke <joern.rennecke@embecosm.com>
6875
6876 PR bootstrap/44512
6877 * c-cppbuiltin.c (builtin_define_with_hex_fp_value): Add cast
6878 for C++ standard compliance.
6879
6880 2010-06-16 Jason Merrill <jason@redhat.com>
6881
6882 * c.opt: Add -Wnoexcept.
6883
6884 2010-06-16 Richard Guenther <rguenther@suse.de>
6885
6886 PR c/44555
6887 * c-common.c (c_common_truthvalue_conversion): Remove
6888 premature and wrong optimization concering ADDR_EXPRs.
6889
6890 2010-06-15 Arnaud Charlet <charlet@adacore.com>
6891
6892 * c-ada-spec.c (dump_sloc): Remove column info.
6893 (is_simple_enum): New function.
6894 (dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada
6895 enum types when relevant.
6896
6897 2010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
6898
6899 * c-common.c (conversion_warning): Warn at expression
6900 location.
6901
6902 2010-06-10 Joseph Myers <joseph@codesourcery.com>
6903
6904 * c-opts.c (c_common_handle_option): Don't handle
6905 OPT_fshow_column.
6906
6907 2010-06-08 Laurynas Biveinis <laurynas.biveinis@gmail.com>
6908
6909 * c-pragma.c (push_alignment): Use typed GC allocation.
6910 (handle_pragma_push_options): Likewise.
6911
6912 * c-common.c (parse_optimize_options): Likewise.
6913
6914 * c-common.h (struct sorted_fields_type): Add variable_size GTY
6915 option.
6916
6917 2010-06-07 Joseph Myers <joseph@codesourcery.com>
6918
6919 * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
6920 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
6921 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
6922 flag_signed_bitfields, warn_strict_null_sentinel,
6923 flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
6924 flag_gen_declaration, flag_no_gnu_keywords,
6925 flag_implement_inlines, flag_implicit_templates,
6926 flag_implicit_inline_templates, flag_optional_diags,
6927 flag_elide_constructors, flag_default_inline, flag_rtti,
6928 flag_conserve_space, flag_access_control, flag_check_new,
6929 flag_new_for_scope, flag_weak, flag_working_directory,
6930 flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
6931 flag_enforce_eh_specs, flag_threadsafe_statics,
6932 flag_pretty_templates): Remove.
6933 * c-common.h (flag_preprocess_only, flag_nil_receivers,
6934 flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
6935 flag_replace_objc_classes, flag_undef, flag_no_builtin,
6936 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
6937 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
6938 flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
6939 flag_no_gnu_keywords, flag_implement_inlines,
6940 flag_implicit_templates, flag_implicit_inline_templates,
6941 flag_optional_diags, flag_elide_constructors, flag_default_inline,
6942 flag_rtti, flag_conserve_space, flag_access_control,
6943 flag_check_new, flag_new_for_scope, flag_weak,
6944 flag_working_directory, flag_use_cxa_atexit,
6945 flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
6946 flag_threadsafe_statics, flag_pretty_templates,
6947 warn_strict_null_sentinel): Remove.
6948 * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
6949 fbuiltin, fcheck-new, fconserve-space, felide-constructors,
6950 fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
6951 fimplicit-inline-templates, fimplicit-templates,
6952 flax-vector-conversions, fms-extensions, fnil-receivers,
6953 fnonansi-builtins, fpretty-templates, freplace-objc-classes,
6954 frtti, fshort-double, fshort-enums, fshort-wchar,
6955 fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
6956 funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
6957 fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
6958 gen-decls, undef): Use Var.
6959 (fdefault-inline, foptional-diags): Document as doing nothing.
6960 * c-opts.c (c_common_handle_option): Remove cases for options now
6961 using Var. Mark ignored options as such.
6962
6963 2010-06-05 Steven Bosscher <steven@gcc.gnu.org>
6964
6965 * c-common.c: Moved to here from parent directory.
6966 * c-common.def: Likewise.
6967 * c-common.h: Likewise.
6968 * c-cppbuiltin.c: Likewise.
6969 * c-dump.c: Likewise.
6970 * c-format.c: Likewise.
6971 * c-format.h : Likewise.
6972 * c-gimplify.c: Likewise.
6973 * c-lex.c: Likewise.
6974 * c-omp.c: Likewise.
6975 * c.opt: Likewise.
6976 * c-opts.c: Likewise.
6977 * c-pch.c: Likewise.
6978 * c-ppoutput.c: Likewise.
6979 * c-pragma.c: Likewise.
6980 * c-pragma.h: Likewise.
6981 * c-pretty-print.c: Likewise.
6982 * c-pretty-print.h: Likewise.
6983 * c-semantics.c: Likewise.
6984 * stub-objc.c: Likewise.
6985
6986 * c-common.c: Include gt-c-family-c-common.h.
6987 * c-pragma.c: Include gt-c-family-c-pragma.h.
6988 \f
6989 Copyright (C) 2010-2016 Free Software Foundation, Inc.
6990
6991 Copying and distribution of this file, with or without modification,
6992 are permitted in any medium without royalty provided the copyright
6993 notice and this notice are preserved.
This page took 0.34392 seconds and 6 git commands to generate.