]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/c-family/ChangeLog
Spelling suggestions for misspelled preprocessor directives
[thirdparty/gcc.git] / gcc / c-family / ChangeLog
CommitLineData
5c8151fa 12016-08-18 David Malcolm <dmalcolm@redhat.com>
2
3 * c-common.c: Include "spellcheck.h".
4 (cb_get_suggestion): New function.
5 * c-common.h (cb_get_suggestion): New decl.
6 * c-lex.c (init_c_lex): Initialize cb->get_suggestion to
7 cb_get_suggestion.
8
26040f06 92016-08-18 Marek Polacek <polacek@redhat.com>
10
11 PR c/71514
12 * c-common.c (get_atomic_generic_size): Disallow pointer-to-function
13 and pointer-to-VLA.
14
5927e78e 152016-08-16 David Malcolm <dmalcolm@redhat.com>
16
17 PR c/72857
18 * c-common.c (substring_loc::get_range): Rename to...
19 (substring_loc::get_location): ...this, converting param from a
20 source_range * to a location_t *. Call
21 get_source_location_for_substring rather than
22 get_source_range_for_substring, and pass in m_caret_idx.
23 * c-common.h (substring_loc::substring_loc): Add param "caret_idx".
24 (substring_loc::get_range): Replace with...
25 (substring_loc::get_location): ...this.
26 (substring_loc::set_caret_index): New method.
27 (substring_loc): Add field m_caret_idx.
28 * c-format.c (format_warning_va): Update for above changes.
29 Rename local "substring_loc" to "fmt_substring_loc" to avoid
30 clashing with type name.
31 (format_warning_at_char): Add caret_idx param to substring_loc ctor.
32 (check_argument_type): Likewise.
33 (format_type_warning): Rename param "fmt_loc" to "whole_fmt_loc"
34 Use a copy when emitting warnings, setting the caret index from TYPE.
35
6ce66d38 362016-08-16 Eric Botcazou <ebotcazou@adacore.com>
37 Arnaud Charlet <charlet@adacore.com>
38
39 * c-ada-spec.c (dump_number): New function.
40 (handle_escape_character): Likewise.
41 (print_ada_macros): Add handling of constant integers and strings.
42
e3533433 432016-08-12 Marek Polacek <polacek@redhat.com>
44
45 PR c/7652
46 * c-common.c (scalar_to_vector): Adjust fall through comment.
47 * c-opts.c (c_common_handle_option): Likewise.
48 * c-pragma.c (handle_pragma_pack): Add FALLTHRU.
49 * c-pretty-print.c (c_pretty_printer::postfix_expression): Adjust
50 fall through comment.
51 * cilk.c (extract_free_variables): Add FALLTHRU.
52
0f463aec 532016-08-10 Jason Merrill <jason@redhat.com>
54
55 * c-cppbuiltin.c (c_cpp_builtins): Define __cpp_if_constexpr.
56
80488e20 572016-08-09 Jason Merrill <jason@redhat.com>
58
59 * c-common.c (c_common_attribute_table): vector_size affects type
60 identity.
61
a319e7f4 622016-08-09 Marek Polacek <polacek@redhat.com>
63
64 PR c/7652
65 * c-ada-spec.c (dump_generic_ada_node): Add return.
66
33603066 672016-08-09 Jason Merrill <jason@redhat.com>
68
69 * c-cppbuiltin.c (c_cpp_builtins): Update __cpp_constexpr for
70 C++17 constexpr lambdas.
71
7af4d06b 722016-08-08 David Malcolm <dmalcolm@redhat.com>
73
74 PR c/64955
75 * c-common.h (selftest::c_format_c_tests): New declaration.
76 (selftest::run_c_tests): New declaration.
77 * c-format.c: Include "selftest.h.
78 (format_warning_va): Add param "corrected_substring" and use
79 it to add a replacement fix-it hint.
80 (format_warning_at_substring): Likewise.
81 (format_warning_at_char): Update for new param of
82 format_warning_va.
83 (argument_parser::check_argument_type): Pass "fki" to
84 check_format_types.
85 (check_format_types): Add param "fki" and pass it to
86 format_type_warning.
87 (deref_n_times): New function.
88 (get_modifier_for_format_len): New function.
89 (selftest::test_get_modifier_for_format_len): New function.
90 (get_format_for_type): New function.
91 (format_type_warning): Add param "fki" and use it to attempt
92 to provide hints for argument types when calling
93 format_warning_at_substring.
94 (selftest::get_info): New function.
95 (selftest::assert_format_for_type_streq): New function.
96 (ASSERT_FORMAT_FOR_TYPE_STREQ): New macro.
97 (selftest::test_get_format_for_type_printf): New function.
98 (selftest::test_get_format_for_type_scanf): New function.
99 (selftest::c_format_c_tests): New function.
100
d189b094 1012016-08-08 David Malcolm <dmalcolm@redhat.com>
102
103 PR c/52952
104 * c-format.c: Include "diagnostic.h".
105 (location_column_from_byte_offset): Delete.
106 (location_from_offset): Delete.
107 (format_warning_va): New function.
108 (format_warning_at_substring): New function.
109 (format_warning_at_char): New function.
110 (check_format_arg): Capture location of format_tree and pass to
111 check_format_info_main.
112 (argument_parser): Add fields "start_of_this_format" and
113 "format_string_cst".
114 (flag_chars_t::validate): Add param "format_string_cst". Convert
115 warning_at call using location_from_offset to call to
116 format_warning_at_char.
117 (argument_parser::argument_parser): Add param "format_string_cst_"
118 and use use it to initialize field "format_string_cst".
119 Initialize new field "start_of_this_format".
120 (argument_parser::read_format_flags): Convert warning_at call
121 using location_from_offset to a call to format_warning_at_char.
122 (argument_parser::read_any_format_left_precision): Likewise.
123 (argument_parser::read_any_format_precision): Likewise.
124 (argument_parser::read_any_other_modifier): Likewise.
125 (argument_parser::find_format_char_info): Likewise, in three places.
126 (argument_parser::parse_any_scan_set): Likewise, in one place.
127 (argument_parser::handle_conversions): Likewise, in two places.
128 (argument_parser::check_argument_type): Add param "fmt_param_loc"
129 and use it to make a substring_loc. Pass the latter to
130 check_format_types.
131 (check_format_info_main): Add params "fmt_param_loc" and
132 "format_string_cst". Convert warning_at calls using
133 location_from_offset to calls to format_warning_at_char. Pass the
134 new params to the arg_parser ctor. Pass "format_string_cst" to
135 flag_chars.validate. Pass "fmt_param_loc" to
136 arg_parser.check_argument_type.
137 (check_format_types): Convert first param from a location_t
138 to a const substring_loc & and rename to "fmt_loc". Attempt
139 to extract the range of the relevant parameter and pass it
140 to format_type_warning.
141 (format_type_warning): Convert first param from a location_t
142 to a const substring_loc & and rename to "fmt_loc". Add
143 params "param_range" and "type". Replace calls to warning_at
144 with calls to format_warning_at_substring.
145
0dae5fef 1462016-08-08 David Malcolm <dmalcolm@redhat.com>
147
148 * c-format.c (class flag_chars_t): New class.
149 (struct length_modifier): New struct.
150 (class argument_parser): New class.
151 (flag_chars_t::flag_chars_t): New ctor.
152 (flag_chars_t::has_char_p): New method.
153 (flag_chars_t::add_char): New method.
154 (flag_chars_t::validate): New method.
155 (flag_chars_t::get_alloc_flag): New method.
156 (flag_chars_t::assignment_suppression_p): New method.
157 (argument_parser::argument_parser): New ctor.
158 (argument_parser::read_any_dollar): New method.
159 (argument_parser::read_format_flags): New method.
160 (argument_parser::read_any_format_width): New method.
161 (argument_parser::read_any_format_left_precision): New method.
162 (argument_parser::read_any_format_precision): New method.
163 (argument_parser::handle_alloc_chars): New method.
164 (argument_parser::read_any_length_modifier): New method.
165 (argument_parser::read_any_other_modifier): New method.
166 (argument_parser::find_format_char_info): New method.
167 (argument_parser::validate_flag_pairs): New method.
168 (argument_parser::give_y2k_warnings): New method.
169 (argument_parser::parse_any_scan_set): New method.
170 (argument_parser::handle_conversions): New method.
171 (argument_parser::check_argument_type): New method.
172 (check_format_info_main): Introduce classes argument_parser
173 and flag_chars_t, moving the code within the loop into methods
174 of these classes. Make various locals "const".
175
d4166bdc 1762016-08-05 David Malcolm <dmalcolm@redhat.com>
177
178 * c-common.c: Include "substring-locations.h".
179 (get_cpp_ttype_from_string_type): New function.
180 (g_string_concat_db): New global.
181 (substring_loc::get_range): New method.
182 * c-common.h (g_string_concat_db): New declaration.
183 (class substring_loc): New class.
184 * c-lex.c (lex_string): When concatenating strings, capture the
185 locations of all tokens using a new obstack, and record the
186 concatenation locations within g_string_concat_db.
187 * c-opts.c (c_common_init_options): Construct g_string_concat_db
188 on the ggc-heap.
189
7648c9c7 1902016-07-29 Marek Polacek <polacek@redhat.com>
191
8ae70602 192 PR c/71926
193 * c-common.c (c_common_truthvalue_conversion): Use LOCATION for the
194 parentheses warning.
195
7648c9c7 196 PR c/71574
197 * c-common.c (handle_alloc_align_attribute): Also check FUNCTION_DECL.
198
595e387a 1992016-07-28 Martin Liska <mliska@suse.cz>
200
201 PR gcov-profile/68025
202 * c-common.c (handle_no_profile_instrument_function_attribute):
203
296103aa 2042016-07-27 Bernd Edlinger <bernd.edlinger@hotmail.de>
205
206 * c-common.c (check_user_alignment): Use LOG2_BITS_PER_UNIT instead of
207 BITS_PER_UNIT_LOG.
208
21483ab7 2092016-07-25 Jason Merrill <jason@redhat.com>
210
211 PR c++/65970
212 * c.opt (fconstexpr-loop-limit): New.
213
efa8e86e 2142016-07-22 Martin Sebor <msebor@redhat.com>
215
216 PR c++/71675
217 * c-common.c (resolve_overloaded_builtin): Avoid converting
218 __atomic_compare_exchange_n return type to that of what its
219 first argument points to.
220
59c1507a 2212016-07-22 Uros Bizjak <ubizjak@gmail.com>
222
223 * c-common.c: Use HOST_WIDE_INT_M1U instead of
224 ~(unsigned HOST_WIDE_INT) 0.
225
45648efe 2262016-07-22 Martin Liska <mliska@suse.cz>
227
228 PR gcov-profile/69028
229 PR gcov-profile/62047
230 * cilk.c (create_cilk_helper_decl): Set location of a new decl
231 to the current_function_decl.
232
0c0f63cb 2332016-07-21 Jason Merrill <jason@redhat.com>
234
235 PR c++/65168
236 * c-common.c (c_common_truthvalue_conversion): Check
237 c_inhibit_evaluation_warnings for warning about address of
238 reference.
239
d208f6e6 2402016-07-20 David Malcolm <dmalcolm@redhat.com>
241
242 * c-common.h (lookup_name_fuzzy): Convert return type from tree to
243 const char *.
244
0238e35e 2452016-07-15 Jason Merrill <jason@redhat.com>
246
247 * c-opts.c (c_common_post_options): Update -fabi-version default to 11.
248
0dd7db3b 2492016-07-15 Jakub Jelinek <jakub@redhat.com>
250
251 PR c/71858
252 * c-common.h (enum lookup_name_fuzzy_kind): Add
253 FUZZY_LOOKUP_FUNCTION_NAME.
254
e59cff35 2552016-07-08 Jason Merrill <jason@redhat.com>
256
257 P0145: Refining Expression Order for C++.
258 * c.opts (-fargs-in-order): Rename to -fstrong-eval-order.
259 * c-opts.c: Adjust.
260
faee03ad 2612016-07-05 Markus Trippelsdorf <markus@trippelsdorf.de>
262
263 PR c++/71214
264 * c-cppbuiltin.c (c_cpp_builtins): Define __cpp_rvalue_references.
265
a4dd89cb 2662016-06-29 Thomas Schwinge <thomas@codesourcery.com>
267
268 * c-pragma.h (enum pragma_kind): Rename
269 PRAGMA_OMP_DECLARE_REDUCTION to PRAGMA_OMP_DECLARE. Adjust all
270 users.
271
b6a4a0f5 2722016-06-29 Richard Biener <rguenther@suse.de>
273
274 PR middle-end/71002
275 * c-common.c (c_common_get_alias_set): Remove union type punning case.
276
176aa551 2772016-06-24 Jason Merrill <jason@redhat.com>
278
279 P0145R2: Refining Expression Order for C++.
280 * c-common.c (verify_tree) [COMPOUND_EXPR]: Fix handling on LHS of
281 MODIFY_EXPR.
282
77104764 2832016-06-24 Jakub Jelinek <jakub@redhat.com>
284
285 * c-common.c (check_builtin_function_arguments): Require last
286 argument of BUILT_IN_*_OVERFLOW_P to have INTEGER_TYPE type.
287 Adjust wording of diagnostics for BUILT_IN_*_OVERLFLOW
288 if the last argument is pointer to enumerated or boolean type.
289
8469aece 2902016-06-22 David Malcolm <dmalcolm@redhat.com>
291
292 PR c/70339
293 * c-common.h (enum lookup_name_fuzzy_kind): New enum.
294 (lookup_name_fuzzy): New prototype.
295
bd08c370 2962016-06-21 John David Anglin <danglin@gcc.gnu.org>
297
298 * c-common.c (get_source_date_epoch): Use int64_t instead of long long.
299
06c75b9a 3002016-06-14 Jason Merrill <jason@redhat.com>
301
302 P0145R2: Refining Expression Order for C++.
303 * c.opt (fargs-in-order): New.
304 * c-opts.c (c_common_post_options): Adjust flag_args_in_order.
305
9720103d 3062016-06-13 Jakub Jelinek <jakub@redhat.com>
307
12cb8367 308 PR sanitizer/71498
309 * c-gimplify.c (ubsan_walk_array_refs_r): Set *walk_subtrees = 0 on
310 all BIND_EXPRs, and on all BIND_EXPRs recurse also on BIND_EXPR_BODY.
311
9720103d 312 PR preprocessor/71183
313 * c-ppoutput.c (init_pp_output): Set cb->get_source_date_epoch
314 to cb_get_source_date_epoch.
315
8ec29807 3162016-06-10 Jakub Jelinek <jakub@redhat.com>
317
318 PR c/68657
319 * c.opt (Wpsabi): Add Warning flag.
320
1dc4d519 3212016-06-10 Martin Sebor <msebor@redhat.com>
322
323 PR c/71392
324 * gcc/c-family/c-common.c (handle_nonnull_attribute): Accept
325 the nonnull attribute in type-generic builtins.
326
23b101c5 3272016-06-09 Martin Sebor <msebor@redhat.com>
328
329 PR c/70883
330 * c-common.c (builtin_function_validate_nargs): Make text of error
331 message consistent with others like it.
332
732905bb 3332016-06-08 Martin Sebor <msebor@redhat.com>
334 Jakub Jelinek <jakub@redhat.com>
335
336 PR c++/70507
337 PR c/68120
338 * c-common.c (check_builtin_function_arguments): Handle
339 BUILT_IN_{ADD,SUB,MUL}_OVERFLOW_P.
340
86a5f91c 3412016-06-08 Richard Biener <rguenther@suse.de>
342
343 * c-common.c (parse_optimize_options): Improve diagnostic messages.
344
b032c4dd 3452016-06-07 Richard Biener <rguenther@suse.de>
346
347 PR c/61564
348 * c-common.c (parse_optimize_options): Only apply CL_OPTIMIZATION
349 options and warn about others.
350
dfa5c0d3 3512016-06-01 Eduard Sanou <dhole@openmailbox.org>
352
353 * c-common.c (get_source_date_epoch): Rename to
354 cb_get_source_date_epoch.
355 * c-common.c (cb_get_source_date_epoch): Use a single generic erorr
356 message when the parsing fails. Use error_at instead of fatal_error.
357 * c-common.h (get_source_date_epoch): Rename to
358 cb_get_source_date_epoch.
359 * c-common.h (cb_get_source_date_epoch): Prototype.
360 * c-common.h (MAX_SOURCE_DATE_EPOCH): Define.
361 * c-common.h (c_omp_region_type): Remove trailing comma.
362 * c-lex.c (init_c_lex): Set cb->get_source_date_epoch callback.
363 * c-lex.c (c_lex_with_flags): Remove initialization of
364 pfile->source_date_epoch.
365
b6431756 3662016-05-30 Jakub Jelinek <jakub@redhat.com>
367
368 PR c++/71349
369 * c-omp.c (c_omp_split_clauses): Put OMP_CLAUSE_DEPEND to
370 C_OMP_CLAUSE_SPLIT_TARGET. Put OMP_CLAUSE_NOWAIT to
371 C_OMP_CLAUSE_SPLIT_TARGET if combined with target construct,
372 instead of C_OMP_CLAUSE_SPLIT_FOR.
373
7345b977 3742016-05-24 Richard Biener <rguenther@suse.de>
375
376 PR middle-end/70434
377 PR c/69504
378 * c-common.h (convert_vector_to_pointer_for_subscript): Rename to ...
379 (convert_vector_to_array_for_subscript): ... this.
380 * c-common.c (convert_vector_to_pointer_for_subscript): Use a
381 VIEW_CONVERT_EXPR to an array type. Rename to ...
382 (convert_vector_to_array_for_subscript): ... this.
383
22a3f7bd 3842016-05-12 Marek Polacek <polacek@redhat.com>
385
386 PR c/70756
387 * c-common.c (pointer_int_sum): Call size_in_bytes_loc instead of
388 size_in_bytes and pass LOC to it.
389
54c4d22e 3902016-05-11 Mikhail Maltsev <maltsevm@gmail.com>
391
392 PR c/43651
393 * c.opt (Wduplicate-decl-specifier): New option.
394
7f8012a5 3952016-05-11 Marek Polacek <polacek@redhat.com>
396
397 PR c++/71024
398 * c-common.c (diagnose_mismatched_attributes): New function.
399 * c-common.h (diagnose_mismatched_attributes): Declare.
400
1d52c456 4012016-05-04 Marek Polacek <polacek@redhat.com>
402
403 * c.opt (Wdangling-else): New option.
404
5d4db8ef 4052016-05-03 Marek Polacek <polacek@redhat.com>
406
407 PR c/70859
408 * c-common.c (builtin_function_validate_nargs): Add location
409 parameter. Use it.
410 (check_builtin_function_arguments): Add location and arguments
411 parameters. Use them.
412 * c-common.h (check_builtin_function_arguments): Update declaration.
413
9ae1b28a 4142016-05-03 Richard Biener <rguenther@suse.de>
415
416 * cilk.c (cilk_gimplify_call_params_in_spawned_fn): Do not
417 allow call args to gimplify to SSA names.
418
4341e093 4192016-05-03 Marek Polacek <polacek@redhat.com>
420
421 * c-common.h (enum c_omp_region_type): Remove stray comma.
422
b5e88f74 4232016-05-02 Cesar Philippidis <cesar@codesourcery.com>
424
425 * c-common.h (enum c_omp_region_type): Define.
426
ee31dd3d 4272016-05-02 Richard Sandiford <richard.sandiford@arm.com>
428
429 * c-common.c (shorten_compare): Use wi::to_wide.
430
4d0a8bac 4312016-04-29 Cesar Philippidis <cesar@codesourcery.com>
432
433 PR middle-end/70626
434 * c-common.h (c_oacc_split_loop_clauses): Add boolean argument.
435 * c-omp.c (c_oacc_split_loop_clauses): Use it to duplicate
436 reduction clauses in acc parallel loops.
437
025dd1e0 4382016-04-29 Marek Polacek <polacek@redhat.com>
439
440 PR c/70852
441 * c-common.c (warn_for_memset): Check domain before accessing it.
442
eb16928e 4432016-04-29 Dominik Vogt <vogt@linux.vnet.ibm.com>
444
445 PR/69089
446 * c-common.c (handle_aligned_attribute): Allow 0 as an argument to the
447 "aligned" attribute.
448
ddd2a3d4 4492016-04-28 Jason Merrill <jason@redhat.com>
450
451 * c-lex.c (c_common_has_attribute): Handle nodiscard.
452
e3e8c48c 4532016-04-28 Eduard Sanou <dhole@openmailbox.org>
454 Matthias Klose <doko@debian.org>
455
456 * c-common.c (get_source_date_epoch): New function, gets the environment
457 variable SOURCE_DATE_EPOCH and parses it as long long with error
458 handling.
459 * c-common.h (get_source_date_epoch): Prototype.
460 * c-lex.c (c_lex_with_flags): set parse_in->source_date_epoch.
461
605a4556 4622015-04-27 Ryan Burn <contact@rnburn.com>
463
464 PR c++/69024
465 PR c++/68997
466 * cilk.c (cilk_ignorable_spawn_rhs_op): Change to external linkage.
467 (cilk_recognize_spawn): Renamed from recognize_spawn and change to
468 external linkage.
469 (cilk_detect_and_unwrap): Corresponding changes.
470 (extract_free_variables): Don't extract free variables from
471 AGGR_INIT_EXPR slot.
472 * c-common.h (cilk_ignorable_spawn_rhs_op): Prototype.
473 (cilk_recognize_spawn): Likewise.
474
40385231 4752016-04-27 Bernd Schmidt <bschmidt@redhat.com>
476
477 * c.opt (Wmemset-elt-size): New option.
478 * c-common.c (warn_for_memset): New function.
479 * c-common.h (warn_for_memset): Declare.
480
f5d49c14 4812016-04-25 Jason Merrill <jason@redhat.com>
482
483 * c-common.c (handle_unused_attribute): Accept CONST_DECL.
484 No longer static.
485 * c-common.h: Declare it.
486 * c-lex.c (c_common_has_attribute): Add maybe_unused.
487
9c980ab5 4882016-04-22 Jason Merrill <jason@redhat.com>
489
490 * c-cppbuiltin.c (c_cpp_builtins): Fix __cpp_range_based_for.
491
70574e60 4922016-04-20 Ilya Verbin <ilya.verbin@intel.com>
493
494 PR c++/69363
495 * c-cilkplus.c (c_finish_cilk_clauses): Remove function.
496 * c-common.h (c_finish_cilk_clauses): Remove declaration.
497
5d4b30ea 4982016-04-18 Michael Matz <matz@suse.de>
499
500 * c-common.c (handle_aligned_attribute): Use SET_TYPE_ALIGN
501 and SET_DECL_ALIGN.
502
021ad2f3 5032016-04-17 Eric Botcazou <ebotcazou@adacore.com>
504
505 * c-ada-spec.c (get_underlying_decl): Return the typedef, if any.
506 (dump_generic_ada_node) <POINTER_TYPE>: Clean up handling of access
507 to incomplete types.
508 (dump_nested_type): Remove redundant tests and tidy up.
509 (print_ada_declaration): Also set TREE_VISITED on the declaration of
510 a type which is the typedef of an original type.
511
926f9422 5122016-04-15 Marek Polacek <polacek@redhat.com>
513
514 PR c/70651
515 * c-common.c (build_va_arg): Change two asserts into errors and return
516 error_mark_node.
517
92c53257 5182016-04-13 Marek Polacek <polacek@redhat.com>
519
520 PR c++/70639
521 * c-indentation.c (should_warn_for_misleading_indentation): Bail out
522 for switch statements, too.
523
a3ae889f 5242016-03-28 Jason Merrill <jason@redhat.com>
525
526 * c-cppbuiltin.c (c_cpp_builtins): Update __cpp_range_based_for.
527
62d2a6dc 5282016-03-23 Marek Polacek <polacek@redhat.com>
529
530 PR c++/69884
531 * c.opt (Wignored-attributes): New option.
532
4baec9f2 5332016-03-22 David Malcolm <dmalcolm@redhat.com>
534
535 PR c/69993
536 * c-indentation.c (warn_for_misleading_indentation): Rewrite the
537 diagnostic text, reversing the order of the warning and note so
538 that they appear in source order.
539
92e7ab1e 5402016-03-17 Marek Polacek <polacek@redhat.com>
541
542 PR c/69407
543 * c-common.c (resolve_overloaded_builtin): Set TREE_USED for the fetch
544 operations.
545
6f895832 5462016-03-14 Jason Merrill <jason@redhat.com>
547
14c36b14 548 * c-cppbuiltin.c (c_cpp_builtins): Set __cpp_hex_float.
549
6f895832 550 * c-cppbuiltin.c (c_cpp_builtins): Bump __cpp_range_based_for.
551
42bb3bfb 5522016-03-09 Richard Biener <rguenther@suse.de>
553
554 PR c/70143
555 * c-common.c (strict_aliasing_warning): Add back
556 alias_sets_conflict_p check.
557
3556aa80 5582016-03-08 Jason Merrill <jason@redhat.com>
559
560 * c-opts.c (set_std_cxx1z): Don't enable concepts.
561
0060768a 5622016-03-04 David Malcolm <dmalcolm@redhat.com>
563
564 PR c/68187
565 * c-indentation.c (get_visual_column): Move code to determine next
566 tab stop to...
567 (next_tab_stop): ...this new function.
568 (line_contains_hash_if): Delete function.
569 (detect_preprocessor_logic): Delete function.
570 (get_first_nws_vis_column): New function.
571 (detect_intervening_unindent): New function.
572 (should_warn_for_misleading_indentation): Replace call to
573 detect_preprocessor_logic with a call to
574 detect_intervening_unindent.
575
74c6fd40 5762016-03-04 David Malcolm <dmalcolm@redhat.com>
577
578 PR c/68187
579 * c-indentation.c (should_warn_for_misleading_indentation): When
580 suppressing warnings about cases where the guard and body are on
581 the same column, only use the first non-whitespace column in place
582 of the guard token column when dealing with "else" clauses.
583 When rejecting aligned BODY and NEXT, loosen the requirement
584 from equality with the first non-whitespace of guard to simply
585 that they not be indented relative to it.
586
e692d332 5872016-03-04 Richard Biener <rguenther@suse.de>
588
589 PR c++/70054
590 * c-common.c (strict_aliasing_warning): Use alias_set_subset_of
591 instead of alias_sets_conflict_p.
592
12cc1225 5932016-03-01 Marek Polacek <polacek@redhat.com>
594
595 PR c++/69795
596 * c-common.c (reject_gcc_builtin): Check for FUNCTION_DECL rather than
597 any DECL.
598
8c38d887 5992016-02-22 Martin Sebor <msebor@redhat.com>
600
601 PR middle-end/69780
602 * c-common.c (check_builtin_function_arguments): Validate and
603 reject invalid arguments to __builtin_alloca_with_align.
604
e53f41d5 6052016-02-20 Mark Wielaard <mjw@redhat.com>
606
607 PR c/28901
608 * c.opt (Wunused-const-variable): Turn into Alias for...
609 (Wunused-const-variable=): New option.
610
9cce8384 6112016-02-19 Bernd Edlinger <bernd.edlinger@hotmail.de>
612
613 PR c++/69865
614 * c-opts.c (c_common_post_options): Move call to set_std_cxx14 from
615 here...
616 (c_common_init_options): ...to here.
617 (set_std_cxx98): Initialize flag_isoc94 and flag_isoc99.
618
563d5cb8 6192016-02-19 Jakub Jelinek <jakub@redhat.com>
620
621 PR c++/69826
622 * c-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_GRAINSIZE.
623 (init_pragma): Register PRAGMA_CILK_GRAINSIZE even for
624 flag_preprocess_only.
625
7675e968 6262016-02-16 Jakub Jelinek <jakub@redhat.com>
627
628 PR c/69835
629 * c.opt (Wnonnull-compare): Enable for -Wall.
630
77454e6e 6312016-02-15 Jakub Jelinek <jakub@redhat.com>
632
633 PR c++/69797
634 * c-common.c (sync_resolve_size): Diagnose too few arguments
635 even when params is non-NULL empty vector.
636
600695e0 6372016-02-08 Bernd Schmidt <bschmidt@redhat.com>
638
639 PR target/60410
640 * c.opt (fshort-double): Remove.
641
a7cc1f94 6422016-02-05 Martin Sebor <msebor@redhat.com>
643
644 PR c++/69662
645 * c.opt (Warning options): Update -Wplacement-new to take
646 an optional argument.
647
6f13b088 6482016-02-01 Jakub Jelinek <jakub@redhat.com>
649
650 PR preprocessor/69543
651 PR c/69558
652 * c-pragma.c (handle_pragma_diagnostic): Pass input_location
653 instead of loc to control_warning_option.
654
948eee2f 6552016-02-01 Nathan Sidwell <nathan@codesourcery.com>
656
657 * c.opt (fopenacc-dim=): New option.
658
5fa82c11 6592016-01-27 Ryan Burn <contact@rnburn.com>
660
661 PR cilkplus/69267
662 * cilk.c (cilk_gimplify_call_params_in_spawned_fn): Change to use
663 gimplify_arg. Removed superfluous post_p argument.
664 * c-family.h (cilk_gimplify_call_params_in_spawned_fn): Removed
665 superfluous post_p argument.
666 * c-gimplify.c (c_gimplify_expr): Likewise.
667
3752e5b1 6682016-01-26 David Malcolm <dmalcolm@redhat.com>
669
670 PR other/69006
671 * c-opts.c (c_diagnostic_finalizer): Replace invocation of
672 pp_newline_and_flush with pp_flush.
673
bbbbe8ab 6742016-01-20 Martin Sebor <msebor@redhat.com>
675
676 PR c/69405
677 * c-common.c (sync_resolve_size): Avoid printing diagnostic about
678 an incompatible argument when the argument isn't a valid tree node.
679
f6dfb86a 6802016-01-18 Jason Merrill <jason@redhat.com>
681
682 PR c++/68767
683 * c-common.c (check_function_arguments_recurse): Fold the whole
684 COND_EXPR, not just the condition.
685
f672c103 6862016-01-18 Tom de Vries <tom@codesourcery.com>
687
688 * c-omp.c (c_oacc_split_loop_clauses): Don't copy OMP_CLAUSE_REDUCTION,
689 classify as loop clause.
690
c8ef893c 6912016-01-15 Jakub Jelinek <jakub@redhat.com>
692
693 PR bootstrap/68271
694 * c-pragma.c (c_register_pragma_1): Adjust comment to note that
695 C++ FE no longer has limit on number of pragmas.
696
6972015-01-14 Ryan Burn <contact@rnburn.com>
7d600da5 698
699 PR c++/69048
700 * cilk.c (create_cilk_wrapper_body): Call fold_build_cleanup_point_expr
580357e7 701 to add missing cleanup point.
7d600da5 702
a7ed4583 7032016-01-14 David Malcolm <dmalcolm@redhat.com>
704
705 PR c++/68819
706 * c-indentation.c (get_visual_column): Add location_t param.
707 Handle the column number being zero by effectively disabling the
708 warning, with an "inform".
709 (should_warn_for_misleading_indentation): Add location_t argument
710 for all uses of get_visual_column.
711
b933e511 7122016-01-10 Patrick Palka <ppalka@gcc.gnu.org>
713
714 PR c++/69029
715 * c-indentation.c (should_warn_for_misleading_indentation):
716 Don't warn about do-while statements.
717
517906ff 7182016-01-07 Martin Sebor <msebor@redhat.com>
719
720 PR c/68966
721 * c-common.c (sync_resolve_size): Reject first argument when it's
722 a pointer to _Bool.
723
d42aa619 7242016-01-05 David Malcolm <dmalcolm@redhat.com>
725
726 PR c/69122
727 * c-indentation.c (get_visual_column): Remove default argument.
728 (should_warn_for_misleading_indentation): For the multiline case,
729 update call to get_visual_column for next_stmt_exploc so that it
730 captures the location of the first non-whitespace character in the
731 relevant line. Don't issue warnings if there is non-whitespace
732 before the next statement.
733
f1717362 7342016-01-04 Jakub Jelinek <jakub@redhat.com>
735
736 Update copyright years.
737
c0bf500c 7382015-12-21 David Malcolm <dmalcolm@redhat.com>
739
740 * c-common.c (binary_op_error): Convert first param from
741 location_t to rich_location * and use it when emitting an error.
742 * c-common.h (binary_op_error): Convert first param from
743 location_t to rich_location *.
744
dbd79382 7452015-12-16 David Malcolm <dmalcolm@redhat.com>
746
747 * c-common.h (conflict_marker_get_final_tok_kind): New prototype.
748 * c-lex.c (conflict_marker_get_final_tok_kind): New function.
749
c0998828 7502015-12-15 Ilya Verbin <ilya.verbin@intel.com>
751
752 * c-common.c (c_common_attribute_table): Handle "omp declare target
753 link" attribute.
754
7ca909c6 7552015-12-14 Jakub Jelinek <jakub@redhat.com>
756
757 PR c/68833
758 * c.opt (Wmissing-format-attribute, Wnormalized): Add Warning option.
759
d9102cbe 7602014-12-12 Tobias Burnus <burnus@net-b.de>
761
762 PR fortran/68815
763 * c-format.c (gcc_gfc_char_table): Add 'q' flag to remaining
764 specifiers (%d, %i,%u and %c).
765
a515ebdf 7662015-12-10 David Malcolm <dmalcolm@redhat.com>
767
768 * c.opt (Wmisleading-indentation): Add to -Wall for C and C++.
769
31ba81bd 7702015-12-08 Jakub Jelinek <jakub@redhat.com>
771
772 PR c/48088
773 PR c/68657
774 * c.opt (Wfloat-conversion, Wsign-conversion): Add Warning.
775 * c-pragma.c (handle_pragma_diagnostic): Adjust
776 control_warning_option caller.
777
d0f713f4 7782015-12-07 David Malcolm <dmalcolm@redhat.com>
779
780 * c-common.c (c_cpp_error): Update for change to
781 rich_location::set_range.
782
32d050b5 7832015-12-04 Paolo Bonzini <bonzini@gnu.org>
784
785 * c-common.c (maybe_warn_shift_overflow): Warn on all overflows if
786 shifting 1 out of the sign bit.
787
7882015-12-04 Kirill Yukhin <kirill.yukhin@intel.com>
789
790 * c-common.c (c_common_attribute_table[]): Update max arguments
791 count for "simd" attribute.
792 (handle_simd_attribute): Parse "notinbranch" and "inbranch" arguments.
793
6a8fbd7a 7942015-12-03 Jakub Jelinek <jakub@redhat.com>
795
796 PR preprocessor/57580
797 * c-ppoutput.c (print): Change printed field to bool.
798 Move src_file last for smaller padding.
799 (init_pp_output): Set print.printed to false instead of 0.
800 (scan_translation_unit): Fix up formatting. Set print.printed
801 to true after printing something other than newline.
802 (scan_translation_unit_trad): Set print.printed to true instead of 1.
803 (maybe_print_line_1): Set print.printed to false instead of 0.
804 (print_line_1): Likewise.
805 (do_line_change): Set print.printed to true instead of 1.
806 (cb_define, dump_queued_macros, cb_include, cb_def_pragma,
807 dump_macro): Set print.printed to false after printing newline.
808
da562e32 8092015-12-02 Jason Merrill <jason@redhat.com>
810
9c691dbd 811 * c-common.c (fold_for_warn): New.
812 (warn_logical_operator, warn_tautological_cmp)
813 (check_function_arguments_recurse, maybe_warn_bool_compare): Use it.
814
da562e32 815 * c-common.c (c_disable_warnings, c_enable_warnings, c_fully_fold)
816 (c_fully_fold_internal, decl_constant_value_for_optimization):
817 Move to c/c-fold.c.
818 * c-common.h: Don't declare decl_constant_value_for_optimization.
819
89f16034 8202015-12-02 Joseph Myers <joseph@codesourcery.com>
821
822 PR c/68162
823 * c-common.h (c_build_qualified_type): Add extra default
824 arguments.
825
571b3486 8262015-12-01 Julian Brown <julian@codesourcery.com>
827 Cesar Philippidis <cesar@codesourcery.com>
828 James Norris <James_Norris@mentor.com>
829
830 * c-pragma.c (oacc_pragmas): Add PRAGMA_OACC_HOST_DATA.
831 * c-pragma.h (pragma_kind): Add PRAGMA_OACC_HOST_DATA.
832 (pragma_omp_clause): Add PRAGMA_OACC_CLAUSE_USE_DEVICE.
833
ed92a461 8342015-11-30 Eric Botcazou <ebotcazou@adacore.com>
835
836 * c-ada-spec.c (print_ada_macros): Remove redundant blank line.
837 (decl_sloc_common): Delete and move bulk of processing to...
838 (decl_sloc): ...here.
839 (pp_ada_tree_identifier): Remove reference to QUAL_UNION_TYPE.
840 (dump_ada_double_name): Remove S parameter and compute the suffix.
841 (dump_ada_array_type): Add PARENT parameter. Simplify computation of
842 element type and deal with an anonymous one.
843 (dump_ada_template): Use RECORD_OR_UNION_TYPE_P macro.
844 (dump_generic_ada_node): Tweak. Adjust call to dump_ada_array_type
845 and remove reference to QUAL_UNION_TYPE.
846 (dump_nested_types): Make 2 passes on the fields and move bulk to...
847 (dump_nested_type): ...here. New function extracted from above.
848 Generate a full declaration for anonymous element type of arrays.
849 (print_ada_declaration): Really skip anonymous declarations. Remove
850 references to QUAL_UNION_TYPE. Adjust call to dump_ada_array_type.
851 Clean up processing of declarations of array types and objects.
852 (print_ada_struct_decl): Remove reference to QUAL_UNION_TYPE.
853 Remove obsolete code and tidy up.
854
c25b3e3f 8552015-11-29 Jan Hubicka <hubicka@ucw.cz>
856
857 PR c/67581
858 * c-common.c (handle_transparent_union_attribute): Update
859 also type variants.
860
d4e328e9 8612015-11-27 Martin Liska <mliska@suse.cz>
862
863 PR c++/68312
864 * array-notation-common.c (cilkplus_extract_an_triplets):
865 Release vector of vectors.
866 * cilk.c (gimplify_cilk_spawn): Free allocated memory.
867
f63d9c4e 8682015-11-26 Eric Botcazou <ebotcazou@adacore.com>
869
870 PR c++/68527
871 * c-ada-spec.c (dump_nested_types): Add guard for error_mark_node.
872 (print_ada_struct_decl): Likewise.
873
8d63c601 8742015-11-23 Igor Zamyatin <igor.zamyatin@intel.com>
875
876 PR c++/68001
877 * c-gimplify.c (c_gimplify_expr): Stop the process if see an error.
878 * cilk.c (recognize_spawn): Determine location in a more precise
879 way.
880
01f11119 8812015-11-19 Jason Merrill <jason@redhat.com>
882
883 * c-common.c (shorten_compare): But look through macros from
884 system headers.
885
2d3d3af7 8862015-11-18 Jason Merrill <jason@redhat.com>
887
888 * c-common.c (shorten_compare): Don't -Wtype-limits if the
889 non-constant operand comes from a macro.
890
7991eeee 8912015-11-17 Jason Merrill <jason@redhat.com>
892
893 PR bootstrap/68346
894 * c-common.c (warn_tautological_cmp): Fold before checking for
895 constants.
896
73f67931 8972015-11-16 Marek Polacek <polacek@redhat.com>
898
899 PR c++/68362
900 * c-common.c (check_case_bounds): Fold low and high cases.
901
8e539fdc 9022015-11-16 Marek Polacek <polacek@redhat.com>
903
904 * c-ada-spec.c (dump_ada_template): Use RECORD_OR_UNION_TYPE_P.
905 * c-common.c (c_common_get_alias_set): Likewise.
906 (handle_visibility_attribute): Likewise.
907
c58a4cfd 9082015-11-16 Kirill Yukhin <kirill.yukhin@intel.com>
909
910 * c-common.c (handle_simd_attribute): New.
911 (struct attribute_spec): Add entry for "simd".
912 (handle_simd_attribute): New.
913
bb036391 9142015-11-13 Kai Tietz <ktietz70@googlemail.com>
915
916 * c-lex.c (interpret_float): Use fold_convert.
917
a96cefb2 9182015-11-13 David Malcolm <dmalcolm@redhat.com>
919
920 * c-common.c (c_fully_fold_internal): Capture existing souce_range,
921 and store it on the result.
922 * c-opts.c (c_common_init_options): Set
923 global_dc->colorize_source_p.
924
2fc5e987 9252015-11-12 James Norris <jnorris@codesourcery.com>
926 Joseph Myers <joseph@codesourcery.com>
927
928 * c-pragma.c (oacc_pragmas): Add entry for declare directive.
929 * c-pragma.h (enum pragma_kind): Add PRAGMA_OACC_DECLARE.
930 (enum pragma_omp_clause): Add PRAGMA_OACC_CLAUSE_DEVICE_RESIDENT and
931 PRAGMA_OACC_CLAUSE_LINK.
932
81b1b2a8 9332015-11-11 Marek Polacek <polacek@redhat.com>
934
935 PR c/68107
936 PR c++/68266
937 * c-common.c (valid_array_size_p): New function.
938 * c-common.h (valid_array_size_p): Declare.
939
4f3707ca 9402015-11-11 Dominique d'Humieres <dominiq@lps.ens.fr>
941
942 PR bootstrap/68271
943 * c-pragma.c (c_register_pragma_1): Update the gcc_assert to 256.
944
6e803544 9452015-11-11 Andrew MacLeod <amacleod@redhat.com>
946
947 * array-notation-common.c: Remove unused header files.
948 * c-ada-spec.c: Likewise.
949 * c-cilkplus.c: Likewise.
950 * c-common.c: Likewise.
951 * c-cppbuiltin.c: Likewise.
952 * c-dump.c: Likewise.
953 * c-format.c: Likewise.
954 * c-gimplify.c: Likewise.
955 * c-indentation.c: Likewise.
956 * c-lex.c: Likewise.
957 * c-omp.c: Likewise.
958 * c-opts.c: Likewise.
959 * c-pch.c: Likewise.
960 * c-ppoutput.c: Likewise.
961 * c-pragma.c: Likewise.
962 * c-pretty-print.c: Likewise.
963 * c-semantics.c: Likewise.
964 * c-ubsan.c: Likewise.
965 * cilk.c: Likewise.
966 * stub-objc.c: Likewise.
967
a1b7fe4b 9682015-11-09 Thomas Schwinge <thomas@codesourcery.com>
969 Cesar Philippidis <cesar@codesourcery.com>
970 James Norris <jnorris@codesourcery.com>
971 Julian Brown <julian@codesourcery.com>
972 Nathan Sidwell <nathan@codesourcery.com>
973
974 * c-pragma.c (oacc_pragmas): Add "routine".
975 * c-pragma.h (pragma_kind): Add PRAGMA_OACC_ROUTINE.
976
292237f3 9772015-11-08 Eric Botcazou <ebotcazou@adacore.com>
978
979 * c-common.c (c_common_attributes): Add scalar_storage_order.
980 (handle_scalar_storage_order_attribute): New function.
981 * c-pragma.c (global_sso): New variable.
982 (maybe_apply_pragma_scalar_storage_order): New function.
983 (handle_pragma_scalar_storage_order): Likewise.
984 (init_pragma): Register scalar_storage_order.
985 * c-pragma.h (maybe_apply_pragma_scalar_storage_order): Declare.
986 * c.opt (Wscalar-storage-order): New warning.
987 (fsso-struct=): New option.
988
b4a4c5fa 9892015-11-08 Martin Sebor <msebor@redhat.com>
990
991 * c.opt (Wplacement-new): Add a period to the end of a sentence.
992
ac677063 9932015-11-07 Richard Sandiford <richard.sandiford@arm.com>
994
995 * c-common.c: Don't undef DEF_BUILTIN.
996
f0479000 9972015-11-06 David Malcolm <dmalcolm@redhat.com>
998
999 * c-common.c (c_cpp_error): Convert parameter from location_t to
1000 rich_location *. Eliminate the "column_override" parameter and
1001 the call to diagnostic_override_column.
1002 Update the "done_lexing" clause to set range 0
1003 on the rich_location, rather than overwriting a location_t.
1004 * c-common.h (c_cpp_error): Convert parameter from location_t to
1005 rich_location *. Eliminate the "column_override" parameter.
1006
ef014f95 10072015-11-05 Cesar Philippidis <cesar@codesourcery.com>
1008 Thomas Schwinge <thomas@codesourcery.com>
1009 James Norris <jnorris@codesourcery.com>
1010
1011 * c-omp.c (c_oacc_split_loop_clauses): Make TILE, GANG, WORKER, VECTOR,
1012 AUTO, SEQ, INDEPENDENT and PRIVATE loop clauses. Associate REDUCTION
1013 clauses with parallel and kernels and loops.
1014 * c-pragma.h (enum pragma_omp_clause): Add entries for
1015 PRAGMA_OACC_CLAUSE_{INDEPENDENT,TILE,DEFAULT}.
1016 * pt.c (tsubst_omp_clauses): Add support for OMP_CLAUSE_{NUM_GANGS,
1017 NUM_WORKERS,VECTOR_LENGTH,GANG,WORKER,VECTOR,ASYNC,WAIT,TILE,AUTO,
1018 INDEPENDENT,SEQ}.
1019 (tsubst_expr): Add support for OMP_CLAUSE_{KERNELS,PARALLEL,LOOP}.
1020
e520488c 10212015-11-05 Martin Sebor <msebor@redhat.com>
1022
1023 PR c++/67942
1024 * c.opt (-Wplacement-new): New option.
1025
9561765e 10262015-11-05 Jakub Jelinek <jakub@redhat.com>
1027
1028 * c-common.h (c_finish_omp_atomic): Add TEST argument.
1029 (c_omp_check_loop_iv, c_omp_check_loop_iv_exprs): New prototypes.
1030 * c-omp.c (c_finish_omp_atomic): Add TEST argument. Don't call
1031 save_expr or create_tmp_var* if TEST is true.
1032 (c_finish_omp_for): Store OMP_FOR_ORIG_DECLS always.
1033 Don't call add_stmt here.
1034 (struct c_omp_check_loop_iv_data): New type.
1035 (c_omp_check_loop_iv_r, c_omp_check_loop_iv,
1036 c_omp_check_loop_iv_exprs): New functions.
1037 (c_omp_split_clauses): Adjust for lastprivate being allowed on
1038 distribute.
1039 (c_omp_declare_simd_clauses_to_numbers): Change
1040 OMP_CLAUSE_LINEAR_VARIABLE_STRIDE OMP_CLAUSE_LINEAR_STEP into numbers.
1041 (c_omp_declare_simd_clauses_to_decls): Similarly change those
1042 from numbers to PARM_DECLs.
1043
5e8689fb 10442015-11-04 Mikhail Maltsev <maltsevm@gmail.com>
1045
1046 * c-omp.c (c_omp_split_clauses): Remove conditional compilation. Use
1047 flag_checking.
1048
aeaccb75 10492015-11-03 Bernd Schmidt <bschmidt@redhat.com>
1050
1051 PR c++-common/67882
32d050b5 1052 * c-common.h (fold_offsetof_1): Add argument.
1053 * c-common.c (fold_offsetof_1): Diagnose more invalid
aeaccb75 1054 offsetof expressions that reference elements past the end of
1055 an array.
1056
9e10bfb7 10572015-11-03 Thomas Schwinge <thomas@codesourcery.com>
1058 Chung-Lin Tang <cltang@codesourcery.com>
1059
1060 * c-pragma.c (oacc_pragmas): Add "atomic".
1061 * c-pragma.h (pragma_kind): Add PRAGMA_OACC_ATOMIC.
1062
ab50af2a 10632015-10-30 Evgeny Stupachenko <evstupac@gmail.com>
1064
1065 * c-common.c (handle_target_clones_attribute): New.
1066 (c_common_attribute_table): Add handle_target_clones_attribute.
1067 (handle_always_inline_attribute): Add check on target_clones attribute.
1068 (handle_target_attribute): Ditto.
1069
4cba6f60 10702015-10-29 Andrew MacLeod <amacleod@redhat.com>
1071
1072 * array-notation-common.c: Reorder #include's and remove duplicates.
1073 * c-ada-spec.c: Likewise.
1074 * c-cilkplus.c: Likewise.
1075 * c-common.c: Likewise.
1076 * c-cppbuiltin.c: Likewise.
1077 * c-dump.c: Likewise.
1078 * c-format.c: Likewise.
1079 * c-gimplify.c: Likewise.
1080 * c-indentation.c: Likewise.
1081 * c-lex.c: Likewise.
1082 * c-omp.c: Likewise.
1083 * c-opts.c: Likewise.
1084 * c-pch.c: Likewise.
1085 * c-ppoutput.c: Likewise.
1086 * c-pragma.c: Likewise.
1087 * c-pretty-print.c: Likewise.
1088 * c-semantics.c: Likewise.
1089 * c-ubsan.c: Likewise.
1090 * cilk.c: Likewise.
1091 * stub-objc.c: Likewise.
1092
f576a2e4 10932015-10-28 Jason Merrill <jason@redhat.com>
1094
1095 * c-common.c (pointer_int_sum): Fold the MULT_EXPR.
1096
2c4c8725 10972015-10-27 Thomas Schwinge <thomas@codesourcery.com>
1098 James Norris <jnorris@codesourcery.com>
1099 Cesar Philippidis <cesar@codesourcery.com>
1100
1101 PR c/64765
1102 PR c/64880
1103 * c-common.h (c_oacc_split_loop_clauses): Declare function.
1104 * c-omp.c (c_oacc_split_loop_clauses): New function.
1105
8204c077 11062015-10-21 Martin Sebor <msebor@redhat.com>
1107
1108 PR driver/68043
1109 * c.opt: End each sentence that describes an option with a period.
1110
8523243e 11112015-10-20 Marek Polacek <polacek@redhat.com>
1112
1113 * array-notation-common.c (is_cilkplus_vector_p): Define.
1114 * c-common.h (is_cilkplus_vector_p): Declare.
1115
08881cb8 11162015-10-20 Marek Polacek <polacek@redhat.com>
1117
1118 * c.opt (std=gnu++11): Do not describe as experimental.
1119 (std=gnu++14): Likewise.
1120
a36e5e5e 11212015-10-19 Jason Merrill <jason@redhat.com>
1122
1123 * c-cppbuiltin.c (c_cpp_builtins): Define
1124 __cpp_nontype_template_args.
1125
a349de0a 11262015-10-19 Jason Merrill <jason@redhat.com>
1127
1128 * c-cppbuiltin.c (c_cpp_builtins): Define
1129 __cpp_enumerator_attributes, __cpp_fold_expressions,
1130 __cpp_unicode_characters.
1131
43895be5 11322015-10-13 Jakub Jelinek <jakub@redhat.com>
1133 Aldy Hernandez <aldyh@redhat.com>
1134
1135 * c-common.c (enum c_builtin_type): Define DEF_FUNCTION_TYPE_9,
1136 DEF_FUNCTION_TYPE_10 and DEF_FUNCTION_TYPE_11.
1137 (c_define_builtins): Likewise.
1138 * c-common.h (enum c_omp_clause_split): Add
1139 C_OMP_CLAUSE_SPLIT_TASKLOOP.
1140 (c_finish_omp_critical, c_finish_omp_ordered): Add CLAUSES argument.
1141 (c_finish_omp_for): Add ORIG_DECLV argument.
1142 * c-cppbuiltin.c (c_cpp_builtins): Predefine _OPENMP as
1143 201511 instead of 201307.
1144 * c-omp.c (c_finish_omp_critical): Add CLAUSES argument, set
1145 OMP_CRITICAL_CLAUSES to it.
1146 (c_finish_omp_ordered): Add CLAUSES argument, set
1147 OMP_ORDERED_CLAUSES to it.
1148 (c_finish_omp_for): Add ORIG_DECLV argument, set OMP_FOR_ORIG_DECLS
1149 to it if OMP_FOR. Clear DECL_INITIAL on the IVs.
1150 (c_omp_split_clauses): Handle OpenMP 4.5 combined/composite
1151 constructs and new OpenMP 4.5 clauses. Clear
1152 OMP_CLAUSE_SCHEDULE_SIMD if not combined with OMP_SIMD. Add
1153 verification code.
1154 * c-pragma.c (omp_pragmas_simd): Add taskloop.
1155 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKLOOP.
1156 (enum pragma_omp_clause): Add
1157 PRAGMA_OMP_CLAUSE_{DEFAULTMAP,GRAINSIZE,HINT,{IS,USE}_DEVICE_PTR}
1158 and PRAGMA_OMP_CLAUSE_{LINK,NOGROUP,NUM_TASKS,PRIORITY,SIMD,THREADS}.
1159
20cb53c9 11602015-10-05 Richard Sandiford <richard.sandiford@arm.com>
1161
1162 * c-lex.c (interpret_float): Use real_equal instead of
1163 REAL_VALUES_EQUAL.
1164
6d02e6b2 11652015-10-04 Jason Merrill <jason@redhat.com>
1166
1167 Implement N4514, C++ Extensions for Transactional Memory.
1168 * c-common.c (c_common_reswords): Add C++ TM TS keywords.
1169 (c_common_attribute_table): Add transaction_safe_dynamic.
1170 transaction_safe now affects type identity.
1171 (handle_tm_attribute): Handle transaction_safe_dynamic.
1172 * c-common.h (enum rid): Add RID_ATOMIC_NOEXCEPT,
1173 RID_ATOMIC_CANCEL, RID_SYNCHRONIZED.
1174 (OBJC_IS_CXX_KEYWORD): Add RID_SYNCHRONIZED.
1175 (D_TRANSMEM): New.
1176 * c-cppbuiltin.c (c_cpp_builtins): Define __cpp_transactional_memory.
1177 * c-pretty-print.c (pp_c_attributes_display): Don't print
1178 transaction_safe in C++.
1179
c0999a5d 11802015-10-02 Marek Polacek <polacek@redhat.com>
1181
1182 * c.opt (Wduplicated-cond): Don't enable by -Wall anymore.
1183
ef17a71a 11842015-10-02 Marek Polacek <polacek@redhat.com>
1185
1186 PR c/64249
1187 * c-common.c (warn_duplicated_cond_add_or_warn): New function.
1188 * c-common.h (warn_duplicated_cond_add_or_warn): Declare.
1189 * c.opt (Wduplicated-cond): New option.
1190
05b84e7b 11912015-10-01 Joseph Myers <joseph@codesourcery.com>
1192
1193 * c.opt (std=c11): Do not describe as experimental.
1194 (std=gnu11): Likewise.
1195 (std=iso9899:2011): Likewise.
1196
e561d5e1 11972015-09-28 Nathan Sidwell <nathan@codesourcery.com>
1198
1199 * c-common.c (DEF_FUNCTION_TYPE_VAR_6): New.
1200 (DEF_FUNCTION_TYPE_VAR_11): Delete.
1201
bd4b90d2 12022015-09-25 Marek Polacek <polacek@redhat.com>
1203
1204 * c-ubsan.c (ubsan_instrument_division): Remove unnecessary code.
1205 (ubsan_instrument_shift): Likewise.
1206
ac13b2b2 12072015-09-25 Marek Polacek <polacek@redhat.com>
1208
1209 PR sanitizer/64906
1210 * c-ubsan.c (ubsan_instrument_division): Also pre-evaluate OP1.
1211
a3c82f4c 12122015-09-24 Patrick Palka <ppalka@gcc.gnu.org>
1213
1214 * c-indentation.c (should_warn_for_misleading_indentation):
1215 Compare next_stmt_vis_column with guard_line_first_nws instead
1216 of with guard_line_vis_column.
1217
5eef101d 12182015-09-23 Manuel López-Ibáñez <manu@gcc.gnu.org>
1219
1220 PR c/49654
1221 PR c/49655
1222 * c-pragma.c (handle_pragma_diagnostic): Detect non-warning
1223 options and options not valid for the current language.
1224
60897493 12252015-09-22 Patrick Palka <ppalka@gcc.gnu.org>
1226
1227 * c-indentation.c (should_warn_for_misleading_indentation):
1228 Float out and consolidate the calls to get_visual_column that
1229 are passed guard_exploc as an argument. Compare
1230 next_stmt_vis_column with guard_line_first_nws instead of with
1231 body_line_first_nws.
1232
85c93154 12332015-09-22 Nathan Sidwell <nathan@codesourcery.com>
1234
1235 * c.opt (Wmultiple-inheritance, Wvirtual-inheritance, Wtemplates,
1236 Wnamespaces): New C++ warnings.
1237
229a58b1 12382015-09-22 Jason Merrill <jason@redhat.com>
1239
1240 * c-common.h (abi_compat_version_crosses): New.
1241 (warn_abi_version): Declare.
1242 * c-common.c: Define it.
1243 * c-opts.c (c_common_post_options): Handle it.
1244 flag_abi_compat_version defaults to 8.
1245
2d2de569 12462015-09-21 Ville Voutilainen <ville.voutilainen@gmail.com>
1247
1248 Complete the implementation of N4230, Nested namespace definition.
1249 * c-cppbuiltin.c: Add __cpp_namespace_attributes and
1250 __cpp_nested_namespace_definitions.
1251
2b897e68 12522015-09-18 Manuel López-Ibáñez <manu@gcc.gnu.org>
1253
1254 * c-pragma.c (handle_pragma_diagnostic): Fix wrong return.
1255
ed536208 12562015-09-18 Manuel López-Ibáñez <manu@gcc.gnu.org>
1257
1258 * c-pragma.c (handle_pragma_diagnostic): Use explicit location
1259 when warning.
1260 * c-pragma.h (pragma_lex): Add optional loc argument.
1261
1dc6c44d 12622015-09-16 Mikhail Maltsev <maltsevm@gmail.com>
1263
1264 * c-format.c (check_format_arg): Adjust to use common block size in all
1265 object pools.
1266
be812248 12672015-09-15 David Malcolm <dmalcolm@redhat.com>
1268
1269 * c-format.c (location_from_offset): Update for change in
1270 signature of location_get_source_line.
1271 * c-indentation.c (get_visual_column): Likewise.
1272 (line_contains_hash_if): Likewise.
1273
e4cc057f 12742015-09-14 Marek Polacek <polacek@redhat.com>
1275
1276 * c-opts.c (c_common_post_options): Set C++ standard earlier, before
1277 setting various warnings.
1278
85f5e2ee 12792015-09-14 Marek Polacek <polacek@redhat.com>
1280
1281 * c-common.c (warn_for_sign_compare): Cast to unsigned when shifting
1282 a negative value.
1283
1bca8cbd 12842015-09-11 Mark Wielaard <mjw@redhat.com>
1285
1286 PR c/28901
1287 * c.opt (Wunused-variable): Option from common.opt.
1288 (Wunused-const-variable): New option.
1289
ee48893a 12902015-09-09 Paolo Carlini <paolo.carlini@oracle.com>
1291
1292 PR c++/53184
1293 * c.opt ([Wsubobject-linkage]): Add.
1294
547c6b1f 12952015-09-03 Martin Sebor <msebor@redhat.com>
1296
1297 PR c/66516
1298 * c-common.h (c_decl_implicit, reject_gcc_builtin): Declare new
1299 functions.
1300 * c-common.c (reject_gcc_builtin): Define.
1301
7e976b10 13022015-09-02 Balaji V. Iyer <balaji.v.iyer@intel.com>
1303
1304 PR middle-end/60586
1305 * c-common.h (cilk_gimplify_call_params_in_spawned_fn): New
1306 prototype.
1307 * c-gimplify.c (c_gimplify_expr): Added a call to the function
1308 cilk_gimplify_call_params_in_spawned_fn.
1309 * cilk.c (cilk_gimplify_call_params_in_spawned_fn): New function.
1310 (gimplify_cilk_spawn): Removed EXPR_STMT and CLEANUP_POINT_EXPR
1311 unwrapping.
1312
9e6bcade 13132015-08-25 Marek Polacek <polacek@redhat.com>
1314
1315 PR middle-end/67330
1316 * c-common.c (handle_weak_attribute): Don't check whether the
1317 visibility can be changed here.
1318
af9de21d 13192015-08-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
1320
1321 * c-lex.c (c_lex_with_flags): Use explicit locations.
1322
6dc50383 13232015-08-18 Trevor Saunders <tbsaunde@tbsaunde.org>
1324
1325 * c-ada-spec.h, c-common.c, c-common.h, c-format.c, c-format.h,
1326 c-objc.h, c-ppoutput.c, c-pragma.c, c-pragma.h: Remove useless
1327
10902624 13282015-08-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1329
1330 PR middle-end/36757
1331 * c-common.c (check_builtin_function_arguments): Add check
1332 for BUILT_IN_SIGNBIT argument.
1333
a03a71ab 13342015-08-18 Paolo Carlini <paolo.carlini@oracle.com>
1335
1336 PR c++/67160
1337 * c-cppbuiltin.c (c_cpp_builtins): Fix __cpp_static_assert value
1338 in c++1z mode.
1339
22723c26 13402015-08-17 Marek Polacek <polacek@redhat.com>
1341
1342 * c-pretty-print.c (pp_c_cv_qualifiers): Remove code dealing
1343 with whitespaces before qualifier names.
1344
f4809955 13452015-08-12 Marek Polacek <polacek@redhat.com>
1346
1347 PR c++/55095
1348 * c-common.c (maybe_warn_shift_overflow): Properly handle
1349 left-shifting 1 into the sign bit.
1350
5463f502 13512015-08-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
1352
1353 * c.opt (Wchkp): Use LangEnabledBy instead of EnabledBy.
1354
56c12fd4 13552015-08-06 Andrew Sutton <andrew.n.sutton@gmail.com>
1356 Braden Obrzut <admin@maniacsvault.net>
1357 Jason Merrill <jason@redhat.com>
1358
1359 Add C++ Concepts TS support.
1360 * c-common.c (c_common_reswords): Add __is_same_as, concept, requires.
1361 * c-common.h (enum rid): Add RID_IS_SAME_AS, RID_CONCEPT, RID_REQUIRES.
1362 (D_CXX_CONCEPTS, D_CXX_CONCEPTS_FLAGS): New.
1363 * c-cppbuiltin.c (c_cpp_builtins): Define __cpp_concepts.
1364 * c-opts.c (set_std_cxx1z): Set flag_concepts.
1365 * c.opt (fconcepts): New.
1366
32d050b5 13672015-08-02 Martin Sebor <msebor@redhat.com>
1368
1369 * c.opt (-Wframe-address): New warning option.
1370
17afcef6 13712015-08-02 Patrick Palka <ppalka@gcc.gnu.org>
1372
1373 * c-indentation.c (should_warn_for_misleading_indentation):
1374 Improve heuristics.
1375
f95bfdd4 13762015-08-02 Patrick Palka <ppalka@gcc.gnu.org>
1377
1378 * c-indentation.c (get_visual_column): Add parameter first_nws,
1379 use it. Update comment documenting the function.
1380 (is_first_nonwhitespace_on_line): Remove.
1381 (should_warn_for_misleading_indentation): Replace usage of
1382 of is_first_nonwhitespace_on_line with get_visual_column.
1383
9255be07 13842015-08-02 Patrick Palka <ppalka@gcc.gnu.org>
1385
1386 * c-indentation.h (struct token_indent_info): Define.
1387 (get_token_indent_info): Define.
1388 (warn_for_misleading_information): Declare.
1389 * c-common.h (warn_for_misleading_information): Remove.
1390 * c-identation.c (warn_for_misleading_indentation):
1391 Change declaration to take three token_indent_infos. Adjust
1392 accordingly.
1393 * c-identation.c (should_warn_for_misleading_indentation):
1394 Likewise. Bail out early if the body is a compound statement.
1395 (guard_tinfo_to_string): Define.
1396
e880695c 13972015-07-30 Jason Merrill <jason@redhat.com>
1398
1399 * c-pretty-print.c (unary_expression) [INDIRECT_REF]: Don't print
1400 '*' for reference decay.
1401
f58dd84b 14022015-07-30 Marek Polacek <polacek@redhat.com>
1403
1404 * c-common.c (warn_tautological_cmp): Bail for float types.
1405
d9e4fe27 14062015-07-27 Marek Polacek <polacek@redhat.com>
1407
1408 PR bootstrap/67030
1409 * c-common.c (warn_tautological_cmp): Don't warn for macro expansion.
1410
6784a472 14112015-07-27 Marek Polacek <polacek@redhat.com>
1412
1413 PR c++/66555
1414 PR c/54979
1415 * c-common.c (find_array_ref_with_const_idx_r): New function.
1416 (warn_tautological_cmp): New function.
1417 * c-common.h (warn_tautological_cmp): Declare.
1418 * c.opt (Wtautological-compare): New option.
1419
08034975 14202015-07-23 Marek Polacek <polacek@redhat.com>
1421
1422 * c-ubsan.c (ubsan_instrument_division): Use unshare_expr throughout.
1423 (ubsan_instrument_shift): Likewise.
1424
f6f5e49b 14252015-07-23 Marek Polacek <polacek@redhat.com>
1426
1427 PR sanitizer/66908
1428 * c-ubsan.c: Include gimplify.h.
1429 (ubsan_instrument_division): Unshare OP0 and OP1.
1430 (ubsan_instrument_shift): Likewise.
1431
8d669e79 14322015-07-20 Marek Polacek <polacek@redhat.com>
1433 Richard Sandiford <richard.sandiford@arm.com>
1434
1435 PR c++/55095
1436 * c-common.c (c_fully_fold_internal): Warn about left shift overflows.
1437 Use EXPR_LOC_OR_LOC.
1438 (maybe_warn_shift_overflow): New function.
1439 * c-common.h (maybe_warn_shift_overflow): Declare.
1440 * c-opts.c (c_common_post_options): Set warn_shift_overflow.
1441 * c.opt (Wshift-overflow): New option.
1442
e16712b1 14432015-07-16 Martin Liska <mliska@suse.cz>
1444
1445 * c-format.c (static void check_format_info_main): Use
1446 object_allocator instead of pool_allocator.
1447 (check_format_arg): Likewise.
1448 (check_format_info_main): Likewise.
1449
e51764ad 14502015-07-15 Andrew MacLeod <amacleod@redhat.com>
1451
1452 * c-opts.c: Remove multiline #include comment.
1453
47ae02b7 14542015-07-12 Aldy Hernandez <aldyh@redhat.com>
1455
1456 * c-common.c: Fix double word typos.
1457
ed2b2eb2 14582015-07-10 Eric Botcazou <ebotcazou@adacore.com>
1459
1460 * c-ada-spec.h (cpp_operation): Revert latest change.
1461 * c-ada-spec.c (print_ada_declaration): Likewise. Skip implicit
1462 constructors and destructors.
1463
1eacc14a 14642015-07-09 Andrew MacLeod <amacleod@redhat.com>
1465
1466 * c-common.h: Adjust includes for flags.h changes.
1467 * stub-objc.c: Likewise.
47ae02b7 1468
0124237f 14692015-07-08 Eric Botcazou <ebotcazou@adacore.com>
1470
1471 * c-ada-spec.h (cpp_operation): Add IS_CONSTEXPR.
1472 * c-ada-spec.c (print_ada_declaration): Skip constexpr constructors.
1473
386ef929 14742015-07-08 Jakub Jelinek <jakub@redhat.com>
1475
1476 * c-omp.c (c_omp_declare_simd_clauses_to_numbers): If all clauses
1477 are to be removed, return NULL rather than original clauses list.
1478
9ef16211 14792015-07-07 Andrew MacLeod <amacleod@redhat.com>
1480
1481 * array-notation-common.c: Adjust includes.
1482 * c-ada-spec.c: Likewise.
1483 * c-cilkplus.c: Likewise.
1484 * c-common.h: Likewise.
1485 * c-cppbuiltin.c: Likewise.
1486 * c-dump.c: Likewise.
1487 * c-format.c: Likewise.
1488 * c-gimplify.c: Likewise.
1489 * c-indentation.c: Likewise.
1490 * c-lex.c: Likewise.
1491 * c-omp.c: Likewise.
1492 * c-opts.c: Likewise.
1493 * c-pch.c: Likewise.
1494 * c-ppoutput.c: Likewise.
1495 * c-pragma.c: Likewise.
1496 * c-pretty-print.c: Likewise.
1497 * c-semantics.c: Likewise.
1498 * c-ubsan.c: Likewise.
1499 * cilk.c: Likewise.
1500 * stub-objc.c: Likewise.
1501
67ede3e4 15022015-07-07 Eric Botcazou <ebotcazou@adacore.com>
1503
1504 * c-ada-spec.h (cpp_operation): Add IS_MOVE_CONSTRUCTOR.
1505 * c-ada-spec.c (print_ada_declaration): Skip move constructors.
1506
42af8c2a 15072015-07-01 Jason Merrill <jason@redhat.com>
1508
fa769cc5 1509 * c-common.h (D_CXX11): Rename from D_CXX0X.
1510 (RID_FIRST_CXX11, RID_LAST_CXX11): Rename from *_CXX0X.
1511 * c-common.c: Adjust.
1512
97e9c847 1513 * c-opts.c (c_common_post_options): Default to C++14.
1514
42af8c2a 1515 * c-opts.c (c_common_post_options): Highest ABI level is now 10.
1516
30b1ba42 15172015-06-30 Edward Smith-Rowland <3dw4rd@verizon.net>
1518
1519 Implement N4197 - Adding u8 character literals
32d050b5 1520 * c-ada-spec.c (print_ada_macros): Treat CPP_UTF8CHAR like
95858835 1521 CPP_CHAR.
32d050b5 1522 * c-common.c (c_parse_error): Print CPP_UTF8CHAR and
95858835 1523 CPP_UTF8CHAR_USERDEF tokens.
32d050b5 1524 * c-lex.c (c_lex_with_flags): Treat CPP_UTF8CHAR_USERDEF
95858835 1525 and CPP_UTF8CHAR tokens.
1526 (lex_charconst): Treat CPP_UTF8CHAR token.
30b1ba42 1527
0949f227 15282015-06-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
1529
1530 PR fortran/66605
1531 * c-common.c (do_warn_unused_parameter): Move here.
1532 * c-common.h (do_warn_unused_parameter): Declare.
1533
be23b16f 15342015-06-29 Marek Polacek <polacek@redhat.com>
1535
1536 PR c/66322
1537 * c-common.c (check_case_bounds): Add bool * parameter. Set
1538 OUTSIDE_RANGE_P.
1539 (c_add_case_label): Add bool * parameter. Pass it down to
1540 check_case_bounds.
1541 (c_do_switch_warnings): Add bool parameters. Implement -Wswitch-bool
1542 warning here.
1543 * c-common.h (c_add_case_label, c_do_switch_warnings): Update
1544 declarations.
1545
6290f0db 15462015-06-27 Marek Polacek <polacek@redhat.com>
1547
1548 * c-common.c (check_main_parameter_types): Use VECTOR_TYPE_P
1549 or VECTOR_INTEGER_TYPE_P throughout.
1550 * c-gimplify.c: Likewise.
1551
aa3e402e 15522015-06-26 Marek Polacek <polacek@redhat.com>
1553
1554 * array-notation-common.c (find_rank): Use INDIRECT_REF_P.
1555 * c-common.c (c_fully_fold_internal): Likewise.
1556 (c_alignof_expr): Likewise.
1557 * c-pretty-print.c (c_pretty_printer::postfix_expression): Likewise.
1558 * c-ubsan.c (ubsan_instrument_bounds): Likewise.
8204c077 1559 * cilk.c (create_parm_list): Likewise.
aa3e402e 1560
4e81b384 15612015-06-26 Marek Polacek <polacek@redhat.com>
1562
1563 * c-common.c (handle_unused_attribute): Use VAR_OR_FUNCTION_DECL_P.
1564
ec2e0095 15652015-06-25 Andrew MacLeod <amacleod@redhat.com>
1566
1567 * c-common.c: Remove ipa-ref.h and plugin-api.h from include list.
1568 * c-gimplify.c: Likewise.
1569 * c-pragma.c: Likewise.
1570 * c-ubsan.c: Likewise.
1571 * cilk.c: Likewise.
1572
b594087e 15732015-06-25 Richard Sandiford <richard.sandiford@arm.com>
1574
1575 * c-common.c (c_type_hasher): Inherit from ggc_ptr_hash rather than
1576 ggc_hasher.
1577
a3c76fda 15782015-06-25 Andrew MacLeod <amacleod@redhat.com>
1579
1580 * cilk.c: Move calls.h after tm.h in the include chain.
1581
f48c7f4a 15822015-06-25 Marek Polacek <polacek@redhat.com>
1583
1584 * array-notation-common.c: Use VAR_P throughout.
1585 * c-ada-spec.c: Likewise.
1586 * c-common.c: Likewise.
1587 * c-format.c: Likewise.
1588 * c-gimplify.c: Likewise.
1589 * c-omp.c: Likewise.
1590 * c-pragma.c: Likewise.
1591 * c-pretty-print.c: Likewise.
1592 * cilk.c: Likewise.
1593
ce41e81a 15942015-06-25 Marek Polacek <polacek@redhat.com>
1595
1596 * cilk.c (extract_free_variables): Use is_global_var.
1597
de231ec2 15982015-06-23 Richard Sandiford <richard.sandiford@arm.com>
1599
1600 * c-common.c: Don't include target-def.h.
1601
0200602e 16022015-06-23 Marek Polacek <polacek@redhat.com>
1603
1604 * c-common.c (warn_logical_operator): Use tree_int_cst_equal
1605 when comparing INTEGER_CSTs.
1606
99838ed7 16072015-06-22 Pierre-Marie de Rodat <derodat@adacore.com>
1608
1609 * c-ada-spec.h (cpp_operation): Add HAS_DEPENDENT_TEMPLATE_ARGS.
1610 * c-ada-spec.c (collect_ada_nodes): Skip NAMESPACE_DECL
1611 (dump_ada_template): Skip partially specialized types.
1612
a4f59596 16132015-06-22 Mikhail Maltsev <maltsevm@gmail.com>
1614
1615 * c-common.c (scalar_to_vector): Use std::swap instead of manually
1616 swapping.
1617
f2ab3bac 16182015-06-17 Andrew MacLeod <amacleod@redhat.com>
1619
1620 * array-notation-common.c: Do not include input.h, line-map.h or is-a.h.
1621 * c-ada-spec.c: Likewise.
1622 * c-cilkplus.c: Likewise.
1623 * c-common.c: Likewise.
1624 * c-common.h: Likewise.
1625 * c-cppbuiltin.c: Likewise.
1626 * c-dump.c: Likewise.
1627 * c-format.c: Likewise.
1628 * c-gimplify.c: Likewise.
1629 * c-indentation.c: Likewise.
1630 * c-lex.c: Likewise.
1631 * c-omp.c: Likewise.
1632 * c-opts.c: Likewise.
1633 * c-pch.c: Likewise.
1634 * c-ppoutput.c: Likewise.
1635 * c-pragma.c: Likewise.
1636 * c-pretty-print.c: Likewise.
1637 * c-semantics.c: Likewise.
1638 * c-ubsan.c: Likewise.
1639 * cilk.c: Likewise.
1640 * stub-objc.c: Likewise.
1641
db3d1ffc 16422015-06-13 Patrick Palka <ppalka@gcc.gnu.org>
1643
1644 PR c++/65168
1645 * c-common.c (c_common_truthvalue_conversion): Warn when
1646 converting an address of a reference to a truth value.
1647
64486212 16482015-06-08 Andrew MacLeod <amacleod@redhat.com>
1649
1650 * array-notation-common.c : Adjust include files.
1651 * c-ada-spec.c : Likewise.
1652 * c-cilkplus.c : Likewise.
1653 * c-common.c : Likewise.
1654 * c-common.h : Likewise.
1655 * c-cppbuiltin.c : Likewise.
1656 * c-dump.c : Likewise.
1657 * c-format.c : Likewise.
1658 * c-gimplify.c : Likewise.
1659 * c-indentation.c : Likewise.
1660 * c-lex.c : Likewise.
1661 * c-omp.c : Likewise.
1662 * c-opts.c : Likewise.
1663 * c-pch.c : Likewise.
1664 * c-ppoutput.c : Likewise.
1665 * c-pragma.c : Likewise.
1666 * c-pretty-print.c : Likewise.
1667 * c-semantics.c : Likewise.
1668 * c-ubsan.c : Likewise.
1669 * cilk.c : Likewise.
1670 * stub-objc.c : Likewise.
1671
6e84ccad 16722015-06-08 Marek Polacek <polacek@redhat.com>
1673
1674 PR c/66415
1675 * c-format.c (location_from_offset): Return LOC if LINE is null.
1676
3a1c9df2 16772015-06-05 Aldy Hernandez <aldyh@redhat.com>
1678
1679 * c-common.h (c_parse_final_cleanups): New prototype.
1680 * c-opts.c (c_common_parse_file): Call c_parse_final_cleanups.
1681
32d050b5 16822015-06-04 Sriraman Tallam <tmsriram@google.com>
1683
1684 * c-common.c (noplt): New attribute.
1685 (handle_noplt_attribute): New handler.
1686
f77c0292 16872015-06-04 Andrew MacLeod <amacleod@redhat.com>
1688
1689 * array-notation-common.c: Adjust includes for restructured coretypes.h.
1690 * c-ada-spec.c: Likewise.
1691 * c-cilkplus.c: Likewise.
1692 * c-common.c: Likewise.
1693 * c-common.h: Likewise.
1694 * c-cppbuiltin.c: Likewise.
1695 * c-dump.c: Likewise.
1696 * c-format.c: Likewise.
1697 * c-gimplify.c: Likewise.
1698 * c-indentation.c: Likewise.
1699 * c-lex.c: Likewise.
1700 * c-omp.c: Likewise.
1701 * c-opts.c: Likewise.
1702 * c-pch.c: Likewise.
1703 * c-ppoutput.c: Likewise.
1704 * c-pragma.c: Likewise.
1705 * c-pretty-print.c: Likewise.
1706 * c-semantics.c: Likewise.
1707 * c-ubsan.c: Likewise.
1708 * cilk.c: Likewise.
1709 * stub-objc.c: Likewise.
1710
7c62dfbb 17112015-06-02 David Malcolm <dmalcolm@redhat.com>
1712
1713 PR c/66220:
1714 * c-indentation.c (should_warn_for_misleading_indentation): Use
1715 expand_location rather than expand_location_to_spelling_point.
1716 Don't warn if the guarding statement is more indented than the
1717 next/body stmts.
1718
9af7c176 17192015-06-02 David Malcolm <dmalcolm@redhat.com>
1720
1721 * c-indentation.c (warn_for_misleading_indentation): Bail out
1722 immediately if -Wmisleading-indentation isn't enabled.
1723
eebcf436 17242015-06-01 Martin Liska <mliska@suse.cz>
1725
1726 * c-format.c (check_format_arg):Use new type-based pool allocator.
1727 (check_format_info_main) Likewise.
1728
b0a23e2f 17292015-05-31 Eric Botcazou <ebotcazou@adacore.com>
1730
1731 * c-ada-spec.c (is_tagged_type): Test for TYPE_METHODS on main variant.
1732 (has_nontrivial_methods): Likewise.
1733
63dc1330 17342015-05-25 Marek Polacek <polacek@redhat.com>
1735
1736 * c-ubsan.c (ubsan_instrument_shift): Use type0.
1737
5a4c69dd 17382015-05-22 Marek Polacek <polacek@redhat.com>
1739
1740 PR c/47043
1741 * c-common.c (handle_deprecated_attribute): Allow CONST_DECL.
1742
044580bb 17432015-05-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
3764c94e 1744
1745 * c-cppbuiltin.c (c_cpp_builtins): Use if instead of #if with
1746 STACK_GROWS_DOWNWARD.
1747
044580bb 17482015-05-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
2b785411 1749
1750 * c-cppbuiltin.c (c_cpp_builtins): Check the value of
1751 STACK_GROWS_DOWNWARD rather than if it is defined.
1752
d5a2ddc7 17532015-05-21 Manuel López-Ibáñez <manu@gcc.gnu.org>
8204c077 1754
d5a2ddc7 1755 PR c/52952
1756 * c-format.c (location_column_from_byte_offset): New.
1757 (location_from_offset): New.
1758 (struct format_wanted_type): Add offset_loc field.
1759 (check_format_info): Move handling of location for extra arguments
1760 closer to the point of warning.
1761 (check_format_info_main): Pass the result of location_from_offset
1762 to warning_at.
1763 (format_type_warning): Pass the result of location_from_offset
1764 to warning_at.
1765
72f8014e 17662015-05-20 Marek Polacek <polacek@redhat.com>
1767
1768 * c-omp.c (check_omp_for_incr_expr): Use BINARY_CLASS_P.
1769
74efe522 17702015-05-20 Marek Polacek <polacek@redhat.com>
1771
1772 * c-ada-spec.c (dump_sloc): Use DECL_P.
1773
b443c459 17742015-05-20 Marek Polacek <polacek@redhat.com>
1775
1776 * c-pragma.c: Use VAR_OR_FUNCTION_DECL_P throughout.
1777 * c-common.c: Likewise.
1778
551e34da 17792015-05-19 David Malcolm <dmalcolm@redhat.com>
1780
1781 * c-common.h (fe_file_change): Strengthen param from
1782 const line_map * to const line_map_ordinary *.
1783 (pp_file_change): Likewise.
1784 * c-lex.c (fe_file_change): Likewise.
1785 (cb_define): Use linemap_check_ordinary when invoking
1786 SOURCE_LINE.
1787 (cb_undef): Likewise.
1788 * c-opts.c (c_finish_options): Use linemap_check_ordinary when
1789 invoking cb_file_change.
1790 (c_finish_options): Likewise.
1791 (push_command_line_include): Likewise.
1792 (cb_file_change): Strengthen param "new_map" from
1793 const line_map * to const line_map_ordinary *.
1794 * c-ppoutput.c (cb_define): Likewise for local "map".
1795 (pp_file_change): Likewise for param "map" and local "from".
1796
dfcf26a5 17972015-05-19 Mikhail Maltsev <maltsevm@gmail.com>
1798
1799 * c-common.c (shorten_compare): Use std::swap instead of explicit swaps.
1800
2e474820 18012015-05-18 Tom de Vries <tom@codesourcery.com>
1802
1803 * c-common.c (build_va_arg_1): New function.
1804 (build_va_arg): Add address operator to va_list operand if necessary.
1805
e53013a8 18062015-05-15 Mikhail Maltsev <maltsevm@gmail.com>
1807
1808 PR c/48956
1809 * c-common.c (int_safely_convertible_to_real_p): Define.
1810 (unsafe_conversion_p): Check conversions involving complex types.
1811 (conversion_warning): Add new warning message for conversions which
1812 discard imaginary component.
1813 * c-common.h: (enum conversion_safety): Add new enumerator for such
1814 conversions.
1815
aac24642 18162015-05-14 Marek Polacek <polacek@redhat.com>
1817
1818 PR c/66066
1819 PR c/66127
1820 * c-common.c (c_fully_fold): Pass false down to c_fully_fold_internal.
1821 (c_fully_fold_internal): Fold C_MAYBE_CONST_EXPRs with
1822 C_MAYBE_CONST_EXPR_INT_OPERANDS set. Add FOR_INT_CONST argument and
1823 use it. If FOR_INT_CONST, require that all evaluated operands be
1824 INTEGER_CSTs.
1825
e5f01cba 18262015-05-12 David Malcolm <dmalcolm@redhat.com>
1827
1828 * c-common.h (warn_for_misleading_indentation): New prototype.
1829 * c-indentation.c: New file.
1830 * c.opt (Wmisleading-indentation): New option.
1831
c37be9ec 18322015-05-12 Tom de Vries <tom@codesourcery.com>
1833
1834 PR tree-optimization/66010
1835 * c-common.c (build_va_arg): Don't mark ap addressable unless necessary.
1836
7290114b 18372015-05-09 Jason Merrill <jason@redhat.com>
1838
3c665566 1839 * c-opts.c (c_common_post_options): Also clear
1840 cpp_opts->cpp_warn_cxx11_compat.
1841
d875b9d2 1842 * c-common.h (enum cxx_dialect): Add cxx_unset.
1843 * c-common.c (cxx_dialect): Initialize to cxx_unset.
1844 * c-opts.c (c_common_post_options): Set C++ dialect to C++98 if unset.
1845
7290114b 1846 * c.opt (std=c++14): Remove Undocumented flag and experimental warning.
1847 (std=gnu++0x): Mark as Undocumented.
1848 (std=gnu++1y): Add deprecated message.
1849
1b03cc89 18502015-05-08 Jason Merrill <jason@redhat.com>
1851
1c5f7aba 1852 * c.opt (Wc++11-compat): Make primary. Rename var warn_cxx11_compat.
1853 * c-opts.c: Adjust.
1854
1b03cc89 1855 * c.opt (Wc++0x-compat): Also set cpp_warn_cxx11_compat.
1856
dc5945dc 18572015-05-08 Marek Polacek <polacek@redhat.com>
1858
1859 PR c/64918
1860 * c.opt (Woverride-init-side-effects): New option.
1861
cdc64059 18622015-05-07 Marek Polacek <polacek@redhat.com>
1863
1864 PR c/65179
1865 * c-common.c (c_fully_fold_internal): Warn when left shifting a
1866 negative value.
1867 * c.opt (Wshift-negative-value): New option.
1868 * c-opts.c (c_common_post_options): Set warn_shift_negative_value
1869 when -Wextra and C99/C++11 mode.
1870
8cafe283 18712015-05-07 Marek Polacek <polacek@redhat.com>
1872 Martin Uecker <uecker@eecs.berkeley.edu>
1873
1874 * c-ubsan.c (ubsan_instrument_bounds): Don't skip instrumenting
1875 flexible member array-like members if SANITIZE_BOUNDS_STRICT.
1876
cb40a6f7 18772015-05-05 Jason Merrill <jason@redhat.com>
1878
1879 * c.opt (Wterminate): New.
1880
14744a16 18812015-04-30 Marek Polacek <polacek@redhat.com>
1882
1883 * c-common.c (maybe_warn_bool_compare): When comparing with 0/1,
1884 require that the non-constant be of a boolean type.
1885
9866562d 18862015-04-29 Josh Triplett <josh@joshtriplett.org>
1887
8cafe283 1888 * c-common.c (handle_section_attribute): Refactor to reduce
1889 nesting and distinguish between error cases.
9866562d 1890
a720ab1c 18912015-04-29 Marek Polacek <polacek@redhat.com>
1892
1893 PR c/64610
1894 * c-common.c (maybe_warn_bool_compare): Warn when comparing a boolean
1895 with 0/1.
1896
8c072e52 18972015-04-29 Jakub Jelinek <jakub@redhat.com>
1898
1899 * c-common.h (omp_clause_mask): Unconditionally define as a class.
1900 Use uint64_t instead of unsigned HOST_WIDE_INT and 64 instead of
1901 HOST_BITS_PER_WIDE_INT.
1902
f7fec1c7 19032015-04-28 Tom de Vries <tom@codesourcery.com>
1904
1905 PR tree-optimization/65887
1906 * c-common.c (build_va_arg): Mark va_arg ap argument as addressable.
1907
483b3d26 19082015-04-28 Eric Botcazou <ebotcazou@adacore.com>
8cafe283 1909 Pierre-Marie de Rodat <derodat@adacore.com>
483b3d26 1910
1911 * c-ada-spec.c (in_function): Delete.
1912 (dump_generic_ada_node): Do not change in_function and remove the
1913 redundant code dealing with it.
1914 (print_ada_declaration): Do not change in_function. Use INDENT_INCR.
1915 (print_ada_methods): Output the static member functions in a nested
1916 package after the regular methods as well as associated renamings.
1917
f11bdffb 19182015-04-24 Marek Polacek <polacek@redhat.com>
1919
1920 PR c/65830
1921 * c-common.c (c_fully_fold_internal): Use OPT_Wshift_count_negative
1922 and OPT_Wshift_count_overflow.
1923
485f6b9c 1924 PR c/63357
1925 * c-common.c (warn_logical_operator): Warn if the operands have the
1926 same expressions.
1927
439606a9 19282015-04-24 Marek Polacek <polacek@redhat.com>
1929
1930 PR c/61534
1931 * c-common.c (warn_logical_operator): Bail if either operand comes
1932 from a macro expansion.
1933
de801c28 19342015-04-10 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
1935
1936 PR target/55143
1937 * c-common.c (c_default_pointer_mode): Add definition.
1938 * c-common.h (c_default_pointer_mode): Add declaration.
1939
76738f56 19402015-03-11 Jakub Jelinek <jakub@redhat.com>
1941
1942 * c-common.c (c_common_nodes_and_builtins): Don't call xstrdup
1943 on record_builtin_type argument.
1944
16f958b3 19452015-03-10 Jakub Jelinek <jakub@redhat.com>
1946
1947 PR c/65120
1948 * c-common.c (warn_logical_not_parentheses): Don't warn for
1949 !x == 0 or !x != 0.
1950
9b22f73f 19512015-03-07 Marek Polacek <polacek@redhat.com>
1952
1953 PR sanitizer/65280
1954 * c-ubsan.c (ubsan_instrument_bounds): Check for COMPONENT_REF
1955 before trying to figure out whether we have a flexible array member.
1956
a864b7d4 19572015-03-06 Eric Botcazou <ebotcazou@adacore.com>
1958 Jonathan Wakely <jwakely.gcc@gmail.com>
1959
1960 * c-ada-spec.c (dump_ada_double_name): Fix pasto.
1961
9bf8c90b 19622015-03-05 Eric Botcazou <ebotcazou@adacore.com>
1963
1964 PR ada/65319
1965 * c-ada-spec.c (print_destructor): Remove obsolete code.
1966
037ac54f 19672015-03-01 Eric Botcazou <ebotcazou@adacore.com>
1968
1969 * c-ada-spec.c (is_tagged_type): Add guard for DECL_VINDEX.
1970 (dump_template_types): Adjust DECL_TEMPLATE_INSTANTIATIONS and
1971 DECL_TEMPLATE_RESULT emulations.
1972 (dump_ada_template)): Add guard for TYPE_METHODS.
1973
495cbfb8 19742015-02-27 Marek Polacek <polacek@redhat.com>
1975
1976 PR c/65040
1977 * c.opt (Wformat-signedness): Don't enable by -Wformat=2.
1978
688a864e 19792015-02-27 Kai Tietz <ktietz@redhat.com>
1980
1981 PR c/35330
1982 * c-pragma.c (handle_pragma_weak): Do not try to create
1983 weak/alias of declarations not being function, or variable
1984 declarations.
1985
6349b8cc 19862015-02-24 Thomas Schwinge <thomas@codesourcery.com>
1987
1988 PR libgomp/64625
1989 * c-common.c (DEF_FUNCTION_TYPE_VAR_8, DEF_FUNCTION_TYPE_VAR_12):
1990 Remove macros.
1991 (DEF_FUNCTION_TYPE_VAR_7, DEF_FUNCTION_TYPE_VAR_11): New macros.
1992
3afd5369 19932015-02-16 Marek Polacek <polacek@redhat.com>
1994
1995 PR c/65066
1996 * c-format.c (check_format_types): Handle null param.
1997
46173d1b 19982015-02-13 Marek Polacek <polacek@redhat.com>
1999
2000 PR c/65040
2001 * c-format.c (check_format_types): Don't warn about different
2002 signedness if the original value is in the range of WANTED_TYPE.
2003
1d524ff7 20042015-02-12 Jason Merrill <jason@redhat.com>
2005
2006 PR c++/64956
2007 * c-opts.c (c_common_post_options): Change flag_abi_version from 0
2008 to the current highest version.
2009 * c-cppbuiltin.c (c_cpp_builtins): Assert that it isn't 0.
2010
bbf8fbec 20112015-02-04 Jakub Jelinek <jakub@redhat.com>
2012
2013 PR c/64824
2014 PR c/64868
2015 * c-omp.c (c_finish_omp_atomic): Use TRUNC_DIV_EXPR
2016 instead of RDIV_EXPR. Use build_binary_op instead of
2017 build2_loc.
2018
c05be867 20192015-01-30 Joseph Myers <joseph@codesourcery.com>
2020
2021 * c-opts.c, c-pch.c, cppspec.c: All callers of fatal_error changed
2022 to pass input_location as first argument.
2023
85977647 20242015-01-23 Tom de Vries <tom@codesourcery.com>
2025
2026 PR libgomp/64672
2027 * c.opt (fopenacc): Mark as LTO option.
2028
fa175926 20292015-01-23 Tom de Vries <tom@codesourcery.com>
2030
2031 PR libgomp/64707
2032 * c.opt (fopenmp): Mark as LTO option.
2033
20aad5ba 20342015-01-21 Jakub Jelinek <jakub@redhat.com>
2035
2036 PR c/63307
8204c077 2037 * cilk.c (fill_decls_vec): Only put decls into vector v.
20aad5ba 2038 (compare_decls): Fix up formatting.
2039
20402015-01-21 Igor Zamyatin <igor.zamyatin@intel.com>
2041
2042 PR c/63307
2043 * cilk.c: Include vec.h.
2044 (struct cilk_decls): New structure.
2045 (wrapper_parm_cb): Split this function to...
2046 (fill_decls_vec): ...this...
2047 (create_parm_list): ...and this.
2048 (compare_decls): New function.
2049 (for_local_cb): Remove.
2050 (wrapper_local_cb): Ditto.
2051 (build_wrapper_type): For now first traverse and fill vector of
2052 declarations then sort it and then deal with sorted vector.
2053 (cilk_outline): Ditto.
2054 (declare_one_free_variable): Ditto.
2055
60b77e28 20562015-01-21 Jason Merrill <jason@redhat.com>
2057
2058 PR c++/64629
2059 * c-format.c (check_format_arg): Call decl_constant_value.
2060
85fbea97 20612015-01-19 Martin Liska <mliska@suse.cz>
2062
2063 * c-common.c (handle_noicf_attribute): New function.
2064
ca4c3545 20652015-01-15 Thomas Schwinge <thomas@codesourcery.com>
2066 Bernd Schmidt <bernds@codesourcery.com>
2067 James Norris <jnorris@codesourcery.com>
2068 Cesar Philippidis <cesar@codesourcery.com>
2069 Ilmir Usmanov <i.usmanov@samsung.com>
2070 Jakub Jelinek <jakub@redhat.com>
2071
2072 * c.opt (fopenacc): New option.
2073 * c-cppbuiltin.c (c_cpp_builtins): Conditionally define _OPENACC.
2074 * c-common.c (DEF_FUNCTION_TYPE_VAR_8, DEF_FUNCTION_TYPE_VAR_12):
2075 New macros.
2076 * c-common.h (c_finish_oacc_wait): New prototype.
2077 * c-omp.c: Include "omp-low.h" and "gomp-constants.h".
2078 (c_finish_oacc_wait): New function.
2079 * c-pragma.c (oacc_pragmas): New variable.
2080 (c_pp_lookup_pragma, init_pragma): Handle it.
2081 * c-pragma.h (enum pragma_kind): Add PRAGMA_OACC_CACHE,
2082 PRAGMA_OACC_DATA, PRAGMA_OACC_ENTER_DATA, PRAGMA_OACC_EXIT_DATA,
2083 PRAGMA_OACC_KERNELS, PRAGMA_OACC_LOOP, PRAGMA_OACC_PARALLEL,
2084 PRAGMA_OACC_UPDATE, PRAGMA_OACC_WAIT.
2085 (enum pragma_omp_clause): Add PRAGMA_OACC_CLAUSE_ASYNC,
2086 PRAGMA_OACC_CLAUSE_AUTO, PRAGMA_OACC_CLAUSE_COLLAPSE,
2087 PRAGMA_OACC_CLAUSE_COPY, PRAGMA_OACC_CLAUSE_COPYIN,
2088 PRAGMA_OACC_CLAUSE_COPYOUT, PRAGMA_OACC_CLAUSE_CREATE,
2089 PRAGMA_OACC_CLAUSE_DELETE, PRAGMA_OACC_CLAUSE_DEVICE,
2090 PRAGMA_OACC_CLAUSE_DEVICEPTR, PRAGMA_OACC_CLAUSE_FIRSTPRIVATE,
2091 PRAGMA_OACC_CLAUSE_GANG, PRAGMA_OACC_CLAUSE_HOST,
2092 PRAGMA_OACC_CLAUSE_IF, PRAGMA_OACC_CLAUSE_NUM_GANGS,
2093 PRAGMA_OACC_CLAUSE_NUM_WORKERS, PRAGMA_OACC_CLAUSE_PRESENT,
2094 PRAGMA_OACC_CLAUSE_PRESENT_OR_COPY,
2095 PRAGMA_OACC_CLAUSE_PRESENT_OR_COPYIN,
2096 PRAGMA_OACC_CLAUSE_PRESENT_OR_COPYOUT,
2097 PRAGMA_OACC_CLAUSE_PRESENT_OR_CREATE, PRAGMA_OACC_CLAUSE_PRIVATE,
2098 PRAGMA_OACC_CLAUSE_REDUCTION, PRAGMA_OACC_CLAUSE_SELF,
2099 PRAGMA_OACC_CLAUSE_SEQ, PRAGMA_OACC_CLAUSE_VECTOR,
2100 PRAGMA_OACC_CLAUSE_VECTOR_LENGTH, PRAGMA_OACC_CLAUSE_WAIT,
2101 PRAGMA_OACC_CLAUSE_WORKER.
2102
947aa916 21032015-01-14 Marcos Diaz <marcos.diaz@tallertechnologies.com>
2104
2105 * c-cppbuiltin.c (c_cpp_builtins): New cpp define __SSP_EXPLICIT__
2106 for the new option fstack-protector_explicit.
2107 * c-common.c (c_common_attribute_table): Add stack_protect attribute.
2108 (handle_stack_protect_attribute): New function.
2109
e4fd7af1 21102015-01-13 Martin Uecker <uecker@eecs.berkeley.edu>
2111
2112 * c.opt: New option -Warray-bounds=.
2113
1f78217c 21142015-01-09 Michael Collison <michael.collison@linaro.org>
2115
2116 * array-notation-common.c: Include hash-set.h, machmode.h,
2117 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
2118 fold-const.h, wide-int.h, and inchash.h due to flattening of tree.h.
2119 * c-ada-spec.c: Ditto.
2120 * c-cilkplus.c: Ditto.
2121 * c-common.c: Include input.h due to flattening of tree.h.
2122 Define macro GCC_C_COMMON_C.
2123 * c-common.h: Flatten tree.h header files into c-common.h.
2124 Remove include of tree-core.h.
2125 * c-cppbuiltin.c: Include hash-set.h, machmode.h,
2126 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
2127 fold-const.h, wide-int.h, and inchash.h due to
2128 flattening of tree.h.
2129 * c-dump.c: Ditto.
2130 * c-format.c: Flatten tree.h header files into c-common.h.
2131 * c-cppbuiltin.c: Include hash-set.h, machmode.h,
2132 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
2133 fold-const.h, wide-int.h, and inchash.h due to
2134 flattening of tree.h.
2135 * c-dump.c: Include hash-set.h, machmode.h,
2136 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
2137 fold-const.h, wide-int.h, and inchash.h due to
2138 flattening of tree.h.
2139 * c-format.c: Include hash-set.h, machmode.h,
2140 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
2141 fold-const.h, wide-int.h, inchash.h and real.h due to
2142 flattening of tree.h.
2143 * c-gimplify.c: Include hash-set.h, machmode.h,
2144 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
2145 fold-const.h, wide-int.h, and inchash.h due to
2146 flattening of tree.h.
2147 * cilk.c: Ditto.
2148 * c-lex.c: Ditto.
2149 * c-omp.c: Ditto.
2150 * c-opts.c: Ditto.
2151 * c-pch.c: Ditto.
2152 * c-ppoutput.c: Ditto.
2153 * c-pragma.c: Ditto.
2154 * c-pretty-print.c: Ditto.
2155 * c-semantics.c: Ditto.
2156 * c-ubsan.c: Ditto.
2157 * stub-objc.c: Ditto.
2158
411b7663 21592015-01-08 Jason Merrill <jason@redhat.com>
2160
2161 * c-ubsan.c (ubsan_maybe_instrument_array_ref): Use
2162 do_ubsan_in_current_function.
2163 (ubsan_maybe_instrument_reference_or_call): Likewise.
2164 * c-ubsan.h: Declare it.
2165
d1e96383 21662015-01-08 Mike Stump <mikestump@comcast.net>
2167
2168 * c-common.c (c_common_attribute_table): Add no_sanitize_thread.
2169
b57910fa 21702015-01-07 Marek Polacek <polacek@redhat.com>
2171
2172 PR c/64440
2173 * c-common.c (c_fully_fold_internal): Warn for division and modulo
2174 if orig_op1 isn't INTEGER_CST, op1 is INTEGER_CST and is zero.
2175
678a4e3e 21762015-01-05 Trevor Saunders <tsaunders@mozilla.com>
2177
2178 PR c++/31397
2179 * c.opt (Wsuggest-override): New option.
2180
d353bf18 21812015-01-05 Jakub Jelinek <jakub@redhat.com>
2182
2183 Update copyright years.
2184
92b63884 21852015-01-05 Marek Polacek <polacek@redhat.com>
2186
2187 PR c/64423
2188 * c-common.c (warn_array_subscript_with_type_char): Add location_t
2189 parameter. Use it.
2190 * c-common.h (warn_array_subscript_with_type_char): Update
2191 declaration.
2192
83715bc4 21932014-12-20 Edward Smith-Rowland <3dw4rd@verizon.net>
2194
2195 * c-cppbuiltin.c (__cpp_sized_deallocation): Uncomment and move macro.
2196 Control macro with flag_sized_deallocation.
2197
8a8211df 21982014-12-20 Martin Uecker <uecker@eecs.berkeley.edu>
2199
2200 * c.opt (Wdiscarded-array-qualifiers): New option.
2201
33058239 22022014-12-19 Jakub Jelinek <jakub@redhat.com>
2203
2204 PR preprocessor/63831
2205 * c-cppbuiltin.c (c_cpp_builtins): Don't define __has_attribute
2206 and __has_cpp_attribute here.
2207 * c-ppoutput.c (init_pp_output): Set cb->has_attribute to
2208 c_common_has_attribute.
2209 * c-common.h (c_common_has_attribute): New prototype.
2210 * c-lex.c (init_c_lex): Set cb->has_attribute to
2211 c_common_has_attribute instead of cb_has_attribute.
2212 (get_token_no_padding): New function.
2213 (cb_has_attribute): Renamed to ...
2214 (c_common_has_attribute): ... this. No longer static. Use
2215 get_token_no_padding, require ()s, don't build TREE_LIST
2216 unnecessarily, fix up formatting, adjust diagnostics, call
2217 init_attributes.
2218
d1856d2c 22192014-12-15 Jason Merrill <jason@redhat.com>
2220
2221 * c.opt (-fsized-deallocation, -Wc++14-compat): New.
2222 (-Wsized-deallocation): New.
2223 * c-opts.c (c_common_post_options): -fsized-deallocation defaults
2224 to on in C++14 and up.
2225
4972ed5d 22262014-12-11 Jason Merrill <jason@redhat.com>
2227
7d7fa964 2228 * c-cppbuiltin.c (c_cpp_builtins): Enable C++14 __cpp_constexpr.
2229
4972ed5d 2230 * c-cppbuiltin.c (c_cpp_builtins): Define __cpp_runtime_arrays if
2231 we aren't complaining about VLAs.
2232
5ebccf71 22332014-12-06 Marek Polacek <polacek@redhat.com>
2234
2235 PR tree-optimization/64183
2236 * c-gimplify.c (c_gimplify_expr): Don't convert the RHS of a
2237 shift-expression if it is integer_type_node. Use types_compatible_p.
2238
f9e245b2 22392014-11-29 Jakub Jelinek <jakub@redhat.com>
2240
2241 * c-common.c (convert_vector_to_pointer_for_subscript): Remove NULL
2242 last argument from create_tmp_var_raw and create_tmp_var calls.
2243 * cilk.c (gimplify_cilk_spawn): Likewise.
2244 * c-omp.c (c_finish_omp_atomic): Likewise.
2245
d2f60593 22462014-11-28 Marek Polacek <polacek@redhat.com>
2247
2248 * c-ubsan.c (ubsan_instrument_shift): Use op1_utype for MINUS_EXPR
2249 instead of unsigned_type_node.
2250
fce2dbd1 22512014-11-28 Marek Polacek <polacek@redhat.com>
2252
2253 PR c/63862
2254 * c-ubsan.c (ubsan_instrument_shift): Change the type of a MINUS_EXPR
2255 to op1_utype.
2256 * c-gimplify.c (c_gimplify_expr): Convert right operand of a shift
2257 expression to unsigned_type_node.
2258
3a4a2292 22592014-11-20 Mark Wielaard <mjw@redhat.com>
2260
2261 PR debug/38757
2262 * c-opts.c (set_std_c89): Set lang_hooks.name.
2263 (set_std_c99): Likewise.
2264 (set_std_c11): Likewise.
2265 (set_std_cxx98): Likewise.
2266 (set_std_cxx11): Likewise.
2267 (set_std_cxx14): Likewise.
2268 (set_std_cxx1z): Likewise.
2269
c61ef207 22702014-11-21 Jakub Jelinek <jakub@redhat.com>
2271
2272 PR target/63764
2273 * c-common.h (convert_vector_to_pointer_for_subscript): Change
2274 return type to bool.
c9ed79de 2275 * c-common.c: Include gimple-expr.h.
c61ef207 2276 (convert_vector_to_pointer_for_subscript): Change return type to
2277 bool. If *vecp is not lvalue_p and has VECTOR_TYPE, return true
2278 and copy it into a TARGET_EXPR and use that instead of *vecp
2279 directly.
2280
1a91d914 22812014-11-19 David Malcolm <dmalcolm@redhat.com>
2282
2283 Merger of git branch "gimple-classes-v2-option-3".
2284 * ChangeLog.gimple-classes: New.
2285 * c-gimplify.c (add_block_to_enclosing): Strengthen local "stack"
2286 from being just a vec<gimple> to a vec<gbind *>.
2287
f8fc8b8e 22882014-11-18 Jakub Jelinek <jakub@redhat.com>
2289
2290 PR sanitizer/63813
2291 * c-ubsan.c (ubsan_maybe_instrument_reference_or_call): Change type
2292 argument to ptype, set type to TREE_TYPE (ptype). Don't call
2293 get_pointer_alignment for non-pointers. Use ptype, or if it is
2294 reference type, corresponding pointer type, as type of kind
2295 argument.
2296 (ubsan_maybe_instrument_reference,
2297 ubsan_maybe_instrument_member_call): Adjust callers.
2298
8315e35e 22992014-11-15 Marek Polacek <polacek@redhat.com>
2300
2301 PR middle-end/63884
2302 * array-notation-common.c (is_sec_implicit_index_fn): Return false
2303 for NULL fndecl.
2304 (extract_array_notation_exprs): Return for NULL node.
2305
86b9f14b 23062014-11-12 Joseph Myers <joseph@codesourcery.com>
2307
2308 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Define and
2309 undefine __NO_MATH_ERRNO__ based on changes to -fmath-errno state.
2310
0c93c8a9 23112014-11-12 Jakub Jelinek <jakub@redhat.com>
2312
2313 PR c/59708
2314 * c-common.c (check_builtin_function_arguments): Handle
2315 BUILT_IN_{ADD,SUB,MUL}_OVERFLOW.
2316
fdd735a7 23172014-11-10 Andi Kleen <ak@linux.intel.com>
2318
2319 PR c/60804
2320 * c-common.h (check_no_cilk): Declare.
2321 * cilk.c (get_error_location): New function.
2322 (check_no_cilk): Dito.
2323
5cb678b4 23242014-11-10 Andi Kleen <ak@linux.intel.com>
2325
2326 * cilk.c (recognize_spawn): Use expression location
2327 for error message.
2328
0feb4de1 23292014-11-10 Paolo Carlini <paolo.carlini@oracle.com>
2330
2331 * c.opt ([Wshift-count-negative, Wshift-count-overflow]): Add.
2332
3aa2fa44 23332014-11-10 Edward Smith-Rowland <3dw4rd@verizon.net>
2334
2335 * c-cppbuiltin.c (__has_attribute, __has_cpp_attribute): New macros;
2336 (__cpp_rtti, __cpp_exceptions): New macros for C++98;
2337 (__cpp_range_based_for, __cpp_initializer_lists,
2338 __cpp_delegating_constructors, __cpp_nsdmi,
2339 __cpp_inheriting_constructors, __cpp_ref_qualifiers): New macros
2340 for C++11; (__cpp_attribute_deprecated): Remove in favor of
2341 __has_cpp_attribute.
2342 * c-lex.c (cb_has_attribute): New callback CPP function;
2343 (init_c_lex): Set has_attribute callback.
2344
7fd22aae 23452014-11-04 Richard Biener <rguenther@suse.de>
2346
2347 * c-common.c (shorten_compare): Do not shorten mixed
2348 DFP and non-DFP compares.
2349
4af203ac 23502014-11-01 Edward Smith-Rowland <3dw4rd@verizon.net>
2351
2352 * g++.dg/cpp1y/feat-cxx11.C: Commentary and rearrangement of tests.
2353 * g++.dg/cpp1y/feat-cxx11-neg.C: Add aggregate NSDMI test.
2354 Commentary and rearrangement of tests.
2355 * g++.dg/cpp1y/feat-cxx14.C: Enable aggregate NSDMI test.
2356 Commentary and rearrangement of tests.
2357 * g++.dg/cpp1y/feat-cxx98-neg.C: Ditto
2358 * g++.dg/cpp1y/feat-cxx98.C: Commentary.
2359
3754d046 23602014-10-29 Richard Sandiford <richard.sandiford@arm.com>
2361
2362 * c-common.c, c-common.h, c-cppbuiltin.c, c-lex.c: Remove redundant
2363 enum from machine_mode.
2364
1140c305 23652014-10-28 Andrew MacLeod <amacleod@redhat.com>
2366
1f78217c 2367 * c-common.c: Adjust include files.
2368 * c-gimplify.c: Ditto.
2369 * cilk.c: Ditto.
2370 * c-pragma.c: Ditto.
2371 * c-ubsan.c: Ditto.
1140c305 2372
94ea8568 23732014-10-27 Andrew MacLeod <amacleod@redhat.com>
2374
2375 * c-gimplify.c: Adjust include files.
2376
32ecf960 23772014-10-26 Manuel López-Ibáñez <manu@gcc.gnu.org>
2378
2379 PR c++/53061
2380 * c-opts.c (c_common_diagnostics_set_defaults): Renamed from
2381 c_common_initialize_diagnostics.
2382 * c-common.h: Likewise.
2383
85fecbe2 23842014-10-24 Marek Polacek <polacek@redhat.com>
2385
2386 PR c/56980
2387 * c-pretty-print.c (c_pretty_printer::simple_type_specifier): Don't
2388 print "struct"/"union"/"enum" for typedefed names.
2389
e7ec033a 23902014-10-23 Marek Polacek <polacek@redhat.com>
2391
2392 * c-ubsan.c (ubsan_instrument_shift): Perform the MINUS_EXPR
2393 in unsigned type.
2394
c2598081 23952014-10-22 Jakub Jelinek <jakub@redhat.com>
2396 Yury Gribov <y.gribov@samsung.com>
2397
2398 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
2399 ubsan_instrument_vla): Check bits in flag_sanitize_recover bitmask
2400 instead of flag_sanitize_recover as bool flag.
2401
acebb7e2 24022014-10-21 Kirill Yukhin <kirill.yukhin@intel.com>
2403
2404 * cilk.c: Revert previous change.
2405
6115016c 24062014-10-20 Igor Zamyatin <igor.zamyatin@intel.com>
2407
2408 PR c/63307
2409 * cilk.c: Include vec.h.
2410 (struct cilk_decls): New structure.
2411 (wrapper_parm_cb): Split this function to...
2412 (fill_decls_vec): ...this...
2413 (create_parm_list): ...and this.
2414 (compare_decls): New function.
2415 (for_local_cb): Remove.
2416 (wrapper_local_cb): Ditto.
2417 (build_wrapper_type): For now first traverse and fill vector of
2418 declarations then sort it and then deal with sorted vector.
2419 (cilk_outline): Ditto.
2420 (declare_one_free_variable): Ditto.
2421
e610d2b2 24222014-10-17 Marek Polacek <polacek@redhat.com>
2423
2424 * c-opts.c (c_common_post_options): Set warn_implicit_int.
2425 * c.opt (Wimplicit-int): Initialize to -1.
2426
a3020f2f 24272014-10-16 Andrew MacLeod <amacleod@redhat.com>
2428
2429 * c-pragma.c: Adjust include files.
2430 * c-semantics.c: Likewise.
2431
926ddd2c 24322014-10-16 DJ Delorie <dj@redhat.com>
2433
2434 * c-cppbuiltin.c (cpp_atomic_builtins): Don't assume pointers are
2435 multiples of bytes.
2436
b0542e7c 24372014-10-14 Jason Merrill <jason@redhat.com>
2438
2439 PR c++/63455
2440 * c-common.h (CPP_PREPARSED_EXPR): New.
2441 (N_CP_TTYPES): Adjust.
2442
b2601928 24432014-10-15 Marek Polacek <polacek@redhat.com>
2444
2445 * c-opts.c (c_common_init_options): Make -std=gnu11 the default for C.
2446
9f75f026 24472014-10-14 DJ Delorie <dj@redhat.com>
2448
2449 * c-pretty-print.c (pp_c_integer_constant): Check for all __intN
2450 types, not just __int128.
2451 * c-cppbuiltin.c (c_cpp_builtins): Add builtins for all __intN
2452 types, not just __int128.
2453 (cpp_atomic_builtins): Round pointer sizes up.
2454 (type_suffix): Use type precision, not specific types.
2455 * c-common.c (c_common_reswords): Remove __int128 special case.
2456 (c_common_type_for_size): Check for all __intN types, not just
2457 __int128.
2458 (c_common_type_for_mode): Likewise.
2459 (c_common_signed_or_unsigned_type): Likewise.
2460 (c_build_bitfield_integer_type): Likewise.
2461 (c_common_nodes_and_builtins): Likewise.
2462 (keyword_begins_type_specifier): Likewise.
2463 * c-common.h (rid): Remove RID_INT128 and add RID_INT_N_* for all
2464 __intN variants.
2465
2ef51f0e 24662014-10-12 Trevor Saunders <tsaunders@mozilla.com>
2467
2468 * c-common.c: Use hash_table instead of hashtab.
2469
5b8257e3 24702014-10-06 Edward Smith-Rowland <3dw4rd@verizon.net>
2471
1f78217c 2472 * c-cppbuiltin.c: Move __cpp_attribute_deprecated to the
5b8257e3 2473 C++11 section.
2474
5e84569c 24752014-10-03 Marc Glisse <marc.glisse@inria.fr>
2476
2477 PR c++/54427
2478 PR c++/57198
2479 PR c++/58845
2480 * c-common.c (warn_logical_operator): Punt for vectors.
2481
f6751ff2 24822014-10-01 Edward Smith-Rowland <3dw4rd@verizon.net>
2483
2484 Implement SD-6: SG10 Feature Test Recommendations
2485 * c-cppbuiltin.c (c_cpp_builtins()): Define language feature
2486 macros and the __has_header macro.
2487
c33e051d 24882014-09-30 Jason Merrill <jason@redhat.com>
2489
f76a9aa8 2490 * c-common.h (enum rid): Add RID_IS_TRIVIALLY_ASSIGNABLE and
2491 RID_IS_TRIVIALLY_CONSTRUCTIBLE.
2492 * c-common.c (c_common_reswords): Add __is_trivially_copyable.
2493
717e52f9 2494 * c-common.h (enum rid): Add RID_IS_TRIVIALLY_COPYABLE.
2495 * c-common.c (c_common_reswords): Add __is_trivially_copyable.
2496
c33e051d 2497 * c-common.h (enum rid): Remove RID_IS_CONVERTIBLE_TO.
2498 * c-common.c (c_common_reswords): Remove __is_convertible_to.
2499
5213d6c9 25002014-09-24 Marek Polacek <polacek@redhat.com>
2501
2502 PR c/61405
2503 PR c/53874
2504 * c-common.h (struct c_common_resword): Don't define CPP_KEYWORD.
2505
6b722052 25062014-09-23 Andi Kleen <ak@linux.intel.com>
2507
2508 * c-common.c (handle_no_reorder_attribute): New function.
2509 (c_common_attribute_table): Add no_reorder attribute.
2510
0cb69d12 25112014-09-22 Joseph Myers <joseph@codesourcery.com>
2512
2513 * c-cppbuiltin.c (c_cpp_builtins): Define
2514 __LIBGCC_*_EXCESS_PRECISION__ macros for supported floating-point
2515 modes.
2516
168dfbf0 25172014-09-18 Joseph Myers <joseph@codesourcery.com>
2518
2519 * c-cppbuiltin.c (c_cpp_builtins): Define __LIBGCC_*_FUNC_EXT__
2520 for supported floating-point modes.
2521
b83705f4 25222014-09-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
2523
2524 * c.opt (Wpsabi): Use LangEnabledBy.
2525 * c-opts.c (c_common_handle_option): Do not handle here.
2526
d5957f0d 25272014-09-12 Joseph Myers <joseph@codesourcery.com>
2528
2529 * c-cppbuiltin.c (c_cpp_builtins): Define __LIBGCC_HAS_%s_MODE__
2530 macros for floating-point modes.
2531
bae6edff 25322014-09-11 Marc Glisse <marc.glisse@inria.fr>
2533
2534 PR target/58757
2535 * c-cppbuiltin.c (builtin_define_float_constants): Correct
2536 __*_DENORM_MIN__ without denormals.
2537
73a69d02 25382014-09-10 Jakub Jelinek <jakub@redhat.com>
2539
2540 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
2541 ubsan_instrument_vla, ubsan_instrument_return): Adjust
2542 ubsan_create_data callers.
2543 (ubsan_instrument_bounds): Don't emit UBSAN_BOUNDS at all if
2544 index is constant or BIT_AND_EXPR with constant mask and is
2545 small enough for the bound.
2546 * c-gimplify.c (ubsan_walk_array_refs_r): For ADDR_EXPR of
2547 ARRAY_REF, make sure the inner ARRAY_REF is not walked again.
2548
7ff8db31 25492014-09-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
2550
2551 * c.opt: Add CppReason to various flags.
2552 (Wdate-time): Re-sort.
2553 * c-common.c: Include c-common.h earlier.
2554 (struct reason_option_codes_t): Delete.
2555 (c_option_controlling_cpp_error): Prefix global type and struct
2556 with cpp_.
2557
bcc1f37e 25582014-09-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
2559
2560 * c.opt (Wnormalized): New.
2561 (Wnormalized=): Use Enum and Reject Negative.
2562 * c-opts.c (c_common_handle_option): Do not handle Wnormalized here.
2563
b660d3c6 25642014-09-08 Joseph Myers <joseph@codesourcery.com>
2565
2566 * c-cppbuiltin.c (c_cpp_builtins): Define macros for mantissa
2567 digits of floating-point modes if -fbuilding-libgcc.
2568
325b8c3c 25692014-09-05 Joseph Myers <joseph@codesourcery.com>
2570
2571 * c-cppbuiltin.c (c_cpp_builtins): Also define
2572 __LIBGCC_EH_TABLES_CAN_BE_READ_ONLY__,
2573 __LIBGCC_EH_FRAME_SECTION_NAME__, __LIBGCC_JCR_SECTION_NAME__,
2574 __LIBGCC_CTORS_SECTION_ASM_OP__, __LIBGCC_DTORS_SECTION_ASM_OP__,
2575 __LIBGCC_TEXT_SECTION_ASM_OP__, __LIBGCC_INIT_SECTION_ASM_OP__,
2576 __LIBGCC_INIT_ARRAY_SECTION_ASM_OP__,
2577 __LIBGCC_STACK_GROWS_DOWNWARD__,
2578 __LIBGCC_DONT_USE_BUILTIN_SETJMP__,
2579 __LIBGCC_DWARF_ALT_FRAME_RETURN_COLUMN__,
2580 __LIBGCC_DWARF_FRAME_REGISTERS__,
2581 __LIBGCC_EH_RETURN_STACKADJ_RTX__, __LIBGCC_JMP_BUF_SIZE__,
2582 __LIBGCC_STACK_POINTER_REGNUM__ and
2583 __LIBGCC_VTABLE_USES_DESCRIPTORS__ for -fbuilding-libgcc.
2584 (builtin_define_with_value): Handle backslash-escaping in string
2585 macro values.
2586
1e074e77 25872014-09-05 Richard Biener <rguenther@suse.de>
2588
2589 PR middle-end/63148
2590 * c-format.c (check_format_arg): Properly handle
2591 effectively signed POINTER_PLUS_EXPR offset.
2592
04afd878 25932014-09-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
2594
2595 * c.opt (Wc90-c99-compat,Wc++-compat,Wcomment,Wendif-labels,
2596 Winvalid-pch,Wlong-long,Wmissing-include-dirs,Wmultichar,Wpedantic,
2597 (Wdate-time,Wtraditional,Wundef,Wvariadic-macros): Add CPP, Var
2598 and Init.
2599 * c-opts.c (c_common_handle_option): Do not handle here.
2600 (sanitize_cpp_opts): Likewise.
2601 * c-common.c (struct reason_option_codes_t): Handle
2602 CPP_W_C90_C99_COMPAT and CPP_W_PEDANTIC.
2603
a3f448f0 26042014-09-03 Marek Polacek <polacek@redhat.com>
2605
2606 * c.opt (Wlogical-not-parentheses): Enable by -Wall.
2607
40750995 26082014-09-02 Jakub Jelinek <jakub@redhat.com>
2609 Balaji V. Iyer <balaji.v.iyer@intel.com>
2610 Igor Zamyatin <igor.zamyatin@intel.com>
2611
2612 * c-cilkplus.c (cilk_for_number_of_iterations): New function.
2613 * c-common.c (c_common_reswords): Added _Cilk_for.
2614 * c-common.h (enum rid): Added RID_CILK_FOR.
2615 (cilk_for_number_of_iterations): Add declaration.
2616 * c-omp.c (c_finish_omp_for): Added checks for CILK_SIMD and
2617 CILK_FOR.
2618 * c-pragma.c (init_pragma): Register "grainsize" pragma.
2619 * c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_GRAINSIZE.
2620
f0fbe519 26212014-08-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
2622
2623 * c.opt (Wbuiltin-macro-redefined,Wdeprecated,Wendif-labels,
2624 Winvalid-pch,Wliteral-suffix,Wmissing-include-dirs,Wtrigraphs,
2625 Wundef): Use CPP, Var and Init.
2626 * c-opts.c (c_common_handle_option): Do not handle the above flags here.
2627
a7d2e480 26282014-08-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
2629
2630 * c.opt (Wbuiltin-macro-redefined): Use CPP, Var and Init.
2631 * c-opts.c (c_common_handle_option): Do not handle here.
2632
c35e53f1 26332014-08-25 Jason Merrill <jason@redhat.com>
2634
2635 * c.opt: Change -std=c++1y and -std=gnu++1y to be aliases for
2636 -std=c++14 and -std=gnu++14, rather than the reverse.
2637 * c-opts.c (c_common_handle_option): Change OPT_std_c__1y and
2638 OPT_std_gnu__1y to OPT_std_c__14 and OPT_std_gnu__14.
2639 * c-common.h (cxx_dialect): Remove cxx1y.
2640
4e454776 26412014-08-23 Edward Smith-Rowland <3dw4rd@verizon.net>
2642
2643 * c-common.h (enum cxx_dialect): Add cxx14.
2644 * c-opts.c (set_std_cxx1y): Rename to set_std_cxx14; Use cxx14.
2645 * c-ubsan.c (ubsan_instrument_shift): Change comment and logic from
2646 cxx_dialect == cxx11 || cxx_dialect == cxx1y to cxx_dialect >= cxx11.
2647
af1a80f2 26482014-08-22 Jason Merrill <jason@redhat.com>
2649
2650 * c.opt (std=gnu++17): Fix alias.
2651
dc6229e8 26522014-08-22 Marek Polacek <polacek@redhat.com>
2653
2654 PR c++/62199
2655 * c-common.c (warn_logical_not_parentheses): Don't check LHS. Don't
2656 check for vector types. Drop LHS argument.
2657 * c-common.h (warn_logical_not_parentheses): Adjust.
2658
ba7f7c88 26592014-08-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
2660
2661 * c.opt (Wcomment): Use CPP, Var and LangEnabledBy.
2662 (Wmultichar): Likewise.
2663 (Wdate-time): Use C-family languages instead of Common. Use CPP
2664 and Var.
2665 * c-opts.c (c_common_handle_option): Do not handle the above
2666 options here.
2667 (sanitize_cpp_opts): Likewise.
2668
399d4f80 26692014-08-21 Manuel López-Ibáñez <manu@gcc.gnu.org>
2670
2671 PR fortran/44054
2672 * c-opts.c: Include tree-diagnostics.h.
2673 (c_diagnostic_finalizer): New.
2674 (c_common_initialize_diagnostics): Use it.
2675
1babed5f 26762014-08-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
2677
2678 PR preprocessor/51303
2679 * c-common.c (struct reason_option_codes_t option_codes):
2680 Add CPP_W_MISSING_INCLUDE_DIRS. Sort alphabetically.
2681
3636964b 26822014-08-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
2683
2684 PR c/60975
2685 PR c/53063
2686 * c.opt (Wvariadic-macros): Use CPP and LangEnabledBy.
2687 * c-opts.c (c_common_handle_option): Call cpp_handle_option_auto.
2688 (c_common_post_options): Call init_global_opts_from_cpp.
2689 (sanitize_cpp_opts): Do not handle Wvariadic-macros here.
2690
78bf4156 26912014-08-19 Marek Polacek <polacek@redhat.com>
2692
2693 PR c++/62153
2694 * c-common.c (maybe_warn_bool_compare): New function.
2695 * c-common.h (maybe_warn_bool_compare): Declare.
2696 * c.opt (Wbool-compare): New option.
2697
508ea33a 26982014-08-19 Marek Polacek <polacek@redhat.com>
2699
2700 * c.opt (Wc99-c11-compat): New option.
2701
806fe15e 27022014-08-19 Marek Polacek <polacek@redhat.com>
2703
2704 * c-opts.c (sanitize_cpp_opts): Make warn_long_long be set according
2705 to warn_c90_c99_compat.
2706 * c.opt (Wc90-c99-compat, Wdeclaration-after-statement): Initialize
2707 to -1.
2708
6c867de1 27092014-08-19 Manuel López-Ibáñez <manu@gcc.gnu.org>
2710 Steven Bosscher <steven@gcc.gnu.org>
2711
2712 PR c/52952
2713 * c-format.c: Add extra_arg_loc and format_string_loc to struct
2714 format_check_results.
2715 (check_function_format): Use true and add comment for boolean
2716 argument.
2717 (finish_dollar_format_checking): Use explicit location when warning.
2718 (check_format_info): Likewise.
2719 (check_format_arg): Set extra_arg_loc and format_string_loc.
2720 (check_format_info_main): Use explicit location when warning.
2721 (check_format_types): Pass explicit location.
2722 (format_type_warning): Likewise.
2723
dc8078a3 27242014-08-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
2725
2726 PR fortran/44054
2727 * c-format.c: Handle Fortran flags.
2728
d271ec7e 27292014-08-12 Igor Zamyatin <igor.zamyatin@intel.com>
2730
2731 PR other/61962
2732 * array-notation-common.c (find_rank): Added handling for other
2733 types of references.
2734
890c2e2f 27352014-08-10 Marek Polacek <polacek@redhat.com>
2736
2737 PR c/51849
2738 * c-opts.c (sanitize_cpp_opts): Pass warn_c90_c99_compat to libcpp.
2739 * c.opt (Wc90-c99-compat): Add option.
2740
7149db5f 27412014-08-07 Trevor Saunders <tsaunders@mozilla.com>
2742
2743 * c-gimplify.c, cilk.c: Remove includes of pointer-set.h.
2744
2d2f6a15 27452014-08-03 Marek Polacek <polacek@redhat.com>
2746
2747 * c-common.c (check_case_value): Add location_t parameter. Use it.
2748 (c_add_case_label): Pass loc to check_case_value.
2749
06ecf488 27502014-08-02 Trevor Saunders <tsaunders@mozilla.com>
2751
2752 * cilk.c: Use hash_map instead of pointer_map.
2753
431205b7 27542014-08-02 Trevor Saunders <tsaunders@mozilla.com>
2755
2756 * c-gimplify.c: Use hash_set instead of pointer_set.
2757
3394c80c 27582014-08-01 Igor Zamyatin <igor.zamyatin@intel.com>
2759
2760 PR middle-end/61455
2761 * array-notation-common.c (extract_array_notation_exprs): Handling
2762 of DECL_EXPR added.
2763
392dee1e 27642014-08-01 Jakub Jelinek <jakub@redhat.com>
2765
2766 * c-common.h (min_align_of_type): Removed prototype.
2767 * c-common.c (min_align_of_type): Removed.
2768 * c-ubsan.h (ubsan_maybe_instrument_reference,
2769 ubsan_maybe_instrument_member_call): New prototypes.
2770 * c-ubsan.c: Include stor-layout.h and builtins.h.
2771 (ubsan_maybe_instrument_reference_or_call,
2772 ubsan_maybe_instrument_reference, ubsan_maybe_instrument_call): New
2773 functions.
2774
f22a2cb7 27752014-07-31 Marc Glisse <marc.glisse@inria.fr>
2776
2777 PR c++/60517
2778 * c.opt (-Wreturn-local-addr): Move to common.opt.
2779
87b0198f 27802014-07-30 Jason Merrill <jason@redhat.com>
2781
2782 PR c++/61659
2783 PR c++/61687
2784 Revert:
2785 * c.opt (-fuse-all-virtuals): New.
2786
74691f46 27872014-07-30 Tom Tromey <tromey@redhat.com>
2788
2789 PR c/59855
2790 * c.opt (Wdesignated-init): New option.
2791 * c-common.c (c_common_attribute_table): Add "designated_init".
2792 (handle_designated_init): New function.
2793
9140d56f 27942014-07-24 Marek Polacek <polacek@redhat.com>
2795
2796 PR c/57653
2797 * c-opts.c (c_finish_options): If -imacros is in effect, return.
2798
a09c5cc2 27992014-07-16 Dodji Seketeli <dodji@redhat.com>
2800
2801 PR preprocessor/60723 - missing system-ness marks for macro tokens
2802 * c-ppoutput.c (struct print::prev_was_system_token): New data
2803 member.
2804 (init_pp_output): Initialize it.
2805 (maybe_print_line_1, maybe_print_line, print_line_1, print_line)
2806 (do_line_change): Return a flag saying if a line marker was
2807 emitted or not.
2808 (scan_translation_unit): Detect if the system-ness of the token we
2809 are about to emit is different from the one of the previously
2810 emitted token. If so, emit a line marker. Avoid emitting useless
2811 adjacent line markers. Avoid emitting line markers for tokens
2812 originating from the expansion of built-in macros.
2813 (scan_translation_unit_directives_only): Adjust.
2814
2b25b62f 28152014-07-15 Marek Polacek <polacek@redhat.com>
2816
2817 * c-ubsan.c (ubsan_instrument_bounds): Don't instrument if
2818 TYPE_MAX_VALUE is NULL.
2819
305d96bc 28202014-07-14 Jakub Jelinek <jakub@redhat.com>
2821
2822 PR middle-end/61294
2823 * c.opt (Wmemset-transposed-args): New warning.
2824
8ea4660d 28252014-07-10 Jason Merrill <jason@redhat.com>
2826
2827 PR c++/61659
2828 PR c++/61687
2829 * c.opt (-fuse-all-virtuals): New.
2830
cd480f3d 28312014-07-09 Richard Biener <rguenther@suse.de>
2832
2833 PR c-family/61741
2834 * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
2835 using unsigned arithmetic if overflow does not wrap instead of
2836 if overflow is undefined.
2837
87d59e72 28382014-07-06 Marek Polacek <polacek@redhat.com>
2839
2840 PR c/6940
2841 * c.opt (Wsizeof-array-argument): New option.
2842
d69521d8 28432014-07-03 Jakub Jelinek <jakub@redhat.com>
2844
8204c077 2845 * c-ada-spec.c (dump_ada_nodes): Don't call qsort if
d69521d8 2846 comments->count <= 1, as comments->entries might be NULL.
2847
1207866e 28482014-07-01 Marek Polacek <polacek@redhat.com>
2849
2850 * c.opt (Wint-conversion): New option.
2851
7a6bbb76 28522014-07-01 Marek Polacek <polacek@redhat.com>
2853
2854 PR c/58286
2855 * c.opt (Wincompatible-pointer-types): New option.
2856
9d4eeb52 28572014-06-30 Paolo Carlini <paolo.carlini@oracle.com>
2858
2859 PR c++/51400
2860 * c-common.c (handle_noreturn_attribute, handle_const_attribute):
2861 Do not discard TYPE_QUALS of type.
2862
4b53bc0f 28632014-06-26 Jason Merrill <jason@redhat.com>
2864
2865 * c-common.h (enum cxx_dialect): Add cxx1z.
2866 * c.opt (std=c++1z, std=c++17, std=gnu++1z, std=gnu++17): New.
2867 * c-opts.c (c_common_handle_option, set_std_cxx1z): Handle it.
2868
a8a8d4ea 28692014-06-26 Teresa Johnson <tejohnson@google.com>
2870
2871 * c-common.h (get_dump_info): Declare.
2872 * c-gimplify.c (c_genericize): Use saved dump files.
2873 * c-opts.c (c_common_parse_file): Begin and end dumps
2874 once around parsing invocation.
2875 (get_dump_info): New function.
2876
1f6be080 28772014-06-23 Marek Polacek <polacek@redhat.com>
2878 Andrew MacLeod <amacleod@redhat.com>
2879
2880 PR c/61553
2881 * c-common.c (get_atomic_generic_size): Don't segfault if the
2882 type doesn't have a size.
2883
5ef6b660 28842014-06-20 Marek Polacek <polacek@redhat.com>
2885
2886 * c-gimplify.c: Include "c-ubsan.h" and "pointer-set.h".
2887 (ubsan_walk_array_refs_r): New function.
2888 (c_genericize): Instrument array bounds.
2889 * c-ubsan.c: Include "internal-fn.h".
2890 (ubsan_instrument_division): Mark instrumented arrays as having
2891 side effects. Adjust ubsan_type_descriptor call.
2892 (ubsan_instrument_shift): Likewise.
2893 (ubsan_instrument_vla): Adjust ubsan_type_descriptor call.
2894 (ubsan_instrument_bounds): New function.
2895 (ubsan_array_ref_instrumented_p): New function.
2896 (ubsan_maybe_instrument_array_ref): New function.
2897 * c-ubsan.h (ubsan_instrument_bounds): Declare.
2898 (ubsan_array_ref_instrumented_p): Declare.
2899 (ubsan_maybe_instrument_array_ref): Declare.
2900
29012014-06-20 Hale Wang <hale.wang@arm.com>
3ccd1e6e 2902
2903 PR lto/61123
2904 * c.opt (fshort-enums): Add to LTO.
2905 * c.opt (fshort-wchar): Likewise.
2906
78438f31 29072014-06-16 Marek Polacek <polacek@redhat.com>
2908
2909 PR c/60439
2910 * c.opt (Wswitch-bool): Add Var.
2911
5fddcf34 29122014-06-12 Jakub Jelinek <jakub@redhat.com>
2913
2914 PR middle-end/61486
2915 * c-omp.c (c_omp_split_clauses): Don't crash on firstprivate in
2916 #pragma omp target teams or
2917 #pragma omp {,target }teams distribute simd.
2918
74b777e5 29192014-06-12 Jason Merrill <jason@redhat.com>
2920
2921 * c.opt (Wabi=, fabi-compat-version): New.
2922 * c-opts.c (c_common_handle_option): Handle -Wabi=.
2923 (c_common_post_options): Handle flag_abi_compat_version default.
2924 Disallow -fabi-compat-version=1.
2925 * c-common.h (abi_version_crosses): New.
2926
738a6bda 29272014-06-11 Jan Hubicka <hubicka@ucw.cz>
2928
1f78217c 2929 * c-common.c (handle_section_attribute): Update handling for
738a6bda 2930 section names that are no longer trees.
2931
cf5f881f 29322014-06-10 Jakub Jelinek <jakub@redhat.com>
2933
2934 PR fortran/60928
2935 * c-pragma.c (omp_pragmas_simd): Move PRAGMA_OMP_TASK...
2936 (omp_pragmas): ... back here.
2937
32dc1512 29382014-06-05 Marek Polacek <polacek@redhat.com>
2939
2940 PR c/49706
2941 * c-common.c (warn_logical_not_parentheses): New function.
2942 * c-common.h (warn_logical_not_parentheses): Declare.
2943 * c.opt (Wlogical-not-parentheses): New option.
2944
f61a9bc2 29452014-06-04 Marek Polacek <polacek@redhat.com>
2946
2947 PR c/30020
2948 * c-common.c (check_case_bounds): Add location parameter.
2949 Use it.
2950 (c_add_case_label): Pass loc to check_case_bounds.
2951
c69ec07d 29522014-06-03 Marek Polacek <polacek@redhat.com>
2953
2954 PR c/60439
2955 * c.opt (Wswitch-bool): New option.
2956
3c77ca67 29572014-05-22 Thomas Schwinge <thomas@codesourcery.com>
2958
68a2c870 2959 * c-common.h (c_omp_sharing_predetermined, c_omp_remap_decl):
2960 Remove prototypes.
2961 (record_types_used_by_current_var_decl): Move prototype to where
2962 it belongs.
2963
3c77ca67 2964 * c-common.c (DEF_FUNCTION_TYPE_0, DEF_FUNCTION_TYPE_6)
2965 (DEF_FUNCTION_TYPE_7, DEF_FUNCTION_TYPE_8)
2966 (DEF_FUNCTION_TYPE_VAR_5): Cosmetic fixes.
2967
3ab4693e 29682014-05-21 Richard Sandiford <rsandifo@linux.vnet.ibm.com>
2969
2970 * c-common.h (CTI_VOID_ZERO, void_zero_node): Delete.
2971 * c-common.c (c_common_nodes_and_builtins): Don't initialize
2972 void_zero_node.
2973 * c-pretty-print.c (pp_c_void_constant): New function.
2974 (c_pretty_printer::constant, c_pretty_printer::primary_expression)
2975 (c_pretty_printer::expression): Handle VOID_CST.
2976 * cilk.c (extract_free_variables): Likewise.
2977 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift)
2978 (ubsan_instrument_vla): Use void_node instead of void_zero_node.
2979
25a27413 29802014-05-17 Trevor Saunders <tsaunders@mozilla.com>
2981
2982 * c-common.h (sorted_fields_type): Remove variable_size GTY attribute.
2983 * c-pragma.c (push_alignment): Adjust.
2984 (handle_pragma_push_options): Likewise.
2985
3e5a8b00 29862014-05-09 Marek Polacek <polacek@redhat.com>
2987
2988 PR c/50459
2989 * c-common.c (check_user_alignment): Return -1 if alignment is error
2990 node.
2991 (handle_aligned_attribute): Don't call default_conversion on
2992 FUNCTION_DECLs.
2993 (handle_vector_size_attribute): Likewise.
2994 (handle_tm_wrap_attribute): Handle case when wrap_decl is error node.
2995 (handle_sentinel_attribute): Call default_conversion and allow even
2996 integral types as an argument.
2997
c2c4ae8d 29982014-05-08 Marek Polacek <polacek@redhat.com>
2999
3000 PR c/61053
3001 * c-common.c (min_align_of_type): New function factored out from...
3002 (c_sizeof_or_alignof_type): ...here.
3003 * c-common.h (min_align_of_type): Declare.
3004
2026249a 30052014-05-08 Marek Polacek <polacek@redhat.com>
3006
3007 PR c/61077
3008 * c-common.c (check_main_parameter_types): Warn for _Atomic-qualified
3009 parameter type of main.
3010
33c8dcfe 30112014-05-07 DJ Delorie <dj@redhat.com>
3012
3013 * c-cppbuiltin.c (print_bits_of_hex): New.
3014 (builtin_define_type_minmax): Print values using hex so as not to
3015 require a pre-computed list of string values.
3016
960d5a55 30172014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
3018 Mike Stump <mikestump@comcast.net>
3019 Richard Sandiford <rdsandiford@googlemail.com>
3020
3021 * c-ada-spec.c: Include wide-int.h.
3022 (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Remove.
3023 (dump_generic_ada_node): Use wide-int interfaces.
3024 * c-common.c: Include wide-int-print.h.
3025 (shorten_compare): Use wide-int interfaces and tree_int_cst_lt.
3026 (pointer_int_sum): Use wide-int interfaces.
3027 (c_common_nodes_and_builtins): Use make_int_cst.
3028 (match_case_to_enum_1): Use tree_fits_uhwi_p and tree_fits_shwi_p.
3029 (handle_alloc_size_attribute): Use wide-int interfaces.
3030 (get_nonnull_operand): Likewise.
3031 * c-format.c (get_constant): Use tree_fits_uhwi_p.
3032 * c-lex.c: Include wide-int.h.
3033 (narrowest_unsigned_type): Take a widest_int rather than two
3034 HOST_WIDE_INTs.
3035 (narrowest_signed_type): Likewise.
3036 (interpret_integer): Update accordingly. Use wide-int interfaces.
3037 (lex_charconst): Use wide-int interfaces.
3038 * c-pretty-print.c: Include wide-int.h.
3039 (pp_c_integer_constant): Use wide-int interfaces.
3040 * cilk.c (declare_one_free_variable): Use tree_int_cst_lt instead of
3041 INT_CST_LT_UNSIGNED.
3042
bbb88b31 30432014-05-06 Richard Biener <rguenther@suse.de>
3044
3045 * c-opts.c (c_common_post_options): For -freestanding,
3046 -fno-hosted and -fno-builtin disable pattern recognition
3047 if not enabled explicitely.
3048
022d4718 30492014-05-02 Marek Polacek <polacek@redhat.com>
3050
3051 * c.opt (Wsizeof-pointer-memaccess): Describe option.
3052
e4ab2ef3 30532014-05-01 Marek Polacek <polacek@redhat.com>
3054
3055 PR c/43245
3056 * c.opt (Wdiscarded-qualifiers): Add.
3057
52cc0072 30582014-04-30 Marek Polacek <polacek@redhat.com>
3059
3060 * c-ubsan.c (ubsan_instrument_division): Handle REAL_TYPEs. Perform
3061 INT_MIN / -1 sanitization only for integer types.
3062
4a026b48 30632014-04-25 Marek Polacek <polacek@redhat.com>
3064
3065 PR c/18079
3066 * c-common.c (handle_noinline_attribute): Warn if the attribute
3067 conflicts with always_inline attribute.
3068 (handle_always_inline_attribute): Warn if the attribute conflicts
3069 with noinline attribute.
3070
90e645fa 30712014-04-25 Marek Polacek <polacek@redhat.com>
3072
3073 PR c/60156
3074 * c-common.c (check_main_parameter_types): Warn about variadic main.
3075
db103ea4 30762014-04-24 Mike Stump <mikestump@comcast.net>
3077
3078 * c.opt (Wshadow-ivar): Default to on.
3079
06511efd 30802014-04-24 Dimitris Papavasiliou <dpapavas@gmail.com>
3081
3082 * c.opt (Wshadow-ivar, flocal-ivars, fivar-visibility): Add.
3083
cdf34fca 30842014-04-23 Marek Polacek <polacek@redhat.com>
3085
3086 * c-common.c (handle_tm_wrap_attribute): Tweak error message.
3087
7311d7c1 30882014-04-22 Jakub Jelinek <jakub@redhat.com>
3089
3090 PR sanitizer/60275
3091 * c-ubsan.c (ubsan_instrument_return): Return __builtin_trap ()
3092 if flag_sanitize_undefined_trap_on_error.
3093 (ubsan_instrument_division, ubsan_instrument_shift,
3094 ubsan_instrument_vla): Likewise. Use __ubsan_handle_*_abort ()
3095 if !flag_sanitize_recover.
3096
c1917557 30972014-04-22 Marc Glisse <marc.glisse@inria.fr>
3098
3099 PR libstdc++/43622
3100 * c-common.c (registered_builtin_types): Make non-static.
3101 * c-common.h (registered_builtin_types): Declare.
3102
b2ca6510 31032014-04-14 Richard Biener <rguenther@suse.de>
3104 Marc Glisse <marc.glisse@inria.fr>
3105
3106 PR c/60819
3107 * c-common.c (convert_vector_to_pointer_for_subscript): Properly
3108 apply may-alias the scalar pointer type when applicable.
3109
855372a3 31102014-04-12 Igor Zamyatin <igor.zamyatin@intel.com>
3111
3112 PR middle-end/60467
3113 * cilk.c (cilk_set_spawn_marker): Remove FUNCTION_DECL
3114 as possible argument for Cilk_spawn.
3115
4012a986 31162014-04-11 Tobias Burnus <burnus@net-b.de>
3117
3118 PR c/60194
3119 * c.opt (Wformat-signedness): Add
3120 * c-format.c(check_format_types): Use it.
3121
0d284870 31222014-04-11 Jason Merrill <jason@redhat.com>
3123
3124 PR c++/57926
3125 * c-common.c (sync_resolve_size, get_atomic_generic_size): Call
3126 default_conversion for an array argument.
3127
a34c1231 31282014-04-08 Marek Polacek <polacek@redhat.com>
3129
3130 PR sanitizer/60745
3131 * c-ubsan.c: Include asan.h.
3132 (ubsan_instrument_return): Call initialize_sanitizer_builtins.
3133
a35a8e18 31342014-04-03 Nathan Sidwell <nathan@codesourcery.com>
3135
3136 * c.opt (Wnon-virtual-dtor): Auto set when Weffc++.
3137
b23e42b6 31382014-04-02 Marek Polacek <polacek@redhat.com>
3139
3140 * c-common.h (c_expand_expr): Remove declaration.
3141
5a672e62 31422014-03-28 Jakub Jelinek <jakub@redhat.com>
3143
3144 PR c++/60689
3145 * c-common.c (add_atomic_size_parameter): When creating new
3146 params vector, push the size argument first.
3147
d4d068c0 31482014-03-26 Jakub Jelinek <jakub@redhat.com>
3149
3150 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
3151 ubsan_instrument_vla, ubsan_instrument_return): Adjust
3152 ubsan_create_data callers.
3153
446bdf5f 31542014-03-22 Jakub Jelinek <jakub@redhat.com>
3155
3156 PR debug/60603
3157 * c-opts.c (c_finish_options): Restore cb_file_change call to
3158 <built-in>.
3159
8895f0a3 31602014-03-13 Jakub Jelinek <jakub@redhat.com>
3161
3162 PR middle-end/36282
3163 * c-pragma.c (apply_pragma_weak): Only look at
3164 TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl)) if
3165 DECL_ASSEMBLER_NAME_SET_P (decl).
3166 (maybe_apply_pending_pragma_weaks): Exit early if
3167 vec_safe_is_empty (pending_weaks) rather than only when
3168 !pending_weaks.
3169 (maybe_apply_pragma_weak): Likewise. If !DECL_ASSEMBLER_NAME_SET_P,
3170 set assembler name back to NULL afterwards.
3171
7a5da2cd 31722014-03-11 Jason Merrill <jason@redhat.com>
3173
3174 * c.opt: Add -std=gnu++14.
3175
95093889 31762014-03-11 Ian Bolton <ian.bolton@arm.com>
3177
3178 * c-opts.c (c_common_post_options): Don't override
3179 -ffp-contract=fast if unsafe-math-optimizations is on.
3180
c9a24b37 31812014-03-08 Paulo Matos <paulo@matos-sorge.com>
3182
3183 * c.opt: Enable LTO FE for fshort-double.
3184
3f6dba6e 31852014-03-07 Jason Merrill <jason@redhat.com>
3186
3187 * c.opt: Add -std=c++14.
3188
3bfdc94f 31892014-03-06 Marek Polacek <polacek@redhat.com>
3190
3191 PR c/60197
3192 * cilk.c (contains_cilk_spawn_stmt): New function.
3193 (contains_cilk_spawn_stmt_walker): Likewise.
3194 (recognize_spawn): Give error on invalid use of _Cilk_spawn.
3195 * c-common.h (contains_cilk_spawn_stmt): Add declaration.
3196
8b3a6a4c 31972014-03-03 Jakub Jelinek <jakub@redhat.com>
3198
3199 * c-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_SIMD.
3200 (init_pragma): Call cpp_register_deferred_pragma for PRAGMA_CILK_SIMD
3201 even when flag_preprocess_only.
3202
734ec290 32032014-02-26 Jason Merrill <jason@redhat.com>
3204
3205 PR c++/59231
3206 PR c++/11586
3207 * c-common.c (shorten_compare): Don't check
3208 c_inhibit_evaluation_warnings.
3209
81aec8b8 32102014-02-19 Jakub Jelinek <jakub@redhat.com>
3211
d1081017 3212 PR c/37743
3213 * c-common.c (c_common_nodes_and_builtins): When initializing
3214 c_uint{16,32,64}_type_node, also set corresponding
3215 uint{16,32,64}_type_node to the same value.
3216
81aec8b8 3217 PR c++/60267
3218 * c-pragma.c (init_pragma): Don't call cpp_register_deferred_pragma
3219 for PRAGMA_IVDEP if flag_preprocess_only.
3220
312243bb 32212014-02-12 Jakub Jelinek <jakub@redhat.com>
3222
3223 PR c/60101
3224 * c-common.c (merge_tlist): If copy is true, call new_tlist,
3225 if false, add ADD itself, rather than vice versa.
3226 (verify_tree): For COND_EXPR, don't call merge_tlist with non-zero
3227 copy. For SAVE_EXPR, only call merge_tlist once.
3228
237e78b1 32292014-02-08 Jakub Jelinek <jakub@redhat.com>
3230
3231 PR middle-end/60092
3232 * c-common.c (handle_alloc_size_attribute): Use tree_fits_uhwi_p
3233 and tree_to_uhwi.
3234 (handle_alloc_align_attribute, handle_assume_aligned_attribute): New
3235 functions.
3236 (c_common_attribute_table): Add alloc_align and assume_aligned
3237 attributes.
3238
76fdceeb 32392014-02-06 Marek Polacek <polacek@redhat.com>
3240
3241 PR c/60087
3242 * c-common.c (warn_for_sign_compare): Call warning_at with location
3243 instead of warning.
3244
4a4dea42 32452014-02-05 Marek Polacek <polacek@redhat.com>
3246
3247 PR c/53123
3248 * c-omp.c (c_finish_omp_atomic): Remove unreachable return
3249 statement.
3250
ec704957 32512014-02-04 Marek Polacek <polacek@redhat.com>
3252
3253 PR c/60036
3254 * c-common.c (conversion_warning): Unwrap C_MAYBE_CONST_EXPR and/or
3255 SAVE_EXPR.
3256
caf62483 32572014-02-03 Marc Glisse <marc.glisse@inria.fr>
3258
3259 PR c++/53017
3260 PR c++/59211
3261 * c-common.c (handle_aligned_attribute, handle_alloc_size_attribute,
3262 handle_vector_size_attribute, handle_nonnull_attribute): Call
3263 default_conversion on the attribute argument.
3264 (handle_nonnull_attribute): Increment the argument number.
3265
ec761d5a 32662014-01-31 Marek Polacek <polacek@redhat.com>
3267
3268 PR c/59963
3269 * c-common.c (add_atomic_size_parameter): Pass vNULL to
3270 build_function_call_vec.
3271 (resolve_overloaded_builtin): Likewise.
3272 * c-common.h (build_function_call_vec): Adjust declaration.
3273
22a75734 32742014-01-30 Marek Polacek <polacek@redhat.com>
3275
3276 PR c/59940
3277 * c-common.h (unsafe_conversion_p): Adjust declaration.
3278 (warnings_for_convert_and_check): Likewise.
3279 (convert_and_check): Likewise.
3280 * c-common.c (unsafe_conversion_p): Add location parameter. Call
3281 expansion_point_location_if_in_system_header on it.
3282 (warnings_for_convert_and_check): Add location parameter. Call
3283 expansion_point_location_if_in_system_header on it. Use it.
3284 (convert_and_check): Add location parameter. Use it.
3285 (conversion_warning): Likewise.
3286 (c_add_case_label): Adjust convert_and_check calls.
3287 (scalar_to_vector): Adjust unsafe_conversion_p calls.
3288
a89e6c15 32892014-01-24 Balaji V. Iyer <balaji.v.iyer@intel.com>
3290
3291 * c-common.c (c_define_builtins): Replaced flag_enable_cilkplus with
3292 flag_cilkplus.
3293 * c-pragma.c (init_pragma): Likewise.
3294 * c.opt: Likewise.
3295
2623625f 32962014-01-23 Marek Polacek <polacek@redhat.com>
3297
3298 PR c/59846
3299 * c-common.c (shorten_compare): Add location_t parameter.
3300 * c-common.h (shorten_binary_op): Adjust declaration.
3301
46da3601 33022014-01-23 Marek Polacek <polacek@redhat.com>
3303
3304 PR c/58346
3305 * c-common.c (pointer_to_zero_sized_aggr_p): New function.
3306 * c-common.h: Declare it.
3307
c9743c6a 33082014-01-20 Eric Botcazou <ebotcazou@adacore.com>
3309
3310 * c-ada-spec.h (dump_ada_specs): Revert prototype change.
3311 * c-ada-spec.c (dump_ads): Likewise.
3312 (cpp_check): Likewise.
3313 (dump_ada_specs): Likewise.
3314
33152014-01-15 Laurent Alfonsi <laurent.alfonsi@st.com>
36e33c6a 3316
3317 PR c++/49718
3318 * c-common.c (handle_no_instrument_function_attribute): Allow
3319 no_instrument_function attribute in class member
3320 definition/declaration.
3321
1248c663 33222014-01-15 Jakub Jelinek <jakub@redhat.com>
3323
3324 PR c/58943
3325 * c-omp.c (c_finish_omp_atomic): Set in_late_binary_op around
3326 build_modify_expr with non-NOP_EXPR opcode. Handle return from it
3327 being COMPOUND_EXPR.
3328 (c_finish_omp_for): Handle incr being COMPOUND_EXPR with first
3329 operand a SAVE_EXPR and second MODIFY_EXPR.
3330
6e5c480b 33312014-01-09 Jakub Jelinek <jakub@redhat.com>
3332
3333 PR target/58115
3334 * c-pch.c (c_common_write_pch): Call
3335 prepare_target_option_nodes_for_pch.
3336
3aea1f79 33372014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
3338
3339 Update copyright years
3340
e4f22041 33412014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
3342
3343 * array-notation-common.c, c-cilkplus.c: Use the standard form for
3344 the copyright notice.
3345
7fb0fe24 33462013-12-28 Eric Botcazou <ebotcazou@adacore.com>
3347
3348 * c-ada-spec.c (print_constructor): New function.
3349 (print_destructor): Retrieve the origin of the destructor.
3350 (print_ada_declaration): Revamp handling of constructors/destructors.
3351
468088ac 33522013-12-23 Stuart Hastings <stuart@apple.com>
3353 Bill Maddox <maddox@google.com>
3354 Jason Merrill <jason@redhat.com>
3355
3356 * c.opt: Add -fdeclone-ctor-dtor.
3357 * c-opts.c (c_common_post_options): Default to on iff -Os.
3358
74acc703 33592013-12-18 Balaji V. Iyer <balaji.v.iyer@intel.com>
3360
3361 * c-common.c (c_common_attribute_table): Added "cilk simd function"
3362 attribute.
3363 * c-pragma.h (enum pragma_cilk_clause): Remove.
3364 (enum pragma_omp_clause): Added the following fields:
3365 PRAGMA_CILK_CLAUSE_NOMASK, PRAGMA_CILK_CLAUSE_MASK,
3366 PRAGMA_CILK_CLAUSE_VECTORLENGTH, PRAGMA_CILK_CLAUSE_NONE,
3367 PRAGMA_CILK_CLAUSE_LINEAR, PRAGMA_CILK_CLAUSE_PRIVATE,
3368 PRAGMA_CILK_CLAUSE_FIRSTPRIVATE, PRAGMA_CILK_CLAUSE_LASTPRIVATE,
3369 PRAGMA_CILK_CLAUSE_UNIFORM.
3370
8204c077 3371
433e804e 33722013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com>
3373
3374 * cilk.c (cilk_outline): Made this function non-static.
3375 (gimplify_cilk_spawn): Removed pre_p and post_p arguments.
3376 (create_cilk_wrapper): Added a new parameter: a function pointer.
3377 (c_install_body_w_frame_cleanup): Remove
3378 (extract_free_variables): Added VEC_INIT_EXPR and CONSTRUCTOR case.
3379 * c-common.h (cilk_outline): New prototype.
3380 (gimplify_cilk_spawn): Removed two parameters.
3381 (cilk_install_body_with_frame_cleanup): New prototype.
3382 * c-gimplify.c (c_gimplify_expr): Added MODIFY_EXPR, CALL_EXPR and
3383 CILK_SPAWN_STMT case.
3384
5bcc7e60 33852013-12-11 Bernd Schmidt <bernds@codesourcery.com>
3386
e66325ea 3387 * c-common.c (c_fully_fold_internal): Handle ADDR_SPACE_CONVERT_EXPR.
3388
5bcc7e60 3389 * c-common.h (enum c_tree_index): Remove CTI_INT_ARRAY_TYPE.
3390 (int_array_type_node): Remove.
3391 * c-common.c (c_common_nodes_and_builtins): Don't build it.
3392
0b26ec77 33932013-12-05 Marek Polacek <polacek@redhat.com>
3394
3395 PR c/52023
3396 * c-common.c (c_sizeof_or_alignof_type): Move a declaration into
3397 [ADJUST_FIELD_ALIGN].
3398
a179a7dc 33992013-12-04 Joseph Myers <joseph@codesourcery.com>
3400
3401 PR c/52023
3402 * c-common.c (c_sizeof_or_alignof_type): Add parameter min_alignof
3403 and check field alignment if set.
3404 * c-common.h (c_sizeof_or_alignof_type): Update prototype.
3405 (c_sizeof, c_alignof): Update calls to c_sizeof_or_alignof_type.
3406
8204c077 34072013-12-04 Jakub Jelinek <jakub@redhat.com>
137559b2 3408 Marek Polacek <polacek@redhat.com>
3409
3410 * c-gimplify.c (c_gimplify_expr): If doing the integer-overflow
3411 sanitization, call unsigned_type_for only when !TYPE_OVERFLOW_WRAPS.
3412
648fd348 34132013-11-29 H.J. Lu <hongjiu.lu@intel.com>
3414
3415 PR c/59309
3416 * cilk.c (gimplify_cilk_spawn): Properly handle function without
3417 arguments.
3418
253e1cae 34192013-11-29 Jakub Jelinek <jakub@redhat.com>
3420
3421 PR c/59280
3422 * c-common.c (get_priority): If TREE_VALUE (args) is IDENTIFIER_NODE,
3423 goto invalid. If it is error_mark_node, don't issue further
3424 diagnostics.
3425
3e398f5b 34262013-11-28 Sergey Ostanevich <sergos.gnu@gmail.com>
3427
3428 * c.opt (Wopenmp-simd): New.
3429
020bc656 34302013-11-22 Jakub Jelinek <jakub@redhat.com>
3431
3432 * c-ubsan.h (ubsan_instrument_return): New prototype.
3433 * c-ubsan.c (ubsan_instrument_return): New function.
3434
bc61cadb 34352013-11-22 Andrew MacLeod <amacleod@redhat.com>
3436
3437 * c-common.c: Add required include files from gimple.h.
3438 * c-gimplify.c: Likewise
3439 * cilk.c: Likewise
3440
3df42822 34412013-11-22 David Malcolm <dmalcolm@redhat.com>
3442
3443 * c-common.c (unsafe_conversion_p): Remove use of
3444 EXPR_LOC_OR_HERE macro.
3445 (conversion_warning): Likewise.
3446 (warnings_for_convert_and_check): Likewise.
3447 (warn_for_collisions_1): Likewise.
3448 (shorten_compare): Likewise, and remove use of in_system_header
3449 macro, using the location from the former.
3450 * c-lex.c (dump_one_header): Remove use of input_filename macro.
3451 (cb_def_pragma): Remove use of in_system_header macro.
3452 (lex_string): Likewise.
3453 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
3454
8c53c46c 34552013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com>
3456 Mike Stump <mikestump@comcast.net>
3457 Richard Sandiford <rdsandiford@googlemail.com>
3458
3459 * c-ada-spec.c (is_simple_enum): Use tree_to_shwi and tree_to_uhwi
3460 instead of TREE_INT_CST_LOW, in cases where there is a protecting
3461 tree_fits_shwi_p or tree_fits_uhwi_p.
3462 (dump_generic_ada_node): Likewise.
3463 * c-format.c (check_format_arg): Likewise.
3464 * c-pretty-print.c (pp_c_integer_constant): Likewise.
3465
5200ef07 34662013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com>
3467
3468 * c-common.c (check_function_arguments_recurse): Use tree_to_uhwi.
3469
ca9d7d74 34702013-11-19 Joshua J Cogliati <jrincayc@yahoo.com>
3471
3472 PR c/53001
3473 * c-common.c (unsafe_conversion_p): Make this function
3474 return an enumeration with more detail.
3475 (conversion_warning): Use the new return type of
3476 unsafe_conversion_p to separately warn either about conversions
3477 that lower floating point number precision or about the other
3478 kinds of conversions.
3479 * c-common.h (enum conversion_safety): New enumeration.
3480 (unsafe_conversion_p): switching return type to
3481 conversion_safety enumeration.
3482 * c.opt: Adding new warning -Wfloat-conversion and
3483 enabling it with -Wconversion.
3484
0391a567 34852013-11-19 Basile Starynkevitch <basile@starynkevitch.net>
3486
3487 * c-opts.c: Include plugin.h.
3488 (cb_file_change): Invoke plugin event PLUGIN_INCLUDE_FILE.
3489
19b928d9 34902013-11-19 Marek Polacek <polacek@redhat.com>
3491
3492 * c-ubsan.c (ubsan_instrument_division): Adjust ubsan_create_data
3493 call.
3494 (ubsan_instrument_shift): Likewise.
3495 (ubsan_instrument_vla): Likewise.
3496
aa59f000 34972013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
3498
3499 * c-common.c (convert_vector_to_pointer_for_subscript): Remove
3500 cast to unsigned type.
3501
08f817b3 35022013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
3503
3504 * c-common.c (fold_offsetof_1): Use tree_to_uhwi rather than
3505 tree_low_cst.
3506 (complete_array_type): Update comment to refer to tree_to_[su]hwi
3507 rather than tree_low_cst.
3508
6a0712d4 35092013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
3510
3511 * c-common.c, c-cppbuiltin.c: Replace tree_low_cst (..., 1) with
3512 tree_to_uhwi throughout.
3513
fcb97e84 35142013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
3515
3516 * c-common.c, c-format.c, c-omp.c, c-pretty-print.c: Replace
3517 tree_low_cst (..., 0) with tree_to_shwi throughout.
3518
cd4547bf 35192013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
3520
3521 * c-ada-spec.c, c-common.c, c-pretty-print.c: Replace
3522 host_integerp (..., 1) with tree_fits_uhwi_p throughout.
3523
35ec552a 35242013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
3525
3526 * c-ada-spec.c, c-common.c, c-format.c, c-pretty-print.c: Replace
3527 host_integerp (..., 0) with tree_fits_shwi_p throughout.
3528
f2697631 35292013-11-15 Aldy Hernandez <aldyh@redhat.com>
3530
3531 * c-cilkplus.c: New file.
3532 * c-common.c (readonly_error): Add location argument.
3533 * c-common.h (readonly_error): Same.
3534 (c_finish_cilk_clauses): Protoize.
3535 (c_check_cilk_loop): Same.
3536 c-omp.c (c_finish_omp_for): Handle CILK_SIMD nodes.
3537 Do not fail on error_mark_node.
3538 Abstract increment canonicalization to here...
3539 (c_omp_for_incr_canonicalize_ptr): New.
3540 c-pragma.c (init_pragma): Register "simd" pragma.
3541 c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_SIMD.
3542 (enum pragma_cilk_clause): New.
3543
0aa8c34e 35442013-11-15 Richard Sandiford <rdsandiford@googlemail.com>
3545
3546 * c-pretty-print.c (pp_c_character_constant): Remove unnecessary
3547 wchar_type and host_integerp checks.
3548
e795d6e1 35492013-11-14 Andrew MacLeod <amacleod@redhat.com>
3550
3551 * c-common.c: Likewise.
3552 * c-gimplify.c: Likewise.
3553 * cilk.c: Likewise.
3554
9ed99284 35552013-11-14 Diego Novillo <dnovillo@google.com>
3556
3557 * c-common.c: Include fold-const.h.
3558 Include stor-layout.h.
3559 Include calls.h.
3560 Include stringpool.h.
3561 Include attribs.h.
3562 Include varasm.h.
3563 Include trans-mem.h.
3564 * c-cppbuiltin.c: Include stor-layout.h.
3565 Include stringpool.h.
3566 * c-format.c: Include stringpool.h.
3567 * c-lex.c: Include stringpool.h.
3568 Include stor-layout.h.
3569 * c-pragma.c: Include stringpool.h.
3570 Include attribs.h.
3571 Include varasm.h.
3572 Include gcc-symtab.h.
3573 * c-pretty-print.c: Include stor-layout.h.
3574 Include attribs.h.
3575 * cilk.c: Include stringpool.h.
3576 Include calls.h.
3577
4fba5eb9 35782013-11-13 Joseph Myers <joseph@codesourcery.com>
3579
3580 * c-common.h (enum rid): Add RID_AUTO_TYPE.
3581 * c-common.c (c_common_reswords): Add __auto_type.
3582 (keyword_begins_type_specifier): Handle RID_AUTO_TYPE.
3583
a8783bee 35842013-11-12 Andrew MacLeod <amacleod@redhat.com>
3585
e795d6e1 3586 * c-common.c: Include gimplify.h.
3587 * c-gimplify.c: Likewise.
3588 * cilk.c: Likewise.
3589 * c-omp.c: Include gimple-expr.h instead of gimple.h.
3590 * c-ubsan.c: Don't include gimple.h.
a8783bee 3591
d184e0c0 35922013-11-12 Joseph Myers <joseph@codesourcery.com>
3593
3594 * c-common.c (c_common_reswords): Add _Thread_local.
3595
a056826c 35962013-11-09 Joseph Myers <joseph@codesourcery.com>
3597
3598 * c-common.c (atomic_size_supported_p): New function.
3599 (resolve_overloaded_atomic_exchange)
3600 (resolve_overloaded_atomic_compare_exchange)
3601 (resolve_overloaded_atomic_load, resolve_overloaded_atomic_store):
3602 Use it instead of comparing size with a local list of sizes.
3603
b560fabd 36042013-11-07 Andrew MacLeod <amacleod@redhat.com>
3605 Joseph Myers <joseph@codesourcery.com>
3606
3607 * c-common.h (enum rid): Add RID_ATOMIC.
3608 * c-common.c (c_common_reswords): Add _Atomic.
3609 (sync_resolve_params): Use TYPE_MAIN_VARIANT on pointer argument.
3610 (keyword_is_type_qualifier): Accept RID_ATOMIC.
3611 * c-format.c (check_format_types): Check for extra _Atomic
3612 qualifiers in format argument.
3613 * c-pretty-print.c (pp_c_cv_qualifiers): Handle atomic qualifier.
3614 (pp_c_type_qualifier_list): Mention _Atomic in comment.
3615
5b1a0622 36162013-11-06 Tobias Burnus <burnus@net-b.de>
3617
3618 * c-common.c (reason_option_codes_t): Add CPP_W_DATE_TIME.
3619
4f8f4cb8 36202013-11-06 Joseph Myers <joseph@codesourcery.com>
3621
3622 * c-opts.c (c_common_post_options): Set -ffp-contract=off in C
3623 standards modes.
3624 * c-cppbuiltin.c (cpp_iec_559_value): Consider -ffp-contract=fast
3625 to mean lack of IEEE 754 support.
3626
9148bda3 36272013-11-05 Tobias Burnus <burnus@net-b.de>
3628
3629 * c.opt (-Wdate-time): New option
3630 * c-opts.c (sanitize_cpp_opts): Pass on to libcpp.
3631
08c5f4d5 36322013-11-05 Joseph Myers <joseph@codesourcery.com>
3633
3634 * c-cppbuiltin.c (cpp_iec_559_value): Test
3635 flag_excess_precision_cmdline not flag_excess_precision.
3636
c630ef93 36372013-11-05 Tobias Burnus <burnus@net-b.de>
3638
3639 * c.opt (fopenmp-simd): New option.
3640 * c-pragma.c (omp_pragmas): Move pragmas which can contain simd to ...
3641 (omp_pragmas): ... this new struct.
3642 (c_pp_lookup_pragma): Also walk omp_pragmas.
3643 (init_pragma): Init pragmas for -fopenmp-simd.
3644
7354a89b 36452013-11-04 Marek Polacek <polacek@redhat.com>
3646
3647 PR c++/58979
3648 * c-common.c (invalid_indirection_error): Handle RO_ARROW_STAR case.
3649
4c866b9b 36502013-11-04 Joseph Myers <joseph@codesourcery.com>
3651
3652 * c-cppbuiltin.c (cpp_iec_559_value, cpp_iec_559_complex_value):
3653 New functions.
3654 (c_cpp_builtins): Define __GCC_IEC_559 and __GCC_IEC_559_COMPLEX.
3655
e2a6a333 36562013-11-04 Eric Botcazou <ebotcazou@adacore.com>
3657
3658 * c-ada-spec.h (cpp_operation): Add IS_TRIVIAL.
3659 (dump_ada_specs): Adjust prototype of second callback.
3660 * c-ada-spec.c (cpp_check): New global variable.
3661 (dump_ada_nodes): Remove cpp_check parameter and do not pass it down.
3662 (print_generic_ada_decl): Likewise.
3663 (has_static_fields): Change return type to bool and add guard.
3664 (has_nontrivial_methods): New predicate.
3665 (is_tagged_type): Change return type to bool.
3666 (separate_class_package): Call has_nontrivial_methods.
3667 (pp_ada_tree_identifier): Minor tweaks.
3668 (dump_ada_function_declaration): Adjust calls to dump_generic_ada_node.
3669 (dump_ada_array_domains): Likewise.
3670 (dump_ada_array_type): Likewise.
3671 (dump_template_types): Remove cpp_check parameter and do not pass it to
3672 dump_generic_ada_node.
3673 (dump_ada_template): Likewise.
3674 (dump_generic_ada_node): Remove cpp_check parameter and do not pass it
3675 recursively.
3676 (print_ada_methods): Change return type to integer. Remove cpp_check
3677 parameter and do not pass it down.
3678 (dump_nested_types): Remove cpp_check parameter and do not pass it to
3679 dump_generic_ada_node.
3680 (print_ada_declaration): Likewise. Test RECORD_OR_UNION_TYPE_P before
3681 accessing methods.
3682 (print_ada_struct_decl): Remove cpp_check parameter and do not pass it
3683 down. Use has_nontrivial_methods to recognize C++ classes. Use return
3684 value of print_ada_methods.
3685 (dump_ads): Rename cpp_check parameter to check and adjust prototype.
3686 Set cpp_check to it before invoking dump_ada_nodes.
3687 (dump_ada_specs): Likewise.
3688
2c4c3477 36892013-11-03 Marek Polacek <polacek@redhat.com>
3690
3691 * c-ubsan.c: Don't include hash-table.h.
3692 (ubsan_instrument_vla): New function.
3693 * c-ubsan.h: Declare it.
3694
452659af 36952013-10-31 David Malcolm <dmalcolm@redhat.com>
3696
3697 Automated part of renaming of symtab_node_base to symtab_node.
3698
3699 Patch autogenerated by rename_symtab.py from
3700 https://github.com/davidmalcolm/gcc-refactoring-scripts
3701 revision 58bb219cc090b2f4516a9297d868c245495ee622
3702
3703 * c-pragma.c (maybe_apply_pending_pragma_weaks): Rename
3704 symtab_node_base to symtab_node.
3705
4d6f7dd4 37062013-10-31 Edward Smith-Rowland <3dw4rd@verizon.net>
3707
3708 Implement C++14 digit separators.
3709 * c-lex.c (interpret_float): Remove digit separators from scratch string
3710 before building real literal.
3711
06cfe805 37122013-10-30 Jakub Jelinek <jakub@redhat.com>
3713
3714 * cilk.c (create_cilk_helper_decl): Use HOST_WIDE_INT_PRINT_DEC.
3715
d037099f 37162013-10-29 Balaji V. Iyer <balaji.v.iyer@intel.com>
3717
3718 * c-common.c (c_common_reswords[]): Added _Cilk_spawn and _Cilk_sync
3719 fields.
3720 (c_define_builtins): Called cilk_init_builtins if Cilk Plus is
3721 enabled.
3722 * c-common.h (enum rid): Added RID_CILK_SPAWN and RID_CILK_SYNC.
3723 (insert_cilk_frame): New prototype.
3724 (cilk_init_builtins): Likewise.
3725 (gimplify_cilk_spawn): Likewise.
3726 (c_cilk_install_body_w_frame_cleanup): Likewise.
3727 (cilk_detect_spawn_and_unwrap): Likewise.
3728 (cilk_set_spawn_marker): Likewise.
3729 (build_cilk_sync): Likewise.
3730 (build_cilk_spawn): Likewise.
3731 * cilk.c: New file.
3732
02774f2d 37332013-10-29 David Malcolm <dmalcolm@redhat.com>
3734
3735 Patch autogenerated by refactor_symtab.py from
3736 https://github.com/davidmalcolm/gcc-refactoring-scripts
3737 revision 58bb219cc090b2f4516a9297d868c245495ee622
3738
3739 * c-gimplify.c (c_genericize): Update for conversion of symtab types
3740 to a true class hierarchy.
3741 * c-pragma.c (maybe_apply_pending_pragma_weaks): Likewise.
3742
31fe10fd 37432013-10-27 Richard Sandiford <rdsandiford@googlemail.com>
3744
3745 * c-lex.c (interpret_integer): Remove call to cpp_num_sign_extend.
3746
b1c06ff9 37472013-10-26 Jeff Law <law@redhat.com>
3748
1f78217c 3749 * c-common.c (c_define_builtins): Remove mudflap support.
3750 * c.opt: Ignore and warn for mudflap options.
b1c06ff9 3751
48a972c8 37522013-10-24 Tobias Burnus <burnus@net-b.de>
4644b593 3753
3754 PR other/33426
3755 * c-pragma.c (init_pragma) Add #pragma ivdep handling.
3756 * c-pragma.h (pragma_kind): Add PRAGMA_IVDEP.
3757
546a04b1 37582013-10-23 Jason Merrill <jason@redhat.com>
3759
3760 * c-format.c (gcc_cxxdiag_char_table): Add %X.
3761
bc7bff74 37622013-10-11 Jakub Jelinek <jakub@redhat.com>
3763
d62c713e 3764 * c-common.h (omp_clause_mask::operator !=): New method.
3765 * c-omp.c (c_omp_split_clauses): Use if ((mask & something) != 0)
3766 instead of if (mask & something) tests everywhere.
3767
bc7bff74 3768 * c-cppbuiltin.c (c_cpp_builtins): Predefine _OPENMP to
3769 201307 instead of 201107.
3770 * c-common.c (DEF_FUNCTION_TYPE_8): Define.
3771 (c_common_attribute_table): Add "omp declare target" and
3772 "omp declare simd" attributes.
3773 (handle_omp_declare_target_attribute,
3774 handle_omp_declare_simd_attribute): New functions.
3775 * c-omp.c: Include c-pragma.h.
3776 (c_finish_omp_taskgroup): New function.
3777 (c_finish_omp_atomic): Add swapped argument, if true,
3778 build the operation first with rhs, lhs arguments and use NOP_EXPR
3779 build_modify_expr.
3780 (c_finish_omp_for): Add code argument, pass it down to make_code.
3781 (c_omp_split_clauses): New function.
3782 (c_split_parallel_clauses): Removed.
3783 (c_omp_declare_simd_clause_cmp, c_omp_declare_simd_clauses_to_numbers,
3784 c_omp_declare_simd_clauses_to_decls): New functions.
3785 * c-common.h (omp_clause_mask): New type.
3786 (OMP_CLAUSE_MASK_1): Define.
3787 (omp_clause_mask::omp_clause_mask, omp_clause_mask::operator &=,
3788 omp_clause_mask::operator |=, omp_clause_mask::operator ~,
3789 omp_clause_mask::operator |, omp_clause_mask::operator &,
3790 omp_clause_mask::operator <<, omp_clause_mask::operator >>,
3791 omp_clause_mask::operator ==): New methods.
3792 (enum c_omp_clause_split): New.
3793 (c_finish_omp_taskgroup): New prototype.
3794 (c_finish_omp_atomic): Add swapped argument.
3795 (c_finish_omp_for): Add code argument.
3796 (c_omp_split_clauses): New prototype.
3797 (c_split_parallel_clauses): Removed.
3798 (c_omp_declare_simd_clauses_to_numbers,
3799 c_omp_declare_simd_clauses_to_decls): New prototypes.
3800 * c-pragma.c (omp_pragmas): Add new OpenMP 4.0 constructs.
3801 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_CANCEL,
3802 PRAGMA_OMP_CANCELLATION_POINT, PRAGMA_OMP_DECLARE_REDUCTION,
3803 PRAGMA_OMP_DISTRIBUTE, PRAGMA_OMP_END_DECLARE_TARGET, PRAGMA_OMP_SIMD,
3804 PRAGMA_OMP_TARGET, PRAGMA_OMP_TASKGROUP and PRAGMA_OMP_TEAMS.
3805 Remove PRAGMA_OMP_PARALLEL_FOR and PRAGMA_OMP_PARALLEL_SECTIONS.
3806 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_ALIGNED,
3807 PRAGMA_OMP_CLAUSE_DEPEND, PRAGMA_OMP_CLAUSE_DEVICE,
3808 PRAGMA_OMP_CLAUSE_DIST_SCHEDULE, PRAGMA_OMP_CLAUSE_FOR,
3809 PRAGMA_OMP_CLAUSE_FROM, PRAGMA_OMP_CLAUSE_INBRANCH,
3810 PRAGMA_OMP_CLAUSE_LINEAR, PRAGMA_OMP_CLAUSE_MAP,
3811 PRAGMA_OMP_CLAUSE_NOTINBRANCH, PRAGMA_OMP_CLAUSE_NUM_TEAMS,
3812 PRAGMA_OMP_CLAUSE_PARALLEL, PRAGMA_OMP_CLAUSE_PROC_BIND,
3813 PRAGMA_OMP_CLAUSE_SAFELEN, PRAGMA_OMP_CLAUSE_SECTIONS,
3814 PRAGMA_OMP_CLAUSE_SIMDLEN, PRAGMA_OMP_CLAUSE_TASKGROUP,
3815 PRAGMA_OMP_CLAUSE_THREAD_LIMIT, PRAGMA_OMP_CLAUSE_TO and
3816 PRAGMA_OMP_CLAUSE_UNIFORM.
3817
d7dcba40 38182013-10-09 Marc Glisse <marc.glisse@inria.fr>
3819
3820 PR tree-optimization/20318
3821 * c-common.c (handle_returns_nonnull_attribute): New function.
3822 (c_common_attribute_table): Add returns_nonnull.
3823
0b7282f1 38242013-10-03 Marc Glisse <marc.glisse@inria.fr>
3825
3826 PR c++/19476
3827 * c.opt (fcheck-new): Move to common.opt.
3828
51f553af 38292013-09-25 Marek Polacek <polacek@redhat.com>
3830 Jakub Jelinek <jakub@redhat.com>
3831
3832 PR sanitizer/58413
3833 * c-ubsan.c (ubsan_instrument_shift): Don't instrument
3834 an expression if we can prove it is correct.
3835 (ubsan_instrument_division): Likewise. Remove unnecessary
3836 check.
3837
05f893e1 38382013-09-18 Marek Polacek <polacek@redhat.com>
3839
3840 PR sanitizer/58411
3841 * c-common.c (handle_no_sanitize_undefined_attribute): New function.
3842 Declare it.
3843 (struct attribute_spec c_common_att): Add no_sanitize_undefined.
3844
236ce1d1 38452013-09-14 Iain Sandoe <iain@codesourcery.com>
3846
3847 PR target/48094
3848 * c.opt (fgnu-runtime, fnext-runtime, fobjc-abi-version,
3849 fobjc-gc, freplace-objc-classes): Accept for LTO.
3850
f9f68d35 38512013-09-13 Jacek Caban <jacek@codeweavers.com>
3852
3853 * c-target.def: New hook
3854
ba2f764e 38552013-09-09 Paolo Carlini <paolo.carlini@oracle.com>
3856
3857 PR c++/43452
3858 * c.opt (Wdelete-incomplete): Add.
3859
73437615 38602013-09-08 Joern Rennecke <joern.rennecke@embecosm.com>
3861
3862 * c-common.c (same_scalar_type_ignoring_signedness): Delete.
3863 (vector_types_compatible_elements_p): New function.
3864 * c-common.h: (same_scalar_type_ignoring_signedness): Delete
3865 declaration.
3866 (vector_types_compatible_elements_p): Declare.
3867
95af4c75 38682013-09-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
3869
3870 * c-pretty-print.h (c_pretty_printer::simple_type_specifier): Now
3871 a virtual member function.
3872 (pp_simple_type_specifier): Remove.
3873 (pp_c_type_specifier): Likewise.
3874 * c-pretty-print.c (c_pretty_printer::simple_type_specifier):
3875 Rename from pp_c_type_specifier. Adjust.
3876 (c_pretty_printer::c_pretty_printer): Do not assign to
3877 simple_type_specifier.
3878
eaab24b9 38792013-09-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
3880
3881 * c-pretty-print.h (c_pretty_printer::type_id): Now a virtual
3882 member function.
3883 (c_pretty_printer::storage_class_specifier): Likewise.
3884 (c_pretty_printer::initializer): Likewise.
3885 (pp_declaration): Remove.
3886 (pp_declaration_specifiers): Likewise.
3887 (pp_abstract_declarator): Likewise.
3888 (pp_declarator): Likewise.
3889 (pp_type_id): Likewise.
3890 (pp_statement): Likewise.
3891 (pp_constant): Likewise.
3892 (pp_id_expression): Likewise.
3893 (pp_primary_expression): Likewise.
3894 (pp_unary_expression): Likewise.
3895 (pp_multiplicative_expression): Likewise.
3896 (pp_conditional_expression): Likewise.
3897 (pp_assignment_expression): Likewise.
3898 (pp_expression): Likewise.
3899 (pp_c_type_id): Likewise.
3900 (pp_c_storage_class_specifier): Likewise.
3901 * c-pretty-print.c (pp_c_type_cast): Tidy.
3902 (pp_c_pointer): Likewise.
3903 (pp_c_type_specifier): Likewise.
3904 (pp_c_parameter_type_list): Likewise.
3905 (pp_c_function_definition): Likewise.
3906 (pp_c_init_declarator): Likewise.
3907 (pp_c_initializer_list): Likewise.
3908 (pp_c_constructor_elts): Likewise.
3909 (c_pretty_printer::direct_abstract_declarator): Likewise.
3910 (c_pretty_printer::declaration_specifiers): Likewise.
3911 (c_pretty_printer::primary_expression): Likewise.
3912 (c_pretty_printer::postfix_expression): Likewise.
3913 (c_pretty_printer::type_id): Rename from pp_c_type_id.
3914 (c_pretty_printer::storage_class_specifier): Rename from
3915 pp_c_storage_class_specifier.
3916 (c_pretty_printer::initializer): Rename from pp_c_initializer.
3917 (c_pretty_printer::c_pretty_printer): Do not assign to type_id,
3918 storage_class_specifier, initializer, offset_list, flags.
3919
9e46467d 39202013-08-30 Marek Polacek <polacek@redhat.com>
3921
3922 * c-ubsan.c: New file.
3923 * c-ubsan.h: New file.
3924
36a8d9b9 39252013-08-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
3926
3927 * c-pretty-print.h (c_pretty_printer::declaration): Now a virtual
3928 member function.
3929 (c_pretty_printer::declaration_specifiers): Likewise.
3930 (c_pretty_printer::declarator): Likewise.
3931 (c_pretty_printer::abstract_declarator): Likewise.
3932 (c_pretty_printer::direct_abstract_declarator): Likewise.
3933 (c_pretty_printer::direct_declarator): Likewise.
3934 (c_pretty_printer::function_specifier): Likewise.
3935 (pp_declaration): Adjust.
3936 (pp_declaration_specifiers): Likewise.
3937 (pp_abstract_declarator): Likewise.
3938 (pp_direct_declarator): Likewise.
3939 (pp_function_specifier): Likewise.
3940 (pp_direct_abstract_declarator): Remove as unused.
3941 (pp_c_declaration): Remove.
3942 (pp_c_declaration_specifiers): Likewise.
3943 (pp_c_declarator): Likewise.
3944 (pp_c_direct_declarator): Likewise.
3945 (pp_c_function_specifier): Likewise.
3946 (pp_c_direct_abstract_declarator): Likewise.
3947 * c-pretty-print.c (c_pretty_printer::abstract_declarator): Rename
3948 from pp_c_abstract_declarator. Adjust.
3949 (c_pretty_printer::direct_abstract_declarator): Rename from
3950 pp_c_direct_abstract_declarator. Adjust.
3951 (c_pretty_printer::function_specifier): Rename from
3952 pp_c_function_specifier. Adjust.
3953 (c_pretty_printer::declaration_specifiers): Rename from
3954 pp_c_declaration_specifiers. Adjust.
3955 (c_pretty_printer::direct_declarator): Rename from
3956 pp_c_direct_declarator. Adjust.
3957 (c_pretty_printer::declarator): Rename from pp_c_declarator. Adjust.
3958 (c_pretty_printer::declaration): Rename from pp_c_declaration. Adjust.
3959 (c_pretty_printer::c_pretty_printer): Do not assign to
3960 declaration, declaration_specifiers, declarator,
3961 direct_declarator, direct_abstract_declarator, function_specifier.
3962
30635c2e 39632013-08-26 Gabriel Dos Reis <gdre@integrable-solutions.net>
3964
3965 * c-pretty-print.h (c_pretty_printer::unary_expression): Now a
3966 virtual member function.
3967 (c_pretty_printer::multiplicative_expression): Likewise.
3968 (c_pretty_printer::conditional_expression): Likewise.
3969 (c_pretty_printer::assignment_expression): Likewise.
3970 (c_pretty_printer::expression): Likewise.
3971 (pp_unary_expression): Adjust.
3972 (pp_multiplicative_expression): Likewise.
3973 (pp_assignment_expression): Likewise.
3974 (pp_conditional_expression): Likewise.
3975 (pp_expression): Likewise.
3976 * c-pretty-print.c (c_pretty_printer::unary_expression): Rename
3977 from pp_c_unary_expression. Adjust.
3978 (c_pretty_printer::multiplicative_expression): Rename from
3979 pp_c_multiplicative_expression. Adjust.
3980 (c_pretty_printer::conditional_expression): Rename from
3981 pp_c_conditional_expression. Adjust.
3982 (c_pretty_printer::assignment_expression): Rename from
3983 pp_c_assignment_expression. Adjust.
3984 (c_pretty_printer::expression): Rename from pp_c_expression. Adjust.
3985 (c_pretty_printer::c_pretty_printer): Do not assign to
3986 unary_expression, multiplicative_expression,
3987 conditional_expression, expression.
3988
027d08ed 39892013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
3990
3991 * c-pretty-print.h (c_pretty_printer::postfix_expression): Now a
3992 virtual member function.
3993 (pp_postfix_expression): Adjust.
3994 (pp_c_postfix_expression): Remove.
3995 * c-pretty-print.c (c_pretty_printer::postfix_expression): Rename
3996 from pp_c_postfix_expression. Adjust.
3997 (c_pretty_printer::c_pretty_printer): Do not assign to
3998 postfix_expression.
3999
f873303a 40002013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
4001
4002 * c-pretty-print.h (c_pretty_printer::primary_expression): Now a
4003 virtua member function.
4004 (pp_primary_expression): Adjust.
4005 (pp_c_primary_expression): Remove.
4006 * c-pretty-print.c (c_pretty_printer::primary_expression): Rename
4007 from pp_c_primary_expression. Adjust.
4008 (pp_c_initializer_list): Use pp_primary_expression.
4009 (c_pretty_printer::c_pretty_printer): Do not assign to
4010 primary_expression.
4011
08e3e481 40122013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
4013
4014 * c-pretty-print.h (c_pretty_printer::translate_string): Declare.
4015 * c-pretty-print.c (M_): Remove.
4016 (c_pretty_printer::translate_string): Define.
4017 (pp_c_type_specifier): Use it.
4018 (pp_c_primary_expression): Likewise.
4019 (pp_c_expression): Likewise.
4020
1fc4a87f 40212013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
4022
4023 * c-pretty-print.h (c_pretty_printer::id_expression): Now a
4024 virtual function.
4025 (pp_c_id_expression): Remove.
4026 (pp_id_expression): Adjust.
4027 * c-pretty-print.c (c_pretty_printer::id_expression): Rename from
4028 pp_c_id_expression. Adjust.
4029 (pp_c_postfix_expression): Use pp_id_expression.
4030 (c_pretty_printer::c_pretty_printer): Do not assign to id_expression.
4031
a6cb161b 40322013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
4033
4034 * c-pretty-print.h (c_pretty_printer::constant): Now a virtual
4035 member function.
4036 (pp_constant): Adjust.
4037 (pp_c_constant): Remove.
4038 * c-pretty-print.c (c_pretty_printer::constant): Rename from
4039 pp_c_constant. Adjust.
4040 (pp_c_constant)
4041 (pp_c_primary_expression): Call pp_constant in lieu of pp_c_constant.
4042 (c_pretty_printer::c_pretty_printer): Remove assignment to constant.
4043
eed6bc21 40442013-08-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
4045
4046 * c-pretty-print.h (pp_c_pretty_printer_init): Remove.
4047 (c_pretty_printer::c_pretty_printer): Declare.
4048 * c-pretty-print.c (pretty_printer::c_pretty_printer): Rename from
4049 c_pretty_printer_init. Adjust.
4050 (print_c_tree): Do not call c_pretty_printer_init.
4051 * c-ada-spec.c (dump_ads): Remove call to pp_construct.
4052
df558d2e 40532013-08-09 Arnaud Charlet <charlet@adacore.com>
4054
4055 * c-ada-spec.c (print_ada_declaration): Prevent accessing null asm name
4056
42f9a786 40572013-08-05 Paolo Carlini <paolo.carlini@oracle.com>
4058
4059 PR c++/58080
4060 * c-common.c (pointer_int_sum): Add bool parameter.
4061 * c-common.h (pointer_int_sum): Adjust declaration.
4062
f874ddad 40632013-08-05 Gabriel Dos Reis <gdr@integrable-solutions.net>
4064
4065 * c-pretty-print.c (print_c_tree): Simplify. Use non-static local
4066 c_pretty_printer variable.
4067
a94db6b0 40682013-08-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
4069
4070 * c-pretty-print.h (c_pretty_printer): Derive from pretty_printer.
4071 (pp_base): Remove.
4072 (pp_c_base): Likewise. Adjust users.
4073 * c-pretty-print.c (pp_c_maybe_whitespace): Adjust.
4074 (pp_c_whitespace): Do not call pp_base.
4075 (pp_c_left_paren): Likewise.
4076 (pp_c_right_paren): Likewise.
4077 (pp_c_left_brace): Likewise.
4078 (pp_c_right_brace): Likewise.
4079 (pp_c_left_bracket): Likewise.
4080 (pp_c_right_bracket): Likewise.
4081 (pp_c_dot): Likewise.
4082 (pp_c_ampersand): Likewise.
4083 (pp_c_star): Likewise.
4084 (pp_c_arrow): Likewise.
4085 (pp_c_semicolon): Likewise.
4086 (pp_c_complement): Likewise.
4087 (pp_c_exclamation): Likewise.
4088 (pp_c_direct_declarator): Likewise.
4089 (pp_c_ws_string): Likewise.
4090 (pp_c_identifier): Likewise.
4091 (pp_c_statement): Likewise.
4092 (print_c_tree): Likewise.
4093
1898176c 40942013-08-04 Ed Smith-Rowland <3dw4rd@verizon.net>
4095
4096 PR c++/58072
4097 * c-common.c (c_parse_error): Catch user-defined literal tokens and
4098 provide useful error strings.
4099
70d60d1d 41002013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
4101
4102 * c-ada-spec.c (pp_ada_tree_identifier): Use specialized pretty
4103 printer functions instead of pp_string or operators and punctuators.
4104 (dump_generic_ada_node): Likewise.
4105 * c-pretty-print.c (pp_c_type_specifier): Likewise.
4106 (pp_c_relational_expression): Likewise.
4107 (pp_c_logical_or_expression): Likewise.
4108
dda4f0ec 41092013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
4110
4111 * c-ada-spec.c (print_ada_macros): Use specialized pretty printer
4112 functions instead of pp_character.
4113 (pp_ada_tree_identifier): Likewise.
4114 (dump_ada_double_name): Likewise.
4115 (dump_ada_function_declaration): Likewise.
4116 (dump_ada_array_domains): Likewise.
4117 (dump_template_types): Likewise.
4118 (dump_generic_ada_node): Likewise.
4119 (print_ada_declaration): Likewise.
4120 (print_ada_struct_decl): Likewise.
4121 * c-pretty-print.c (pp_c_integer_constant): Likewise.
4122
7aa04c8d 41232013-07-23 Tom Tromey <tromey@redhat.com>
4124
4125 * c-common.h (enum rid) <RID_GENERIC>: New constant.
4126 * c-common.c (c_common_reswords): Add _Generic.
4127
a04e8d62 41282013-07-21 OndÅ\99ej Bílka <neleai@seznam.cz>
4129
4130 * c-common.c: Fix typos.
4131 * c-common.h: Likewise.
4132
a96c3cc1 41332013-07-13 Lubos Lunak <l.lunak@suse.cz>
4134
4135 PR c++/55203
4136 * c-common.c (c_common_attribute_table): Add warn_unused.
4137 (handle_warn_unused_attribute): New.
4138
da31536d 41392013-07-10 Jakub Jelinek <jakub@redhat.com>
4140
4141 * c-ppoutput.c (scan_translation_unit): Call account_for_newlines
4142 for all CPP_TOKEN_FLD_STR tokens, not just CPP_COMMENT.
4143
839f2f70 41442013-07-10 Paolo Carlini <paolo.carlini@oracle.com>
4145
4146 PR c++/57869
4147 * c.opt: Add Wconditionally-supported.
4148
73f353d0 41492013-07-08 Graham Stott <graham.stott@btinternet.com>
4150
1f78217c 4151 * array-notation-common.c (length_mismatch_in_expr_p): Delete
73f353d0 4152 unused variables l_length and l_node.
4153
21ebaa24 41542013-07-04 Joern Rennecke <joern.rennecke@embecosm.com>
f5298614 4155
4156 PR c/57821
4157 * c-common.c (complete_array_type): Delay folding first index
4158 like other indices. When folding, check for index overflow.
4159
68ea4406 41602013-06-27 Marc Glisse <marc.glisse@inria.fr>
4161
4162 PR c++/57509
4163 * c-common.h (c_build_vec_perm_expr): New complain argument.
4164 * c-common.c (c_build_vec_perm_expr): Likewise.
4165 Use save_expr also in C++.
4166
60777f69 41672013-06-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
4168
4169 * c-common.c (c_common_nodes_and_builtins): Use cxx11 in lieu of cxx0x.
4170 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
4171 * c-opts.c (c_common_post_options): Likewise.
4172
839f2f70 41732013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
50acebe0 4174
4175 * array-notation-common.c (length_mismatch_in_expr): Changed the
4176 parameter type's from a dynamic array to a vec_tree. Also removed
4177 the size parameters.
4178 * c-common.h (length_mismatch_in_expr_p): Fixed prototype's as per
4179 the change above.
4180
e9331eab 41812013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
4182
4183 * c-common.h (struct cilkplus_an_parts): New structure.
4184 (struct cilkplus_an_loop_parts): Likewise.
4185 (cilkplus_extract_an_triplets): New prototype.
4186 (fix_sec_implicit_args): Likewise.
4187 * array-notation-common.c (cilkplus_extract_an_triplets): New function.
4188 (fix_sec_implicit_args): Likewise.
60777f69 4189
a9c99fc4 41902013-06-20 Balaji V. Iyer <balaji.v.iyer@intel.com>
4191
4192 * array-notation-common.c (find_inv_trees): Removed an unwanted
4193 typecasting.
4194 * c-common.h (struct inv_list::additional_tcodes): Changed type from
4195 enum rid to enum tree_code.
4196
f2526cce 41972013-06-11 Jan Hubicka <jh@suse.cz>
4198
4199 * c-common.c (handle_alias_ifunc_attribute): Do not set
4200 DECL_EXTERNAL for weakref variables.
4201 * c-pragma.c (handle_pragma_weak): Make sure aliases
4202 are not declared as external.
4203
09970d67 42042013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
4205
4206 * array-notation-common.c (length_mismatch_in_expr_p): Moved this
4207 function from c/c-array-notation.c.
4208 (is_cilkplus_reduce_builtin): Likewise.
4209 (find_rank): Likewise.
4210 (extract_array_notation_exprs): Likewise.
4211 (replace_array_notations): Likewise.
4212 (find_inv_trees): Likewise.
4213 (replace_inv_trees): Likewise.
4214 (contains_array_notation_expr): Likewise.
4215 (find_correct_array_notation_type): Likewise.
4216 * c-common.h (struct inv_list): Moved this struct from the file
4217 c/c-array-notation.c and added a new field called additional tcodes.
4218 (length_mismatch_in_expr_p): New prototype.
4219 (is_cilkplus_reduce_builtin): Likewise.
4220 (find_rank): Likewise.
4221 (extract_array_notation_exprs): Likewise.
4222 (replace_array_notation): Likewise.
4223 (find_inv_trees): Likewise.
4224 (replace_inv_trees): Likewise.
4225 (find_correct_array_notation_type): Likewise.
839f2f70 4226
3c6d4197 42272013-05-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
4228
4229 * c-common.c (c_define_builtins): When cilkplus is enabled, the
4230 function array_notation_init_builtins is called.
4231 (c_common_init_ts): Added ARRAY_NOTATION_REF as typed.
4232 * c-common.def (ARRAY_NOTATION_REF): New tree.
4233 * c-common.h (build_array_notation_expr): New function declaration.
4234 (build_array_notation_ref): Likewise.
4235 (extract_sec_implicit_index_arg): New extern declaration.
4236 (is_sec_implicit_index_fn): Likewise.
4237 (ARRAY_NOTATION_CHECK): New define.
4238 (ARRAY_NOTATION_ARRAY): Likewise.
4239 (ARRAY_NOTATION_START): Likewise.
4240 (ARRAY_NOTATION_LENGTH): Likewise.
4241 (ARRAY_NOTATION_STRIDE): Likewise.
4242 * c-pretty-print.c (pp_c_postifix_expression): Added a new case for
4243 ARRAY_NOTATION_REF.
4244 (pp_c_expression): Likewise.
4245 * c.opt (flag_enable_cilkplus): New flag.
4246 * array-notation-common.c: New file.
4247
8e71dad2 42482013-05-14 Jakub Jelinek <jakub@redhat.com>
4249
4250 PR c++/57274
4251 * c-common.c (verify_tree): Don't recurse into SIZEOF_EXPR.
4252
432dd330 42532013-05-10 Marc Glisse <marc.glisse@inria.fr>
4254
4255 * c-common.c (vector_types_convertible_p): No TYPE_PRECISION for
4256 vectors.
4257
b156ec37 42582013-05-07 Han Shen <shenhan@google.com>
4259
4260 * c-cppbuiltin.c (c_cpp_builtins): Added "__SSP_STRONG__=3".
4261
1a087624 42622013-04-29 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
4263
4264 * c-common.c (check_user_alignment): Emit error for negative values.
4265
1638c736 42662013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
4267
4268 * c-opts.c (set_std_cxx11): Use CLK_CXX1Y and CLK_GNUCXX1Y.
4269
949dbf93 42702013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
4271
4272 * c-cppbuiltin.c (c_cpp_builtins): Do not define
4273 __GXX_EXPERIMENTAL_CXX1Y__.
4274
9205a6cc 42752013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
4276 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
4277
4278 * c.opt ([Wpointer-arith]): Enabled by -Wpedantic, as documented.
4279 * c-common.c (pointer_int_sum): Change -Wpointer-arith pedwarns
4280 to simply use OPT_Wpointer_arith.
4281 (c_sizeof_or_alignof_type): Likewise.
4282
05d0bce1 42832013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
4284
4285 * c-cppbuiltin.c (c_cpp_builtins): Define __GXX_EXPERIMENTAL_CXX1Y__.
4286
41609f8b 42872013-04-12 Jakub Jelinek <jakub@redhat.com>
4288
4289 * c-format.c (gcc_diag_char_table, gcc_tdiag_char_table,
4290 gcc_cdiag_char_table, gcc_cxxdiag_char_table): Add %r and %R format
4291 specifiers.
4292
c671dc4f 42932013-04-07 Steven Bosscher <steven@gcc.gnu.org>
4294
4295 * c-pragma.c (add_to_renaming_pragma_list): Fix leading comment.
4296
ba125576 42972013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
4298
4299 * c-common.c (pointer_int_sum): Remove dead code.
4300
9d3fa937 43012013-03-09 Richard Sandiford <rdsandiford@googlemail.com>
4302
4303 PR middle-end/56524
4304 * c-common.c (handle_optimize_attribute): Don't call
4305 save_optabs_if_changed.
4306
5ceebb21 43072013-03-05 Jakub Jelinek <jakub@redhat.com>
4308
4309 PR middle-end/56461
4310 * c-pch.c (pch_init): Free target_validity at the end.
4311
18eeed2b 43122013-03-04 Jakub Jelinek <jakub@redhat.com>
4313
4314 * c-pretty-print.c (pp_c_pretty_printer_init): Clear pp->flags.
4315
a9196da9 43162013-02-28 Konstantin Serebryany <konstantin.s.serebryany@gmail.com>
4317 Jakub Jelinek <jakub@redhat.com>
4318
4319 PR sanitizer/56454
4320 * c-common.c (handle_no_sanitize_address_attribute): New function.
4321 (c_common_attribute_table): Add no_sanitize_address attribute.
4322 (handle_no_address_safety_analysis_attribute): Add
4323 no_sanitize_address attribute, not no_address_safety_analysis
4324 attribute.
4325
15c27dda 43262013-02-18 Aldy Hernandez <aldyh@redhat.com>
08c7d04b 4327
4328 PR target/52555
4329 * c-common.c (handle_optimize_attribute): Call
4330 save_optabs_if_changed.
4331
19426fe1 43322013-02-18 Jakub Jelinek <jakub@redhat.com>
4333 Steven Bosscher <steven@gcc.gnu.org>
4334
4335 PR pch/54117
4336 * c-opts.c (c_common_post_options): If debug info is enabled
4337 and non-dwarf*, refuse to load PCH files and when writing PCH
4338 file warn.
4339
df936998 43402013-02-05 Jakub Jelinek <jakub@redhat.com>
4341
4342 PR middle-end/56167
4343 * c-common.c (handle_error_attribute): Fix condition.
4344
ae0c3984 43452013-01-30 Jakub Jelinek <jakub@redhat.com>
4346
4347 PR c++/55742
4348 * c-common.c (handle_target_attribute): Revert 2012-12-26 change.
4349
1c4973d7 43502013-01-18 Jason Merrill <jason@redhat.com>
4351
4352 PR target/54908
4353 * c.opt (-fextern-tls-init): New.
4354 * c-opts.c (c_common_post_options): Handle it.
4355
7c834436 43562013-01-09 Jakub Jelinek <jakub@redhat.com>
4357
4358 PR c/48418
4359 * c-common.c (c_fully_fold_internal): Warn for LSHIFT_EXPR and
4360 RSHIFT_EXPR, if orig_op1 isn't INTEGER_CST, op1 is INTEGER_CST
4361 and is either negative or bigger or equal to type precision
4362 of the first operand.
4363
5abaa10a 43642012-12-03 Marek Polacek <polacek@redhat.com>
4365
4366 PR c/55570
4367 * c-common.c (check_user_alignment): Swap order of tests,
4368 check TREE_CODE first.
4369
324ca377 43702012-11-29 Ed Smith-Rowland <3dw4rd@verizon.net>
4371
4372 PR c++/52654
4373 * c-common.h (overflow_type): New enum.
4374 (build_userdef_literal): Add overflow_type argument.
4375 (tree_userdef_literal): Add overflow_type.
4376 (USERDEF_LITERAL_OVERFLOW): New access macro.
4377 * c-common.c (build_userdef_literal): Add overflow_type
4378 argument.
4379 * c-lex.c (c_lex_with_flags): Add overflow_type to
4380 build_userdef_literal calls.
4381 (interpret_integer, interpret_float): Add overflow_type argument.
4382
b4c4a429 43832012-11-28 Richard Biener <rguenther@suse.de>
4384
4385 PR c/35634
4386 * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
4387 here and use a type with proper overflow behavior for types that would
4388 need to be promoted for the arithmetic.
4389
d413ffdd 43902012-11-23 Jakub Jelinek <jakub@redhat.com>
4391
4392 PR sanitizer/55435
4393 * c-common.c (handle_no_address_safety_analysis_attribute): New
4394 function.
4395 (c_common_attribute_table): Add no_address_safety_analysis.
4396
52bc861d 43972012-11-16 Simon Baldwin <simonb@google.com>
4398
4399 * c.opt: Add f[no-]canonical-system-headers.
4400 * c-opts.c (c_common_handle_option): Handle
4401 OPT_fcanonical_system_headers.
4402
2dd00636 44032012-11-09 Ed Smith-Rowland <3dw4rd@verizon.net>
4404
4405 PR c++/54413
4406 * c-opts.c (c_common_handle_option): Set new flags.
4407 * c.opt: Describe new flags.
4408
d4701f6c 44092012-11-09 Jason Merrill <jason@redhat.com>
4410
4411 * c.opt (Wabi-tag): New.
4412
72d65da9 44132012-11-09 Andi Kleen <ak@linux.intel.com>
4414
4415 PR 55139
4416 * c-common.c (get_atomic_generic_size): Mask with
4417 MEMMODEL_MASK
4418
77a357e3 44192012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
4420
4421 PR c/53063
4422 * c.opt (Wformat): Make it Alias Wformat=1.
4423 (Wformat-contains-nul,Wformat-extra-args,Wformat-nonliteral,
4424 Wformat-security,Wformat-y2k,Wformat-zero-length): Use
4425 LangEnabledBy.
4426 (Wformat=): RejectNegative. Use LangEnabledBy.
4427 (Wnonnull): Use LangEnabledBy.
4428 * c-opts.c (c_common_handle_option): Do not handle Wformat here.
4429 * c-format.c (set_Wformat): Delete.
4430 (decode_format_attr): Replace OPT_Wformat with OPT_Wformat_.
4431 (maybe_read_dollar_number): Likewise.
4432 (avoid_dollar_number): Likewise.
4433 (finish_dollar_format_checking): Likewise.
4434 (check_format_info): Likewise.
4435 (check_format_info_main): Likewise.
4436 (check_format_types): Likewise.
4437 (format_type_warning): Likewise.
4438 * c-common.c (int): Likewise.
4439 (check_function_sentinel): Likewise.
4440 * c-common.h (warn_format,set_Wformat): Do not declare here.
4441
45efa6b9 44422012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
4443
4444 PR c/53063
4445 * c.opt(Warray-bounds,Wdelete-non-virtual-dtor,Wenum-compare,
4446 Wmain,Woverlength-strings, Wunknown-pragmas,Wunused-macros):
4447 Use LangEnabledBy.
4448 (Wswitch,Wswitch-default,Wswitch-enum): Likewise. Move here from
4449 common.opt.
4450 (Wvariadic-macros): Init(1).
4451 * c-opts.c (c_common_handle_option): Do not handle them
4452 explicitly.
4453 (c_common_post_options): Likewise.
4454 (sanitize_cpp_opts): warn_unused_macros is now
4455 cpp_warn_unused_macros.
4456 (push_command_line_include): Likewise.
4457 * c-common.c (warn_unknown_pragmas): Do not define.
4458 * c-common.h (warn_unknown_pragmas): Do not declare.
4459
0e4e775a 44602012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
4461
4462 PR c/51294
4463 * c-common.c (conversion_warning): Handle conditional expressions.
4464
8b447d3f 44652012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
4466
4467 PR c++/54930
4468 * c.opt (Wreturn_local_addr): Define new option.
4469
f4a61754 44702012-10-25 Jason Merrill <jason@redhat.com>
4471
ecb10e6a 4472 * c.opt (Wvirtual-move-assign): New.
4473
f4a61754 4474 * c.opt (Winherited-variadic-ctor): New.
4475
7b463b19 44762012-10-25 Marc Glisse <marc.glisse@inria.fr>
4477
4478 PR c++/54427
4479 * c-common.c (scalar_to_vector): Handle VEC_COND_EXPR.
4480
6adc88f8 44812012-10-23 Joseph Myers <joseph@codesourcery.com>
4482
4483 * c-common.h (pch_cpp_save_state): Declare.
4484 * c-target.def (c_preinclude): New hook.
4485 * c-opts.c (done_preinclude): New.
4486 (push_command_line_include): Handle default preincluded header.
4487 (cb_file_change): Call pch_cpp_save_state when calling
4488 push_command_line_include.
4489 * c-pch.c (pch_ready_to_save_cpp_state, pch_cpp_state_saved)
4490 (pch_cpp_save_state): New.
4491 (pch_init): Call pch_cpp_save_state conditionally, instead of
4492 calling cpp_save_state.
4493
fa816b0b 44942012-10-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
4495
4496 PR c/53063
4497 PR c/40989
4498 * c.opt (Waddress,Wchar-subscripts,Wsign-conversion,Wimplicit,
4499 Wimplicit-function-declaration,Wimplicit-int,Wsizeof-pointer-memaccess,
4500 Wnarrowing,Wparentheses,Wpointer-sign,Wreturn-type,Wsequence-point,
4501 Wsign-compare,Wuninitialized,Wmaybe-uninitialized,Wunused,
4502 Wvolatile-register-var): Add LangEnabledBy or EnabledBy.
4503 * c-opts.c (c_common_handle_option): Remove explicit handling from
4504 here.
4505 (c_common_post_options): Likewise.
4506
d214ccee 45072012-10-18 Eric Botcazou <ebotcazou@adacore.com>
4508
4509 * c-ada-spec.c (LOCATION_COL): Delete.
4510 (compare_location): New function.
4511 (compare_node): Use it.
4512 (compare_comment): Likewise.
4513
77b27208 45142012-10-16 Manuel López-Ibáñez <manu@gcc.gnu.org>
4515
4516 PR c/53063
4517 PR c/40989
4518 * c.opt (Wstrict-aliasing=,Wstrict-overflow=): Use LangEnabledBy.
4519 * c-opts.c (c_common_handle_option): Do not set them here. Add
4520 comment.
4521 (c_common_post_options): Likewise.
4522
cc02ca4d 45232012-10-16 Eric Botcazou <ebotcazou@adacore.com>
4524
4525 * c-ada-spec.c (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Define.
4526 (dump_generic_ada_node) <INTEGER_CST>: Deal with sizetype specially.
4527 Remove POINTER_TYPE handling, add large unsigned handling and use
4528 ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX for big numbers.
4529
57f872a2 45302012-10-12 Jakub Jelinek <jakub@redhat.com>
4531
4532 PR c/54381
4533 * c-common.h (sizeof_pointer_memaccess_warning): Adjust prototype.
4534 * c-common.c (sizeof_pointer_memaccess_warning): Take array of 3
4535 locs and array of 3 trees instead of just single loc and single
4536 sizeof_arg tree. Handle __builtin___*_chk builtins too, and
4537 also stpncpy, bcopy, bcmp, bzero, snprintf and vsnprintf builtins.
4538 For *cmp* builtins that take two sources strings report warnings
4539 about first and second source, not about destination and source.
4540
7354ad2e 45412012-10-12 Marc Glisse <marc.glisse@inria.fr>
4542
4543 PR c++/53055
4544 * c-common.h (enum ref_operator) [RO_ARROW_STAR]: New.
4545
1ac7f120 45462012-10-11 Eric Botcazou <ebotcazou@adacore.com>
4547
4548 * c-ada-spec.c (dump_ada_template): Bail out for template declarations
4549 declaring something coming from another file.
4550
1e0cc9e3 45512012-10-10 Arnaud Charlet <charlet@adacore.com>
4552
1ac7f120 4553 PR ada/54845
1e0cc9e3 4554 * c-ada-spec.c (print_ada_struct_decl): Increase buf size.
4555
b0e7825e 45562012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
4557
4558 PR c++/54194
4559 * c-common.c (warn_about_parentheses): Add location_t parameter;
4560 use EXPR_LOC_OR_LOC.
4561 * c-common.h: Update declaration.
4562
41ed701a 45632012-10-09 Marc Glisse <marc.glisse@inria.fr>
4564
4565 PR c++/54427
4566 * c-common.c (scalar_to_vector): Moved from c-typeck.c. Support
4567 more operations. Make error messages optional.
4568 * c-common.h (enum stv_conv): Moved from c-typeck.c.
4569 (scalar_to_vector): Declare.
4570
3740094c 45712012-10-08 Jason Merrill <jason@redhat.com>
4572
4573 * c-common.c (c_common_reswords): Add thread_local.
4574
ffcdbf9c 45752012-10-08 Dodji Seketeli <dodji@redhat.com>
4576
4577 PR c++/53528 C++11 attribute support
4578 * c-common.h (bitfield_p, cxx_fundamental_alignment_p): Declare
4579 new functions.
4580 * c-common.c (check_cxx_fundamental_alignment_constraints): New
4581 static function.
4582 (handle_aligned_attribute): In choose strictest alignment
4583 among many. Use new check_cxx_fundamental_alignment_constraints.
4584 (handle_transparent_union_attribute): In c++11 attribute syntax,
4585 don't look through typedefs.
4586
ef34afc1 45872012-10-04 Arnaud Charlet <charlet@adacore.com>
4588
4589 * c-ada-spec.c (print_ada_declaration): Remove handling of TDF_RAW.
4590 * c.opt (-fdump-ada-spec, -fdump-ada-spec-slim): Move switch definition
4591 out of dumpfile.h.
4592
f1ff4562 45932012-09-25 Dehao Chen <dehao@google.com>
4594
4595 PR middle-end/54645
ef34afc1 4596 * c-pch.c (c_common_read_pch): Rebuild the location_adhoc_data
f1ff4562 4597 map when read in the pch.
4598
735538a1 45992012-09-18 Arnaud Charlet <charlet@adacore.com>
4600
4601 * c-ada-spec.c: Style fixes.
4602
9120cdc8 46032012-09-18 Thomas Quinot <quinot@adacore.com>
4604
4605 * c.opt (-fada-spec-parent): Define new command line switch.
4606 * c-ada-spec.c (get_ada_package): When -fada-spec-parent
4607 is specified, generate binding spec as a child of the specified unit.
4608
8eba82c2 46092012-09-13 Paolo Carlini <paolo.carlini@oracle.com>
4610 Manuel López-Ibáñez <manu@gcc.gnu.org>
4611
4612 PR c++/53210
4613 * c.opt ([Winit-self]): Enabled by -Wall in C++.
4614
38682990 46152012-08-23 Arnaud Charlet <charlet@adacore.com>
4616
4617 * c-ada-spec.c (dump_generic_ada_node): Fix handling of name_only
4618 for pointers, and add missing Convention C pragma.
4619 (print_ada_struct_decl): Add missing aliased keyword.
4620 (dump_ads): Add pragma Ada_2005 and Style_Checks (Off).
4621
f003f5dc 46222012-08-17 Jakub Jelinek <jakub@redhat.com>
4623
4624 * c-common.c (sizeof_pointer_memaccess_warning): New function.
4625 * c.opt (-Wsizeof-pointer-memaccess): Add new option.
4626 * c-opts.c (c_common_handle_option): Enable it for -Wall.
4627 * c-common.h (sizeof_pointer_memaccess_warning): Add prototype.
4628 * c-common.def (SIZEOF_EXPR): Moved here from cp-tree.def.
4629
ec11736b 46302012-08-10 Richard Guenther <rguenther@suse.de>
4631
4632 * c-pretty-print.c (pp_c_expression): Handle anonymous SSA names.
4633
5f7f600e 46342012-08-07 Steven Bosscher <steven@gcc.gnu.org>
4635
4636 * c-pretty-print.c (pp_c_function_definition): Use pp_newline_and_flush
4637 instead of separate pp_newline and pp_flush.
4638 (print_c_tree): Likewise.
4639
758a38ab 46402012-07-26 Richard Henderson <rth@redhat.com>
4641
4642 * c-common.c (handle_hot_attribute): Allow labels.
4643 (handle_cold_attribute): Likewise.
4644
9ca77b08 46452012-07-20 Jakub Jelinek <jakub@redhat.com>
4646
4647 PR c++/28656
4648 * c-common.c (check_function_nonnull): Handle multiple nonnull
4649 attributes properly.
4650
b9ed1410 46512012-07-16 Steven Bosscher <steven@gcc.gnu.org>
4652
4653 * c-gimplify.c: Include dumpfile.h instead of tree-dump.h.
4654 * c-ada-spec.c: Likewise.
4655 * c-dump.c (dump_stmt): Move to cp/dump.c, the only user.
4656
c2a65b90 46572012-07-14 Steven Bosscher <steven@gcc.gnu.org>
4658
4659 * c-pch.c (CHECK_NO_ASM_OUT_DURING_PCH): Do not define.
4660 Remove code conditional on it.
4661
88c5a1d1 46622012-07-11 Steven Bosscher <steven@gcc.gnu.org>
4663
4664 * c-gimplify.c: Do not include basic-block.h.
4665 * c-common.c: Do not include linfuncs.h.
4666
4a020a8c 46672012-07-08 Steven Bosscher <steven@gcc.gnu.org>
4668
4669 * c-common.h: Include tree.h.
4670
c28ddc97 46712012-07-02 Jason Merrill <jason@redhat.com>
4672
4673 PR c++/53524
4674 * c-common.c (get_priority): Call default_conversion.
4675
405ed67f 46762012-07-01 Uros Bizjak <ubizjak@gmail.com>
4677
4678 * c-pch.c (c_common_write_pch): Remove unused variables.
4679
e53d55e7 46802012-06-29 Steven Bosscher <steven@gcc.gnu.org>
4681
4682 * cppspec.c: Moved from gcc/ to here.
4683
3d9c25ec 46842012-06-27 Kai Tietz <ktietz@redhat.com>
4685
4686 PR preprocessor/37215
4687 * c-ppoutput.c (preprocess_file): Check for nonempty buffer.
4688
3169c57a 46892012-06-21 Steven Bosscher <steven@gcc.gnu.org>
4690
4691 * c-common.h (c_common_print_pch_checksum): Remove.
4692 * c-pch.c: Do not include output.h.
4693 (CHECK_NO_ASM_OUT_DURING_PCH): Define and add FIXME.
4694 (asm_out_file): Define iff CHECK_NO_ASM_OUT_DURING_PCH isdefined.
4695 (asm_file_startpos): Define iff CHECK_NO_ASM_OUT_DURING_PCH is defined.
4696 (struct c_pch_header): Remove.
4697 (get_ident): Update gpch version.
4698 (pch_init): Do not print executable_checksum to asm_out_file.
4699 Do not fail if there is no asm_out_file to read back from. Set
4700 asm_file_startpos only if CHECK_NO_ASM_OUT_DURING_PCH is defined.
4701 (c_common_write_pch): Verify that nothing was written to asm_out_file
4702 since pch_init was called. Do not write a c_pch_header, and do not
4703 copy from asm_out_file to the PCH.
4704 (c_common_read_pch): Do not read a c_pch_header, and do not restore
4705 the content of asm_out_file from the PCH.
4706 (c_common_print_pch_checksum): Remove.
4707 * c-opts.c (c_common_init): Print out executable_checksum directly.
4708
ff6624bc 47092012-06-19 Steven Bosscher <steven@gcc.gnu.org>
4710
4711 * c-target.def (objc_declare_unresolved_class_reference,
4712 objc_declare_class_definition): Add new hooks.
4713
367b1459 47142012-06-19 Steven Bosscher <steven@gcc.gnu.org>
4715
4716 * c-lex.c: Do not include output.h.
4717 (cb_ident): Try to put out .ident with targetm.asm_out.output_ident.
4718 Remove uses of ASM_OUTPUT_IDENT.
4719
bf0cb017 47202012-06-15 Marc Glisse <marc.glisse@inria.fr>
4721
4722 PR c++/51033
4723 * c-common.h (c_build_vec_perm_expr): Move decl here.
4724 * c-common.c (c_build_vec_perm_expr): Move definition
4725 here.
4726
b37a3600 47272012-06-06 Steven Bosscher <steven@gcc.gnu.org>
4728
4729 * c.opt (fconserve-space): Turn into a no-op.
4730
19931eea 47312012-06-04 Sterling Augustine <saugustine@google.com>
5f9e7dd5 4732
4733 * c-pretty-print.h (pp_c_flag_gnu_v3): New enumerator.
4734 * c-pretty-print.c (pp_c_specifier_qualifier_list): Check it at
4735 both the start and end of the function.
4736
dff12c10 47372012-06-04 Steven Bosscher <steven@gcc.gnu.org>
4738
4739 * c-common.c: Do not include output.h.
4740 * c-pragma.c: Likewise.
4741
5f9e7dd5 47422012-06-04 Steven Bosscher <steven@gcc.gnu.org>
4743
4744 * error.c (dump_decl): Check pp_c_flag_gnu_v3.
4745 (decl_as_dwarf_string, lang_decl_dwarf_name): New functions.
4746 (lang_decl_name): Handle namespace decls.
4747
b5369b7d 47482012-05-31 Steven Bosscher <steven@gcc.gnu.org>
4749
4750 * c-ada-spec.c: Do not include output.h.
4751 * c-semantics.c: Likewise.
4752
8032877c 47532012-05-29 Joseph Myers <joseph@codesourcery.com>
4754
4755 * c-common.c: Fix typo.
4756
7843e4bc 47572012-05-29 Michael Matz <matz@suse.de>
4758
4759 * c-common.h (c_expand_decl): Remove prototype.
4760
8cf857d4 47612012-05-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
4762
4763 * c.opt (Wmissing-braces): Use LangEnabledBy(C ObjC,Wall).
4764 * c-opts.c (c_common_handle_option): Remove code handling
4765 warn_missing_braces.
4766
8b64dc3c 47672012-05-28 Paolo Carlini <paolo.carlini@oracle.com>
4768
4769 PR c++/25137
4770 * c-opts.c (c_common_handle_option): For C++ -Wall doesn't enable
4771 -Wmissing_braces.
4772
43cbde16 47732012-05-22 Dodji Seketeli <dodji@redhat.com>
4774
4775 PR c++/53322
4776 * c.opt (Wunused-local-typedefs): Use EnabledBy(Wunused).
4777
db490cb6 47782012-05-17 Manuel López-Ibáñez <manu@gcc.gnu.org>
4779
4780 * c.opt (--pedantic-errors,-pedantic-errors): Do not handle here.
4781 * c-opts.c (c_common_handle_option): Do not handle explicitly
4782 Wreturn-type, Wwrite-strings, warn_ecpp, and -pedantic-errors.
4783
a60f3e81 47842012-05-16 Dodji Seketeli <dodji@redhat.com>
4785
4786 PR preprocessor/7263
4787 * c-lex.c (c_lex_with_flags): Pass a virtual location to the call
4788 to cpp_classify_number. For diagnostics, use the precise location
4789 instead of the global input_location.
4790
82e6ef7c 47912012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
4792
cd4797ff 4793 PR c++/11856
82e6ef7c 4794 * c-common.c (shorten_compare): Check c_inhibit_evaluation_warnings.
4795
258a168d 47962012-05-14 Bernd Schmidt <bernds@codesourcery.com>
4797
82e6ef7c 4798 * c-common.c (DEF_ATTR_STRING): Define and undefine as necessary.
258a168d 4799
d3b7ee7c 48002012-05-14 Manuel López-Ibáñez <manu@gcc.gnu.org>
4801
4802 PR 53063
4803 * c.opt (Wc++0X-compat,Wdelete-non-virtual-dtor,Wjump-misses-init,
4804 Wreorder): Use LangEnabledBy.
4805 * c-opts.c (c_common_handle_option): Do not enable them
4806 explicitly. Call lang-specific generated functions.
4807 (c_common_post_options): Do not set them here.
4808
70059cea 48092012-05-13 Manuel López-Ibáñez <manu@gcc.gnu.org>
4810
4811 * c.opt (Wclobbered,Wempty-body,Wignored-qualifiers,
4812 Wmissing-field-initializers,Wmissing-parameter-type,
4813 Wold-style-declaration,Woverride-init): Use EnabledBy.
4814 * c-opts.c (c_common_post_options): Do not set here explicitly.
4815
fbb6fbd8 48162012-05-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
4817
4818 PR 53063
4819 * c-opts.c (c_common_handle_option): Use handle_generated_option
4820 to enable sub-options.
4821
61f69bc9 48222012-05-10 Paolo Carlini <paolo.carlini@oracle.com>
4823
4824 PR c++/53158
4825 * c-common.c (warnings_for_convert_and_check): Use warning_at.
4826
5a1fe2db 48272012-05-10 Richard Guenther <rguenther@suse.de>
4828
4829 * c-common.c (c_sizeof_or_alignof_type): Remove assert and
4830 adjust commentary about TYPE_IS_SIZETYPE types.
4831
d42e7c5a 48322012-05-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
4833
4834 PR c++/53261
4835 * c-common.c (warn_logical_operator): Check that argument of
4836 integer_zerop is not NULL.
4837
686369e8 48382012-05-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
4839
4840 PR c/43772
4841 * c-common.c (warn_logical_operator): Do not warn if either side
4842 is already true or false.
4843
03fe1dc2 48442012-05-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
4845
4846 PR c/51712
4847 * c-common.c (expr_original_type): New.
4848 (shorten_compare): Do not warn for enumeration types.
4849
bba5a206 48502012-05-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
4851
4852 * c.opt (fpermissive): Add Var(flag_permissive).
4853
7059d45d 48542012-04-30 Marc Glisse <marc.glisse@inria.fr>
4855
4856 PR c++/51033
4857 * c-common.c (convert_vector_to_pointer_for_subscript): New function.
4858 * c-common.h (convert_vector_to_pointer_for_subscript): Declare it.
4859
7edb1062 48602012-04-30 Dodji Seketeli <dodji@redhat.com>
4861
4862 Add -Wvarargs option
4863 * c.opt (Wvarargs): Define new option.
4864
068bea1e 48652012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
4866
4867 * c-common.c (check_function_arguments): Replace
4868 Wmissing-format-attribute with Wsuggest-attribute=format.
4869
b86527d8 48702012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
4871
4872 * c.opt (Wsuggest-attribute=format): New. Alias of
4873 Wmissing-format-attribute.
4874 * c-format.c (decode_format_type): Replace
4875 Wmissing-format-attribute with Wsuggest-attribute=format.
4876 (check_function_format): Likewise.
4877
19931eea 48782012-04-27 Ollie Wild <aaw@google.com>
76d340ac 4879
4880 * c-common.c: Add CPP_W_LITERAL_SUFFIX mapping.
4881 * c-opts.c (c_common_handle_option): Handle OPT_Wliteral_suffix.
4882 * c.opt: Add Wliteral-suffix.
4883
29438999 48842012-04-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
4885
4886 PR c/44774
4887 * c.opt (Wpedantic): New.
4888 (pedantic): Alias Wpedantic.
4889 * c-opts.c (c_common_handle_option): Replace -pedantic with -Wpedantic.
4890 (c_common_post_options): Likewise.
4891 (sanitize_cpp_opts): Likewise.
4892 * c-lex.c (interpret_float): Likewise.
4893 * c-format.c (check_format_types): Likewise.
4894 * c-common.c (pointer_int_sum): Likewise.
4895 (c_sizeof_or_alignof_type): Likewise.
4896 (c_add_case_label): Likewise.
4897 (c_do_switch_warnings): Likewise.
4898 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
4899
4f9d6b8b 49002012-04-15 Jason Merrill <jason@redhat.com>
4901
4902 PR c++/52818
4903 * c-format.c (CPLUSPLUS_STD_VER): C++11 inherits from C99.
4904 (C_STD_NAME): Distinguish between C++98 and C++11.
4905
74bdbe96 49062012-04-11 Eric Botcazou <ebotcazou@adacore.com>
4907
4908 PR target/52624
4909 * c-common.h (uint16_type_node): Rename into...
4910 (c_uint16_type_node): ...this.
4911 * c-common.c (c_common_nodes_and_builtins): Adjust for above renaming.
4912 * c-cppbuiltin.c (builtin_define_stdint_macros): Likewise.
4913
3d177e8c 49142012-04-10 Manuel López-Ibáñez <manu@gcc.gnu.org>
4915
4916 * c-common.c (warn_if_unused_value): Move definition to here.
4917 * c-common.h (warn_if_unused_value): Move declaration to here.
4918
6a9a958f 49192012-03-23 William Bader <williambader@hotmail.com>
4920
4921 * c-lex.c (c_lex_with_flags): Avoid declarations after stmts.
4922
543efdbe 49232012-03-20 Jason Merrill <jason@redhat.com>
4924
4925 * c-common.h (enum cxx_dialect): Add cxx1y.
4926 * c-common.c (c_common_nodes_and_builtins): Use >= for cxx_dialect
4927 test.
4928 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
4929 * c-opts.c (c_common_post_options): Likewise.
4930 (set_std_cxx1y): New.
4931 (c_common_handle_option): Call it.
4932 * c.opt (-std=c++1y, -std=gnu++1y): New flags.
4933
62206d34 49342012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
4935
4936 PR c++/14710
4937 * c.opt ([Wuseless-cast]): Add.
4938
fadf62f4 49392012-03-16 Richard Guenther <rguenther@suse.de>
4940
4941 * c-pretty-print.c (pp_c_initializer_list): Adjust.
4942
249faa35 49432012-03-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
4944
4945 PR c++/44783
4946 * c.opt (ftemplate-backtrace-limit) Add.
4947
126b6848 49482012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
4949
4950 * c-cppbuiltin.c (c_cpp_builtins): Remove #pragma extern_prefix
4951 handling.
4952 * c-pragma.c (handle_pragma_extern_prefix): Remove.
4953 (init_pragma): Don't register extern_prefix.
4954
a51edb4c 49552012-03-12 Richard Guenther <rguenther@suse.de>
4956
4957 * c-common.c (c_common_get_narrower): Use c_common_type_for_size.
4958 (builtin_type_for_size): Likewise.
4959
0f6a7cb7 49602012-02-13 Jakub Jelinek <jakub@redhat.com>
4961
4962 PR c++/52215
4963 * c-common.c (sync_resolve_params): Don't decide whether to convert
4964 or not based on TYPE_SIZE comparison, convert whenever arg_type
4965 is unsigned INTEGER_TYPE.
4966
0779e32c 49672012-02-06 Paolo Carlini <paolo.carlini@oracle.com>
4968
4969 PR c/52118
4970 * c.opt ([Wunused-local-typedefs]): Fix description.
4971
baec58e1 49722012-01-24 Mike Stump <mikestump@comcast.net>
4973
4974 * c-common.c (c_common_type_for_mode): Match signed/unsigned types
4975 exactly.
4976
c779d8cc 49772012-01-18 Richard Guenther <rguenther@suse.de>
4978
4979 * c-opts.c (c_common_post_options): Reset LTO flags if
4980 we are about to generate a PCH.
4981
ee917d24 49822012-01-17 Paolo Carlini <paolo.carlini@oracle.com>
4983
4984 PR c++/51777
4985 * c-pretty-print.c (pp_c_integer_constant): For unsigned constants
4986 use pp_unsigned_wide_integer.
4987
90e2341f 49882012-01-10 Richard Guenther <rguenther@suse.de>
4989
4990 PR middle-end/51806
4991 * c-opts.c (c_common_handle_option): Move -Werror handling
4992 to language independent code.
4993
9ea022ce 49942012-01-05 Richard Guenther <rguenther@suse.de>
4995
4996 PR middle-end/51764
4997 * c.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move here
4998 from common.opt.
4999
3df19e1b 50002011-12-30 Paolo Carlini <paolo.carlini@oracle.com>
5001
5002 PR c++/51316
5003 * c-common.c (c_sizeof_or_alignof_type): In C++ allow for alignof
5004 of array types with an unknown bound.
5005
32074525 50062011-12-20 Joseph Myers <joseph@codesourcery.com>
5007
5008 * c-common.c (flag_isoc99): Update comment to refer to C11.
5009 (flag_isoc1x): Change to flag_isoc11.
5010 * c-common.h (flag_isoc99): Update comment to refer to C11.
5011 (flag_isoc1x): Change to flag_isoc11.
5012 * c-cppbuiltin.c (cpp_atomic_builtins): Change comment to refer to
5013 C11.
5014 * c-opts.c (set_std_c1x): Change to set_std_c11.
5015 (c_common_handle_option): Handle OPT_std_c11 and OPT_std_gnu11.
5016 Call set_std_c11.
5017 (set_std_c89, set_std_c99, set_std_c11): Use flag_isoc11.
5018 (set_std_c1): Use CLK_STDC11 and CLK_GNUC11.
5019 * c.opt (std=c1x): Change to std=c11. Document as non-draft
5020 standard.
5021 (std=c1x, std=iso9899:2011): Add as aliases of std=c11.
5022 (std=gnu1x): Change to std=gnu11. Refer to non-draft standard.
5023 (std=gnu1x): Make alias of std=gnu11.
5024
fca86134 50252011-12-19 Jason Merrill <jason@redhat.com>
5026
5027 PR c++/51228
5028 * c-common.c (handle_transparent_union_attribute): Check the first
5029 field if the type is complete.
5030
aa4313eb 50312011-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
5032
5033 PR libstdc++/51365
5034 * c-common.c (RID_IS_FINAL): Add.
5035 * c-common.h (RID_IS_FINAL): Add.
5036
3f3d5ad4 50372011-11-30 Iain Sandoe <iains@gcc.gnu.org>
5038
5039 * c.opt (fgnu-runtime): Provide full description.
5040 (fnext-runtime): Likewise.
5041 * c-opts.c (OPT_fgnu_runtime, OPT_fnext_runtime) Remove.
5042
c4606d19 50432011-11-28 Andrew MacLeod <amacleod@redhat.com>
5044
5045 * c-cpp-builtin.c (cpp_atomic_builtins):New. Emit all atomic
5046 predefines in one place. Add LOCK_FREE predefines.
5047 (c_cpp_builtins): Move Legacy HAVE_SYNC predefines to
5048 new func.
5049
1d581089 50502011-11-24 Andrew MacLeod <amacleod@redhat.com>
5051
5052 PR c/51256
19931eea 5053 * c-common.c (get_atomic_generic_size): Check for various error
1d581089 5054 conditions
19931eea 5055 (resolve_overloaded_atomic_exchange,
5056 resolve_overloaded_atomic_compare_exchange,
1d581089 5057 resolve_overloaded_atomic_load, resolve_overloaded_atomic_store): Return
5058 error_mark_node for error conditions.
19931eea 5059
6aa221fa 50602011-11-08 Richard Guenther <rguenther@suse.de>
5061
5062 PR middle-end/51010
5063 c-family/
5064
4c0315d0 50652011-11-07 Richard Henderson <rth@redhat.com>
5066 Aldy Hernandez <aldyh@redhat.com>
5067 Torvald Riegel <triegel@redhat.com>
5068
5069 Merged from transactional-memory.
5070
5071 * c-common.c (handle_tm_wrap_attribute,
5072 handle_tm_attribute, ignore_attribute, parse_tm_stmt_attr): New.
5073 (struct c_common_reswords): Added __transaction* keywords.
5074 (struct c_common_attribute_table): Added transaction* and tm_regparm
5075 attributes.
5076 * c-common.h: Added RID_TRANSACTION*. Added TM_ATTR* and TM_STMT*
5077 masks.
5078 (parse_tm_stmt_attr, tm_attr_to_mask, tm_mask_to_attr,
5079 find_tm_attribute): Declare.
5080
920f5a70 50812011-11-07 Jason Merrill <jason@redhat.com>
5082
5083 PR c++/35688
5084 * c-common.c, c-common.h: Revert yesterday's changes.
5085
b4f861b4 50862011-11-06 Jason Merrill <jason@redhat.com>
5087
5088 PR c++/35688
5089 * c-common.c (decl_has_visibility_attr): Split out from...
5090 (c_determine_visibility): ...here.
5091 * c-common.h: Declare it.
5092
83e25171 50932011-11-06 Joseph Myers <joseph@codesourcery.com>
5094
5095 * c-common.c (c_common_reswords): Add _Alignas and _Alignof.
5096 (c_sizeof_or_alignof_type): Diagnose alignof applied to a function
5097 type.
5098 (check_user_alignment): New. Split out of
5099 handle_aligned_attribute. Disallow integer constants with
5100 noninteger types. Conditionally allow zero.
5101 (handle_aligned_attribute): Use check_user_alignment.
5102 * c-common.h (RID_ALIGNAS, check_user_alignment): New.
5103
1cd6e20d 51042011-11-06 Andrew MacLeod <amacleod@redhat.com>
5105 Richard Henderson <rth@redhat.com>
5106
5107 Merged from cxx-mem-model.
5108
5109 * c-cppbuiltin.c (c_cpp_builtins): Test both atomic and sync patterns.
19931eea 5110 * c-common.c (sync_resolve_params, sync_resolve_return): Only tweak
1cd6e20d 5111 parameters that are the same type size.
5112 (get_atomic_generic_size): New. Find size of generic
5113 atomic function parameters and do typechecking.
5114 (add_atomic_size_parameter): New. Insert size into parameter list.
5115 (resolve_overloaded_atomic_exchange): Restructure __atomic_exchange to
5116 either __atomic_exchange_n or external library call.
19931eea 5117 (resolve_overloaded_atomic_compare_exchange): Restructure
1cd6e20d 5118 __atomic_compare_exchange to either _n variant or external library call.
19931eea 5119 (resolve_overloaded_atomic_load): Restructure __atomic_load to either
1cd6e20d 5120 __atomic_load_n or an external library call.
5121 (resolve_overloaded_atomic_store): Restructure __atomic_store to either
5122 __atomic_store_n or an external library call.
5123 (resolve_overloaded_builtin): Handle new __atomic builtins.
5124
7549df0d 51252011-11-04 Eric Botcazou <ebotcazou@adacore.com>
5126
5127 PR c++/50608
5128 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1.
5129 (fold_offsetof_1): Make global. Remove STOP_REF argument and adjust.
5130 <INDIRECT_REF>: Return the argument.
5131 <ARRAY_REF>: Remove special code for negative offset.
5132 Call fold_build_pointer_plus instead of size_binop.
5133 (fold_offsetof): Remove STOP_REF argument and adjust.
5134 * c-common.h (fold_offsetof_1): Declare.
5135 (fold_offsetof): Remove STOP_REF argument.
5136
7e783eb3 51372011-11-02 Paolo Carlini <paolo.carlini@oracle.com>
5138
5139 PR c++/50810
5140 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
5141 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
5142 Wnarrowing for C++0x and C++98.
5143 * c.opt ([Wnarrowing]): Update.
5144
8fe701f5 51452011-11-01 Paolo Carlini <paolo.carlini@oracle.com>
5146
5147 PR c++/44277
5148 * c.opt: Add Wzero-as-null-pointer-constant.
5149
0d84dc2d 51502011-10-31 Jason Merrill <jason@redhat.com>
5151
67031f52 5152 * c.opt (-fdeduce-init-list): Off by default.
5153
0d84dc2d 5154 PR c++/50920
5155 * c-common.h (cxx_dialect): Add cxx11 and cxx03.
5156 * c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03,
5157 and -Wc++11-compat.
5158 * c-opts.c (set_std_cxx11): Rename from set_std_cxx0x.
5159
66f24c41 51602011-10-27 Roberto Agostino Vitillo <ravitillo@lbl.gov>
5161
5162 PR c++/30066
5163 * c.opt (fvisibility-inlines-hidden): Description change.
5164
244db24d 51652011-10-26 Ed Smith-Rowland <3dw4rd@verizon.net>
5166
5167 Implement C++11 user-defined literals.
5168 * c-common.c (build_userdef_literal): New.
5169 * c-common.def: New tree code.
5170 * c-common.h (tree_userdef_literal): New tree struct and accessors.
5171 * c-lex.c (interpret_float): Add suffix parm.
5172 (c_lex_with_flags): Build literal tokens.
5173
235be70f 51742011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
5175
5176 PR c++/50841
5177 Revert:
5178 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
5179
5180 PR c++/50810
5181 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
5182 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
5183 Wnarrowing for C++0x and C++98.
5184 * c.opt ([Wnarrowing]): Update.
5185
4fe0fb1c 51862011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
5187
5188 PR c++/50810
5189 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
5190 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
5191 Wnarrowing for C++0x and C++98.
5192 * c.opt ([Wnarrowing]): Update.
5193
5f7504f9 51942011-10-21 Paolo Carlini <paolo.carlini@oracle.com>
5195
5196 PR c++/45385
5197 * c-common.c (conversion_warning): Remove code looking for
5198 artificial operands.
5199
2a688977 52002011-10-18 Dodji Seketeli <dodji@redhat.com>
5201
5202 PR bootstrap/50760
5203 * c-lex.c (fe_file_change): Use LINEMAP_SYSP when
19931eea 5204 !NO_IMPLICIT_EXTERN_C.
2a688977 5205
326e3391 52062011-10-17 Michael Spertus <mike_spertus@symantec.com>
5207
5208 * c-common.c (c_common_reswords): Add __bases,
5209 __direct_bases.
5210 * c-common.h: Add RID_BASES and RID_DIRECT_BASES.
5211
52122011-10-17 Paolo Carlini <paolo.carlini@oracle.com>
5213
5214 PR c++/50757
5215 * c.opt ([Wnonnull]): Add C++ and Objective-C++.
5216
62db153a 52172011-10-15 Tom Tromey <tromey@redhat.com>
5218 Dodji Seketeli <dodji@redhat.com>
5219
5220 * c.opt (fdebug-cpp): New option.
5221 * c-opts.c (c_common_handle_option): Handle the option.
5222 * c-ppoutput.c (maybe_print_line_1): New static function. Takes an
5223 output stream in parameter. Factorized from ...
5224 (maybe_print_line): ... this. Dump location debug information when
5225 -fdebug-cpp is in effect.
5226 (print_line_1): New static function. Takes an output stream in
5227 parameter. Factorized from ...
5228 (print_line): ... here. Dump location information when -fdebug-cpp
5229 is in effect.
5230 (scan_translation_unit): Dump location information when
5231 -fdebug-cpp is in effect.
5232
ce70f433 52332011-10-15 Tom Tromey <tromey@redhat.com>
5234 Dodji Seketeli <dodji@redhat.com>
5235
5236 * c.opt (ftrack-macro-expansion): New option. Handle it with and
5237 without argument.
5238 * c-opts.c (c_common_handle_option)<case
5239 OPT_ftrack_macro_expansion_, case OPT_ftrack_macro_expansion>: New
5240 cases. Handle -ftrack-macro-expansion with and without argument.
5241
97bfb9ef 52422011-10-15 Tom Tromey <tromey@redhat.com>
5243 Dodji Seketeli <dodji@redhat.com>
5244
5245 * c-ppoutput.c (scan_translation_unit, maybe_print_line)
5246 (print_line, cb_define, do_line_change): Adjust to avoid touching
5247 the internals of struct line_map. Use the public API instead.
5248 * c-pch.c (c_common_read_pch): Likewise.
5249 * c-lex.c (fe_file_change): Likewise.
5250
326e3391 52512011-10-14 Paolo Carlini <paolo.carlini@oracle.com>
5252
5253 PR c++/17212
5254 * c.opt ([Wformat-zero-length]): Add C++ and Objective-C++.
5255
52562011-10-11 Paolo Carlini <paolo.carlini@oracle.com>
5257
5258 PR c++/33067
5259 * c-pretty-print.c (pp_c_floating_constant): Output
5260 max_digits10 (in the ISO C++ WG N1822 sense) decimal digits.
5261
b9a16870 52622011-10-11 Michael Meissner <meissner@linux.vnet.ibm.com>
5263
5264 * c-common.c (def_builtin_1): Delete old interface with two
5265 parallel arrays to hold standard builtin declarations, and replace
5266 it with a function based interface that can support creating
5267 builtins on the fly in the future. Change all uses, and poison
5268 the old names. Make sure 0 is not a legitimate builtin index.
5269 * c-omp.c (c_finish_omp_barrier): Ditto.
5270 (c_finish_omp_taskwait): Ditto.
5271 (c_finish_omp_flush): Ditto.
5272
c7964868 52732011-10-11 Tristan Gingold <gingold@adacore.com>
5274
5275 * c.opt: (fallow-parameterless-variadic-functions): New.
5276
a4e3ffad 52772011-09-08 Dodji Seketeli <dodji@redhat.com>
5278
5279 PR c++/33255 - Support -Wunused-local-typedefs warning
5280 * c-common.h (struct c_language_function::local_typedefs): New
5281 field.
19931eea 5282 (record_locally_defined_typedef, maybe_record_typedef_use)
5283 (maybe_warn_unused_local_typedefs): Declare new functions.
a4e3ffad 5284 * c-common.c (record_locally_defined_typedef)
19931eea 5285 (maybe_record_typedef_use)
5286 (maybe_warn_unused_local_typedefs): Define new functions.
a4e3ffad 5287 * c.opt: Declare new -Wunused-local-typedefs flag.
5288
737a23cc 52892011-09-06 Eric Botcazou <ebotcazou@adacore.com>
5290
5291 PR middle-end/50266
5292 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Fold offsetof-like
5293 computations.
5294
7542c3b4 52952011-09-05 Richard Guenther <rguenther@suse.de>
5296
5297 * c-common.c (complete_array_type): Use ssize_int (-1) instead
5298 of integer_minus_one_node for empty array upper bounds.
5299
1dc92c59 53002011-08-28 Dodji Seketeli <dodji@redhat.com>
5301
5302 * c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as
5303 it's the first time it's being called on this main TU.
5304
2bdf2b6e 53052011-08-24 Richard Guenther <rguenther@suse.de>
5306
5307 PR c/49396
5308 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional.
5309
53102011-08-22 Gabriel Charette <gchare@google.com>
6ea2c7a3 5311
5312 * c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens
5313 defined in cpp_init_builtins and c_cpp_builtins.
5314
bff4ad11 53152011-08-19 Joseph Myers <joseph@codesourcery.com>
5316
5317 * c-common.c (c_common_reswords): Add __builtin_complex.
5318 * c-common.h (RID_BUILTIN_COMPLEX): New.
5319
985c6e3a 53202011-08-18 Joseph Myers <joseph@codesourcery.com>
5321
5322 * c-common.c (c_common_reswords): Add _Noreturn.
5323 (keyword_is_function_specifier): Handle RID_NORETURN.
5324 * c-common.h (RID_NORETURN): New.
5325
7dfa155b 53262011-08-10 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
5327
5328 * c-common.c (unsafe_conversion_p): New function. Check if it is
5329 unsafe to convert an expression to the type.
5330 (conversion_warning): Adjust, use unsafe_conversion_p.
5331 * c-common.h (unsafe_conversion_p): New function declaration.
5332
2169f33b 53332011-08-02 Jakub Jelinek <jakub@redhat.com>
5334
5335 * c-common.h (c_finish_omp_atomic): Adjust prototype.
5336 (c_finish_omp_taskyield): New prototype.
5337 * c-omp.c (c_finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1
5338 arguments. Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and
5339 OMP_ATOMIC_CAPTURE_NEW in addition to OMP_ATOMIC. If LHS1
5340 or RHS1 have side-effects, evaluate those too in the right spot,
5341 if it is a decl and LHS is also a decl, error out if they
5342 aren't the same.
5343 (c_finish_omp_taskyield): New function.
5344 * c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP to 201107.
5345 * c-pragma.c (omp_pragmas): Add taskyield.
5346 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKYIELD.
5347 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FINAL and
5348 PRAGMA_OMP_CLAUSE_MERGEABLE.
5349
ab77850e 53502011-07-25 Dodji Seketeli <dodji@redhat.com>
5351
5352 * c-common.h (set_underlying_type): Remove parm name from
5353 declaration.
5354
6ee97920 53552011-07-25 Romain Geissler <romain.geissler@gmail.com>
5356
5357 * c-pretty-print.h: Search c-common.h in c-family.
19931eea 5358
dc251364 53592011-07-22 Jason Merrill <jason@redhat.com>
5360
1a2a35f0 5361 PR c++/49793
5362 * c.opt (Wnarrowing): New.
5363
27282252 5364 PR c++/30112
5365 * c-common.h: Declare c_linkage_bindings.
5366 * c-pragma.c (handle_pragma_redefine_extname): Use it.
5367
dc251364 5368 PR c++/49813
5369 * c-opts.c (set_std_cxx0x): Set flag_isoc94 and flag_isoc99.
5370 * c-pretty-print.c (pp_c_cv_qualifiers): Check c_dialect_cxx as well
5371 as flag_isoc99 for 'restrict'.
5372 (pp_c_specifier_qualifier_list): Likewise for _Complex.
5373
fc501191 53742011-07-21 Ian Lance Taylor <iant@google.com>
5375
5376 PR middle-end/49705
5377 * c-common.c (c_disable_warnings): New static function.
5378 (c_enable_warnings): New static function.
5379 (c_fully_fold_internal): Change local unused_p to bool. Call
5380 c_disable_warnings and c_enable_warnings rather than change
5381 c_inhibit_evaluation_warnings.
5382
07b8f133 53832011-07-20 Jason Merrill <jason@redhat.com>
5384
5385 PR c++/6709 (DR 743)
5386 PR c++/42603 (DR 950)
5387 * c-common.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move from cp/parser.h.
5388 (CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise.
5389 (CPP_DECLTYPE): New.
5390 * c-common.c (c_parse_error): Handle CPP_DECLTYPE.
5391
2cc66f2a 53922011-07-19 Richard Guenther <rguenther@suse.de>
5393
5394 * c-common.c (pointer_int_sum): Use fold_build_pointer_plus.
5395 * c-omp.c (c_finish_omp_for): Likewise.
5396
3c802a1e 53972011-07-12 Eric Botcazou <ebotcazou@adacore.com>
5398
5399 * c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop
5400 body on the next line.
5401
98a33d9f 54022011-07-08 Jason Merrill <jason@redhat.com>
5403
3115bda0 5404 PR c++/45437
5405 * c-omp.c (check_omp_for_incr_expr): Handle preevaluation.
5406
98a33d9f 5407 PR c++/49673
5408 * c-common.c (c_apply_type_quals_to_decl): Don't check
5409 TYPE_NEEDS_CONSTRUCTING.
5410
c38a75b7 54112011-07-06 Richard Guenther <rguenther@suse.de>
5412
5413 * c-common.c (c_common_nodes_and_builtins):
5414 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
5415
e593356b 54162011-07-05 Richard Guenther <rguenther@suse.de>
5417
5418 * c-common.c (c_common_nodes_and_builtins): Build all common
5419 tree nodes first.
5420
fca0886c 54212011-06-27 Jakub Jelinek <jakub@redhat.com>
5422
a68f7a8d 5423 * c-common.h (c_tree_chain_next): New static inline function.
5424
fca0886c 5425 * c-common.c (check_builtin_function_arguments): Handle
5426 BUILT_IN_ASSUME_ALIGNED.
5427
2797f13a 54282011-06-21 Andrew MacLeod <amacleod@redhat.com>
5429
5430 * c-common.c: Add sync_ or SYNC__ to builtin names.
5431 * c-omp.c: Add sync_ or SYNC__ to builtin names.
9cad95b7 5432
54332011-06-20 Pierre Vittet <piervit@pvittet.com>
5434
5435 * c-pragma.h (pragma_handler_1arg, pragma_handler_2arg): New
5436 handler.
5437 (gen_pragma_handler): New union.
5438 (internal_pragma_handler): New type.
5439 (c_register_pragma_with_data)
5440 (c_register_pragma_with_expansion_and_data): New functions.
5441
5442 * c-pragma.c (registered_pragmas, c_register_pragma_1)
5443 (c_register_pragma, c_register_pragma_with_expansion)
5444 (c_invoke_pragma_handler): Changed to work with
5445 internal_pragma_handler.
5446 (c_register_pragma_with_data)
5447 (c_register_pragma_with_expansion_and_data): New functions.
5448
218e3e4e 54492011-06-14 Joseph Myers <joseph@codesourcery.com>
5450
5451 * c-common.c: Include common/common-target.h.
5452 (handle_section_attribute): Use
5453 targetm_common.have_named_sections.
5454 * c-cppbuiltin.c: Include common/common-target.h.
5455 (c_cpp_builtins): Use targetm_common.except_unwind_info.
5456
41e53ed2 54572011-06-10 Richard Guenther <rguenther@suse.de>
5458
5459 * c-pretty-print.c (pp_c_type_specifier): Use pp_c_identifier
5460 to print a IDENTIFIER_NODE.
5461
a6f06169 54622011-06-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
5463 Joseph Myers <joseph@codesourcery.com>
5464
5465 * c.opt (fbuilding-libgcc): New option.
5466 * c-cppbuiltin.c (c_cpp_builtins): Define
5467 __LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc.
5468
1ea9269b 54692011-06-07 Jason Merrill <jason@redhat.com>
5470
8ce59854 5471 * c-common.c (max_tinst_depth): Lower default to 900.
5472
1ea9269b 5473 * c-format.c (gcc_cxxdiag_char_table): Add 'S' format.
5474
1af0124d 54752011-06-07 Richard Guenther <rguenther@suse.de>
5476
5477 * c-common.c (c_common_nodes_and_builtins): Do not set
5478 size_type_node or call set_sizetype.
5479
0e9a4c01 54802011-06-07 Dodji Seketeli <dodji@redhat.com>
5481
5482 PR debug/49130
5483 * c-pretty-print.c (pp_c_integer_constant): Consider the canonical
19931eea 5484 type when using pointer comparison to compare types.
0e9a4c01 5485
90b40725 54862011-06-02 Jonathan Wakely <jwakely.gcc@gmail.com>
5487
5488 * c.opt: Add -Wdelete-non-virtual-dtor.
5489 * c-opts.c (c_common_handle_option): Include it in -Wall.
5490
fc9c9e87 54912011-05-30 Nathan Froyd <froydnj@gcc.gnu.org>
5492
5493 PR bootstrap/49190
5494
5495 Revert:
5496 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
5497
5498 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
5499 not tree_common.
5500
d0389adc 55012011-05-27 Jakub Jelinek <jakub@redhat.com>
5502
5503 PR c++/49165
5504 * c-common.c (c_common_truthvalue_conversion) <case COND_EXPR>: For
5505 C++ don't call c_common_truthvalue_conversion on void type arms.
5506
cacfdc02 55072011-05-27 Nathan Froyd <froydnj@codesourcery.com>
5508
5509 * c-common.h (struct stmt_tree_s) [x_cur_stmt_list]: Change to a VEC.
5510 (stmt_list_stack): Define.
5511 (cur_stmt_list): Adjust for new type of x_cur_stmt_list.
5512 * c-semantics.c (push_stmt_list, pop_stmt_list): Likewise.
5513
027fc6ef 55142011-05-26 Nathan Froyd <froydnj@codesourcery.com>
5515
5516 * c-common.c (warning_candidate_p): Check for BLOCKs.
5517
f21317a1 55182011-05-26 Nathan Froyd <froydnj@codesourcery.com>
5519
5520 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
5521 not tree_common.
5522
789e953d 55232011-05-25 Jakub Jelinek <jakub@redhat.com>
5524
5525 * c-common.c (def_fn_type): Remove extra va_end.
5526
7f506bca 55272011-05-23 Jason Merrill <jason@redhat.com>
5528
5529 PR c++/48106
5530 * c-common.c (c_common_get_narrower): New.
5531 (shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.
5532
774e9d58 55332011-05-23 Nathan Froyd <froydnj@codesourcery.com>
5534
5535 * c-common.h (check_function_arguments): Tweak prototype of
5536 check_function_arguments.
5537 * c-common.c (check_function_arguments): Likewise. Adjust
5538 calls to check_function_nonnull, check_function_format, and
5539 check_function_sentinel.
5540 (check_function_sentinel): Take a FUNCTION_TYPE rather than
5541 separate attributes and typelist arguments. Use
5542 FOREACH_FUNCTION_ARGS to iterate over argument types.
5543
23407dc9 55442011-05-15 Paolo Carlini <paolo.carlini@oracle.com>
5545
5546 * c-common.c (c_common_reswords): Reorder.
5547 * c-common.h (rid): Likewise.
5548
3a939d12 55492011-05-10 Nathan Froyd <froydnj@codesourcery.com>
5550
5551 * c-common.c (def_fn_type): Don't call build_function_type, call
5552 build_function_type_array or build_varargs_function_type_array
5553 instead.
5554 (c_common_nodes_and_builtins): Likewise.
5555
b6e3dd65 55562011-05-05 Nathan Froyd <froydnj@codesourcery.com>
5557
5558 * c-common.c (c_add_case_label): Omit the loc argument to
5559 build_case_label.
5560 * c-common.h (build_case_label): Remove.
5561 * c-semantics.c (build_case_label): Remove.
5562
4232a958 55632011-05-05 Joseph Myers <joseph@codesourcery.com>
5564
5565 * c-objc.h (objc_start_method_definition): Update prototype.
5566 * stub-objc.c (objc_start_method_definition): Add extra parameter.
5567
d0af78c5 55682011-05-04 Nathan Froyd <froydnj@codesourcery.com>
5569
5570 * c-common.c (check_main_parameter_types): Reindent. Don't use
5571 TYPE_ARG_TYPES directly.
5572 (handle_nonnull_attribute): Likewise.
5573 (sync_resolve_params): Likewise.
5574 * c-format.c (handle_format_arg_attribute): Likewise. Adjust call
5575 to check_format_string.
5576 (handle_format_attribute): Likewise.
5577 (check_format_string): Take a function type to examine instead of
5578 a type list. Use a function_arg_iterator to step through argument
5579 types.
5580
ceb7b692 55812011-05-04 Richard Guenther <rguenther@suse.de>
5582
5583 * c-common.c (fix_string_type): Use size_int for index type bounds.
5584 (start_fname_decls): Do not pass NULL to build_int_cst.
5585 (c_init_attributes): Likewise.
5586 * c-lex.c (c_lex_with_flags): Likewise.
5587
c66c81be 55882011-04-27 Jason Merrill <jason@redhat.com>
5589
5590 * c-common.c (make_tree_vector_from_list): New.
5591 * c-common.h: Declare it.
5592
16930c72 55932011-04-26 Richard Guenther <rguenther@suse.de>
5594
5595 PR preprocessor/48248
5596 * c-ppoutput.c (maybe_print_line): Always optimize newlines
5597 for output size with -P.
5598
23407dc9 55992011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
5600
5601 * c-common.c (struct c_common_resword): Add __underlying_type.
5602 * c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
5603
dd045aee 56042011-04-20 Jim Meyering <meyering@redhat.com>
5605
5606 * c-format.c (init_dollar_format_checking): Remove useless
5607 if-before-free.
5608
394dd737 56092011-04-15 Nicola Pero <nicola.pero@meta-innovation.com>
5610
5611 * c-objc.h (objc_get_interface_ivars): Removed.
23407dc9 5612 (objc_detect_field_duplicates): New.
394dd737 5613 * stub-objc.c: Likewise.
23407dc9 5614
a758bf7d 56152011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
5616
5617 * stub-objc.c (objc_declare_protocols): Renamed to
5618 objc_declare_protocol.
5619 * c-objc.h: Likewise.
23407dc9 5620
29d7200d 56212011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
5622
5623 * stub-objc.c (objc_declare_class): Updated argument name.
5624
9b88d08d 56252011-04-12 Nathan Froyd <froydnj@codesourcery.com>
5626
5627 * c-common.h (c_common_init_ts): Declare.
5628 * c-common.c (c_common_init_ts): Define.
5629
4185cf58 56302011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
5631
5632 * c-objc.h (objc_build_message_expr): Updated prototype.
5633 * stub-objc.c (objc_build_message_expr): Likewise.
19931eea 5634
5a90471f 56352011-04-12 Martin Jambor <mjambor@suse.cz>
5636
5637 * c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
5638 of cgraph_node.
5639
783bb57e 56402011-04-11 Richard Guenther <rguenther@suse.de>
5641
5642 * c-common.c (complete_array_type): Build a range type of
5643 proper type.
5644
c33080b9 56452011-04-08 Nathan Froyd <froydnj@codesourcery.com>
5646
5647 * c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
5648 (handle_type_generic_attribute): Likewise.
5649
f8913d47 56502011-04-07 Jason Merrill <jason@redhat.com>
5651
5652 PR c++/48450
5653 * c-common.c (c_common_truthvalue_conversion): Don't ignore
5654 conversion from C++0x scoped enum.
5655
c94b1d0e 56562011-04-06 Joseph Myers <joseph@codesourcery.com>
5657
5658 * c-target-def.h: New file.
5659 * c-target.def: New file.
5660 * c-target.h: New file.
5661 * c-common.c (targetcm): Don't define here.
5662 * c-common.h (default_handle_c_option): Declare.
5663 * c-format.c: Include c-target.h instead of target.h.
5664 * c-opts.c: Include c-target.h instead of target.h. Explicitly
5665 include tm.h.
5666 (default_handle_c_option): Move from targhooks.c.
5667
acb10f41 56682011-03-29 Jakub Jelinek <jakub@redhat.com>
5669
5670 PR preprocessor/48248
5671 * c-ppoutput.c (print): Add src_file field.
5672 (init_pp_output): Initialize it.
5673 (maybe_print_line): Don't optimize by adding up to 8 newlines
5674 if map->to_file and print.src_file are different file.
5675 (print_line): Update print.src_file.
5676
82715bcd 56772011-03-25 Kai Tietz <ktietz@redhat.com>
5678
5679 * c-ada-spec.c (compare_comment): Use filename_cmp
5680 instead of strcmp for filename.
5681
451c8e2f 56822011-03-25 Jeff Law <law@redhat.com>
5683
1f78217c 5684 * c-common.c (def_fn_type): Add missing va_end.
451c8e2f 5685
3c47771c 56862011-03-25 Jason Merrill <jason@redhat.com>
5687
5688 * c.opt: Add -std=c++03.
5689
97e6200f 56902011-03-22 Eric Botcazou <ebotcazou@adacore.com>
5691
5692 * c-ada-spec.c (dump_ada_template): Skip non-class instances.
5693
ac86af5d 56942011-03-17 Kai Tietz
5695
5696 PR target/12171
ee212425 5697 * c-pretty-print.c (pp_c_specifier_qualifier_list):
5698 Display allowed attributes for function pointer types.
5699 (pp_c_attributes_display): New function to display
5700 attributes having affects_type_identity flag set to true.
5701 * c-pretty-print.h (pp_c_attributes_display): New prototype.
5702
ac86af5d 5703 * c-common.c (c_common_attribute_table):
5704 Add new element.
5705 (c_common_format_attribute_table): Likewise.
5706
914d1151 57072011-03-18 Jason Merrill <jason@redhat.com>
5708
69788bdf 5709 * c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
5710 * c-common.h: Don't declare it here.
5711 * c-common.c: Or define it here.
5712 * c-opts.c (c_common_handle_option): Or set it here.
5713
914d1151 5714 PR c++/35315
5715 * c-common.c (handle_transparent_union_attribute): Don't
5716 make a duplicate type in C++.
5717
54cf6eed 57182011-03-15 Jason Merrill <jason@redhat.com>
5719
5720 * c-common.c (max_constexpr_depth): New.
5721 * c-common.h: Declare it.
5722 * c-opts.c (c_common_handle_option): Set it.
5723 * c.opt (fconstexpr-depth): New option.
5724
02cb1060 57252011-03-11 Jason Merrill <jason@redhat.com>
5726
9bf1c74e 5727 * c-common.c (attribute_takes_identifier_p): Add missing const.
5728
02cb1060 5729 PR c++/46803
5730 * c-common.c (attribute_takes_identifier_p): Assume that an
5731 unknown attribute takes an identifier.
5732
ecf2703d 57332011-03-07 Nathan Froyd <froydnj@codesourcery.com>
5734
5735 PR c/47786
5736 * c-common.c (c_type_hash): Call list_length instead of iterating
5737 through DECL_CHAIN. Rename 'i' to 'n_elements'.
5738
2b19dfe4 57392011-02-19 Jakub Jelinek <jakub@redhat.com>
5740
5741 PR c/47809
5742 * c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
5743
29cf2335 57442011-02-17 Iain Sandoe <iains@gcc.gnu.org>
5745
5746 * c.opt (fobjc-abi-version=) New.
5747 (fobjc-nilcheck): New.
5748
fad3f658 57492011-02-03 Nathan Froyd <froydnj@codesourcery.com>
5750
5751 PR c++/46890
5752 * c-common.h (keyword_is_decl_specifier): Declare.
5753 * c-common.c (keyword_is_decl_specifier): Define.
5754 (keyword_is_function_specifier): New function.
5755
a12319b3 57562011-01-26 Jakub Jelinek <jakub@redhat.com>
5757
5758 PR c/47473
5759 * c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
5760 EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
5761 REAL_TYPE.
5762
5c128dc8 57632011-01-26 Arnaud Charlet <charlet@adacore.com>
5764
5765 * c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type.
5766
8d67b0c7 57672011-01-26 Jakub Jelinek <jakub@redhat.com>
5768
5769 PR pch/47430
5770 * c-opts.c (c_common_post_options): Call c_common_no_more_pch
5771 after init_c_lex if pch_file is set.
5772
0675168d 57732011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
5774
e8911163 5775 PR c++/43601
0675168d 5776 * c.opt (-fkeep-inline-dllexport): New switch.
5777
0725e25c 57782011-01-12 Richard Guenther <rguenther@suse.de>
5779
5780 PR middle-end/32511
5781 * c-common.c (handle_weak_attribute): Warn instead of error
5782 on declaring an inline function weak.
5783
fdd84b77 57842011-01-05 Tom Tromey <tromey@redhat.com>
5785
5786 * c-common.h (lvalue_error): Update.
5787 * c-common.c (lvalue_error): Add 'loc' argument. Call error_at,
5788 not error.
5789
e6e73d14 57902010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
19931eea 5791
d67e8485 5792 PR objc/47075
5793 * c-objc.h (objc_finish_message_expr): Added argument to
5794 prototype.
5795
a36cf284 57962010-12-22 Nathan Froyd <froydnj@codesourcery.com>
5797
5798 * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute):
5799 Use prototype_p.
5800
33b3681f 58012010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
5802
5803 * c-objc.h (objc_maybe_warn_exceptions): New.
19931eea 5804 * stub-objc.c (objc_maybe_warn_exceptions): New.
33b3681f 5805
a1f90215 58062010-12-10 Nathan Froyd <froydnj@codesourcery.com>
5807
5808 * c-common.h (readonly_error): Declare.
5809 * c-common.c (readonly_error): Define.
5810
b1bbc8e5 58112010-12-09 Nathan Froyd <froydnj@codesourcery.com>
5812
5813 * c-common.h (invalid_indirection_error): Declare.
5814 * c-common.c (invalid_indirection_error): Define.
5815
b0d55af9 58162010-12-03 Richard Guenther <rguenther@suse.de>
5817
5818 PR c/46745
5819 * c-pretty-print.c (pp_c_postfix_expression): Handle MEM_REF.
5820 (pp_c_unary_expression): Likewise.
5821 (pp_c_expression): Likewise.
5822
d7489d8d 58232010-11-30 Nicola Pero <nicola.pero@meta-innovation.com>
5824
5825 * c-common.h (objc_finish_function): New.
5826 (objc_non_volatilized_type): Removed.
5827 (objc_type_quals_match): Removed.
5828 * stub-objc.c (objc_finish_function): New.
5829 (objc_non_volatilized_type): Removed.
5830 (objc_type_quals_match): Removed.
19931eea 5831
92468061 58322010-11-30 Joseph Myers <joseph@codesourcery.com>
5833
5834 * c-common.h (parse_optimize_options): Declare.
5835 * c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c,
5836 c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h.
5837
967958e4 58382010-11-29 Joseph Myers <joseph@codesourcery.com>
5839
5840 * c-opts.c (check_deps_environment_vars): Use getenv instead of
5841 GET_ENVIRONMENT.
5842 * c-pch.c (O_BINARY): Don't define here.
5843 * c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
5844
b213bf24 58452010-11-25 Joseph Myers <joseph@codesourcery.com>
5846
5847 * c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
5848 targetm.except_unwind_info.
5849
9faf44d6 58502010-11-23 Joseph Myers <joseph@codesourcery.com>
5851
5852 * c-opts.c (c_common_handle_option): Pass location to
5853 set_struct_debug_option.
5854
79396169 58552010-11-23 Joseph Myers <joseph@codesourcery.com>
5856
5857 * c-common.c (visibility_options): Move from ../opts.c.
5858 * c-common.h (struct visibility_flags, visibility_options):
5859 Declare here.
5860 * c-opts.c (finish_options): Rename to c_finish_options.
5861 (c_common_init): Update call to finish_options.
5862
b4aa4123 58632010-11-22 Nicola Pero <nicola.pero@meta-innovation.com>
5864
5865 PR objc/34033
5866 * c-lex.c (lex_string): Check that each string in an Objective-C
5867 string concat sequence starts with either one or zero '@', and
5868 that there are no spurious '@' signs at the end.
5869
3e0e49f2 58702010-11-20 Joseph Myers <joseph@codesourcery.com>
5871
5872 * c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
5873 HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
5874 HANDLE_PRAGMA_VISIBILITY.
5875 * c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
5876 HANDLE_PRAGMA_VISIBILITY): Don't define.
5877 (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.
5878
a9ffdd35 58792010-11-20 Nathan Froyd <froydnj@codesourcery.com>
5880
5881 PR c++/16189
5882 PR c++/36888
5883 PR c++/45331
5884 * c-common.h (keyword_begins_type_specifier): Declare.
5885 (keyword_is_storage_class_specifier): Declare.
5886 (keyword_is_type_qualifier): Declare.
5887 * c-common.c (keyword_begins_type_specifier): New function.
5888 (keyword_is_storage_class_specifier): New function.
5889 (keyword_is_type_qualifier): Declare.
5890
93be21c0 58912010-11-19 Joseph Myers <joseph@codesourcery.com>
5892
5893 PR c/46547
5894 * c-common.c (in_late_binary_op): Define.
5895 (c_common_truthvalue_conversion): Check in_late_binary_op before
5896 calling c_save_expr.
5897 * c-common.h (in_late_binary_op): Declare.
5898
d7175aef 58992010-11-19 Joseph Myers <joseph@codesourcery.com>
5900
5901 * c-opts.c (c_common_handle_option): Update calls to
5902 set_struct_debug_option.
5903
c213e196 59042010-11-19 Nicola Pero <nicola.pero@meta-innovation.com>
5905
5906 * c-common.h (objc_declare_protocols): Added additional argument.
5907 * stub-objc.c (objc_declare_protocol): Same change.
19931eea 5908
0b5fc5d6 59092010-11-18 Nathan Froyd <froydnj@codesourcery.com>
5910
5911 PR c/33193
5912 * c-common.h (build_real_imag_expr): Declare.
5913 * c-semantics.c (build_real_imag_expr): Define.
5914
b8ba44e7 59152010-11-17 Joseph Myers <joseph@codesourcery.com>
5916
5917 * c-opts.c (c_common_parse_file): Take no arguments.
5918 * c-common.h (c_common_parse_file): Update prototype.
5919
6ef8d12f 59202010-11-16 Jakub Jelinek <jakub@redhat.com>
5921
5922 PR c++/46401
5923 * c-common.c (warning_candidate_p): Don't track non-const calls
5924 or STRING_CSTs.
5925
929d2a90 59262010-11-15 Ian Lance Taylor <iant@google.com>
5927
5928 * c-lex.c (init_c_lex): Set macro debug callbacks if
5929 flag_dump_go_spec is set.
5930
e4a7640a 59312010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
5932
5933 * c-common.h (objc_build_incr_expr_for_property_ref): New.
5934 * stub-objc.c (objc_build_incr_expr_for_property_ref): New.
5935
597d2d81 59362010-11-15 Nathan Froyd <froydnj@codesourcery.com>
5937
5938 PR preprocessor/45038
5939 * c-cppbuiltin.c (c_cpp_builtins): Use different format for C++
5940 dialects.
5941
c123f04d 59422010-11-12 Joseph Myers <joseph@codesourcery.com>
5943
5944 * c-common.h (c_family_lang_mask): Declare.
5945 * c-opts.c (c_family_lang_mask): Make extern.
5946 * c-pragma.c (handle_pragma_diagnostic): Use
5947 control_warning_option.
5948
3c6c0e40 59492010-11-12 Joseph Myers <joseph@codesourcery.com>
5950
5951 * c-common.c (parse_optimize_options): Update call to
5952 decode_options.
5953 * c-common.h (c_common_handle_option): Update prototype.
5954 * c-opts.c (c_common_handle_option): Take location_t parameter and
5955 pass it to other functions.
5956
19ec5c9e 59572010-11-11 Joseph Myers <joseph@codesourcery.com>
5958
5959 * c-opts.c (warning_as_error_callback): Remove.
5960 (c_common_initialize_diagnostics): Don't call
5961 register_warning_as_error_callback.
5962 (c_common_handle_option): Handle -Werror=normalized= here.
5963
bf776685 59642010-11-10 Joseph Myers <joseph@codesourcery.com>
5965
5966 * c-common.c (handle_mode_attribute): Use %' and word "signedness"
5967 in diagnostic.
5968 * c-opts.c (c_common_parse_file): Start diagnostics with lowercase
5969 letter.
5970 * c-pragma.c (handle_pragma_target, handle_pragma_optimize):
5971 Remove trailing '.' from diagnostics.
5972 * c.opt (Wwrite-strings_: Avoid '`' in help text.
5973
6bd9d862 59742010-11-10 Joseph Myers <joseph@codesourcery.com>
5975
5976 * c-common.c (parse_optimize_options): Pass global_dc to
5977 decode_options.
5978 * c-opts.c (c_common_handle_option): Pass &global_options to
5979 set_Wstrict_aliasing.
5980 * c.opt (v): Don't mark Common or document here.
5981
1f6616ee 59822010-11-06 Iain Sandoe <iains@gcc.gnu.org>
5983
5984 PR target/44981
5985 * c-format.c (format_type): New type gcc_objc_string_format_type.
5986 (valid_stringptr_type_p): New.
5987 (handle_format_arg_attribute): Use valid_stringptr_type_p ().
19931eea 5988 (check_format_string): Pass expected type, use
1f6616ee 5989 valid_stringptr_type_p (), check that the format string types are
5990 consistent with the format specification.
5991 (decode_format_attr): Warn if NSString is used outside objective-c.
5992 (format_types_orig): Add NSString.
5993 (format_name): New.
5994 (format_flags): New.
5995 (check_format_arg): Handle format strings requiring an external parser.
5996 first_target_format_type: New variable.
5997 (handle_format_attribute): Set up first_target_format_type, pass the
5998 expected format arg string type to check_format_string().
5999 * c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL): New flag.
6000 * stub-objc.c (objc_string_ref_type_p): New.
6001 (objc_check_format_arg): New.
6002
b0d0931f 60032010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
6004
19931eea 6005 Fixed using the Objective-C 2.0 dot-syntax with class names.
b0d0931f 6006 * c-common.h (objc_build_class_component_ref): New.
6007 * stub-objc.c (objc_build_class_component_ref): New.
6008
f26877d5 60092010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
6010
6011 * c.opt (Wproperty-assign-default): New option.
6012
1ef143b6 60132010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
6014
6015 Implemented -fobjc-std=objc1 flag.
6016 * c.opt (fobjc-std=objc1): New option.
6017
8c582e4f 60182010-11-01 Nicola Pero <nicola.pero@meta-innovation.com>
6019
6020 Implemented format and noreturn attributes for Objective-C methods.
6021 * c-common.c (handle_noreturn_attribute): Recognize 'noreturn'
6022 attribute for Objective-C methods.
6023
8637f1db 60242010-10-31 Jason Merrill <jason@redhat.com>
6025
6026 * c-common.c (conversion_warning, warn_for_collisions_1): Use
6027 EXPR_LOC_OR_HERE.
6028
9d9f5bb3 60292010-10-30 Nicola Pero <nicola.pero@meta-innovation.com>
6030
6031 Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
6032 * c-common.h (enum rid): Removed RID_COPIES and RID_IVAR.
6033 (objc_add_property_declaration): Removed arguments for copies and
6034 ivar.
6035 (objc_build_getter_call): Renamed to
6036 objc_maybe_build_component_ref.
6037 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
6038 (objc_is_property_ref): New.
6039 * c-common.c (c_common_reswords): Removed copies and ivar.
6040 * stub-objc.c (objc_add_property_declaration): Removed arguments
6041 for copies and ivar.
6042 (objc_build_getter_call): Renamed to
6043 objc_maybe_build_component_ref.
6044 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
6045 (objc_is_property_ref): New.
19931eea 6046
56f907a0 60472010-10-29 Arnaud Charlet <charlet@adacore.com>
6048 Matthew Gingell <gingell@adacore.com>
6049
6050 * c-ada-spec.c (separate_class_package): New function.
6051 (pp_ada_tree_identifier): Prefix references to C++ classes with the
6052 name of their enclosing package.
6053 (print_ada_declaration): Use separate_class_package.
6054
b5fa273e 60552010-10-27 Jason Merrill <jason@redhat.com>
6056
5290e253 6057 * c-common.c (c_common_reswords): Add __is_literal_type.
6058 * c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
6059
b5fa273e 6060 * c-common.c (check_case_value): Remove special C++ code.
6061
7590f0e5 60622010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
6063
6064 * c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN,
6065 RID_RETAIN, RID_COPY and RID_NONATOMIC. Updated RID_FIRST_PATTR
6066 and RID_LAST_PATTR.
6067 (objc_add_property_declaration): Added additional arguments.
6068 (objc_property_attribute_kind): Removed.
6069 (objc_set_property_attr): Removed.
6070 * c-common.c (c_common_reswords): Added readwrite, assign, retain,
6071 copy and nonatomic.
6072 * stub-objc.c (objc_add_property_declaration): Added additional
6073 arguments.
6074 (objc_set_property_attr): Removed.
19931eea 6075
1d894bcf 60762010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
6077
6078 * c-common.h (objc_add_property_variable): Renamed to
6079 objc_add_property_declaration. Added location argument.
6080 * stub-objc.c (objc_add_property_variable): Same change.
8204c077 6081
e23bf1fb 60822010-10-23 Nicola Pero <nicola.pero@meta-innovation.com>
6083
6084 * c-common.h (objc_maybe_printable_name): New.
6085 * stub-objc.c (objc_maybe_printable_name): New.
6086
93426222 60872010-10-22 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
6088 Andrew Pinski <pinskia@gmail.com>
6089
6090 * c-common.h (c_common_mark_addressable_vec): Declare.
6091 * c-common.c (c_common_mark_addressable_vec): New function.
6092
45b2b110 60932010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
6094
6095 * c-common.h (objc_set_method_type): Removed.
6096 (objc_add_method_declaration): Added boolean argument.
6097 (objc_start_method_definition): Same change.
6098 (objc_build_method_signature): Same change.
6099 * stub-objc.c (objc_set_method_type): Removed.
6100 (objc_add_method_declaration): Added boolean argument.
6101 (objc_start_method_definition): Same change.
6102 (objc_build_method_signature): Same change.
6103
64cd9619 61042010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
6105
6106 * c-common.h (finish_file): Removed.
6107 (objc_write_global_declarations): New.
6108 * c-opts.c (c_common_parse_file): Do not call finish_file.
6109 * stub-objc.c (objc_write_global_declarations): New.
19931eea 6110
e1f293c0 61112010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
6112
6113 Implemented parsing @synthesize and @dynamic for
6114 Objective-C/Objective-C++.
6115 * c-common.h (enum rid): Add RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
6116 (objc_add_synthesize_declaration): New.
6117 (objc_add_dynamic_declaration): New.
6118 * c-common.c (c_common_reswords): Add synthesize and dynamic.
6119 * stub-objc.c (objc_add_synthesize_declaration): New.
6120 (objc_add_dynamic_declaration): New.
19931eea 6121
ef97a312 61222010-10-18 Michael Meissner <meissner@linux.vnet.ibm.com>
6123
6124 PR target/46041
6125 * c-cppbuiltin.c (mode_has_fma): Move function here from
6126 builtins.c. Don't use the fma optab, instead just use the
6127 HAVE_fma* macros, so that __FP_FAST_FMA* will be defined when
6128 using -save-temps.
6129
69b07042 61302010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
6131
6132 Merge from 'apple/trunk' branch on FSF servers.
ef97a312 6133
69b07042 6134 2005-11-08 Fariborz Jahanian <fjahanian@apple.com>
6135
19931eea 6136 Radar 4330422
69b07042 6137 * c-common.h (objc_non_volatilized_type): New declaration
6138 * stub-objc.c (objc_non_volatilized_type): New stub.
6139
f15f2e56 61402010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
6141
69b07042 6142 Merge from 'apple/trunk' branch on FSF servers.
f15f2e56 6143
6144 2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
6145
19931eea 6146 Radar 4133425
f15f2e56 6147 * c-common.h (objc_diagnose_private_ivar): New decl.
ef97a312 6148 * stub-objc.c (objc_diagnose_private_ivar): New stub.
f15f2e56 6149
4a8875ed 61502010-10-17 Iain Sandoe <iains@gcc.gnu.org>
6151
6152 * c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
6153 * c-common.h (enum rid): Add RID_AT_PACKAGE.
6154 (objc_ivar_visibility_kind): New enum.
6155 (objc_set_visibility): Adjust prototype to use visibility enum.
ef97a312 6156 * stub-objc.c (objc_set_visibility): Adjust stub to use
4a8875ed 6157 visibility enum.
6158
7e0713b1 61592010-10-14 Michael Meissner <meissner@linux.vnet.ibm.com>
6160
6161 * c-cppbuiltin.c (builtin_define_float_constants): Emit
6162 __FP_FAST_FMA, __FP_FAST_FMAF, and __FP_FAST_FMAL if the machine
6163 has the appropriate fma builtins.
6164 (c_cpp_builtins): Adjust call to builtin_define_float_constants.
6165
86c110ac 61662010-10-14 Iain Sandoe <iains@gcc.gnu.org>
6167
7e0713b1 6168 merge from FSF apple 'trunk' branch.
86c110ac 6169 2006 Fariborz Jahanian <fjahanian@apple.com>
7e0713b1 6170
86c110ac 6171 Radars 4436866, 4505126, 4506903, 4517826
6172 * c-common.c (c_common_resword): Define @property and its attributes.
6173 * c-common.h: Define property attribute enum entries.
6174 (OBJC_IS_PATTR_KEYWORD): New.
6175 (objc_property_attribute_kind): New enum.
6176 Declare objc_set_property_attr (), objc_add_property_variable (),
6177 objc_build_getter_call () and objc_build_setter_call ().
6178 * stub-objc.c (objc_set_property_attr): New stub.
6179 (objc_add_property_variable): Likewise.
6180 (objc_build_getter_call): Likewise.
6181 (objc_build_setter_call) Likewise.
7e0713b1 6182
40c8d1dd 61832010-10-13 Iain Sandoe <iains@gcc.gnu.org>
6184
7e0713b1 6185 merge from FSF apple 'trunk' branch.
40c8d1dd 6186 2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
6187
6188 Radar 3803157 (method attributes)
6189 * c-common.c (handle_deprecated_attribute): Recognize
6190 objc methods as valid declarations.
6191 * c-common.h: Declare objc_method_decl ().
7e0713b1 6192 * stub-objc.c (objc_method_decl): New stub.
40c8d1dd 6193
f3f006ad 61942010-10-08 Joseph Myers <joseph@codesourcery.com>
6195
6196 * c-common.c (parse_optimize_options): Call
6197 decode_cmdline_options_to_array_default_mask before
6198 decode_options. Update arguments to decode_options.
6199 * c-common.h (c_common_init_options_struct): Declare.
6200 * c-opts.c (c_common_init_options_struct): New. Split out from
6201 c_common_init_options.
6202
0a65c3bb 62032010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
6204
6205 Implemented fast enumeration for Objective-C.
6206 * c-common.h (objc_finish_foreach_loop): New.
6207 * stub-objc.c (objc_finish_foreach_loop): New.
6208
24ca3b4e 62092010-10-05 Joseph Myers <joseph@codesourcery.com>
6210
6211 * c-common.h (struct diagnostic_context): Don't declare here.
6212 (c_common_initialize_diagnostics): Declare using
6213 diagnostic_context typedef.
6214 * c-opts.c (c_common_handle_option): Pass global_dc to
6215 handle_generated_option.
6216
f83b64ca 62172010-10-04 Joseph Myers <joseph@codesourcery.com>
6218
6219 * c-opts.c (c_common_handle_option): Pass &global_options_set to
6220 handle_generated_option.
6221
2fdec027 62222010-10-03 Ian Lance Taylor <iant@google.com>
6223
6224 * c.opt (-fplan9-extensions): New option.
6225
41acdfa4 62262010-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
6227
6228 * c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision):
6229 Remove.
6230 (c_cpp_builtins): Call functions from cppbuiltin.c instead
6231 of duplicating code.
6232
069761fb 62332010-09-30 Iain Sandoe <iains@gcc.gnu.org>
6234
6235 * c-common.c: Add two new entries for @optional
6236 and @required keywords.
6237
6238 merge from FSF 'apple/trunk' branch.
6239 2006-01-30 Fariborz Jahanian <fjahanian@apple.com>
6240
6241 Radar 4386773
6242 * c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new
6243 objective-c keywords.
6244 (objc_set_method_opt): New declaration.
6245 * stub-objc.c (objc_set_method_opt): New stub.
19931eea 6246
2c5d2e39 62472010-09-30 Joseph Myers <joseph@codesourcery.com>
6248
6249 * c-common.c (handle_optimize_attribute): Pass &global_options to
6250 cl_optimization_save and cl_optimization_restore.
6251 * c-opts.c (c_common_handle_option): Pass &global_options to
6252 handle_generated_option.
6253 * c-pragma.c (handle_pragma_diagnostic): Use option_flag_var.
6254 (handle_pragma_pop_options, handle_pragma_reset_options): Pass
6255 &global_options to cl_optimization_restore.
6256
e5c75ac3 62572010-09-30 Nicola Pero <nicola.pero@meta-innovation.com>
6258
6259 * c-lex.c (c_lex_with_flags): Updated comments for CPP_AT_NAME
6260 Objective-C/Objective-C++ keywords.
6261
3511333e 62622010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
e147d6aa 6263
19931eea 6264 Merge from 'apple/trunk' branch on FSF servers.
6265
e147d6aa 6266 2005-10-04 Fariborz Jahanian <fjahanian@apple.com>
6267
6268 Radar 4281748
6269 * c-common.h (objc_check_global_decl): New declaration.
6270 * stub-objc.c (objc_check_global_decl): New stub.
6271
5461e683 62722010-09-29 Joseph Myers <joseph@codesourcery.com>
6273
6274 * c.opt: Don't use VarExists.
6275
5ae82d58 62762010-09-29 Joseph Myers <joseph@codesourcery.com>
6277
6278 * c-common.c (c_cpp_error): Update names of diagnostic_context
6279 members.
6280 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of
6281 cl_optimization members.
6282 * c-opts.c (warning_as_error_callback, c_common_handle_option,
6283 sanitize_cpp_opts, finish_options): Update names of cpp_options
6284 members.
6285
b27e241e 62862010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
6287
6288 * c-common.h (OBJC_IS_CXX_KEYWORD): New macro. Updated comments.
6289 (objc_is_reserved_word): Removed.
6290 * c-common.c: Updated comments.
6291 * c-lex.c (c_lex_with_flags): Use OBJC_IS_CXX_KEYWORD instead of
6292 objc_is_reserved_word.
6293 * stub-objc.c (objc_is_reserved_word): Removed.
6294
03fc2271 62952010-09-28 Iain Sandoe <iains@gcc.gnu.org>
6296
19931eea 6297 * c-common.h (objc_add_method_declaration): Adjust prototype to
03fc2271 6298 include attributes.
6299 (objc_start_method_definition): Likewise.
6300 (objc_build_keyword_decl): Likewise.
6301 * stub-objc.c:(objc_add_method_declaration): Handle attributes.
6302 (objc_start_method_definition): Likewise.
6303 (objc_build_keyword_decl): Likewise.
6304
a336eb4b 63052010-09-28 Iain Sandoe <iains@gcc.gnu.org>
6306
6307 * c-common.h (objc_start_class_interface): Adjust prototype.
6308 (objc_start_category_interface): Likewise.
6309 (objc_start_protocol): Likewise.
6310 * stub-objc.c (objc_start_protocol): Adjust for extra argument.
6311 (objc_start_class_interface): Likewise.
6312 (objc_start_category_interface): Likewise.
6313
48b14f50 63142010-09-27 Ian Lance Taylor <iant@google.com>
6315
6316 * c-common.c (c_common_attribute_table): Add no_split_stack.
6317 (handle_no_split_stack_attribute): New static function.
6318
4abfc532 63192010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
6320
19931eea 6321 Merge from 'apple/trunk' branch on FSF servers.
4abfc532 6322
6323 2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
6324
19931eea 6325 Radar 4229905
4abfc532 6326 * c-common.h (objc_have_common_type): New declaration.
6327 * stub-objc.c (objc_have_common_type): New stub.
6328
6329 2005-06-22 Ziemowit Laski <zlaski@apple.com>
6330
6331 Radar 4154928
6332 * c-common.h (objc_common_type): New prototype.
19931eea 6333 * stub-objc.c (objc_common_type): New stub.
4abfc532 6334
7bd95dfd 63352010-09-24 Jan Hubicka <jh@suse.cz>
6336
6337 * c-common.c (handle_leaf_attribute): New function.
6338 (struct attribute_spec c_common_att): Add leaf.
6339
5789e05b 63402010-09-22 Joseph Myers <joseph@codesourcery.com>
6341
6342 * c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
6343 -comments-in-macros, -define-macro, -define-macro=, -dependencies,
6344 -dump, -dump=, -imacros, -imacros=, -include, -include=,
6345 -include-barrier, -include-directory, -include-directory=,
6346 -include-directory-after, -include-directory-after=,
6347 -include-prefix, -include-prefix=, -include-with-prefix,
6348 -include-with-prefix=, -include-with-prefix-after,
6349 -include-with-prefix-after=, -include-with-prefix-before,
6350 -include-with-prefix-before=, -no-integrated-cpp,
6351 -no-line-commands, -no-standard-includes, -no-warnings, -output,
6352 -output=, -pedantic, -pedantic-errors, -preprocess,
6353 -print-missing-file-dependencies, -trace-includes, -traditional,
6354 -traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
6355 -user-dependencies, -verbose, -write-dependencies,
6356 -write-user-dependencies, no-integrated-cpp, traditional): New.
6357
e6fb54ba 63582010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
6359
6360 PR objc/23710
9b60f3b0 6361 * c-common.h (objc_start_method_definition): Return bool instead
6362 of void.
6363 * stub-objc.c (objc_start_method_definition): Return bool instead
6364 of void.
6365
63662010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
6367
6368 PR objc/25965
6369 * c-common.h (objc_get_interface_ivars): New declaration.
6370 * stub-objc.c (objc_get_interface_ivars): New stub.
e6fb54ba 6371
e44b0a1f 63722010-09-15 Ian Lance Taylor <iant@google.com>
6373
6374 * c-common.c (parse_optimize_options): Do not capitalize warning
ebd7c4c1 6375 messages. Remove period at end of warning message.
e44b0a1f 6376
85c0a25c 63772010-09-09 Nathan Sidwell <nathan@codesourcery.com>
6378
6379 * c-common.c (handle_alias_ifunc_attribute): New, broken out of ...
6380 (handle_alias_attribute): ... here.
6381 (handle_ifunc_attribute): New.
6382
5ba33bf4 63832010-09-06 Mark Mitchell <mark@codesourcery.com>
6384
6385 * c-common.h (do_warn_double_promotion): Declare.
6386 * c-common.c (do_warn_double_promotion): Define.
6387
c920faa3 63882010-09-05 Mark Mitchell <mark@codesourcery.com>
6389
6390 * c.opt (Wdouble-promotion): New.
6391
9604e070 63922010-09-02 Joseph Myers <joseph@codesourcery.com>
6393
6394 * c.opt (falt-external-templates, fhuge-objects, fvtable-gc,
6395 fvtable-thunks, fxref): Mark no longer supported in help text.
6396
3b0273a1 63972010-09-02 Joseph Myers <joseph@codesourcery.com>
6398
6399 * c.opt (Wimport, fall-virtual, falt-external-templates,
6400 fdefault-inline, fenum-int-equiv, fexternal-templates,
6401 fguiding-decls, fhonor-std, fhuge-objects, flabels-ok,
6402 fname-mangling-version-, fnew-abi, fnonnull-objects,
6403 foptional-diags, fsquangle, fstrict-prototype, fthis-is-variable,
6404 fvtable-gc, fvtable-thunks, fxref): Mark with Ignore and Warn as
6405 applicable.
6406 (fhandle-exceptions): Mark with Alias and Warn.
6407 * c-opts.c (c_common_handle_option): Don't handle options marked
6408 as ignored.
6409
67089c6b 64102010-09-02 Joseph Myers <joseph@codesourcery.com>
6411
6412 * c.opt (Wcomments, Werror-implicit-function-declaration,
6413 ftemplate-depth-, std=c89, std=c9x, std=gnu89, std=gnu9x,
6414 std=iso9899:1990, std=iso9899:1999, std=iso9899:199x): Mark as
6415 aliases.
6416 * c-common.c (option_codes): Use OPT_Wcomment instead of
6417 OPT_Wcomments.
6418 * c-opts.c (warning_as_error_callback, c_common_handle_option):
6419 Don't handle options marked as aliases.
6420
2af087f2 64212010-08-25 Richard Guenther <rguenther@suse.de>
6422
6423 * c-common.c (c_common_get_alias_set): Remove special
6424 handling for pointers.
6425
48148244 64262010-08-20 Nathan Froyd <froydnj@codesourcery.com>
6427
6428 * c-common.c: Use FOR_EACH_VEC_ELT.
6429 * c-gimplify.c: Likewise.
6430 * c-pragma.c: Likewise.
6431
89c69892 64322010-08-16 Joseph Myers <joseph@codesourcery.com>
6433
6434 * c.opt (MDX): Change back to MD. Mark NoDriverArg instead of
6435 RejectDriver.
6436 (MMDX): Change back to MMD. Mark NoDriverArg instead of
6437 RejectDriver.
6438 * c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
6439 instead of OPT_MDX and OPT_MMDX.
6440
e28aa114 64412010-08-16 Joseph Myers <joseph@codesourcery.com>
6442
6443 * c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.
6444
99b66d21 64452010-08-12 Joseph Myers <joseph@codesourcery.com>
6446
6447 * c.opt (MD, MMD): Change to MDX and MMDX.
6448 * c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX.
6449
666f4bf0 64502010-08-11 Joseph Myers <joseph@codesourcery.com>
6451
6452 * c-opts.c (c_common_handle_option): Call handle_generated_option
6453 instead of handle_option.
6454
5ec815f6 64552010-08-08 Nathan Froyd <froydnj@codesourcery.com>
6456
6457 * c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
6458 (maybe_apply_renaming_pragma): Delete unneeded declarations.
6459
d13143cf 64602010-08-08 Nathan Froyd <froydnj@codesourcery.com>
6461
6462 * c-pragma.c (pending_redefinition): Declare. Declare a VEC of it.
6463 (pending_redefine_extname): Change type to a VEC.
6464 (add_to_renaming_pragma_list): Update for new type of
6465 pending_redefine_extname.
5ec815f6 6466 (maybe_apply_renaming_pragma): Likewise.
d13143cf 6467
2008c983 64682010-08-04 Arnaud Charlet <charlet@adacore.com>
6469
6470 * c-ada-spec.c (dump_ada_template): Mark underlying instance type as
6471 visited.
6472 (dump_generic_ada_node): Code clean up. Use TREE_VISITED flag to
6473 decide whether a type has already been declared/seen.
6474 Do not go to the original type.
6475 (dump_nested_types): New parameter forward.
6476 Generate forward declaration if needed and mark type as visited.
6477 (print_ada_declaration): Call dump_nested_types if not already done.
6478 Mark types as visited.
6479
9b091a73 64802010-08-03 Joseph Myers <joseph@codesourcery.com>
6481
6482 * c.opt (-print-pch-checksum): Remove option.
6483 * c-opts.c (c_common_handle_option): Don't handle
6484 OPT_print_pch_checksum.
6485
b78351e5 64862010-07-27 Joseph Myers <joseph@codesourcery.com>
6487
6488 * c-common.h (c_common_handle_option): Update prototype and return
6489 value type.
6490 * c-opts.c (c_common_handle_option): Update prototype and return
6491 value type. Update calls to handle_option and
6492 enable_warning_as_error.
6493
34416a90 64942010-07-27 Jakub Jelinek <jakub@redhat.com>
6495
6496 PR c/45079
6497 * c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
6498
fecf9011 64992010-07-27 Joseph Myers <joseph@codesourcery.com>
6500
6501 * c-common.h (c_common_missing_argument): Remove.
6502 * c-opts.c (c_common_missing_argument): Remove.
6503 * c.opt (A, D, F, I, MD, MMD, MQ, MT, U, fconstant-string-class=,
6504 idirafter, imacros, include, isysroot, isystem, iquote): Add
6505 MissingArgError.
6506 * c-objc-common.h (LANG_HOOKS_MISSING_ARGUMENT): Remove.
6507
e88d34f6 65082010-07-27 Joseph Myers <joseph@codesourcery.com>
6509
6510 * c-common.h (c_common_option_lang_mask,
6511 c_common_initialize_diagnostics, c_common_complain_wrong_lang_p):
6512 New.
6513 (c_common_init_options): Update prototype.
6514 * c-opts.c (c_common_option_lang_mask): New.
6515 (c_common_initialize_diagnostics): Split out of
6516 c_common_init_options.
6517 (accept_all_c_family_options, c_common_complain_wrong_lang_p):
6518 New.
6519 (c_common_init_options): Update prototype. Use decoded options in
6520 search for -lang-asm.
6521
1767a056 65222010-07-15 Nathan Froyd <froydnj@codesourcery.com>
6523
6524 * c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
6525 * c-format.c: Likewise.
6526
0b205f4c 65272010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
6528
6529 * c-common.h: Include diagnostic-core.h. Error if already
6530 included.
6531 * c-semantics.c: Do not define GCC_DIAG_STYLE here.
6532
1c58e3f1 65332010-07-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
6534
1f78217c 6535 * c-common.c (IN_GCC_FRONTEND): Do not undef.
1c58e3f1 6536 Do not include expr.h
6537 (vector_mode_valid_p): Move here.
6538
33cc157c 65392010-06-21 DJ Delorie <dj@redhat.com>
6540
6541 * c-pragma.c (handle_pragma_diagnostic): Add push/pop,
6542 allow these pragmas anywhere.
6543
65442010-06-14 Jakub Jelinek <jakub@redhat.com>
6545
6546 PR bootstrap/44509
6547 * c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
6548 (lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
6549 (lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
6550 ggc_strdup instead of xstrdup.
6551
65522010-06-10 Jakub Jelinek <jakub@redhat.com>
6553
6554 * c-cppbuiltin.c: Include cpp-id-data.h.
6555 (lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
6556 (lazy_hex_fp_value): New function.
6557 (builtin_define_with_hex_fp_value): Provide definitions lazily.
6558
9b40bfbf 65592010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
6560
6561 * c-gimplify.c: Do not include tree-flow.h
6562
202d6e5f 65632010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
6564
6565 PR other/44034
6566 * c-common.c: Rename targetm member:
6567 targetm.enum_va_list -> targetm.enum_va_list_p
6568
d3237426 65692010-06-28 Anatoly Sokolov <aesok@post.ru>
6570
6571 * c-common.c (shorten_compare): Adjust call to force_fit_type_double.
6572
596981c8 65732010-06-28 Steven Bosscher <steven@gcc.gnu.org>
6574
6575 * c-cppbuiltin.c: Do not include except.h.
6576
b9bdfa0b 65772010-06-24 Andi Kleen <ak@linux.intel.com>
6578
19931eea 6579 * c-common.c (warn_for_omitted_condop): New.
6580 * c-common.h (warn_for_omitted_condop): Add prototype.
b9bdfa0b 6581
55ad092d 65822010-06-21 Joseph Myers <joseph@codesourcery.com>
6583
6584 * c.opt (lang-objc): Remove.
6585 * c-opts.c (c_common_handle_option): Don't handle OPT_lang_objc.
6586
9e7c2572 65872010-06-21 Joern Rennecke <joern.rennecke@embecosm.com>
6588
6589 * c-opts.c: Include "tm_p.h".
6590
615ef0bb 65912010-06-20 Joseph Myers <joseph@codesourcery.com>
6592
6593 * c-common.c (parse_optimize_options): Update call to
6594 decode_options.
6595
aef48c9a 65962010-06-18 Nathan Froyd <froydnj@codesourcery.com>
6597
6598 * c-common.c (record_types_used_by_current_var_decl): Adjust for
6599 new type of types_used_by_cur_var_decl.
6600
d74003b4 66012010-06-17 Joern Rennecke <joern.rennecke@embecosm.com>
6602
6603 PR bootstrap/44512
6604 * c-cppbuiltin.c (builtin_define_with_hex_fp_value): Add cast
6605 for C++ standard compliance.
6606
1194d077 66072010-06-16 Jason Merrill <jason@redhat.com>
6608
6609 * c.opt: Add -Wnoexcept.
6610
d473d901 66112010-06-16 Richard Guenther <rguenther@suse.de>
6612
6613 PR c/44555
6614 * c-common.c (c_common_truthvalue_conversion): Remove
6615 premature and wrong optimization concering ADDR_EXPRs.
6616
b62dbfd3 66172010-06-15 Arnaud Charlet <charlet@adacore.com>
6618
6619 * c-ada-spec.c (dump_sloc): Remove column info.
6620 (is_simple_enum): New function.
6621 (dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada
6622 enum types when relevant.
6623
200dd99c 66242010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
6625
19931eea 6626 * c-common.c (conversion_warning): Warn at expression
200dd99c 6627 location.
6628
abf6a617 66292010-06-10 Joseph Myers <joseph@codesourcery.com>
6630
6631 * c-opts.c (c_common_handle_option): Don't handle
6632 OPT_fshow_column.
6633
ba72912a 66342010-06-08 Laurynas Biveinis <laurynas.biveinis@gmail.com>
6635
6636 * c-pragma.c (push_alignment): Use typed GC allocation.
6637 (handle_pragma_push_options): Likewise.
6638
6639 * c-common.c (parse_optimize_options): Likewise.
6640
6641 * c-common.h (struct sorted_fields_type): Add variable_size GTY
6642 option.
6643
4aafe913 66442010-06-07 Joseph Myers <joseph@codesourcery.com>
6645
6646 * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
6647 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
6648 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
6649 flag_signed_bitfields, warn_strict_null_sentinel,
6650 flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
6651 flag_gen_declaration, flag_no_gnu_keywords,
6652 flag_implement_inlines, flag_implicit_templates,
6653 flag_implicit_inline_templates, flag_optional_diags,
6654 flag_elide_constructors, flag_default_inline, flag_rtti,
6655 flag_conserve_space, flag_access_control, flag_check_new,
6656 flag_new_for_scope, flag_weak, flag_working_directory,
6657 flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
6658 flag_enforce_eh_specs, flag_threadsafe_statics,
6659 flag_pretty_templates): Remove.
6660 * c-common.h (flag_preprocess_only, flag_nil_receivers,
6661 flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
6662 flag_replace_objc_classes, flag_undef, flag_no_builtin,
6663 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
6664 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
6665 flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
6666 flag_no_gnu_keywords, flag_implement_inlines,
6667 flag_implicit_templates, flag_implicit_inline_templates,
6668 flag_optional_diags, flag_elide_constructors, flag_default_inline,
6669 flag_rtti, flag_conserve_space, flag_access_control,
6670 flag_check_new, flag_new_for_scope, flag_weak,
6671 flag_working_directory, flag_use_cxa_atexit,
6672 flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
6673 flag_threadsafe_statics, flag_pretty_templates,
6674 warn_strict_null_sentinel): Remove.
6675 * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
6676 fbuiltin, fcheck-new, fconserve-space, felide-constructors,
6677 fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
6678 fimplicit-inline-templates, fimplicit-templates,
6679 flax-vector-conversions, fms-extensions, fnil-receivers,
6680 fnonansi-builtins, fpretty-templates, freplace-objc-classes,
6681 frtti, fshort-double, fshort-enums, fshort-wchar,
6682 fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
6683 funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
6684 fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
6685 gen-decls, undef): Use Var.
6686 (fdefault-inline, foptional-diags): Document as doing nothing.
6687 * c-opts.c (c_common_handle_option): Remove cases for options now
6688 using Var. Mark ignored options as such.
6689
7bedc3a0 66902010-06-05 Steven Bosscher <steven@gcc.gnu.org>
6691
19931eea 6692 * c-common.c: Moved to here from parent directory.
7bedc3a0 6693 * c-common.def: Likewise.
6694 * c-common.h: Likewise.
6695 * c-cppbuiltin.c: Likewise.
6696 * c-dump.c: Likewise.
6697 * c-format.c: Likewise.
6698 * c-format.h : Likewise.
6699 * c-gimplify.c: Likewise.
6700 * c-lex.c: Likewise.
6701 * c-omp.c: Likewise.
6702 * c.opt: Likewise.
6703 * c-opts.c: Likewise.
6704 * c-pch.c: Likewise.
6705 * c-ppoutput.c: Likewise.
6706 * c-pragma.c: Likewise.
6707 * c-pragma.h: Likewise.
6708 * c-pretty-print.c: Likewise.
6709 * c-pretty-print.h: Likewise.
6710 * c-semantics.c: Likewise.
6711 * stub-objc.c: Likewise.
6712
6713 * c-common.c: Include gt-c-family-c-common.h.
6714 * c-pragma.c: Include gt-c-family-c-pragma.h.
6715\f
f1717362 6716Copyright (C) 2010-2016 Free Software Foundation, Inc.
7bedc3a0 6717
6718Copying and distribution of this file, with or without modification,
6719are permitted in any medium without royalty provided the copyright
6720notice and this notice are preserved.