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