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