]> gcc.gnu.org Git - gcc.git/blame - gcc/c-family/ChangeLog
genmatch.c (add_operator): Treat ADDR_EXPR as atom.
[gcc.git] / gcc / c-family / ChangeLog
CommitLineData
31521951
MP
12015-06-27 Marek Polacek <polacek@redhat.com>
2
3 * c-common.c (check_main_parameter_types): Use VECTOR_TYPE_P
4 or VECTOR_INTEGER_TYPE_P throughout.
5 * c-gimplify.c: Likewise.
6
22d03525
MP
72015-06-26 Marek Polacek <polacek@redhat.com>
8
9 * array-notation-common.c (find_rank): Use INDIRECT_REF_P.
10 * c-common.c (c_fully_fold_internal): Likewise.
11 (c_alignof_expr): Likewise.
12 * c-pretty-print.c (c_pretty_printer::postfix_expression): Likewise.
13 * c-ubsan.c (ubsan_instrument_bounds): Likewise.
14 * cilk.c (create_parm_list): Likewise.
15
af05e6e5
MP
162015-06-26 Marek Polacek <polacek@redhat.com>
17
18 * c-common.c (handle_unused_attribute): Use VAR_OR_FUNCTION_DECL_P.
19
f0889939
AM
202015-06-25 Andrew MacLeod <amacleod@redhat.com>
21
22 * c-common.c: Remove ipa-ref.h and plugin-api.h from include list.
23 * c-gimplify.c: Likewise.
24 * c-pragma.c: Likewise.
25 * c-ubsan.c: Likewise.
26 * cilk.c: Likewise.
27
ca752f39
RS
282015-06-25 Richard Sandiford <richard.sandiford@arm.com>
29
30 * c-common.c (c_type_hasher): Inherit from ggc_ptr_hash rather than
31 ggc_hasher.
32
16a16ec7
AM
332015-06-25 Andrew MacLeod <amacleod@redhat.com>
34
35 * cilk.c: Move calls.h after tm.h in the include chain.
36
0ae9bd27
MP
372015-06-25 Marek Polacek <polacek@redhat.com>
38
39 * array-notation-common.c: Use VAR_P throughout.
40 * c-ada-spec.c: Likewise.
41 * c-common.c: Likewise.
42 * c-format.c: Likewise.
43 * c-gimplify.c: Likewise.
44 * c-omp.c: Likewise.
45 * c-pragma.c: Likewise.
46 * c-pretty-print.c: Likewise.
47 * cilk.c: Likewise.
48
62f9079a
MP
492015-06-25 Marek Polacek <polacek@redhat.com>
50
51 * cilk.c (extract_free_variables): Use is_global_var.
52
0fa16060
RS
532015-06-23 Richard Sandiford <richard.sandiford@arm.com>
54
55 * c-common.c: Don't include target-def.h.
56
a68ae2e1
MP
572015-06-23 Marek Polacek <polacek@redhat.com>
58
59 * c-common.c (warn_logical_operator): Use tree_int_cst_equal
60 when comparing INTEGER_CSTs.
61
c6a2f2d9
PMR
622015-06-22 Pierre-Marie de Rodat <derodat@adacore.com>
63
64 * c-ada-spec.h (cpp_operation): Add HAS_DEPENDENT_TEMPLATE_ARGS.
65 * c-ada-spec.c (collect_ada_nodes): Skip NAMESPACE_DECL
66 (dump_ada_template): Skip partially specialized types.
67
6b4db501
MM
682015-06-22 Mikhail Maltsev <maltsevm@gmail.com>
69
70 * c-common.c (scalar_to_vector): Use std::swap instead of manually
71 swapping.
72
abb226c9
AM
732015-06-17 Andrew MacLeod <amacleod@redhat.com>
74
75 * array-notation-common.c: Do not include input.h, line-map.h or is-a.h.
76 * c-ada-spec.c: Likewise.
77 * c-cilkplus.c: Likewise.
78 * c-common.c: Likewise.
79 * c-common.h: Likewise.
80 * c-cppbuiltin.c: Likewise.
81 * c-dump.c: Likewise.
82 * c-format.c: Likewise.
83 * c-gimplify.c: Likewise.
84 * c-indentation.c: Likewise.
85 * c-lex.c: Likewise.
86 * c-omp.c: Likewise.
87 * c-opts.c: Likewise.
88 * c-pch.c: Likewise.
89 * c-ppoutput.c: Likewise.
90 * c-pragma.c: Likewise.
91 * c-pretty-print.c: Likewise.
92 * c-semantics.c: Likewise.
93 * c-ubsan.c: Likewise.
94 * cilk.c: Likewise.
95 * stub-objc.c: Likewise.
96
076fecad
PP
972015-06-13 Patrick Palka <ppalka@gcc.gnu.org>
98
99 PR c++/65168
100 * c-common.c (c_common_truthvalue_conversion): Warn when
101 converting an address of a reference to a truth value.
102
13fdf2e2
AM
1032015-06-08 Andrew MacLeod <amacleod@redhat.com>
104
105 * array-notation-common.c : Adjust include files.
106 * c-ada-spec.c : Likewise.
107 * c-cilkplus.c : Likewise.
108 * c-common.c : Likewise.
109 * c-common.h : Likewise.
110 * c-cppbuiltin.c : Likewise.
111 * c-dump.c : Likewise.
112 * c-format.c : Likewise.
113 * c-gimplify.c : Likewise.
114 * c-indentation.c : Likewise.
115 * c-lex.c : Likewise.
116 * c-omp.c : Likewise.
117 * c-opts.c : Likewise.
118 * c-pch.c : Likewise.
119 * c-ppoutput.c : Likewise.
120 * c-pragma.c : Likewise.
121 * c-pretty-print.c : Likewise.
122 * c-semantics.c : Likewise.
123 * c-ubsan.c : Likewise.
124 * cilk.c : Likewise.
125 * stub-objc.c : Likewise.
126
a1661b90
MP
1272015-06-08 Marek Polacek <polacek@redhat.com>
128
129 PR c/66415
130 * c-format.c (location_from_offset): Return LOC if LINE is null.
131
d7438551
AH
1322015-06-05 Aldy Hernandez <aldyh@redhat.com>
133
134 * c-common.h (c_parse_final_cleanups): New prototype.
135 * c-opts.c (c_common_parse_file): Call c_parse_final_cleanups.
136
ecb9f223
AM
1372015-06-04 Andrew MacLeod <amacleod@redhat.com>
138
139 * array-notation-common.c: Adjust includes for restructured coretypes.h.
140 * c-ada-spec.c: Likewise.
141 * c-cilkplus.c: Likewise.
142 * c-common.c: Likewise.
143 * c-common.h: Likewise.
144 * c-cppbuiltin.c: Likewise.
145 * c-dump.c: Likewise.
146 * c-format.c: Likewise.
147 * c-gimplify.c: Likewise.
148 * c-indentation.c: Likewise.
149 * c-lex.c: Likewise.
150 * c-omp.c: Likewise.
151 * c-opts.c: Likewise.
152 * c-pch.c: Likewise.
153 * c-ppoutput.c: Likewise.
154 * c-pragma.c: Likewise.
155 * c-pretty-print.c: Likewise.
156 * c-semantics.c: Likewise.
157 * c-ubsan.c: Likewise.
158 * cilk.c: Likewise.
159 * stub-objc.c: Likewise.
160
6ac48155
DM
1612015-06-02 David Malcolm <dmalcolm@redhat.com>
162
163 PR c/66220:
164 * c-indentation.c (should_warn_for_misleading_indentation): Use
165 expand_location rather than expand_location_to_spelling_point.
166 Don't warn if the guarding statement is more indented than the
167 next/body stmts.
168
773ce42e
DM
1692015-06-02 David Malcolm <dmalcolm@redhat.com>
170
171 * c-indentation.c (warn_for_misleading_indentation): Bail out
172 immediately if -Wmisleading-indentation isn't enabled.
173
4fef8379
ML
1742015-06-01 Martin Liska <mliska@suse.cz>
175
176 * c-format.c (check_format_arg):Use new type-based pool allocator.
177 (check_format_info_main) Likewise.
178
1edfb384
EB
1792015-05-31 Eric Botcazou <ebotcazou@adacore.com>
180
181 * c-ada-spec.c (is_tagged_type): Test for TYPE_METHODS on main variant.
182 (has_nontrivial_methods): Likewise.
183
9677ef52
MP
1842015-05-25 Marek Polacek <polacek@redhat.com>
185
186 * c-ubsan.c (ubsan_instrument_shift): Use type0.
187
fd5c817a
MP
1882015-05-22 Marek Polacek <polacek@redhat.com>
189
190 PR c/47043
191 * c-common.c (handle_deprecated_attribute): Allow CONST_DECL.
192
a2f45fe6 1932015-05-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
581edfa3
TS
194
195 * c-cppbuiltin.c (c_cpp_builtins): Use if instead of #if with
196 STACK_GROWS_DOWNWARD.
197
a2f45fe6 1982015-05-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
62f9f30b
TS
199
200 * c-cppbuiltin.c (c_cpp_builtins): Check the value of
201 STACK_GROWS_DOWNWARD rather than if it is defined.
202
0fee2ac2
MLI
2032015-05-21 Manuel López-Ibáñez <manu@gcc.gnu.org>
204
205 PR c/52952
206 * c-format.c (location_column_from_byte_offset): New.
207 (location_from_offset): New.
208 (struct format_wanted_type): Add offset_loc field.
209 (check_format_info): Move handling of location for extra arguments
210 closer to the point of warning.
211 (check_format_info_main): Pass the result of location_from_offset
212 to warning_at.
213 (format_type_warning): Pass the result of location_from_offset
214 to warning_at.
215
cf4ef6f7
MP
2162015-05-20 Marek Polacek <polacek@redhat.com>
217
218 * c-omp.c (check_omp_for_incr_expr): Use BINARY_CLASS_P.
219
3a65ee74
MP
2202015-05-20 Marek Polacek <polacek@redhat.com>
221
222 * c-ada-spec.c (dump_sloc): Use DECL_P.
223
21b634ae
MP
2242015-05-20 Marek Polacek <polacek@redhat.com>
225
226 * c-pragma.c: Use VAR_OR_FUNCTION_DECL_P throughout.
227 * c-common.c: Likewise.
228
0e50b624
DM
2292015-05-19 David Malcolm <dmalcolm@redhat.com>
230
231 * c-common.h (fe_file_change): Strengthen param from
232 const line_map * to const line_map_ordinary *.
233 (pp_file_change): Likewise.
234 * c-lex.c (fe_file_change): Likewise.
235 (cb_define): Use linemap_check_ordinary when invoking
236 SOURCE_LINE.
237 (cb_undef): Likewise.
238 * c-opts.c (c_finish_options): Use linemap_check_ordinary when
239 invoking cb_file_change.
240 (c_finish_options): Likewise.
241 (push_command_line_include): Likewise.
242 (cb_file_change): Strengthen param "new_map" from
243 const line_map * to const line_map_ordinary *.
244 * c-ppoutput.c (cb_define): Likewise for local "map".
245 (pp_file_change): Likewise for param "map" and local "from".
246
fab27f52
MM
2472015-05-19 Mikhail Maltsev <maltsevm@gmail.com>
248
249 * c-common.c (shorten_compare): Use std::swap instead of explicit swaps.
250
2fe1d762
TV
2512015-05-18 Tom de Vries <tom@codesourcery.com>
252
253 * c-common.c (build_va_arg_1): New function.
254 (build_va_arg): Add address operator to va_list operand if necessary.
255
7a37fa90
MM
2562015-05-15 Mikhail Maltsev <maltsevm@gmail.com>
257
258 PR c/48956
259 * c-common.c (int_safely_convertible_to_real_p): Define.
260 (unsafe_conversion_p): Check conversions involving complex types.
261 (conversion_warning): Add new warning message for conversions which
262 discard imaginary component.
263 * c-common.h: (enum conversion_safety): Add new enumerator for such
264 conversions.
265
3aa3c9fc
MP
2662015-05-14 Marek Polacek <polacek@redhat.com>
267
268 PR c/66066
269 PR c/66127
270 * c-common.c (c_fully_fold): Pass false down to c_fully_fold_internal.
271 (c_fully_fold_internal): Fold C_MAYBE_CONST_EXPRs with
272 C_MAYBE_CONST_EXPR_INT_OPERANDS set. Add FOR_INT_CONST argument and
273 use it. If FOR_INT_CONST, require that all evaluated operands be
274 INTEGER_CSTs.
275
c3388e62
DM
2762015-05-12 David Malcolm <dmalcolm@redhat.com>
277
278 * c-common.h (warn_for_misleading_indentation): New prototype.
279 * c-indentation.c: New file.
280 * c.opt (Wmisleading-indentation): New option.
281
c7b38fd5
TV
2822015-05-12 Tom de Vries <tom@codesourcery.com>
283
284 PR tree-optimization/66010
285 * c-common.c (build_va_arg): Don't mark ap addressable unless necessary.
286
381bf11e
JM
2872015-05-09 Jason Merrill <jason@redhat.com>
288
edff0c06
JM
289 * c-opts.c (c_common_post_options): Also clear
290 cpp_opts->cpp_warn_cxx11_compat.
291
129211bc
JM
292 * c-common.h (enum cxx_dialect): Add cxx_unset.
293 * c-common.c (cxx_dialect): Initialize to cxx_unset.
294 * c-opts.c (c_common_post_options): Set C++ dialect to C++98 if unset.
295
381bf11e
JM
296 * c.opt (std=c++14): Remove Undocumented flag and experimental warning.
297 (std=gnu++0x): Mark as Undocumented.
298 (std=gnu++1y): Add deprecated message.
299
fe191308
JM
3002015-05-08 Jason Merrill <jason@redhat.com>
301
765189ff
JM
302 * c.opt (Wc++11-compat): Make primary. Rename var warn_cxx11_compat.
303 * c-opts.c: Adjust.
304
fe191308
JM
305 * c.opt (Wc++0x-compat): Also set cpp_warn_cxx11_compat.
306
755e528f
MP
3072015-05-08 Marek Polacek <polacek@redhat.com>
308
309 PR c/64918
310 * c.opt (Woverride-init-side-effects): New option.
311
0173bd2a
MP
3122015-05-07 Marek Polacek <polacek@redhat.com>
313
314 PR c/65179
315 * c-common.c (c_fully_fold_internal): Warn when left shifting a
316 negative value.
317 * c.opt (Wshift-negative-value): New option.
318 * c-opts.c (c_common_post_options): Set warn_shift_negative_value
319 when -Wextra and C99/C++11 mode.
320
e0f0d3b9
MP
3212015-05-07 Marek Polacek <polacek@redhat.com>
322 Martin Uecker <uecker@eecs.berkeley.edu>
323
324 * c-ubsan.c (ubsan_instrument_bounds): Don't skip instrumenting
325 flexible member array-like members if SANITIZE_BOUNDS_STRICT.
326
8243e2a9
JM
3272015-05-05 Jason Merrill <jason@redhat.com>
328
329 * c.opt (Wterminate): New.
330
577cd070
MP
3312015-04-30 Marek Polacek <polacek@redhat.com>
332
333 * c-common.c (maybe_warn_bool_compare): When comparing with 0/1,
334 require that the non-constant be of a boolean type.
335
0373796b
JT
3362015-04-29 Josh Triplett <josh@joshtriplett.org>
337
e0f0d3b9
MP
338 * c-common.c (handle_section_attribute): Refactor to reduce
339 nesting and distinguish between error cases.
0373796b 340
716c0ba6
MP
3412015-04-29 Marek Polacek <polacek@redhat.com>
342
343 PR c/64610
344 * c-common.c (maybe_warn_bool_compare): Warn when comparing a boolean
345 with 0/1.
346
8848828b
JJ
3472015-04-29 Jakub Jelinek <jakub@redhat.com>
348
349 * c-common.h (omp_clause_mask): Unconditionally define as a class.
350 Use uint64_t instead of unsigned HOST_WIDE_INT and 64 instead of
351 HOST_BITS_PER_WIDE_INT.
352
ecd0e562
TV
3532015-04-28 Tom de Vries <tom@codesourcery.com>
354
355 PR tree-optimization/65887
356 * c-common.c (build_va_arg): Mark va_arg ap argument as addressable.
357
2a877204 3582015-04-28 Eric Botcazou <ebotcazou@adacore.com>
e0f0d3b9 359 Pierre-Marie de Rodat <derodat@adacore.com>
2a877204
EB
360
361 * c-ada-spec.c (in_function): Delete.
362 (dump_generic_ada_node): Do not change in_function and remove the
363 redundant code dealing with it.
364 (print_ada_declaration): Do not change in_function. Use INDENT_INCR.
365 (print_ada_methods): Output the static member functions in a nested
366 package after the regular methods as well as associated renamings.
367
4853031e
MP
3682015-04-24 Marek Polacek <polacek@redhat.com>
369
370 PR c/65830
371 * c-common.c (c_fully_fold_internal): Use OPT_Wshift_count_negative
372 and OPT_Wshift_count_overflow.
373
8c2b7f79
MP
374 PR c/63357
375 * c-common.c (warn_logical_operator): Warn if the operands have the
376 same expressions.
377
b8787813
MP
3782015-04-24 Marek Polacek <polacek@redhat.com>
379
380 PR c/61534
381 * c-common.c (warn_logical_operator): Bail if either operand comes
382 from a macro expansion.
383
8fba1830
BRF
3842015-04-10 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
385
386 PR target/55143
387 * c-common.c (c_default_pointer_mode): Add definition.
388 * c-common.h (c_default_pointer_mode): Add declaration.
389
17958621
JJ
3902015-03-11 Jakub Jelinek <jakub@redhat.com>
391
392 * c-common.c (c_common_nodes_and_builtins): Don't call xstrdup
393 on record_builtin_type argument.
394
7ccb1a11
JJ
3952015-03-10 Jakub Jelinek <jakub@redhat.com>
396
397 PR c/65120
398 * c-common.c (warn_logical_not_parentheses): Don't warn for
399 !x == 0 or !x != 0.
400
04fd785e
MP
4012015-03-07 Marek Polacek <polacek@redhat.com>
402
403 PR sanitizer/65280
404 * c-ubsan.c (ubsan_instrument_bounds): Check for COMPONENT_REF
405 before trying to figure out whether we have a flexible array member.
406
a4e26206
EB
4072015-03-06 Eric Botcazou <ebotcazou@adacore.com>
408 Jonathan Wakely <jwakely.gcc@gmail.com>
409
410 * c-ada-spec.c (dump_ada_double_name): Fix pasto.
411
0d2489f4
EB
4122015-03-05 Eric Botcazou <ebotcazou@adacore.com>
413
414 PR ada/65319
415 * c-ada-spec.c (print_destructor): Remove obsolete code.
416
83ed54d7
EB
4172015-03-01 Eric Botcazou <ebotcazou@adacore.com>
418
419 * c-ada-spec.c (is_tagged_type): Add guard for DECL_VINDEX.
420 (dump_template_types): Adjust DECL_TEMPLATE_INSTANTIATIONS and
421 DECL_TEMPLATE_RESULT emulations.
422 (dump_ada_template)): Add guard for TYPE_METHODS.
423
7631f0e2
MP
4242015-02-27 Marek Polacek <polacek@redhat.com>
425
426 PR c/65040
427 * c.opt (Wformat-signedness): Don't enable by -Wformat=2.
428
d1783ae5
KT
4292015-02-27 Kai Tietz <ktietz@redhat.com>
430
431 PR c/35330
432 * c-pragma.c (handle_pragma_weak): Do not try to create
433 weak/alias of declarations not being function, or variable
434 declarations.
435
56a9f6bc
TS
4362015-02-24 Thomas Schwinge <thomas@codesourcery.com>
437
438 PR libgomp/64625
439 * c-common.c (DEF_FUNCTION_TYPE_VAR_8, DEF_FUNCTION_TYPE_VAR_12):
440 Remove macros.
441 (DEF_FUNCTION_TYPE_VAR_7, DEF_FUNCTION_TYPE_VAR_11): New macros.
442
3d5cb23d
MP
4432015-02-16 Marek Polacek <polacek@redhat.com>
444
445 PR c/65066
446 * c-format.c (check_format_types): Handle null param.
447
fa008882
MP
4482015-02-13 Marek Polacek <polacek@redhat.com>
449
450 PR c/65040
451 * c-format.c (check_format_types): Don't warn about different
452 signedness if the original value is in the range of WANTED_TYPE.
453
785f21af
JM
4542015-02-12 Jason Merrill <jason@redhat.com>
455
456 PR c++/64956
457 * c-opts.c (c_common_post_options): Change flag_abi_version from 0
458 to the current highest version.
459 * c-cppbuiltin.c (c_cpp_builtins): Assert that it isn't 0.
460
4886ec8e
JJ
4612015-02-04 Jakub Jelinek <jakub@redhat.com>
462
463 PR c/64824
464 PR c/64868
465 * c-omp.c (c_finish_omp_atomic): Use TRUNC_DIV_EXPR
466 instead of RDIV_EXPR. Use build_binary_op instead of
467 build2_loc.
468
40fecdd6
JM
4692015-01-30 Joseph Myers <joseph@codesourcery.com>
470
471 * c-opts.c, c-pch.c, cppspec.c: All callers of fatal_error changed
472 to pass input_location as first argument.
473
a0c88d06
TV
4742015-01-23 Tom de Vries <tom@codesourcery.com>
475
476 PR libgomp/64672
477 * c.opt (fopenacc): Mark as LTO option.
478
1506ae0e
TV
4792015-01-23 Tom de Vries <tom@codesourcery.com>
480
481 PR libgomp/64707
482 * c.opt (fopenmp): Mark as LTO option.
483
31be63ab
JJ
4842015-01-21 Jakub Jelinek <jakub@redhat.com>
485
486 PR c/63307
487 * cilk.c (fill_decls_vec): Only put decls into vector v.
488 (compare_decls): Fix up formatting.
489
4902015-01-21 Igor Zamyatin <igor.zamyatin@intel.com>
491
492 PR c/63307
493 * cilk.c: Include vec.h.
494 (struct cilk_decls): New structure.
495 (wrapper_parm_cb): Split this function to...
496 (fill_decls_vec): ...this...
497 (create_parm_list): ...and this.
498 (compare_decls): New function.
499 (for_local_cb): Remove.
500 (wrapper_local_cb): Ditto.
501 (build_wrapper_type): For now first traverse and fill vector of
502 declarations then sort it and then deal with sorted vector.
503 (cilk_outline): Ditto.
504 (declare_one_free_variable): Ditto.
505
6875457f
JM
5062015-01-21 Jason Merrill <jason@redhat.com>
507
508 PR c++/64629
509 * c-format.c (check_format_arg): Call decl_constant_value.
510
185c9e56
ML
5112015-01-19 Martin Liska <mliska@suse.cz>
512
513 * c-common.c (handle_noicf_attribute): New function.
514
41dbbb37
TS
5152015-01-15 Thomas Schwinge <thomas@codesourcery.com>
516 Bernd Schmidt <bernds@codesourcery.com>
517 James Norris <jnorris@codesourcery.com>
518 Cesar Philippidis <cesar@codesourcery.com>
519 Ilmir Usmanov <i.usmanov@samsung.com>
520 Jakub Jelinek <jakub@redhat.com>
521
522 * c.opt (fopenacc): New option.
523 * c-cppbuiltin.c (c_cpp_builtins): Conditionally define _OPENACC.
524 * c-common.c (DEF_FUNCTION_TYPE_VAR_8, DEF_FUNCTION_TYPE_VAR_12):
525 New macros.
526 * c-common.h (c_finish_oacc_wait): New prototype.
527 * c-omp.c: Include "omp-low.h" and "gomp-constants.h".
528 (c_finish_oacc_wait): New function.
529 * c-pragma.c (oacc_pragmas): New variable.
530 (c_pp_lookup_pragma, init_pragma): Handle it.
531 * c-pragma.h (enum pragma_kind): Add PRAGMA_OACC_CACHE,
532 PRAGMA_OACC_DATA, PRAGMA_OACC_ENTER_DATA, PRAGMA_OACC_EXIT_DATA,
533 PRAGMA_OACC_KERNELS, PRAGMA_OACC_LOOP, PRAGMA_OACC_PARALLEL,
534 PRAGMA_OACC_UPDATE, PRAGMA_OACC_WAIT.
535 (enum pragma_omp_clause): Add PRAGMA_OACC_CLAUSE_ASYNC,
536 PRAGMA_OACC_CLAUSE_AUTO, PRAGMA_OACC_CLAUSE_COLLAPSE,
537 PRAGMA_OACC_CLAUSE_COPY, PRAGMA_OACC_CLAUSE_COPYIN,
538 PRAGMA_OACC_CLAUSE_COPYOUT, PRAGMA_OACC_CLAUSE_CREATE,
539 PRAGMA_OACC_CLAUSE_DELETE, PRAGMA_OACC_CLAUSE_DEVICE,
540 PRAGMA_OACC_CLAUSE_DEVICEPTR, PRAGMA_OACC_CLAUSE_FIRSTPRIVATE,
541 PRAGMA_OACC_CLAUSE_GANG, PRAGMA_OACC_CLAUSE_HOST,
542 PRAGMA_OACC_CLAUSE_IF, PRAGMA_OACC_CLAUSE_NUM_GANGS,
543 PRAGMA_OACC_CLAUSE_NUM_WORKERS, PRAGMA_OACC_CLAUSE_PRESENT,
544 PRAGMA_OACC_CLAUSE_PRESENT_OR_COPY,
545 PRAGMA_OACC_CLAUSE_PRESENT_OR_COPYIN,
546 PRAGMA_OACC_CLAUSE_PRESENT_OR_COPYOUT,
547 PRAGMA_OACC_CLAUSE_PRESENT_OR_CREATE, PRAGMA_OACC_CLAUSE_PRIVATE,
548 PRAGMA_OACC_CLAUSE_REDUCTION, PRAGMA_OACC_CLAUSE_SELF,
549 PRAGMA_OACC_CLAUSE_SEQ, PRAGMA_OACC_CLAUSE_VECTOR,
550 PRAGMA_OACC_CLAUSE_VECTOR_LENGTH, PRAGMA_OACC_CLAUSE_WAIT,
551 PRAGMA_OACC_CLAUSE_WORKER.
552
5434dc07
MD
5532015-01-14 Marcos Diaz <marcos.diaz@tallertechnologies.com>
554
555 * c-cppbuiltin.c (c_cpp_builtins): New cpp define __SSP_EXPLICIT__
556 for the new option fstack-protector_explicit.
557 * c-common.c (c_common_attribute_table): Add stack_protect attribute.
558 (handle_stack_protect_attribute): New function.
559
de1b5c17
MU
5602015-01-13 Martin Uecker <uecker@eecs.berkeley.edu>
561
562 * c.opt: New option -Warray-bounds=.
563
adfac8df
JJ
5642015-01-09 Michael Collison <michael.collison@linaro.org>
565
566 * array-notation-common.c: Include hash-set.h, machmode.h,
567 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
568 fold-const.h, wide-int.h, and inchash.h due to flattening of tree.h.
569 * c-ada-spec.c: Ditto.
570 * c-cilkplus.c: Ditto.
571 * c-common.c: Include input.h due to flattening of tree.h.
572 Define macro GCC_C_COMMON_C.
573 * c-common.h: Flatten tree.h header files into c-common.h.
574 Remove include of tree-core.h.
575 * c-cppbuiltin.c: Include hash-set.h, machmode.h,
576 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
577 fold-const.h, wide-int.h, and inchash.h due to
578 flattening of tree.h.
579 * c-dump.c: Ditto.
580 * c-format.c: Flatten tree.h header files into c-common.h.
581 * c-cppbuiltin.c: Include hash-set.h, machmode.h,
582 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
583 fold-const.h, wide-int.h, and inchash.h due to
584 flattening of tree.h.
585 * c-dump.c: Include hash-set.h, machmode.h,
586 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
587 fold-const.h, wide-int.h, and inchash.h due to
588 flattening of tree.h.
589 * c-format.c: Include hash-set.h, machmode.h,
590 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
591 fold-const.h, wide-int.h, inchash.h and real.h due to
592 flattening of tree.h.
593 * c-gimplify.c: Include hash-set.h, machmode.h,
594 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
595 fold-const.h, wide-int.h, and inchash.h due to
596 flattening of tree.h.
597 * cilk.c: Ditto.
598 * c-lex.c: Ditto.
599 * c-omp.c: Ditto.
600 * c-opts.c: Ditto.
601 * c-pch.c: Ditto.
602 * c-ppoutput.c: Ditto.
603 * c-pragma.c: Ditto.
604 * c-pretty-print.c: Ditto.
605 * c-semantics.c: Ditto.
606 * c-ubsan.c: Ditto.
607 * stub-objc.c: Ditto.
608
f5481fc4
JM
6092015-01-08 Jason Merrill <jason@redhat.com>
610
611 * c-ubsan.c (ubsan_maybe_instrument_array_ref): Use
612 do_ubsan_in_current_function.
613 (ubsan_maybe_instrument_reference_or_call): Likewise.
614 * c-ubsan.h: Declare it.
615
de35aa66
MS
6162015-01-08 Mike Stump <mikestump@comcast.net>
617
618 * c-common.c (c_common_attribute_table): Add no_sanitize_thread.
619
4a9a42ab
MP
6202015-01-07 Marek Polacek <polacek@redhat.com>
621
622 PR c/64440
623 * c-common.c (c_fully_fold_internal): Warn for division and modulo
624 if orig_op1 isn't INTEGER_CST, op1 is INTEGER_CST and is zero.
625
2f42e5de
TS
6262015-01-05 Trevor Saunders <tsaunders@mozilla.com>
627
628 PR c++/31397
629 * c.opt (Wsuggest-override): New option.
630
5624e564
JJ
6312015-01-05 Jakub Jelinek <jakub@redhat.com>
632
633 Update copyright years.
634
5bd012f8
MP
6352015-01-05 Marek Polacek <polacek@redhat.com>
636
637 PR c/64423
638 * c-common.c (warn_array_subscript_with_type_char): Add location_t
639 parameter. Use it.
640 * c-common.h (warn_array_subscript_with_type_char): Update
641 declaration.
642
a7fa8d18
ESR
6432014-12-20 Edward Smith-Rowland <3dw4rd@verizon.net>
644
645 * c-cppbuiltin.c (__cpp_sized_deallocation): Uncomment and move macro.
646 Control macro with flag_sized_deallocation.
647
768952be
MU
6482014-12-20 Martin Uecker <uecker@eecs.berkeley.edu>
649
650 * c.opt (Wdiscarded-array-qualifiers): New option.
651
1f8d3e84
JJ
6522014-12-19 Jakub Jelinek <jakub@redhat.com>
653
654 PR preprocessor/63831
655 * c-cppbuiltin.c (c_cpp_builtins): Don't define __has_attribute
656 and __has_cpp_attribute here.
657 * c-ppoutput.c (init_pp_output): Set cb->has_attribute to
658 c_common_has_attribute.
659 * c-common.h (c_common_has_attribute): New prototype.
660 * c-lex.c (init_c_lex): Set cb->has_attribute to
661 c_common_has_attribute instead of cb_has_attribute.
662 (get_token_no_padding): New function.
663 (cb_has_attribute): Renamed to ...
664 (c_common_has_attribute): ... this. No longer static. Use
665 get_token_no_padding, require ()s, don't build TREE_LIST
666 unnecessarily, fix up formatting, adjust diagnostics, call
667 init_attributes.
668
20b06add
JM
6692014-12-15 Jason Merrill <jason@redhat.com>
670
671 * c.opt (-fsized-deallocation, -Wc++14-compat): New.
672 (-Wsized-deallocation): New.
673 * c-opts.c (c_common_post_options): -fsized-deallocation defaults
674 to on in C++14 and up.
675
94a073b2
JM
6762014-12-11 Jason Merrill <jason@redhat.com>
677
acaa5911
JM
678 * c-cppbuiltin.c (c_cpp_builtins): Enable C++14 __cpp_constexpr.
679
94a073b2
JM
680 * c-cppbuiltin.c (c_cpp_builtins): Define __cpp_runtime_arrays if
681 we aren't complaining about VLAs.
682
7fb66c15
MP
6832014-12-06 Marek Polacek <polacek@redhat.com>
684
685 PR tree-optimization/64183
686 * c-gimplify.c (c_gimplify_expr): Don't convert the RHS of a
687 shift-expression if it is integer_type_node. Use types_compatible_p.
688
b731b390
JJ
6892014-11-29 Jakub Jelinek <jakub@redhat.com>
690
691 * c-common.c (convert_vector_to_pointer_for_subscript): Remove NULL
692 last argument from create_tmp_var_raw and create_tmp_var calls.
693 * cilk.c (gimplify_cilk_spawn): Likewise.
694 * c-omp.c (c_finish_omp_atomic): Likewise.
695
6a4da643
MP
6962014-11-28 Marek Polacek <polacek@redhat.com>
697
698 * c-ubsan.c (ubsan_instrument_shift): Use op1_utype for MINUS_EXPR
699 instead of unsigned_type_node.
700
541e35a6
MP
7012014-11-28 Marek Polacek <polacek@redhat.com>
702
703 PR c/63862
704 * c-ubsan.c (ubsan_instrument_shift): Change the type of a MINUS_EXPR
705 to op1_utype.
706 * c-gimplify.c (c_gimplify_expr): Convert right operand of a shift
707 expression to unsigned_type_node.
708
dcc97066
MW
7092014-11-20 Mark Wielaard <mjw@redhat.com>
710
711 PR debug/38757
712 * c-opts.c (set_std_c89): Set lang_hooks.name.
713 (set_std_c99): Likewise.
714 (set_std_c11): Likewise.
715 (set_std_cxx98): Likewise.
716 (set_std_cxx11): Likewise.
717 (set_std_cxx14): Likewise.
718 (set_std_cxx1z): Likewise.
719
aa7da51a
JJ
7202014-11-21 Jakub Jelinek <jakub@redhat.com>
721
722 PR target/63764
723 * c-common.h (convert_vector_to_pointer_for_subscript): Change
724 return type to bool.
009a3480 725 * c-common.c: Include gimple-expr.h.
aa7da51a
JJ
726 (convert_vector_to_pointer_for_subscript): Change return type to
727 bool. If *vecp is not lvalue_p and has VECTOR_TYPE, return true
728 and copy it into a TARGET_EXPR and use that instead of *vecp
729 directly.
730
538dd0b7
DM
7312014-11-19 David Malcolm <dmalcolm@redhat.com>
732
733 Merger of git branch "gimple-classes-v2-option-3".
734 * ChangeLog.gimple-classes: New.
735 * c-gimplify.c (add_block_to_enclosing): Strengthen local "stack"
736 from being just a vec<gimple> to a vec<gbind *>.
737
c39a5e99
JJ
7382014-11-18 Jakub Jelinek <jakub@redhat.com>
739
740 PR sanitizer/63813
741 * c-ubsan.c (ubsan_maybe_instrument_reference_or_call): Change type
742 argument to ptype, set type to TREE_TYPE (ptype). Don't call
743 get_pointer_alignment for non-pointers. Use ptype, or if it is
744 reference type, corresponding pointer type, as type of kind
745 argument.
746 (ubsan_maybe_instrument_reference,
747 ubsan_maybe_instrument_member_call): Adjust callers.
748
8537a4a9
MP
7492014-11-15 Marek Polacek <polacek@redhat.com>
750
751 PR middle-end/63884
752 * array-notation-common.c (is_sec_implicit_index_fn): Return false
753 for NULL fndecl.
754 (extract_array_notation_exprs): Return for NULL node.
755
2079956a
JM
7562014-11-12 Joseph Myers <joseph@codesourcery.com>
757
758 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Define and
759 undefine __NO_MATH_ERRNO__ based on changes to -fmath-errno state.
760
1304953e
JJ
7612014-11-12 Jakub Jelinek <jakub@redhat.com>
762
763 PR c/59708
764 * c-common.c (check_builtin_function_arguments): Handle
765 BUILT_IN_{ADD,SUB,MUL}_OVERFLOW.
766
e5e44252
AK
7672014-11-10 Andi Kleen <ak@linux.intel.com>
768
769 PR c/60804
770 * c-common.h (check_no_cilk): Declare.
771 * cilk.c (get_error_location): New function.
772 (check_no_cilk): Dito.
773
e64b984d
AK
7742014-11-10 Andi Kleen <ak@linux.intel.com>
775
776 * cilk.c (recognize_spawn): Use expression location
777 for error message.
778
13c21655
PC
7792014-11-10 Paolo Carlini <paolo.carlini@oracle.com>
780
781 * c.opt ([Wshift-count-negative, Wshift-count-overflow]): Add.
782
42fd12b1
ESR
7832014-11-10 Edward Smith-Rowland <3dw4rd@verizon.net>
784
785 * c-cppbuiltin.c (__has_attribute, __has_cpp_attribute): New macros;
786 (__cpp_rtti, __cpp_exceptions): New macros for C++98;
787 (__cpp_range_based_for, __cpp_initializer_lists,
788 __cpp_delegating_constructors, __cpp_nsdmi,
789 __cpp_inheriting_constructors, __cpp_ref_qualifiers): New macros
790 for C++11; (__cpp_attribute_deprecated): Remove in favor of
791 __has_cpp_attribute.
792 * c-lex.c (cb_has_attribute): New callback CPP function;
793 (init_c_lex): Set has_attribute callback.
794
6f450181
RB
7952014-11-04 Richard Biener <rguenther@suse.de>
796
797 * c-common.c (shorten_compare): Do not shorten mixed
798 DFP and non-DFP compares.
799
26f0e1d6
ESR
8002014-11-01 Edward Smith-Rowland <3dw4rd@verizon.net>
801
802 * g++.dg/cpp1y/feat-cxx11.C: Commentary and rearrangement of tests.
803 * g++.dg/cpp1y/feat-cxx11-neg.C: Add aggregate NSDMI test.
804 Commentary and rearrangement of tests.
805 * g++.dg/cpp1y/feat-cxx14.C: Enable aggregate NSDMI test.
806 Commentary and rearrangement of tests.
807 * g++.dg/cpp1y/feat-cxx98-neg.C: Ditto
808 * g++.dg/cpp1y/feat-cxx98.C: Commentary.
809
ef4bddc2
RS
8102014-10-29 Richard Sandiford <richard.sandiford@arm.com>
811
812 * c-common.c, c-common.h, c-cppbuiltin.c, c-lex.c: Remove redundant
813 enum from machine_mode.
814
c582198b
AM
8152014-10-28 Andrew MacLeod <amacleod@redhat.com>
816
adfac8df
JJ
817 * c-common.c: Adjust include files.
818 * c-gimplify.c: Ditto.
819 * cilk.c: Ditto.
820 * c-pragma.c: Ditto.
821 * c-ubsan.c: Ditto.
c582198b 822
60393bbc
AM
8232014-10-27 Andrew MacLeod <amacleod@redhat.com>
824
825 * c-gimplify.c: Adjust include files.
826
d723bb7c
MLI
8272014-10-26 Manuel López-Ibáñez <manu@gcc.gnu.org>
828
829 PR c++/53061
830 * c-opts.c (c_common_diagnostics_set_defaults): Renamed from
831 c_common_initialize_diagnostics.
832 * c-common.h: Likewise.
833
90f3520e
MP
8342014-10-24 Marek Polacek <polacek@redhat.com>
835
836 PR c/56980
837 * c-pretty-print.c (c_pretty_printer::simple_type_specifier): Don't
838 print "struct"/"union"/"enum" for typedefed names.
839
59d7607a
MP
8402014-10-23 Marek Polacek <polacek@redhat.com>
841
842 * c-ubsan.c (ubsan_instrument_shift): Perform the MINUS_EXPR
843 in unsigned type.
844
d95a2703
JJ
8452014-10-22 Jakub Jelinek <jakub@redhat.com>
846 Yury Gribov <y.gribov@samsung.com>
847
848 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
849 ubsan_instrument_vla): Check bits in flag_sanitize_recover bitmask
850 instead of flag_sanitize_recover as bool flag.
851
8e6ef852
KY
8522014-10-21 Kirill Yukhin <kirill.yukhin@intel.com>
853
854 * cilk.c: Revert previous change.
855
948cf550
IZ
8562014-10-20 Igor Zamyatin <igor.zamyatin@intel.com>
857
858 PR c/63307
859 * cilk.c: Include vec.h.
860 (struct cilk_decls): New structure.
861 (wrapper_parm_cb): Split this function to...
862 (fill_decls_vec): ...this...
863 (create_parm_list): ...and this.
864 (compare_decls): New function.
865 (for_local_cb): Remove.
866 (wrapper_local_cb): Ditto.
867 (build_wrapper_type): For now first traverse and fill vector of
868 declarations then sort it and then deal with sorted vector.
869 (cilk_outline): Ditto.
870 (declare_one_free_variable): Ditto.
871
92574c7c
MP
8722014-10-17 Marek Polacek <polacek@redhat.com>
873
874 * c-opts.c (c_common_post_options): Set warn_implicit_int.
875 * c.opt (Wimplicit-int): Initialize to -1.
876
83685514
AM
8772014-10-16 Andrew MacLeod <amacleod@redhat.com>
878
879 * c-pragma.c: Adjust include files.
880 * c-semantics.c: Likewise.
881
5b8300ea
DD
8822014-10-16 DJ Delorie <dj@redhat.com>
883
884 * c-cppbuiltin.c (cpp_atomic_builtins): Don't assume pointers are
885 multiples of bytes.
886
5f83e90b
JM
8872014-10-14 Jason Merrill <jason@redhat.com>
888
889 PR c++/63455
890 * c-common.h (CPP_PREPARSED_EXPR): New.
891 (N_CP_TTYPES): Adjust.
892
d73326ca
MP
8932014-10-15 Marek Polacek <polacek@redhat.com>
894
895 * c-opts.c (c_common_init_options): Make -std=gnu11 the default for C.
896
78a7c317
DD
8972014-10-14 DJ Delorie <dj@redhat.com>
898
899 * c-pretty-print.c (pp_c_integer_constant): Check for all __intN
900 types, not just __int128.
901 * c-cppbuiltin.c (c_cpp_builtins): Add builtins for all __intN
902 types, not just __int128.
903 (cpp_atomic_builtins): Round pointer sizes up.
904 (type_suffix): Use type precision, not specific types.
905 * c-common.c (c_common_reswords): Remove __int128 special case.
906 (c_common_type_for_size): Check for all __intN types, not just
907 __int128.
908 (c_common_type_for_mode): Likewise.
909 (c_common_signed_or_unsigned_type): Likewise.
910 (c_build_bitfield_integer_type): Likewise.
911 (c_common_nodes_and_builtins): Likewise.
912 (keyword_begins_type_specifier): Likewise.
913 * c-common.h (rid): Remove RID_INT128 and add RID_INT_N_* for all
914 __intN variants.
915
2a22f99c
TS
9162014-10-12 Trevor Saunders <tsaunders@mozilla.com>
917
918 * c-common.c: Use hash_table instead of hashtab.
919
2a8ef767
ESR
9202014-10-06 Edward Smith-Rowland <3dw4rd@verizon.net>
921
adfac8df 922 * c-cppbuiltin.c: Move __cpp_attribute_deprecated to the
2a8ef767
ESR
923 C++11 section.
924
3c9aabbd
MG
9252014-10-03 Marc Glisse <marc.glisse@inria.fr>
926
927 PR c++/54427
928 PR c++/57198
929 PR c++/58845
930 * c-common.c (warn_logical_operator): Punt for vectors.
931
a15f7cb8
ESR
9322014-10-01 Edward Smith-Rowland <3dw4rd@verizon.net>
933
934 Implement SD-6: SG10 Feature Test Recommendations
935 * c-cppbuiltin.c (c_cpp_builtins()): Define language feature
936 macros and the __has_header macro.
937
8d0cf15e
JM
9382014-09-30 Jason Merrill <jason@redhat.com>
939
dd5d5481
JM
940 * c-common.h (enum rid): Add RID_IS_TRIVIALLY_ASSIGNABLE and
941 RID_IS_TRIVIALLY_CONSTRUCTIBLE.
942 * c-common.c (c_common_reswords): Add __is_trivially_copyable.
943
b752325e
JM
944 * c-common.h (enum rid): Add RID_IS_TRIVIALLY_COPYABLE.
945 * c-common.c (c_common_reswords): Add __is_trivially_copyable.
946
8d0cf15e
JM
947 * c-common.h (enum rid): Remove RID_IS_CONVERTIBLE_TO.
948 * c-common.c (c_common_reswords): Remove __is_convertible_to.
949
083e891e
MP
9502014-09-24 Marek Polacek <polacek@redhat.com>
951
952 PR c/61405
953 PR c/53874
954 * c-common.h (struct c_common_resword): Don't define CPP_KEYWORD.
955
7861b648
AK
9562014-09-23 Andi Kleen <ak@linux.intel.com>
957
958 * c-common.c (handle_no_reorder_attribute): New function.
959 (c_common_attribute_table): Add no_reorder attribute.
960
9a79452d
JM
9612014-09-22 Joseph Myers <joseph@codesourcery.com>
962
963 * c-cppbuiltin.c (c_cpp_builtins): Define
964 __LIBGCC_*_EXCESS_PRECISION__ macros for supported floating-point
965 modes.
966
dd69f047
JM
9672014-09-18 Joseph Myers <joseph@codesourcery.com>
968
969 * c-cppbuiltin.c (c_cpp_builtins): Define __LIBGCC_*_FUNC_EXT__
970 for supported floating-point modes.
971
737a4826
MLI
9722014-09-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
973
974 * c.opt (Wpsabi): Use LangEnabledBy.
975 * c-opts.c (c_common_handle_option): Do not handle here.
976
8cc4b7a2
JM
9772014-09-12 Joseph Myers <joseph@codesourcery.com>
978
979 * c-cppbuiltin.c (c_cpp_builtins): Define __LIBGCC_HAS_%s_MODE__
980 macros for floating-point modes.
981
179b5a55
MG
9822014-09-11 Marc Glisse <marc.glisse@inria.fr>
983
984 PR target/58757
985 * c-cppbuiltin.c (builtin_define_float_constants): Correct
986 __*_DENORM_MIN__ without denormals.
987
570a11fe
JJ
9882014-09-10 Jakub Jelinek <jakub@redhat.com>
989
990 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
991 ubsan_instrument_vla, ubsan_instrument_return): Adjust
992 ubsan_create_data callers.
993 (ubsan_instrument_bounds): Don't emit UBSAN_BOUNDS at all if
994 index is constant or BIT_AND_EXPR with constant mask and is
995 small enough for the bound.
996 * c-gimplify.c (ubsan_walk_array_refs_r): For ADDR_EXPR of
997 ARRAY_REF, make sure the inner ARRAY_REF is not walked again.
998
b559c810
MLI
9992014-09-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
1000
1001 * c.opt: Add CppReason to various flags.
1002 (Wdate-time): Re-sort.
1003 * c-common.c: Include c-common.h earlier.
1004 (struct reason_option_codes_t): Delete.
1005 (c_option_controlling_cpp_error): Prefix global type and struct
1006 with cpp_.
1007
1ef33fd4
MLI
10082014-09-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
1009
1010 * c.opt (Wnormalized): New.
1011 (Wnormalized=): Use Enum and Reject Negative.
1012 * c-opts.c (c_common_handle_option): Do not handle Wnormalized here.
1013
66bb34c0
JM
10142014-09-08 Joseph Myers <joseph@codesourcery.com>
1015
1016 * c-cppbuiltin.c (c_cpp_builtins): Define macros for mantissa
1017 digits of floating-point modes if -fbuilding-libgcc.
1018
53d68b9f
JM
10192014-09-05 Joseph Myers <joseph@codesourcery.com>
1020
1021 * c-cppbuiltin.c (c_cpp_builtins): Also define
1022 __LIBGCC_EH_TABLES_CAN_BE_READ_ONLY__,
1023 __LIBGCC_EH_FRAME_SECTION_NAME__, __LIBGCC_JCR_SECTION_NAME__,
1024 __LIBGCC_CTORS_SECTION_ASM_OP__, __LIBGCC_DTORS_SECTION_ASM_OP__,
1025 __LIBGCC_TEXT_SECTION_ASM_OP__, __LIBGCC_INIT_SECTION_ASM_OP__,
1026 __LIBGCC_INIT_ARRAY_SECTION_ASM_OP__,
1027 __LIBGCC_STACK_GROWS_DOWNWARD__,
1028 __LIBGCC_DONT_USE_BUILTIN_SETJMP__,
1029 __LIBGCC_DWARF_ALT_FRAME_RETURN_COLUMN__,
1030 __LIBGCC_DWARF_FRAME_REGISTERS__,
1031 __LIBGCC_EH_RETURN_STACKADJ_RTX__, __LIBGCC_JMP_BUF_SIZE__,
1032 __LIBGCC_STACK_POINTER_REGNUM__ and
1033 __LIBGCC_VTABLE_USES_DESCRIPTORS__ for -fbuilding-libgcc.
1034 (builtin_define_with_value): Handle backslash-escaping in string
1035 macro values.
1036
f65586dc
RB
10372014-09-05 Richard Biener <rguenther@suse.de>
1038
1039 PR middle-end/63148
1040 * c-format.c (check_format_arg): Properly handle
1041 effectively signed POINTER_PLUS_EXPR offset.
1042
2b71f4a4
MLI
10432014-09-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
1044
1045 * c.opt (Wc90-c99-compat,Wc++-compat,Wcomment,Wendif-labels,
1046 Winvalid-pch,Wlong-long,Wmissing-include-dirs,Wmultichar,Wpedantic,
1047 (Wdate-time,Wtraditional,Wundef,Wvariadic-macros): Add CPP, Var
1048 and Init.
1049 * c-opts.c (c_common_handle_option): Do not handle here.
1050 (sanitize_cpp_opts): Likewise.
1051 * c-common.c (struct reason_option_codes_t): Handle
1052 CPP_W_C90_C99_COMPAT and CPP_W_PEDANTIC.
1053
d2e4feca
MP
10542014-09-03 Marek Polacek <polacek@redhat.com>
1055
1056 * c.opt (Wlogical-not-parentheses): Enable by -Wall.
1057
9a771876
JJ
10582014-09-02 Jakub Jelinek <jakub@redhat.com>
1059 Balaji V. Iyer <balaji.v.iyer@intel.com>
1060 Igor Zamyatin <igor.zamyatin@intel.com>
1061
1062 * c-cilkplus.c (cilk_for_number_of_iterations): New function.
1063 * c-common.c (c_common_reswords): Added _Cilk_for.
1064 * c-common.h (enum rid): Added RID_CILK_FOR.
1065 (cilk_for_number_of_iterations): Add declaration.
1066 * c-omp.c (c_finish_omp_for): Added checks for CILK_SIMD and
1067 CILK_FOR.
1068 * c-pragma.c (init_pragma): Register "grainsize" pragma.
1069 * c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_GRAINSIZE.
1070
81b5d104
MLI
10712014-08-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
1072
1073 * c.opt (Wbuiltin-macro-redefined,Wdeprecated,Wendif-labels,
1074 Winvalid-pch,Wliteral-suffix,Wmissing-include-dirs,Wtrigraphs,
1075 Wundef): Use CPP, Var and Init.
1076 * c-opts.c (c_common_handle_option): Do not handle the above flags here.
1077
b753b37b
MLI
10782014-08-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
1079
1080 * c.opt (Wbuiltin-macro-redefined): Use CPP, Var and Init.
1081 * c-opts.c (c_common_handle_option): Do not handle here.
1082
028aee17
JM
10832014-08-25 Jason Merrill <jason@redhat.com>
1084
1085 * c.opt: Change -std=c++1y and -std=gnu++1y to be aliases for
1086 -std=c++14 and -std=gnu++14, rather than the reverse.
1087 * c-opts.c (c_common_handle_option): Change OPT_std_c__1y and
1088 OPT_std_gnu__1y to OPT_std_c__14 and OPT_std_gnu__14.
1089 * c-common.h (cxx_dialect): Remove cxx1y.
1090
e4276ba5
ESR
10912014-08-23 Edward Smith-Rowland <3dw4rd@verizon.net>
1092
1093 * c-common.h (enum cxx_dialect): Add cxx14.
1094 * c-opts.c (set_std_cxx1y): Rename to set_std_cxx14; Use cxx14.
1095 * c-ubsan.c (ubsan_instrument_shift): Change comment and logic from
1096 cxx_dialect == cxx11 || cxx_dialect == cxx1y to cxx_dialect >= cxx11.
1097
a545cacd
JM
10982014-08-22 Jason Merrill <jason@redhat.com>
1099
1100 * c.opt (std=gnu++17): Fix alias.
1101
59ea0364
MP
11022014-08-22 Marek Polacek <polacek@redhat.com>
1103
1104 PR c++/62199
1105 * c-common.c (warn_logical_not_parentheses): Don't check LHS. Don't
1106 check for vector types. Drop LHS argument.
1107 * c-common.h (warn_logical_not_parentheses): Adjust.
1108
596e808c
MLI
11092014-08-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
1110
1111 * c.opt (Wcomment): Use CPP, Var and LangEnabledBy.
1112 (Wmultichar): Likewise.
1113 (Wdate-time): Use C-family languages instead of Common. Use CPP
1114 and Var.
1115 * c-opts.c (c_common_handle_option): Do not handle the above
1116 options here.
1117 (sanitize_cpp_opts): Likewise.
1118
18767f65
MLI
11192014-08-21 Manuel López-Ibáñez <manu@gcc.gnu.org>
1120
1121 PR fortran/44054
1122 * c-opts.c: Include tree-diagnostics.h.
1123 (c_diagnostic_finalizer): New.
1124 (c_common_initialize_diagnostics): Use it.
1125
b4413594
MLI
11262014-08-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
1127
1128 PR preprocessor/51303
1129 * c-common.c (struct reason_option_codes_t option_codes):
1130 Add CPP_W_MISSING_INCLUDE_DIRS. Sort alphabetically.
1131
43f9a13c
MLI
11322014-08-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
1133
1134 PR c/60975
1135 PR c/53063
1136 * c.opt (Wvariadic-macros): Use CPP and LangEnabledBy.
1137 * c-opts.c (c_common_handle_option): Call cpp_handle_option_auto.
1138 (c_common_post_options): Call init_global_opts_from_cpp.
1139 (sanitize_cpp_opts): Do not handle Wvariadic-macros here.
1140
04159acf
MP
11412014-08-19 Marek Polacek <polacek@redhat.com>
1142
1143 PR c++/62153
1144 * c-common.c (maybe_warn_bool_compare): New function.
1145 * c-common.h (maybe_warn_bool_compare): Declare.
1146 * c.opt (Wbool-compare): New option.
1147
35aff4fb
MP
11482014-08-19 Marek Polacek <polacek@redhat.com>
1149
1150 * c.opt (Wc99-c11-compat): New option.
1151
177cce46
MP
11522014-08-19 Marek Polacek <polacek@redhat.com>
1153
1154 * c-opts.c (sanitize_cpp_opts): Make warn_long_long be set according
1155 to warn_c90_c99_compat.
1156 * c.opt (Wc90-c99-compat, Wdeclaration-after-statement): Initialize
1157 to -1.
1158
6ae9194f
MLI
11592014-08-19 Manuel López-Ibáñez <manu@gcc.gnu.org>
1160 Steven Bosscher <steven@gcc.gnu.org>
1161
1162 PR c/52952
1163 * c-format.c: Add extra_arg_loc and format_string_loc to struct
1164 format_check_results.
1165 (check_function_format): Use true and add comment for boolean
1166 argument.
1167 (finish_dollar_format_checking): Use explicit location when warning.
1168 (check_format_info): Likewise.
1169 (check_format_arg): Set extra_arg_loc and format_string_loc.
1170 (check_format_info_main): Use explicit location when warning.
1171 (check_format_types): Pass explicit location.
1172 (format_type_warning): Likewise.
1173
8e54f6d3
MLI
11742014-08-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
1175
1176 PR fortran/44054
1177 * c-format.c: Handle Fortran flags.
1178
cd4e76fc
IZ
11792014-08-12 Igor Zamyatin <igor.zamyatin@intel.com>
1180
1181 PR other/61962
1182 * array-notation-common.c (find_rank): Added handling for other
1183 types of references.
1184
f3bede71
MP
11852014-08-10 Marek Polacek <polacek@redhat.com>
1186
1187 PR c/51849
1188 * c-opts.c (sanitize_cpp_opts): Pass warn_c90_c99_compat to libcpp.
1189 * c.opt (Wc90-c99-compat): Add option.
1190
9f25a338
TS
11912014-08-07 Trevor Saunders <tsaunders@mozilla.com>
1192
1193 * c-gimplify.c, cilk.c: Remove includes of pointer-set.h.
1194
62e4eb35
MP
11952014-08-03 Marek Polacek <polacek@redhat.com>
1196
1197 * c-common.c (check_case_value): Add location_t parameter. Use it.
1198 (c_add_case_label): Pass loc to check_case_value.
1199
b787e7a2
TS
12002014-08-02 Trevor Saunders <tsaunders@mozilla.com>
1201
1202 * cilk.c: Use hash_map instead of pointer_map.
1203
6e2830c3
TS
12042014-08-02 Trevor Saunders <tsaunders@mozilla.com>
1205
1206 * c-gimplify.c: Use hash_set instead of pointer_set.
1207
a7ee52fb
IZ
12082014-08-01 Igor Zamyatin <igor.zamyatin@intel.com>
1209
1210 PR middle-end/61455
1211 * array-notation-common.c (extract_array_notation_exprs): Handling
1212 of DECL_EXPR added.
1213
944fa280
JJ
12142014-08-01 Jakub Jelinek <jakub@redhat.com>
1215
1216 * c-common.h (min_align_of_type): Removed prototype.
1217 * c-common.c (min_align_of_type): Removed.
1218 * c-ubsan.h (ubsan_maybe_instrument_reference,
1219 ubsan_maybe_instrument_member_call): New prototypes.
1220 * c-ubsan.c: Include stor-layout.h and builtins.h.
1221 (ubsan_maybe_instrument_reference_or_call,
1222 ubsan_maybe_instrument_reference, ubsan_maybe_instrument_call): New
1223 functions.
1224
b4dfdc11
MG
12252014-07-31 Marc Glisse <marc.glisse@inria.fr>
1226
1227 PR c++/60517
1228 * c.opt (-Wreturn-local-addr): Move to common.opt.
1229
a41844e5
JM
12302014-07-30 Jason Merrill <jason@redhat.com>
1231
1232 PR c++/61659
1233 PR c++/61687
1234 Revert:
1235 * c.opt (-fuse-all-virtuals): New.
1236
976d5a22
TT
12372014-07-30 Tom Tromey <tromey@redhat.com>
1238
1239 PR c/59855
1240 * c.opt (Wdesignated-init): New option.
1241 * c-common.c (c_common_attribute_table): Add "designated_init".
1242 (handle_designated_init): New function.
1243
cdc94aca
MP
12442014-07-24 Marek Polacek <polacek@redhat.com>
1245
1246 PR c/57653
1247 * c-opts.c (c_finish_options): If -imacros is in effect, return.
1248
f41373b6
DS
12492014-07-16 Dodji Seketeli <dodji@redhat.com>
1250
1251 PR preprocessor/60723 - missing system-ness marks for macro tokens
1252 * c-ppoutput.c (struct print::prev_was_system_token): New data
1253 member.
1254 (init_pp_output): Initialize it.
1255 (maybe_print_line_1, maybe_print_line, print_line_1, print_line)
1256 (do_line_change): Return a flag saying if a line marker was
1257 emitted or not.
1258 (scan_translation_unit): Detect if the system-ness of the token we
1259 are about to emit is different from the one of the previously
1260 emitted token. If so, emit a line marker. Avoid emitting useless
1261 adjacent line markers. Avoid emitting line markers for tokens
1262 originating from the expansion of built-in macros.
1263 (scan_translation_unit_directives_only): Adjust.
1264
4d661eaa
MP
12652014-07-15 Marek Polacek <polacek@redhat.com>
1266
1267 * c-ubsan.c (ubsan_instrument_bounds): Don't instrument if
1268 TYPE_MAX_VALUE is NULL.
1269
b108f48f
JJ
12702014-07-14 Jakub Jelinek <jakub@redhat.com>
1271
1272 PR middle-end/61294
1273 * c.opt (Wmemset-transposed-args): New warning.
1274
c0221884
JM
12752014-07-10 Jason Merrill <jason@redhat.com>
1276
1277 PR c++/61659
1278 PR c++/61687
1279 * c.opt (-fuse-all-virtuals): New.
1280
63dfbb95
RB
12812014-07-09 Richard Biener <rguenther@suse.de>
1282
1283 PR c-family/61741
1284 * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
1285 using unsigned arithmetic if overflow does not wrap instead of
1286 if overflow is undefined.
1287
773ec47f
MP
12882014-07-06 Marek Polacek <polacek@redhat.com>
1289
1290 PR c/6940
1291 * c.opt (Wsizeof-array-argument): New option.
1292
00a7ba58
JJ
12932014-07-03 Jakub Jelinek <jakub@redhat.com>
1294
1295 * c-ada-spec.c (dump_ada_nodes): Don't call qsort if
1296 comments->count <= 1, as comments->entries might be NULL.
1297
52ec0ea3
MP
12982014-07-01 Marek Polacek <polacek@redhat.com>
1299
1300 * c.opt (Wint-conversion): New option.
1301
d5c3d343
MP
13022014-07-01 Marek Polacek <polacek@redhat.com>
1303
1304 PR c/58286
1305 * c.opt (Wincompatible-pointer-types): New option.
1306
6e7ceb17
PC
13072014-06-30 Paolo Carlini <paolo.carlini@oracle.com>
1308
1309 PR c++/51400
1310 * c-common.c (handle_noreturn_attribute, handle_const_attribute):
1311 Do not discard TYPE_QUALS of type.
1312
da73100b
JM
13132014-06-26 Jason Merrill <jason@redhat.com>
1314
1315 * c-common.h (enum cxx_dialect): Add cxx1z.
1316 * c.opt (std=c++1z, std=c++17, std=gnu++1z, std=gnu++17): New.
1317 * c-opts.c (c_common_handle_option, set_std_cxx1z): Handle it.
1318
08eedf75
TJ
13192014-06-26 Teresa Johnson <tejohnson@google.com>
1320
1321 * c-common.h (get_dump_info): Declare.
1322 * c-gimplify.c (c_genericize): Use saved dump files.
1323 * c-opts.c (c_common_parse_file): Begin and end dumps
1324 once around parsing invocation.
1325 (get_dump_info): New function.
1326
7b56b2f8
MP
13272014-06-23 Marek Polacek <polacek@redhat.com>
1328 Andrew MacLeod <amacleod@redhat.com>
1329
1330 PR c/61553
1331 * c-common.c (get_atomic_generic_size): Don't segfault if the
1332 type doesn't have a size.
1333
0e37a2f3
MP
13342014-06-20 Marek Polacek <polacek@redhat.com>
1335
1336 * c-gimplify.c: Include "c-ubsan.h" and "pointer-set.h".
1337 (ubsan_walk_array_refs_r): New function.
1338 (c_genericize): Instrument array bounds.
1339 * c-ubsan.c: Include "internal-fn.h".
1340 (ubsan_instrument_division): Mark instrumented arrays as having
1341 side effects. Adjust ubsan_type_descriptor call.
1342 (ubsan_instrument_shift): Likewise.
1343 (ubsan_instrument_vla): Adjust ubsan_type_descriptor call.
1344 (ubsan_instrument_bounds): New function.
1345 (ubsan_array_ref_instrumented_p): New function.
1346 (ubsan_maybe_instrument_array_ref): New function.
1347 * c-ubsan.h (ubsan_instrument_bounds): Declare.
1348 (ubsan_array_ref_instrumented_p): Declare.
1349 (ubsan_maybe_instrument_array_ref): Declare.
1350
13512014-06-20 Hale Wang <hale.wang@arm.com>
dd6fe7d4
HW
1352
1353 PR lto/61123
1354 * c.opt (fshort-enums): Add to LTO.
1355 * c.opt (fshort-wchar): Likewise.
1356
5c3d09f7
MP
13572014-06-16 Marek Polacek <polacek@redhat.com>
1358
1359 PR c/60439
1360 * c.opt (Wswitch-bool): Add Var.
1361
9cf32741
JJ
13622014-06-12 Jakub Jelinek <jakub@redhat.com>
1363
1364 PR middle-end/61486
1365 * c-omp.c (c_omp_split_clauses): Don't crash on firstprivate in
1366 #pragma omp target teams or
1367 #pragma omp {,target }teams distribute simd.
1368
62984918
JM
13692014-06-12 Jason Merrill <jason@redhat.com>
1370
1371 * c.opt (Wabi=, fabi-compat-version): New.
1372 * c-opts.c (c_common_handle_option): Handle -Wabi=.
1373 (c_common_post_options): Handle flag_abi_compat_version default.
1374 Disallow -fabi-compat-version=1.
1375 * c-common.h (abi_version_crosses): New.
1376
f961457f
JH
13772014-06-11 Jan Hubicka <hubicka@ucw.cz>
1378
adfac8df 1379 * c-common.c (handle_section_attribute): Update handling for
f961457f
JH
1380 section names that are no longer trees.
1381
92d28cbb
JJ
13822014-06-10 Jakub Jelinek <jakub@redhat.com>
1383
1384 PR fortran/60928
1385 * c-pragma.c (omp_pragmas_simd): Move PRAGMA_OMP_TASK...
1386 (omp_pragmas): ... back here.
1387
742938c9
MP
13882014-06-05 Marek Polacek <polacek@redhat.com>
1389
1390 PR c/49706
1391 * c-common.c (warn_logical_not_parentheses): New function.
1392 * c-common.h (warn_logical_not_parentheses): Declare.
1393 * c.opt (Wlogical-not-parentheses): New option.
1394
9d548dfb
MP
13952014-06-04 Marek Polacek <polacek@redhat.com>
1396
1397 PR c/30020
1398 * c-common.c (check_case_bounds): Add location parameter.
1399 Use it.
1400 (c_add_case_label): Pass loc to check_case_bounds.
1401
fedfecef
MP
14022014-06-03 Marek Polacek <polacek@redhat.com>
1403
1404 PR c/60439
1405 * c.opt (Wswitch-bool): New option.
1406
f6a7cffc
TS
14072014-05-22 Thomas Schwinge <thomas@codesourcery.com>
1408
040d18b6
TS
1409 * c-common.h (c_omp_sharing_predetermined, c_omp_remap_decl):
1410 Remove prototypes.
1411 (record_types_used_by_current_var_decl): Move prototype to where
1412 it belongs.
1413
f6a7cffc
TS
1414 * c-common.c (DEF_FUNCTION_TYPE_0, DEF_FUNCTION_TYPE_6)
1415 (DEF_FUNCTION_TYPE_7, DEF_FUNCTION_TYPE_8)
1416 (DEF_FUNCTION_TYPE_VAR_5): Cosmetic fixes.
1417
632f2871
RS
14182014-05-21 Richard Sandiford <rsandifo@linux.vnet.ibm.com>
1419
1420 * c-common.h (CTI_VOID_ZERO, void_zero_node): Delete.
1421 * c-common.c (c_common_nodes_and_builtins): Don't initialize
1422 void_zero_node.
1423 * c-pretty-print.c (pp_c_void_constant): New function.
1424 (c_pretty_printer::constant, c_pretty_printer::primary_expression)
1425 (c_pretty_printer::expression): Handle VOID_CST.
1426 * cilk.c (extract_free_variables): Likewise.
1427 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift)
1428 (ubsan_instrument_vla): Use void_node instead of void_zero_node.
1429
766090c2
TS
14302014-05-17 Trevor Saunders <tsaunders@mozilla.com>
1431
1432 * c-common.h (sorted_fields_type): Remove variable_size GTY attribute.
1433 * c-pragma.c (push_alignment): Adjust.
1434 (handle_pragma_push_options): Likewise.
1435
661a0813
MP
14362014-05-09 Marek Polacek <polacek@redhat.com>
1437
1438 PR c/50459
1439 * c-common.c (check_user_alignment): Return -1 if alignment is error
1440 node.
1441 (handle_aligned_attribute): Don't call default_conversion on
1442 FUNCTION_DECLs.
1443 (handle_vector_size_attribute): Likewise.
1444 (handle_tm_wrap_attribute): Handle case when wrap_decl is error node.
1445 (handle_sentinel_attribute): Call default_conversion and allow even
1446 integral types as an argument.
1447
2793eeab
MP
14482014-05-08 Marek Polacek <polacek@redhat.com>
1449
1450 PR c/61053
1451 * c-common.c (min_align_of_type): New function factored out from...
1452 (c_sizeof_or_alignof_type): ...here.
1453 * c-common.h (min_align_of_type): Declare.
1454
f827930a
MP
14552014-05-08 Marek Polacek <polacek@redhat.com>
1456
1457 PR c/61077
1458 * c-common.c (check_main_parameter_types): Warn for _Atomic-qualified
1459 parameter type of main.
1460
ca49b74e
DD
14612014-05-07 DJ Delorie <dj@redhat.com>
1462
1463 * c-cppbuiltin.c (print_bits_of_hex): New.
1464 (builtin_define_type_minmax): Print values using hex so as not to
1465 require a pre-computed list of string values.
1466
1d60af08
KZ
14672014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
1468 Mike Stump <mikestump@comcast.net>
1469 Richard Sandiford <rdsandiford@googlemail.com>
1470
1471 * c-ada-spec.c: Include wide-int.h.
1472 (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Remove.
1473 (dump_generic_ada_node): Use wide-int interfaces.
1474 * c-common.c: Include wide-int-print.h.
1475 (shorten_compare): Use wide-int interfaces and tree_int_cst_lt.
1476 (pointer_int_sum): Use wide-int interfaces.
1477 (c_common_nodes_and_builtins): Use make_int_cst.
1478 (match_case_to_enum_1): Use tree_fits_uhwi_p and tree_fits_shwi_p.
1479 (handle_alloc_size_attribute): Use wide-int interfaces.
1480 (get_nonnull_operand): Likewise.
1481 * c-format.c (get_constant): Use tree_fits_uhwi_p.
1482 * c-lex.c: Include wide-int.h.
1483 (narrowest_unsigned_type): Take a widest_int rather than two
1484 HOST_WIDE_INTs.
1485 (narrowest_signed_type): Likewise.
1486 (interpret_integer): Update accordingly. Use wide-int interfaces.
1487 (lex_charconst): Use wide-int interfaces.
1488 * c-pretty-print.c: Include wide-int.h.
1489 (pp_c_integer_constant): Use wide-int interfaces.
1490 * cilk.c (declare_one_free_variable): Use tree_int_cst_lt instead of
1491 INT_CST_LT_UNSIGNED.
1492
b15458be
RB
14932014-05-06 Richard Biener <rguenther@suse.de>
1494
1495 * c-opts.c (c_common_post_options): For -freestanding,
1496 -fno-hosted and -fno-builtin disable pattern recognition
1497 if not enabled explicitely.
1498
6577374e
MP
14992014-05-02 Marek Polacek <polacek@redhat.com>
1500
1501 * c.opt (Wsizeof-pointer-memaccess): Describe option.
1502
d00887e8
MP
15032014-05-01 Marek Polacek <polacek@redhat.com>
1504
1505 PR c/43245
1506 * c.opt (Wdiscarded-qualifiers): Add.
1507
f8ed5150
MP
15082014-04-30 Marek Polacek <polacek@redhat.com>
1509
1510 * c-ubsan.c (ubsan_instrument_division): Handle REAL_TYPEs. Perform
1511 INT_MIN / -1 sanitization only for integer types.
1512
45484dcf
MP
15132014-04-25 Marek Polacek <polacek@redhat.com>
1514
1515 PR c/18079
1516 * c-common.c (handle_noinline_attribute): Warn if the attribute
1517 conflicts with always_inline attribute.
1518 (handle_always_inline_attribute): Warn if the attribute conflicts
1519 with noinline attribute.
1520
38e514c0
MP
15212014-04-25 Marek Polacek <polacek@redhat.com>
1522
1523 PR c/60156
1524 * c-common.c (check_main_parameter_types): Warn about variadic main.
1525
44875f92
MS
15262014-04-24 Mike Stump <mikestump@comcast.net>
1527
1528 * c.opt (Wshadow-ivar): Default to on.
1529
dcaaa5a0
DP
15302014-04-24 Dimitris Papavasiliou <dpapavas@gmail.com>
1531
1532 * c.opt (Wshadow-ivar, flocal-ivars, fivar-visibility): Add.
1533
c07d7c02
MP
15342014-04-23 Marek Polacek <polacek@redhat.com>
1535
1536 * c-common.c (handle_tm_wrap_attribute): Tweak error message.
1537
1c33c9b7
JJ
15382014-04-22 Jakub Jelinek <jakub@redhat.com>
1539
1540 PR sanitizer/60275
1541 * c-ubsan.c (ubsan_instrument_return): Return __builtin_trap ()
1542 if flag_sanitize_undefined_trap_on_error.
1543 (ubsan_instrument_division, ubsan_instrument_shift,
1544 ubsan_instrument_vla): Likewise. Use __ubsan_handle_*_abort ()
1545 if !flag_sanitize_recover.
1546
793c625f
MG
15472014-04-22 Marc Glisse <marc.glisse@inria.fr>
1548
1549 PR libstdc++/43622
1550 * c-common.c (registered_builtin_types): Make non-static.
1551 * c-common.h (registered_builtin_types): Declare.
1552
b0f1bf36
RB
15532014-04-14 Richard Biener <rguenther@suse.de>
1554 Marc Glisse <marc.glisse@inria.fr>
1555
1556 PR c/60819
1557 * c-common.c (convert_vector_to_pointer_for_subscript): Properly
1558 apply may-alias the scalar pointer type when applicable.
1559
3b07fa4a
IZ
15602014-04-12 Igor Zamyatin <igor.zamyatin@intel.com>
1561
1562 PR middle-end/60467
1563 * cilk.c (cilk_set_spawn_marker): Remove FUNCTION_DECL
1564 as possible argument for Cilk_spawn.
1565
cbbd2b1c
TB
15662014-04-11 Tobias Burnus <burnus@net-b.de>
1567
1568 PR c/60194
1569 * c.opt (Wformat-signedness): Add
1570 * c-format.c(check_format_types): Use it.
1571
6415bd5d
JM
15722014-04-11 Jason Merrill <jason@redhat.com>
1573
1574 PR c++/57926
1575 * c-common.c (sync_resolve_size, get_atomic_generic_size): Call
1576 default_conversion for an array argument.
1577
6525783a
MP
15782014-04-08 Marek Polacek <polacek@redhat.com>
1579
1580 PR sanitizer/60745
1581 * c-ubsan.c: Include asan.h.
1582 (ubsan_instrument_return): Call initialize_sanitizer_builtins.
1583
880a467b
NS
15842014-04-03 Nathan Sidwell <nathan@codesourcery.com>
1585
1586 * c.opt (Wnon-virtual-dtor): Auto set when Weffc++.
1587
7b59ff2d
MP
15882014-04-02 Marek Polacek <polacek@redhat.com>
1589
1590 * c-common.h (c_expand_expr): Remove declaration.
1591
8edbfaa6
JJ
15922014-03-28 Jakub Jelinek <jakub@redhat.com>
1593
1594 PR c++/60689
1595 * c-common.c (add_atomic_size_parameter): When creating new
1596 params vector, push the size argument first.
1597
07d72e1d
JJ
15982014-03-26 Jakub Jelinek <jakub@redhat.com>
1599
1600 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
1601 ubsan_instrument_vla, ubsan_instrument_return): Adjust
1602 ubsan_create_data callers.
1603
b35e0fa0
JJ
16042014-03-22 Jakub Jelinek <jakub@redhat.com>
1605
1606 PR debug/60603
1607 * c-opts.c (c_finish_options): Restore cb_file_change call to
1608 <built-in>.
1609
39a1ebb3
JJ
16102014-03-13 Jakub Jelinek <jakub@redhat.com>
1611
1612 PR middle-end/36282
1613 * c-pragma.c (apply_pragma_weak): Only look at
1614 TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl)) if
1615 DECL_ASSEMBLER_NAME_SET_P (decl).
1616 (maybe_apply_pending_pragma_weaks): Exit early if
1617 vec_safe_is_empty (pending_weaks) rather than only when
1618 !pending_weaks.
1619 (maybe_apply_pragma_weak): Likewise. If !DECL_ASSEMBLER_NAME_SET_P,
1620 set assembler name back to NULL afterwards.
1621
a07f6ed2
JM
16222014-03-11 Jason Merrill <jason@redhat.com>
1623
1624 * c.opt: Add -std=gnu++14.
1625
75b107f5
IB
16262014-03-11 Ian Bolton <ian.bolton@arm.com>
1627
1628 * c-opts.c (c_common_post_options): Don't override
1629 -ffp-contract=fast if unsafe-math-optimizations is on.
1630
f42c637e
PM
16312014-03-08 Paulo Matos <paulo@matos-sorge.com>
1632
1633 * c.opt: Enable LTO FE for fshort-double.
1634
70e24808
JM
16352014-03-07 Jason Merrill <jason@redhat.com>
1636
1637 * c.opt: Add -std=c++14.
1638
3af9c5e9
MP
16392014-03-06 Marek Polacek <polacek@redhat.com>
1640
1641 PR c/60197
1642 * cilk.c (contains_cilk_spawn_stmt): New function.
1643 (contains_cilk_spawn_stmt_walker): Likewise.
1644 (recognize_spawn): Give error on invalid use of _Cilk_spawn.
1645 * c-common.h (contains_cilk_spawn_stmt): Add declaration.
1646
b3bdf019
JJ
16472014-03-03 Jakub Jelinek <jakub@redhat.com>
1648
1649 * c-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_SIMD.
1650 (init_pragma): Call cpp_register_deferred_pragma for PRAGMA_CILK_SIMD
1651 even when flag_preprocess_only.
1652
ca7e759d
JM
16532014-02-26 Jason Merrill <jason@redhat.com>
1654
1655 PR c++/59231
1656 PR c++/11586
1657 * c-common.c (shorten_compare): Don't check
1658 c_inhibit_evaluation_warnings.
1659
28e41874
JJ
16602014-02-19 Jakub Jelinek <jakub@redhat.com>
1661
cca615af
JJ
1662 PR c/37743
1663 * c-common.c (c_common_nodes_and_builtins): When initializing
1664 c_uint{16,32,64}_type_node, also set corresponding
1665 uint{16,32,64}_type_node to the same value.
1666
28e41874
JJ
1667 PR c++/60267
1668 * c-pragma.c (init_pragma): Don't call cpp_register_deferred_pragma
1669 for PRAGMA_IVDEP if flag_preprocess_only.
1670
c2bf53a1
JJ
16712014-02-12 Jakub Jelinek <jakub@redhat.com>
1672
1673 PR c/60101
1674 * c-common.c (merge_tlist): If copy is true, call new_tlist,
1675 if false, add ADD itself, rather than vice versa.
1676 (verify_tree): For COND_EXPR, don't call merge_tlist with non-zero
1677 copy. For SAVE_EXPR, only call merge_tlist once.
1678
8fcbce72
JJ
16792014-02-08 Jakub Jelinek <jakub@redhat.com>
1680
1681 PR middle-end/60092
1682 * c-common.c (handle_alloc_size_attribute): Use tree_fits_uhwi_p
1683 and tree_to_uhwi.
1684 (handle_alloc_align_attribute, handle_assume_aligned_attribute): New
1685 functions.
1686 (c_common_attribute_table): Add alloc_align and assume_aligned
1687 attributes.
1688
0a756a3f
MP
16892014-02-06 Marek Polacek <polacek@redhat.com>
1690
1691 PR c/60087
1692 * c-common.c (warn_for_sign_compare): Call warning_at with location
1693 instead of warning.
1694
7ec4847a
MP
16952014-02-05 Marek Polacek <polacek@redhat.com>
1696
1697 PR c/53123
1698 * c-omp.c (c_finish_omp_atomic): Remove unreachable return
1699 statement.
1700
66f20604
MP
17012014-02-04 Marek Polacek <polacek@redhat.com>
1702
1703 PR c/60036
1704 * c-common.c (conversion_warning): Unwrap C_MAYBE_CONST_EXPR and/or
1705 SAVE_EXPR.
1706
5d77fb19
MG
17072014-02-03 Marc Glisse <marc.glisse@inria.fr>
1708
1709 PR c++/53017
1710 PR c++/59211
1711 * c-common.c (handle_aligned_attribute, handle_alloc_size_attribute,
1712 handle_vector_size_attribute, handle_nonnull_attribute): Call
1713 default_conversion on the attribute argument.
1714 (handle_nonnull_attribute): Increment the argument number.
1715
81e5eca8
MP
17162014-01-31 Marek Polacek <polacek@redhat.com>
1717
1718 PR c/59963
1719 * c-common.c (add_atomic_size_parameter): Pass vNULL to
1720 build_function_call_vec.
1721 (resolve_overloaded_builtin): Likewise.
1722 * c-common.h (build_function_call_vec): Adjust declaration.
1723
68fca595
MP
17242014-01-30 Marek Polacek <polacek@redhat.com>
1725
1726 PR c/59940
1727 * c-common.h (unsafe_conversion_p): Adjust declaration.
1728 (warnings_for_convert_and_check): Likewise.
1729 (convert_and_check): Likewise.
1730 * c-common.c (unsafe_conversion_p): Add location parameter. Call
1731 expansion_point_location_if_in_system_header on it.
1732 (warnings_for_convert_and_check): Add location parameter. Call
1733 expansion_point_location_if_in_system_header on it. Use it.
1734 (convert_and_check): Add location parameter. Use it.
1735 (conversion_warning): Likewise.
1736 (c_add_case_label): Adjust convert_and_check calls.
1737 (scalar_to_vector): Adjust unsafe_conversion_p calls.
1738
b72271b9
BI
17392014-01-24 Balaji V. Iyer <balaji.v.iyer@intel.com>
1740
1741 * c-common.c (c_define_builtins): Replaced flag_enable_cilkplus with
1742 flag_cilkplus.
1743 * c-pragma.c (init_pragma): Likewise.
1744 * c.opt: Likewise.
1745
393e8e8b
MP
17462014-01-23 Marek Polacek <polacek@redhat.com>
1747
1748 PR c/59846
1749 * c-common.c (shorten_compare): Add location_t parameter.
1750 * c-common.h (shorten_binary_op): Adjust declaration.
1751
f04dda30
MP
17522014-01-23 Marek Polacek <polacek@redhat.com>
1753
1754 PR c/58346
1755 * c-common.c (pointer_to_zero_sized_aggr_p): New function.
1756 * c-common.h: Declare it.
1757
621955cb
EB
17582014-01-20 Eric Botcazou <ebotcazou@adacore.com>
1759
1760 * c-ada-spec.h (dump_ada_specs): Revert prototype change.
1761 * c-ada-spec.c (dump_ads): Likewise.
1762 (cpp_check): Likewise.
1763 (dump_ada_specs): Likewise.
1764
17652014-01-15 Laurent Alfonsi <laurent.alfonsi@st.com>
67bf2939
LA
1766
1767 PR c++/49718
1768 * c-common.c (handle_no_instrument_function_attribute): Allow
1769 no_instrument_function attribute in class member
1770 definition/declaration.
1771
241f845a
JJ
17722014-01-15 Jakub Jelinek <jakub@redhat.com>
1773
1774 PR c/58943
1775 * c-omp.c (c_finish_omp_atomic): Set in_late_binary_op around
1776 build_modify_expr with non-NOP_EXPR opcode. Handle return from it
1777 being COMPOUND_EXPR.
1778 (c_finish_omp_for): Handle incr being COMPOUND_EXPR with first
1779 operand a SAVE_EXPR and second MODIFY_EXPR.
1780
e83b8e2e
JJ
17812014-01-09 Jakub Jelinek <jakub@redhat.com>
1782
1783 PR target/58115
1784 * c-pch.c (c_common_write_pch): Call
1785 prepare_target_option_nodes_for_pch.
1786
23a5b65a
RS
17872014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1788
1789 Update copyright years
1790
f9030485
RS
17912014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1792
1793 * array-notation-common.c, c-cilkplus.c: Use the standard form for
1794 the copyright notice.
1795
f2aa696b
EB
17962013-12-28 Eric Botcazou <ebotcazou@adacore.com>
1797
1798 * c-ada-spec.c (print_constructor): New function.
1799 (print_destructor): Retrieve the origin of the destructor.
1800 (print_ada_declaration): Revamp handling of constructors/destructors.
1801
1f26ac87
JM
18022013-12-23 Stuart Hastings <stuart@apple.com>
1803 Bill Maddox <maddox@google.com>
1804 Jason Merrill <jason@redhat.com>
1805
1806 * c.opt: Add -fdeclone-ctor-dtor.
1807 * c-opts.c (c_common_post_options): Default to on iff -Os.
1808
41958c28
BI
18092013-12-18 Balaji V. Iyer <balaji.v.iyer@intel.com>
1810
1811 * c-common.c (c_common_attribute_table): Added "cilk simd function"
1812 attribute.
1813 * c-pragma.h (enum pragma_cilk_clause): Remove.
1814 (enum pragma_omp_clause): Added the following fields:
1815 PRAGMA_CILK_CLAUSE_NOMASK, PRAGMA_CILK_CLAUSE_MASK,
1816 PRAGMA_CILK_CLAUSE_VECTORLENGTH, PRAGMA_CILK_CLAUSE_NONE,
1817 PRAGMA_CILK_CLAUSE_LINEAR, PRAGMA_CILK_CLAUSE_PRIVATE,
1818 PRAGMA_CILK_CLAUSE_FIRSTPRIVATE, PRAGMA_CILK_CLAUSE_LASTPRIVATE,
1819 PRAGMA_CILK_CLAUSE_UNIFORM.
1820
1821
12893402
BI
18222013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com>
1823
1824 * cilk.c (cilk_outline): Made this function non-static.
1825 (gimplify_cilk_spawn): Removed pre_p and post_p arguments.
1826 (create_cilk_wrapper): Added a new parameter: a function pointer.
1827 (c_install_body_w_frame_cleanup): Remove
1828 (extract_free_variables): Added VEC_INIT_EXPR and CONSTRUCTOR case.
1829 * c-common.h (cilk_outline): New prototype.
1830 (gimplify_cilk_spawn): Removed two parameters.
1831 (cilk_install_body_with_frame_cleanup): New prototype.
1832 * c-gimplify.c (c_gimplify_expr): Added MODIFY_EXPR, CALL_EXPR and
1833 CILK_SPAWN_STMT case.
1834
085b42ed
BS
18352013-12-11 Bernd Schmidt <bernds@codesourcery.com>
1836
2ce064c3
BS
1837 * c-common.c (c_fully_fold_internal): Handle ADDR_SPACE_CONVERT_EXPR.
1838
085b42ed
BS
1839 * c-common.h (enum c_tree_index): Remove CTI_INT_ARRAY_TYPE.
1840 (int_array_type_node): Remove.
1841 * c-common.c (c_common_nodes_and_builtins): Don't build it.
1842
9e36c9ed
MP
18432013-12-05 Marek Polacek <polacek@redhat.com>
1844
1845 PR c/52023
1846 * c-common.c (c_sizeof_or_alignof_type): Move a declaration into
1847 [ADJUST_FIELD_ALIGN].
1848
296674db
JM
18492013-12-04 Joseph Myers <joseph@codesourcery.com>
1850
1851 PR c/52023
1852 * c-common.c (c_sizeof_or_alignof_type): Add parameter min_alignof
1853 and check field alignment if set.
1854 * c-common.h (c_sizeof_or_alignof_type): Update prototype.
1855 (c_sizeof, c_alignof): Update calls to c_sizeof_or_alignof_type.
1856
31e071ae
MP
18572013-12-04 Jakub Jelinek <jakub@redhat.com>
1858 Marek Polacek <polacek@redhat.com>
1859
1860 * c-gimplify.c (c_gimplify_expr): If doing the integer-overflow
1861 sanitization, call unsigned_type_for only when !TYPE_OVERFLOW_WRAPS.
1862
d7947e19
L
18632013-11-29 H.J. Lu <hongjiu.lu@intel.com>
1864
1865 PR c/59309
1866 * cilk.c (gimplify_cilk_spawn): Properly handle function without
1867 arguments.
1868
fad7652e
JJ
18692013-11-29 Jakub Jelinek <jakub@redhat.com>
1870
1871 PR c/59280
1872 * c-common.c (get_priority): If TREE_VALUE (args) is IDENTIFIER_NODE,
1873 goto invalid. If it is error_mark_node, don't issue further
1874 diagnostics.
1875
8b5e1202
SO
18762013-11-28 Sergey Ostanevich <sergos.gnu@gmail.com>
1877
1878 * c.opt (Wopenmp-simd): New.
1879
0a508bb6
JJ
18802013-11-22 Jakub Jelinek <jakub@redhat.com>
1881
1882 * c-ubsan.h (ubsan_instrument_return): New prototype.
1883 * c-ubsan.c (ubsan_instrument_return): New function.
1884
2fb9a547
AM
18852013-11-22 Andrew MacLeod <amacleod@redhat.com>
1886
1887 * c-common.c: Add required include files from gimple.h.
1888 * c-gimplify.c: Likewise
1889 * cilk.c: Likewise
1890
8400e75e
DM
18912013-11-22 David Malcolm <dmalcolm@redhat.com>
1892
1893 * c-common.c (unsafe_conversion_p): Remove use of
1894 EXPR_LOC_OR_HERE macro.
1895 (conversion_warning): Likewise.
1896 (warnings_for_convert_and_check): Likewise.
1897 (warn_for_collisions_1): Likewise.
1898 (shorten_compare): Likewise, and remove use of in_system_header
1899 macro, using the location from the former.
1900 * c-lex.c (dump_one_header): Remove use of input_filename macro.
1901 (cb_def_pragma): Remove use of in_system_header macro.
1902 (lex_string): Likewise.
1903 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
1904
eb1ce453
KZ
19052013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com>
1906 Mike Stump <mikestump@comcast.net>
1907 Richard Sandiford <rdsandiford@googlemail.com>
1908
1909 * c-ada-spec.c (is_simple_enum): Use tree_to_shwi and tree_to_uhwi
1910 instead of TREE_INT_CST_LOW, in cases where there is a protecting
1911 tree_fits_shwi_p or tree_fits_uhwi_p.
1912 (dump_generic_ada_node): Likewise.
1913 * c-format.c (check_format_arg): Likewise.
1914 * c-pretty-print.c (pp_c_integer_constant): Likewise.
1915
6b3b8c27
KZ
19162013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com>
1917
1918 * c-common.c (check_function_arguments_recurse): Use tree_to_uhwi.
1919
49b0aa18
JC
19202013-11-19 Joshua J Cogliati <jrincayc@yahoo.com>
1921
1922 PR c/53001
1923 * c-common.c (unsafe_conversion_p): Make this function
1924 return an enumeration with more detail.
1925 (conversion_warning): Use the new return type of
1926 unsafe_conversion_p to separately warn either about conversions
1927 that lower floating point number precision or about the other
1928 kinds of conversions.
1929 * c-common.h (enum conversion_safety): New enumeration.
1930 (unsafe_conversion_p): switching return type to
1931 conversion_safety enumeration.
1932 * c.opt: Adding new warning -Wfloat-conversion and
1933 enabling it with -Wconversion.
1934
b826515a
BS
19352013-11-19 Basile Starynkevitch <basile@starynkevitch.net>
1936
1937 * c-opts.c: Include plugin.h.
1938 (cb_file_change): Invoke plugin event PLUGIN_INCLUDE_FILE.
1939
b9a55b13
MP
19402013-11-19 Marek Polacek <polacek@redhat.com>
1941
1942 * c-ubsan.c (ubsan_instrument_division): Adjust ubsan_create_data
1943 call.
1944 (ubsan_instrument_shift): Likewise.
1945 (ubsan_instrument_vla): Likewise.
1946
7d362f6c
RS
19472013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1948
1949 * c-common.c (convert_vector_to_pointer_for_subscript): Remove
1950 cast to unsigned type.
1951
386b1f1f
RS
19522013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1953
1954 * c-common.c (fold_offsetof_1): Use tree_to_uhwi rather than
1955 tree_low_cst.
1956 (complete_array_type): Update comment to refer to tree_to_[su]hwi
1957 rather than tree_low_cst.
1958
ae7e9ddd
RS
19592013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1960
1961 * c-common.c, c-cppbuiltin.c: Replace tree_low_cst (..., 1) with
1962 tree_to_uhwi throughout.
1963
9439e9a1
RS
19642013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1965
1966 * c-common.c, c-format.c, c-omp.c, c-pretty-print.c: Replace
1967 tree_low_cst (..., 0) with tree_to_shwi throughout.
1968
cc269bb6
RS
19692013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1970
1971 * c-ada-spec.c, c-common.c, c-pretty-print.c: Replace
1972 host_integerp (..., 1) with tree_fits_uhwi_p throughout.
1973
9541ffee
RS
19742013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1975
1976 * c-ada-spec.c, c-common.c, c-format.c, c-pretty-print.c: Replace
1977 host_integerp (..., 0) with tree_fits_shwi_p throughout.
1978
c02065fc
AH
19792013-11-15 Aldy Hernandez <aldyh@redhat.com>
1980
1981 * c-cilkplus.c: New file.
1982 * c-common.c (readonly_error): Add location argument.
1983 * c-common.h (readonly_error): Same.
1984 (c_finish_cilk_clauses): Protoize.
1985 (c_check_cilk_loop): Same.
1986 c-omp.c (c_finish_omp_for): Handle CILK_SIMD nodes.
1987 Do not fail on error_mark_node.
1988 Abstract increment canonicalization to here...
1989 (c_omp_for_incr_canonicalize_ptr): New.
1990 c-pragma.c (init_pragma): Register "simd" pragma.
1991 c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_SIMD.
1992 (enum pragma_cilk_clause): New.
1993
9cc65f15
RS
19942013-11-15 Richard Sandiford <rdsandiford@googlemail.com>
1995
1996 * c-pretty-print.c (pp_c_character_constant): Remove unnecessary
1997 wchar_type and host_integerp checks.
1998
18f429e2
AM
19992013-11-14 Andrew MacLeod <amacleod@redhat.com>
2000
2001 * c-common.c: Likewise.
2002 * c-gimplify.c: Likewise.
2003 * cilk.c: Likewise.
2004
d8a2d370
DN
20052013-11-14 Diego Novillo <dnovillo@google.com>
2006
2007 * c-common.c: Include fold-const.h.
2008 Include stor-layout.h.
2009 Include calls.h.
2010 Include stringpool.h.
2011 Include attribs.h.
2012 Include varasm.h.
2013 Include trans-mem.h.
2014 * c-cppbuiltin.c: Include stor-layout.h.
2015 Include stringpool.h.
2016 * c-format.c: Include stringpool.h.
2017 * c-lex.c: Include stringpool.h.
2018 Include stor-layout.h.
2019 * c-pragma.c: Include stringpool.h.
2020 Include attribs.h.
2021 Include varasm.h.
2022 Include gcc-symtab.h.
2023 * c-pretty-print.c: Include stor-layout.h.
2024 Include attribs.h.
2025 * cilk.c: Include stringpool.h.
2026 Include calls.h.
2027
38b7bc7f
JM
20282013-11-13 Joseph Myers <joseph@codesourcery.com>
2029
2030 * c-common.h (enum rid): Add RID_AUTO_TYPE.
2031 * c-common.c (c_common_reswords): Add __auto_type.
2032 (keyword_begins_type_specifier): Handle RID_AUTO_TYPE.
2033
45b0be94
AM
20342013-11-12 Andrew MacLeod <amacleod@redhat.com>
2035
18f429e2
AM
2036 * c-common.c: Include gimplify.h.
2037 * c-gimplify.c: Likewise.
2038 * cilk.c: Likewise.
2039 * c-omp.c: Include gimple-expr.h instead of gimple.h.
2040 * c-ubsan.c: Don't include gimple.h.
45b0be94 2041
582d9b50
JM
20422013-11-12 Joseph Myers <joseph@codesourcery.com>
2043
2044 * c-common.c (c_common_reswords): Add _Thread_local.
2045
6b28e197
JM
20462013-11-09 Joseph Myers <joseph@codesourcery.com>
2047
2048 * c-common.c (atomic_size_supported_p): New function.
2049 (resolve_overloaded_atomic_exchange)
2050 (resolve_overloaded_atomic_compare_exchange)
2051 (resolve_overloaded_atomic_load, resolve_overloaded_atomic_store):
2052 Use it instead of comparing size with a local list of sizes.
2053
267bac10
JM
20542013-11-07 Andrew MacLeod <amacleod@redhat.com>
2055 Joseph Myers <joseph@codesourcery.com>
2056
2057 * c-common.h (enum rid): Add RID_ATOMIC.
2058 * c-common.c (c_common_reswords): Add _Atomic.
2059 (sync_resolve_params): Use TYPE_MAIN_VARIANT on pointer argument.
2060 (keyword_is_type_qualifier): Accept RID_ATOMIC.
2061 * c-format.c (check_format_types): Check for extra _Atomic
2062 qualifiers in format argument.
2063 * c-pretty-print.c (pp_c_cv_qualifiers): Handle atomic qualifier.
2064 (pp_c_type_qualifier_list): Mention _Atomic in comment.
2065
5157b91e
TB
20662013-11-06 Tobias Burnus <burnus@net-b.de>
2067
2068 * c-common.c (reason_option_codes_t): Add CPP_W_DATE_TIME.
2069
6dbe0958
JM
20702013-11-06 Joseph Myers <joseph@codesourcery.com>
2071
2072 * c-opts.c (c_common_post_options): Set -ffp-contract=off in C
2073 standards modes.
2074 * c-cppbuiltin.c (cpp_iec_559_value): Consider -ffp-contract=fast
2075 to mean lack of IEEE 754 support.
2076
e8ff5196
TB
20772013-11-05 Tobias Burnus <burnus@net-b.de>
2078
2079 * c.opt (-Wdate-time): New option
2080 * c-opts.c (sanitize_cpp_opts): Pass on to libcpp.
2081
254a0760
JM
20822013-11-05 Joseph Myers <joseph@codesourcery.com>
2083
2084 * c-cppbuiltin.c (cpp_iec_559_value): Test
2085 flag_excess_precision_cmdline not flag_excess_precision.
2086
6d7f7e0a
TB
20872013-11-05 Tobias Burnus <burnus@net-b.de>
2088
2089 * c.opt (fopenmp-simd): New option.
2090 * c-pragma.c (omp_pragmas): Move pragmas which can contain simd to ...
2091 (omp_pragmas): ... this new struct.
2092 (c_pp_lookup_pragma): Also walk omp_pragmas.
2093 (init_pragma): Init pragmas for -fopenmp-simd.
2094
55a7f02f
MP
20952013-11-04 Marek Polacek <polacek@redhat.com>
2096
2097 PR c++/58979
2098 * c-common.c (invalid_indirection_error): Handle RO_ARROW_STAR case.
2099
9193fb05
JM
21002013-11-04 Joseph Myers <joseph@codesourcery.com>
2101
2102 * c-cppbuiltin.c (cpp_iec_559_value, cpp_iec_559_complex_value):
2103 New functions.
2104 (c_cpp_builtins): Define __GCC_IEC_559 and __GCC_IEC_559_COMPLEX.
2105
94159ecf
EB
21062013-11-04 Eric Botcazou <ebotcazou@adacore.com>
2107
2108 * c-ada-spec.h (cpp_operation): Add IS_TRIVIAL.
2109 (dump_ada_specs): Adjust prototype of second callback.
2110 * c-ada-spec.c (cpp_check): New global variable.
2111 (dump_ada_nodes): Remove cpp_check parameter and do not pass it down.
2112 (print_generic_ada_decl): Likewise.
2113 (has_static_fields): Change return type to bool and add guard.
2114 (has_nontrivial_methods): New predicate.
2115 (is_tagged_type): Change return type to bool.
2116 (separate_class_package): Call has_nontrivial_methods.
2117 (pp_ada_tree_identifier): Minor tweaks.
2118 (dump_ada_function_declaration): Adjust calls to dump_generic_ada_node.
2119 (dump_ada_array_domains): Likewise.
2120 (dump_ada_array_type): Likewise.
2121 (dump_template_types): Remove cpp_check parameter and do not pass it to
2122 dump_generic_ada_node.
2123 (dump_ada_template): Likewise.
2124 (dump_generic_ada_node): Remove cpp_check parameter and do not pass it
2125 recursively.
2126 (print_ada_methods): Change return type to integer. Remove cpp_check
2127 parameter and do not pass it down.
2128 (dump_nested_types): Remove cpp_check parameter and do not pass it to
2129 dump_generic_ada_node.
2130 (print_ada_declaration): Likewise. Test RECORD_OR_UNION_TYPE_P before
2131 accessing methods.
2132 (print_ada_struct_decl): Remove cpp_check parameter and do not pass it
2133 down. Use has_nontrivial_methods to recognize C++ classes. Use return
2134 value of print_ada_methods.
2135 (dump_ads): Rename cpp_check parameter to check and adjust prototype.
2136 Set cpp_check to it before invoking dump_ada_nodes.
2137 (dump_ada_specs): Likewise.
2138
b906f4ca
MP
21392013-11-03 Marek Polacek <polacek@redhat.com>
2140
2141 * c-ubsan.c: Don't include hash-table.h.
2142 (ubsan_instrument_vla): New function.
2143 * c-ubsan.h: Declare it.
2144
5e20cdc9
DM
21452013-10-31 David Malcolm <dmalcolm@redhat.com>
2146
2147 Automated part of renaming of symtab_node_base to symtab_node.
2148
2149 Patch autogenerated by rename_symtab.py from
2150 https://github.com/davidmalcolm/gcc-refactoring-scripts
2151 revision 58bb219cc090b2f4516a9297d868c245495ee622
2152
2153 * c-pragma.c (maybe_apply_pending_pragma_weaks): Rename
2154 symtab_node_base to symtab_node.
2155
7057e645
ESR
21562013-10-31 Edward Smith-Rowland <3dw4rd@verizon.net>
2157
2158 Implement C++14 digit separators.
2159 * c-lex.c (interpret_float): Remove digit separators from scratch string
2160 before building real literal.
2161
193ea7bc
JJ
21622013-10-30 Jakub Jelinek <jakub@redhat.com>
2163
2164 * cilk.c (create_cilk_helper_decl): Use HOST_WIDE_INT_PRINT_DEC.
2165
939b37da
BI
21662013-10-29 Balaji V. Iyer <balaji.v.iyer@intel.com>
2167
2168 * c-common.c (c_common_reswords[]): Added _Cilk_spawn and _Cilk_sync
2169 fields.
2170 (c_define_builtins): Called cilk_init_builtins if Cilk Plus is
2171 enabled.
2172 * c-common.h (enum rid): Added RID_CILK_SPAWN and RID_CILK_SYNC.
2173 (insert_cilk_frame): New prototype.
2174 (cilk_init_builtins): Likewise.
2175 (gimplify_cilk_spawn): Likewise.
2176 (c_cilk_install_body_w_frame_cleanup): Likewise.
2177 (cilk_detect_spawn_and_unwrap): Likewise.
2178 (cilk_set_spawn_marker): Likewise.
2179 (build_cilk_sync): Likewise.
2180 (build_cilk_spawn): Likewise.
2181 * cilk.c: New file.
2182
67348ccc
DM
21832013-10-29 David Malcolm <dmalcolm@redhat.com>
2184
2185 Patch autogenerated by refactor_symtab.py from
2186 https://github.com/davidmalcolm/gcc-refactoring-scripts
2187 revision 58bb219cc090b2f4516a9297d868c245495ee622
2188
2189 * c-gimplify.c (c_genericize): Update for conversion of symtab types
2190 to a true class hierarchy.
2191 * c-pragma.c (maybe_apply_pending_pragma_weaks): Likewise.
2192
d570872d
RS
21932013-10-27 Richard Sandiford <rdsandiford@googlemail.com>
2194
2195 * c-lex.c (interpret_integer): Remove call to cpp_num_sign_extend.
2196
98906124
JL
21972013-10-26 Jeff Law <law@redhat.com>
2198
adfac8df
JJ
2199 * c-common.c (c_define_builtins): Remove mudflap support.
2200 * c.opt: Ignore and warn for mudflap options.
98906124 2201
d73749df 22022013-10-24 Tobias Burnus <burnus@net-b.de>
8170608b
TB
2203
2204 PR other/33426
2205 * c-pragma.c (init_pragma) Add #pragma ivdep handling.
2206 * c-pragma.h (pragma_kind): Add PRAGMA_IVDEP.
2207
3f04b1bb
JM
22082013-10-23 Jason Merrill <jason@redhat.com>
2209
2210 * c-format.c (gcc_cxxdiag_char_table): Add %X.
2211
acf0174b
JJ
22122013-10-11 Jakub Jelinek <jakub@redhat.com>
2213
acd15a28
JJ
2214 * c-common.h (omp_clause_mask::operator !=): New method.
2215 * c-omp.c (c_omp_split_clauses): Use if ((mask & something) != 0)
2216 instead of if (mask & something) tests everywhere.
2217
acf0174b
JJ
2218 * c-cppbuiltin.c (c_cpp_builtins): Predefine _OPENMP to
2219 201307 instead of 201107.
2220 * c-common.c (DEF_FUNCTION_TYPE_8): Define.
2221 (c_common_attribute_table): Add "omp declare target" and
2222 "omp declare simd" attributes.
2223 (handle_omp_declare_target_attribute,
2224 handle_omp_declare_simd_attribute): New functions.
2225 * c-omp.c: Include c-pragma.h.
2226 (c_finish_omp_taskgroup): New function.
2227 (c_finish_omp_atomic): Add swapped argument, if true,
2228 build the operation first with rhs, lhs arguments and use NOP_EXPR
2229 build_modify_expr.
2230 (c_finish_omp_for): Add code argument, pass it down to make_code.
2231 (c_omp_split_clauses): New function.
2232 (c_split_parallel_clauses): Removed.
2233 (c_omp_declare_simd_clause_cmp, c_omp_declare_simd_clauses_to_numbers,
2234 c_omp_declare_simd_clauses_to_decls): New functions.
2235 * c-common.h (omp_clause_mask): New type.
2236 (OMP_CLAUSE_MASK_1): Define.
2237 (omp_clause_mask::omp_clause_mask, omp_clause_mask::operator &=,
2238 omp_clause_mask::operator |=, omp_clause_mask::operator ~,
2239 omp_clause_mask::operator |, omp_clause_mask::operator &,
2240 omp_clause_mask::operator <<, omp_clause_mask::operator >>,
2241 omp_clause_mask::operator ==): New methods.
2242 (enum c_omp_clause_split): New.
2243 (c_finish_omp_taskgroup): New prototype.
2244 (c_finish_omp_atomic): Add swapped argument.
2245 (c_finish_omp_for): Add code argument.
2246 (c_omp_split_clauses): New prototype.
2247 (c_split_parallel_clauses): Removed.
2248 (c_omp_declare_simd_clauses_to_numbers,
2249 c_omp_declare_simd_clauses_to_decls): New prototypes.
2250 * c-pragma.c (omp_pragmas): Add new OpenMP 4.0 constructs.
2251 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_CANCEL,
2252 PRAGMA_OMP_CANCELLATION_POINT, PRAGMA_OMP_DECLARE_REDUCTION,
2253 PRAGMA_OMP_DISTRIBUTE, PRAGMA_OMP_END_DECLARE_TARGET, PRAGMA_OMP_SIMD,
2254 PRAGMA_OMP_TARGET, PRAGMA_OMP_TASKGROUP and PRAGMA_OMP_TEAMS.
2255 Remove PRAGMA_OMP_PARALLEL_FOR and PRAGMA_OMP_PARALLEL_SECTIONS.
2256 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_ALIGNED,
2257 PRAGMA_OMP_CLAUSE_DEPEND, PRAGMA_OMP_CLAUSE_DEVICE,
2258 PRAGMA_OMP_CLAUSE_DIST_SCHEDULE, PRAGMA_OMP_CLAUSE_FOR,
2259 PRAGMA_OMP_CLAUSE_FROM, PRAGMA_OMP_CLAUSE_INBRANCH,
2260 PRAGMA_OMP_CLAUSE_LINEAR, PRAGMA_OMP_CLAUSE_MAP,
2261 PRAGMA_OMP_CLAUSE_NOTINBRANCH, PRAGMA_OMP_CLAUSE_NUM_TEAMS,
2262 PRAGMA_OMP_CLAUSE_PARALLEL, PRAGMA_OMP_CLAUSE_PROC_BIND,
2263 PRAGMA_OMP_CLAUSE_SAFELEN, PRAGMA_OMP_CLAUSE_SECTIONS,
2264 PRAGMA_OMP_CLAUSE_SIMDLEN, PRAGMA_OMP_CLAUSE_TASKGROUP,
2265 PRAGMA_OMP_CLAUSE_THREAD_LIMIT, PRAGMA_OMP_CLAUSE_TO and
2266 PRAGMA_OMP_CLAUSE_UNIFORM.
2267
826cacfe
MG
22682013-10-09 Marc Glisse <marc.glisse@inria.fr>
2269
2270 PR tree-optimization/20318
2271 * c-common.c (handle_returns_nonnull_attribute): New function.
2272 (c_common_attribute_table): Add returns_nonnull.
2273
2284b034
MG
22742013-10-03 Marc Glisse <marc.glisse@inria.fr>
2275
2276 PR c++/19476
2277 * c.opt (fcheck-new): Move to common.opt.
2278
b56e9788
MP
22792013-09-25 Marek Polacek <polacek@redhat.com>
2280 Jakub Jelinek <jakub@redhat.com>
2281
2282 PR sanitizer/58413
2283 * c-ubsan.c (ubsan_instrument_shift): Don't instrument
2284 an expression if we can prove it is correct.
2285 (ubsan_instrument_division): Likewise. Remove unnecessary
2286 check.
2287
ce6923c5
MP
22882013-09-18 Marek Polacek <polacek@redhat.com>
2289
2290 PR sanitizer/58411
2291 * c-common.c (handle_no_sanitize_undefined_attribute): New function.
2292 Declare it.
2293 (struct attribute_spec c_common_att): Add no_sanitize_undefined.
2294
fb5610fb
IS
22952013-09-14 Iain Sandoe <iain@codesourcery.com>
2296
2297 PR target/48094
2298 * c.opt (fgnu-runtime, fnext-runtime, fobjc-abi-version,
2299 fobjc-gc, freplace-objc-classes): Accept for LTO.
2300
88b0e79e
JC
23012013-09-13 Jacek Caban <jacek@codeweavers.com>
2302
2303 * c-target.def: New hook
2304
c9b0866a
PC
23052013-09-09 Paolo Carlini <paolo.carlini@oracle.com>
2306
2307 PR c++/43452
2308 * c.opt (Wdelete-incomplete): Add.
2309
0af94e6f
JR
23102013-09-08 Joern Rennecke <joern.rennecke@embecosm.com>
2311
2312 * c-common.c (same_scalar_type_ignoring_signedness): Delete.
2313 (vector_types_compatible_elements_p): New function.
2314 * c-common.h: (same_scalar_type_ignoring_signedness): Delete
2315 declaration.
2316 (vector_types_compatible_elements_p): Declare.
2317
7c26172c
GDR
23182013-09-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
2319
2320 * c-pretty-print.h (c_pretty_printer::simple_type_specifier): Now
2321 a virtual member function.
2322 (pp_simple_type_specifier): Remove.
2323 (pp_c_type_specifier): Likewise.
2324 * c-pretty-print.c (c_pretty_printer::simple_type_specifier):
2325 Rename from pp_c_type_specifier. Adjust.
2326 (c_pretty_printer::c_pretty_printer): Do not assign to
2327 simple_type_specifier.
2328
20059c8b
GDR
23292013-09-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
2330
2331 * c-pretty-print.h (c_pretty_printer::type_id): Now a virtual
2332 member function.
2333 (c_pretty_printer::storage_class_specifier): Likewise.
2334 (c_pretty_printer::initializer): Likewise.
2335 (pp_declaration): Remove.
2336 (pp_declaration_specifiers): Likewise.
2337 (pp_abstract_declarator): Likewise.
2338 (pp_declarator): Likewise.
2339 (pp_type_id): Likewise.
2340 (pp_statement): Likewise.
2341 (pp_constant): Likewise.
2342 (pp_id_expression): Likewise.
2343 (pp_primary_expression): Likewise.
2344 (pp_unary_expression): Likewise.
2345 (pp_multiplicative_expression): Likewise.
2346 (pp_conditional_expression): Likewise.
2347 (pp_assignment_expression): Likewise.
2348 (pp_expression): Likewise.
2349 (pp_c_type_id): Likewise.
2350 (pp_c_storage_class_specifier): Likewise.
2351 * c-pretty-print.c (pp_c_type_cast): Tidy.
2352 (pp_c_pointer): Likewise.
2353 (pp_c_type_specifier): Likewise.
2354 (pp_c_parameter_type_list): Likewise.
2355 (pp_c_function_definition): Likewise.
2356 (pp_c_init_declarator): Likewise.
2357 (pp_c_initializer_list): Likewise.
2358 (pp_c_constructor_elts): Likewise.
2359 (c_pretty_printer::direct_abstract_declarator): Likewise.
2360 (c_pretty_printer::declaration_specifiers): Likewise.
2361 (c_pretty_printer::primary_expression): Likewise.
2362 (c_pretty_printer::postfix_expression): Likewise.
2363 (c_pretty_printer::type_id): Rename from pp_c_type_id.
2364 (c_pretty_printer::storage_class_specifier): Rename from
2365 pp_c_storage_class_specifier.
2366 (c_pretty_printer::initializer): Rename from pp_c_initializer.
2367 (c_pretty_printer::c_pretty_printer): Do not assign to type_id,
2368 storage_class_specifier, initializer, offset_list, flags.
2369
de5a5fa1
MP
23702013-08-30 Marek Polacek <polacek@redhat.com>
2371
2372 * c-ubsan.c: New file.
2373 * c-ubsan.h: New file.
2374
8f0e4d72
GDR
23752013-08-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
2376
2377 * c-pretty-print.h (c_pretty_printer::declaration): Now a virtual
2378 member function.
2379 (c_pretty_printer::declaration_specifiers): Likewise.
2380 (c_pretty_printer::declarator): Likewise.
2381 (c_pretty_printer::abstract_declarator): Likewise.
2382 (c_pretty_printer::direct_abstract_declarator): Likewise.
2383 (c_pretty_printer::direct_declarator): Likewise.
2384 (c_pretty_printer::function_specifier): Likewise.
2385 (pp_declaration): Adjust.
2386 (pp_declaration_specifiers): Likewise.
2387 (pp_abstract_declarator): Likewise.
2388 (pp_direct_declarator): Likewise.
2389 (pp_function_specifier): Likewise.
2390 (pp_direct_abstract_declarator): Remove as unused.
2391 (pp_c_declaration): Remove.
2392 (pp_c_declaration_specifiers): Likewise.
2393 (pp_c_declarator): Likewise.
2394 (pp_c_direct_declarator): Likewise.
2395 (pp_c_function_specifier): Likewise.
2396 (pp_c_direct_abstract_declarator): Likewise.
2397 * c-pretty-print.c (c_pretty_printer::abstract_declarator): Rename
2398 from pp_c_abstract_declarator. Adjust.
2399 (c_pretty_printer::direct_abstract_declarator): Rename from
2400 pp_c_direct_abstract_declarator. Adjust.
2401 (c_pretty_printer::function_specifier): Rename from
2402 pp_c_function_specifier. Adjust.
2403 (c_pretty_printer::declaration_specifiers): Rename from
2404 pp_c_declaration_specifiers. Adjust.
2405 (c_pretty_printer::direct_declarator): Rename from
2406 pp_c_direct_declarator. Adjust.
2407 (c_pretty_printer::declarator): Rename from pp_c_declarator. Adjust.
2408 (c_pretty_printer::declaration): Rename from pp_c_declaration. Adjust.
2409 (c_pretty_printer::c_pretty_printer): Do not assign to
2410 declaration, declaration_specifiers, declarator,
2411 direct_declarator, direct_abstract_declarator, function_specifier.
2412
00d34d3a
GDR
24132013-08-26 Gabriel Dos Reis <gdre@integrable-solutions.net>
2414
2415 * c-pretty-print.h (c_pretty_printer::unary_expression): Now a
2416 virtual member function.
2417 (c_pretty_printer::multiplicative_expression): Likewise.
2418 (c_pretty_printer::conditional_expression): Likewise.
2419 (c_pretty_printer::assignment_expression): Likewise.
2420 (c_pretty_printer::expression): Likewise.
2421 (pp_unary_expression): Adjust.
2422 (pp_multiplicative_expression): Likewise.
2423 (pp_assignment_expression): Likewise.
2424 (pp_conditional_expression): Likewise.
2425 (pp_expression): Likewise.
2426 * c-pretty-print.c (c_pretty_printer::unary_expression): Rename
2427 from pp_c_unary_expression. Adjust.
2428 (c_pretty_printer::multiplicative_expression): Rename from
2429 pp_c_multiplicative_expression. Adjust.
2430 (c_pretty_printer::conditional_expression): Rename from
2431 pp_c_conditional_expression. Adjust.
2432 (c_pretty_printer::assignment_expression): Rename from
2433 pp_c_assignment_expression. Adjust.
2434 (c_pretty_printer::expression): Rename from pp_c_expression. Adjust.
2435 (c_pretty_printer::c_pretty_printer): Do not assign to
2436 unary_expression, multiplicative_expression,
2437 conditional_expression, expression.
2438
fb22178f
GDR
24392013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
2440
2441 * c-pretty-print.h (c_pretty_printer::postfix_expression): Now a
2442 virtual member function.
2443 (pp_postfix_expression): Adjust.
2444 (pp_c_postfix_expression): Remove.
2445 * c-pretty-print.c (c_pretty_printer::postfix_expression): Rename
2446 from pp_c_postfix_expression. Adjust.
2447 (c_pretty_printer::c_pretty_printer): Do not assign to
2448 postfix_expression.
2449
7ecc2600
GDR
24502013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
2451
2452 * c-pretty-print.h (c_pretty_printer::primary_expression): Now a
2453 virtua member function.
2454 (pp_primary_expression): Adjust.
2455 (pp_c_primary_expression): Remove.
2456 * c-pretty-print.c (c_pretty_printer::primary_expression): Rename
2457 from pp_c_primary_expression. Adjust.
2458 (pp_c_initializer_list): Use pp_primary_expression.
2459 (c_pretty_printer::c_pretty_printer): Do not assign to
2460 primary_expression.
2461
0691175f
GDR
24622013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
2463
2464 * c-pretty-print.h (c_pretty_printer::translate_string): Declare.
2465 * c-pretty-print.c (M_): Remove.
2466 (c_pretty_printer::translate_string): Define.
2467 (pp_c_type_specifier): Use it.
2468 (pp_c_primary_expression): Likewise.
2469 (pp_c_expression): Likewise.
2470
66dfe4c4
GDR
24712013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
2472
2473 * c-pretty-print.h (c_pretty_printer::id_expression): Now a
2474 virtual function.
2475 (pp_c_id_expression): Remove.
2476 (pp_id_expression): Adjust.
2477 * c-pretty-print.c (c_pretty_printer::id_expression): Rename from
2478 pp_c_id_expression. Adjust.
2479 (pp_c_postfix_expression): Use pp_id_expression.
2480 (c_pretty_printer::c_pretty_printer): Do not assign to id_expression.
2481
ca43e9d5
GDR
24822013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
2483
2484 * c-pretty-print.h (c_pretty_printer::constant): Now a virtual
2485 member function.
2486 (pp_constant): Adjust.
2487 (pp_c_constant): Remove.
2488 * c-pretty-print.c (c_pretty_printer::constant): Rename from
2489 pp_c_constant. Adjust.
2490 (pp_c_constant)
2491 (pp_c_primary_expression): Call pp_constant in lieu of pp_c_constant.
2492 (c_pretty_printer::c_pretty_printer): Remove assignment to constant.
2493
da6ca2b5
GDR
24942013-08-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
2495
2496 * c-pretty-print.h (pp_c_pretty_printer_init): Remove.
2497 (c_pretty_printer::c_pretty_printer): Declare.
2498 * c-pretty-print.c (pretty_printer::c_pretty_printer): Rename from
2499 c_pretty_printer_init. Adjust.
2500 (print_c_tree): Do not call c_pretty_printer_init.
2501 * c-ada-spec.c (dump_ads): Remove call to pp_construct.
2502
65a372f4
AC
25032013-08-09 Arnaud Charlet <charlet@adacore.com>
2504
2505 * c-ada-spec.c (print_ada_declaration): Prevent accessing null asm name
2506
fd9b0f32
PC
25072013-08-05 Paolo Carlini <paolo.carlini@oracle.com>
2508
2509 PR c++/58080
2510 * c-common.c (pointer_int_sum): Add bool parameter.
2511 * c-common.h (pointer_int_sum): Adjust declaration.
2512
e0aec1e9
GDR
25132013-08-05 Gabriel Dos Reis <gdr@integrable-solutions.net>
2514
2515 * c-pretty-print.c (print_c_tree): Simplify. Use non-static local
2516 c_pretty_printer variable.
2517
b066401f
GDR
25182013-08-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
2519
2520 * c-pretty-print.h (c_pretty_printer): Derive from pretty_printer.
2521 (pp_base): Remove.
2522 (pp_c_base): Likewise. Adjust users.
2523 * c-pretty-print.c (pp_c_maybe_whitespace): Adjust.
2524 (pp_c_whitespace): Do not call pp_base.
2525 (pp_c_left_paren): Likewise.
2526 (pp_c_right_paren): Likewise.
2527 (pp_c_left_brace): Likewise.
2528 (pp_c_right_brace): Likewise.
2529 (pp_c_left_bracket): Likewise.
2530 (pp_c_right_bracket): Likewise.
2531 (pp_c_dot): Likewise.
2532 (pp_c_ampersand): Likewise.
2533 (pp_c_star): Likewise.
2534 (pp_c_arrow): Likewise.
2535 (pp_c_semicolon): Likewise.
2536 (pp_c_complement): Likewise.
2537 (pp_c_exclamation): Likewise.
2538 (pp_c_direct_declarator): Likewise.
2539 (pp_c_ws_string): Likewise.
2540 (pp_c_identifier): Likewise.
2541 (pp_c_statement): Likewise.
2542 (print_c_tree): Likewise.
2543
65e5a578
ESR
25442013-08-04 Ed Smith-Rowland <3dw4rd@verizon.net>
2545
2546 PR c++/58072
2547 * c-common.c (c_parse_error): Catch user-defined literal tokens and
2548 provide useful error strings.
2549
137a1a27
GDR
25502013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
2551
2552 * c-ada-spec.c (pp_ada_tree_identifier): Use specialized pretty
2553 printer functions instead of pp_string or operators and punctuators.
2554 (dump_generic_ada_node): Likewise.
2555 * c-pretty-print.c (pp_c_type_specifier): Likewise.
2556 (pp_c_relational_expression): Likewise.
2557 (pp_c_logical_or_expression): Likewise.
2558
07838b13
GDR
25592013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
2560
2561 * c-ada-spec.c (print_ada_macros): Use specialized pretty printer
2562 functions instead of pp_character.
2563 (pp_ada_tree_identifier): Likewise.
2564 (dump_ada_double_name): Likewise.
2565 (dump_ada_function_declaration): Likewise.
2566 (dump_ada_array_domains): Likewise.
2567 (dump_template_types): Likewise.
2568 (dump_generic_ada_node): Likewise.
2569 (print_ada_declaration): Likewise.
2570 (print_ada_struct_decl): Likewise.
2571 * c-pretty-print.c (pp_c_integer_constant): Likewise.
2572
433cc7b0
TT
25732013-07-23 Tom Tromey <tromey@redhat.com>
2574
2575 * c-common.h (enum rid) <RID_GENERIC>: New constant.
2576 * c-common.c (c_common_reswords): Add _Generic.
2577
688010ba
OB
25782013-07-21 OndÅ\99ej Bílka <neleai@seznam.cz>
2579
2580 * c-common.c: Fix typos.
2581 * c-common.h: Likewise.
2582
2a99e5e6
LL
25832013-07-13 Lubos Lunak <l.lunak@suse.cz>
2584
2585 PR c++/55203
2586 * c-common.c (c_common_attribute_table): Add warn_unused.
2587 (handle_warn_unused_attribute): New.
2588
c26302d5
JJ
25892013-07-10 Jakub Jelinek <jakub@redhat.com>
2590
2591 * c-ppoutput.c (scan_translation_unit): Call account_for_newlines
2592 for all CPP_TOKEN_FLD_STR tokens, not just CPP_COMMENT.
2593
dfeadaa0
PC
25942013-07-10 Paolo Carlini <paolo.carlini@oracle.com>
2595
2596 PR c++/57869
2597 * c.opt: Add Wconditionally-supported.
2598
6a2fa4b2
GS
25992013-07-08 Graham Stott <graham.stott@btinternet.com>
2600
adfac8df 2601 * array-notation-common.c (length_mismatch_in_expr_p): Delete
6a2fa4b2
GS
2602 unused variables l_length and l_node.
2603
ecdbd01a 26042013-07-04 Joern Rennecke <joern.rennecke@embecosm.com>
40d3d530
JR
2605
2606 PR c/57821
2607 * c-common.c (complete_array_type): Delay folding first index
2608 like other indices. When folding, check for index overflow.
2609
bedc293e
MG
26102013-06-27 Marc Glisse <marc.glisse@inria.fr>
2611
2612 PR c++/57509
2613 * c-common.h (c_build_vec_perm_expr): New complain argument.
2614 * c-common.c (c_build_vec_perm_expr): Likewise.
2615 Use save_expr also in C++.
2616
604b2bfc
GDR
26172013-06-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
2618
2619 * c-common.c (c_common_nodes_and_builtins): Use cxx11 in lieu of cxx0x.
2620 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
2621 * c-opts.c (c_common_post_options): Likewise.
2622
dfeadaa0 26232013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
713b46fa
BI
2624
2625 * array-notation-common.c (length_mismatch_in_expr): Changed the
2626 parameter type's from a dynamic array to a vec_tree. Also removed
2627 the size parameters.
2628 * c-common.h (length_mismatch_in_expr_p): Fixed prototype's as per
2629 the change above.
2630
2ce86d2e
BI
26312013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
2632
2633 * c-common.h (struct cilkplus_an_parts): New structure.
2634 (struct cilkplus_an_loop_parts): Likewise.
2635 (cilkplus_extract_an_triplets): New prototype.
2636 (fix_sec_implicit_args): Likewise.
2637 * array-notation-common.c (cilkplus_extract_an_triplets): New function.
2638 (fix_sec_implicit_args): Likewise.
604b2bfc 2639
07a6825b
BI
26402013-06-20 Balaji V. Iyer <balaji.v.iyer@intel.com>
2641
2642 * array-notation-common.c (find_inv_trees): Removed an unwanted
2643 typecasting.
2644 * c-common.h (struct inv_list::additional_tcodes): Changed type from
2645 enum rid to enum tree_code.
2646
08346abd
JH
26472013-06-11 Jan Hubicka <jh@suse.cz>
2648
2649 * c-common.c (handle_alias_ifunc_attribute): Do not set
2650 DECL_EXTERNAL for weakref variables.
2651 * c-pragma.c (handle_pragma_weak): Make sure aliases
2652 are not declared as external.
2653
d60f1706
BI
26542013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
2655
2656 * array-notation-common.c (length_mismatch_in_expr_p): Moved this
2657 function from c/c-array-notation.c.
2658 (is_cilkplus_reduce_builtin): Likewise.
2659 (find_rank): Likewise.
2660 (extract_array_notation_exprs): Likewise.
2661 (replace_array_notations): Likewise.
2662 (find_inv_trees): Likewise.
2663 (replace_inv_trees): Likewise.
2664 (contains_array_notation_expr): Likewise.
2665 (find_correct_array_notation_type): Likewise.
2666 * c-common.h (struct inv_list): Moved this struct from the file
2667 c/c-array-notation.c and added a new field called additional tcodes.
2668 (length_mismatch_in_expr_p): New prototype.
2669 (is_cilkplus_reduce_builtin): Likewise.
2670 (find_rank): Likewise.
2671 (extract_array_notation_exprs): Likewise.
2672 (replace_array_notation): Likewise.
2673 (find_inv_trees): Likewise.
2674 (replace_inv_trees): Likewise.
2675 (find_correct_array_notation_type): Likewise.
dfeadaa0 2676
36536d79
BI
26772013-05-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
2678
2679 * c-common.c (c_define_builtins): When cilkplus is enabled, the
2680 function array_notation_init_builtins is called.
2681 (c_common_init_ts): Added ARRAY_NOTATION_REF as typed.
2682 * c-common.def (ARRAY_NOTATION_REF): New tree.
2683 * c-common.h (build_array_notation_expr): New function declaration.
2684 (build_array_notation_ref): Likewise.
2685 (extract_sec_implicit_index_arg): New extern declaration.
2686 (is_sec_implicit_index_fn): Likewise.
2687 (ARRAY_NOTATION_CHECK): New define.
2688 (ARRAY_NOTATION_ARRAY): Likewise.
2689 (ARRAY_NOTATION_START): Likewise.
2690 (ARRAY_NOTATION_LENGTH): Likewise.
2691 (ARRAY_NOTATION_STRIDE): Likewise.
2692 * c-pretty-print.c (pp_c_postifix_expression): Added a new case for
2693 ARRAY_NOTATION_REF.
2694 (pp_c_expression): Likewise.
2695 * c.opt (flag_enable_cilkplus): New flag.
2696 * array-notation-common.c: New file.
2697
f7716d57
JJ
26982013-05-14 Jakub Jelinek <jakub@redhat.com>
2699
2700 PR c++/57274
2701 * c-common.c (verify_tree): Don't recurse into SIZEOF_EXPR.
2702
a5e0cd1d
MG
27032013-05-10 Marc Glisse <marc.glisse@inria.fr>
2704
2705 * c-common.c (vector_types_convertible_p): No TYPE_PRECISION for
2706 vectors.
2707
f6bc1c4a
HS
27082013-05-07 Han Shen <shenhan@google.com>
2709
2710 * c-cppbuiltin.c (c_cpp_builtins): Added "__SSP_STRONG__=3".
2711
3f12f6e9
SKS
27122013-04-29 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
2713
2714 * c-common.c (check_user_alignment): Emit error for negative values.
2715
61949153
PC
27162013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
2717
2718 * c-opts.c (set_std_cxx11): Use CLK_CXX1Y and CLK_GNUCXX1Y.
2719
e93e18e9
PC
27202013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
2721
2722 * c-cppbuiltin.c (c_cpp_builtins): Do not define
2723 __GXX_EXPERIMENTAL_CXX1Y__.
2724
44d90fe1
PC
27252013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
2726 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
2727
2728 * c.opt ([Wpointer-arith]): Enabled by -Wpedantic, as documented.
2729 * c-common.c (pointer_int_sum): Change -Wpointer-arith pedwarns
2730 to simply use OPT_Wpointer_arith.
2731 (c_sizeof_or_alignof_type): Likewise.
2732
13f39b2e
PC
27332013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
2734
2735 * c-cppbuiltin.c (c_cpp_builtins): Define __GXX_EXPERIMENTAL_CXX1Y__.
2736
4b84d650
JJ
27372013-04-12 Jakub Jelinek <jakub@redhat.com>
2738
2739 * c-format.c (gcc_diag_char_table, gcc_tdiag_char_table,
2740 gcc_cdiag_char_table, gcc_cxxdiag_char_table): Add %r and %R format
2741 specifiers.
2742
fb037b5d
SB
27432013-04-07 Steven Bosscher <steven@gcc.gnu.org>
2744
2745 * c-pragma.c (add_to_renaming_pragma_list): Fix leading comment.
2746
4e856798
PC
27472013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
2748
2749 * c-common.c (pointer_int_sum): Remove dead code.
2750
4b1baac8
RS
27512013-03-09 Richard Sandiford <rdsandiford@googlemail.com>
2752
2753 PR middle-end/56524
2754 * c-common.c (handle_optimize_attribute): Don't call
2755 save_optabs_if_changed.
2756
0b50e654
JJ
27572013-03-05 Jakub Jelinek <jakub@redhat.com>
2758
2759 PR middle-end/56461
2760 * c-pch.c (pch_init): Free target_validity at the end.
2761
48c41403
JJ
27622013-03-04 Jakub Jelinek <jakub@redhat.com>
2763
2764 * c-pretty-print.c (pp_c_pretty_printer_init): Clear pp->flags.
2765
e664c61c
KS
27662013-02-28 Konstantin Serebryany <konstantin.s.serebryany@gmail.com>
2767 Jakub Jelinek <jakub@redhat.com>
2768
2769 PR sanitizer/56454
2770 * c-common.c (handle_no_sanitize_address_attribute): New function.
2771 (c_common_attribute_table): Add no_sanitize_address attribute.
2772 (handle_no_address_safety_analysis_attribute): Add
2773 no_sanitize_address attribute, not no_address_safety_analysis
2774 attribute.
2775
a475fd3d 27762013-02-18 Aldy Hernandez <aldyh@redhat.com>
135204dd
AH
2777
2778 PR target/52555
2779 * c-common.c (handle_optimize_attribute): Call
2780 save_optabs_if_changed.
2781
f6007d99
JJ
27822013-02-18 Jakub Jelinek <jakub@redhat.com>
2783 Steven Bosscher <steven@gcc.gnu.org>
2784
2785 PR pch/54117
2786 * c-opts.c (c_common_post_options): If debug info is enabled
2787 and non-dwarf*, refuse to load PCH files and when writing PCH
2788 file warn.
2789
cf35e2b1
JJ
27902013-02-05 Jakub Jelinek <jakub@redhat.com>
2791
2792 PR middle-end/56167
2793 * c-common.c (handle_error_attribute): Fix condition.
2794
32887460
JJ
27952013-01-30 Jakub Jelinek <jakub@redhat.com>
2796
2797 PR c++/55742
2798 * c-common.c (handle_target_attribute): Revert 2012-12-26 change.
2799
5af057d8
JM
28002013-01-18 Jason Merrill <jason@redhat.com>
2801
2802 PR target/54908
2803 * c.opt (-fextern-tls-init): New.
2804 * c-opts.c (c_common_post_options): Handle it.
2805
cc83c823
JJ
28062013-01-09 Jakub Jelinek <jakub@redhat.com>
2807
2808 PR c/48418
2809 * c-common.c (c_fully_fold_internal): Warn for LSHIFT_EXPR and
2810 RSHIFT_EXPR, if orig_op1 isn't INTEGER_CST, op1 is INTEGER_CST
2811 and is either negative or bigger or equal to type precision
2812 of the first operand.
2813
a859517f
MP
28142012-12-03 Marek Polacek <polacek@redhat.com>
2815
2816 PR c/55570
2817 * c-common.c (check_user_alignment): Swap order of tests,
2818 check TREE_CODE first.
2819
2d7aa578
ESR
28202012-11-29 Ed Smith-Rowland <3dw4rd@verizon.net>
2821
2822 PR c++/52654
2823 * c-common.h (overflow_type): New enum.
2824 (build_userdef_literal): Add overflow_type argument.
2825 (tree_userdef_literal): Add overflow_type.
2826 (USERDEF_LITERAL_OVERFLOW): New access macro.
2827 * c-common.c (build_userdef_literal): Add overflow_type
2828 argument.
2829 * c-lex.c (c_lex_with_flags): Add overflow_type to
2830 build_userdef_literal calls.
2831 (interpret_integer, interpret_float): Add overflow_type argument.
2832
cc3c4f62
RB
28332012-11-28 Richard Biener <rguenther@suse.de>
2834
2835 PR c/35634
2836 * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
2837 here and use a type with proper overflow behavior for types that would
2838 need to be promoted for the arithmetic.
2839
77bc5132
JJ
28402012-11-23 Jakub Jelinek <jakub@redhat.com>
2841
2842 PR sanitizer/55435
2843 * c-common.c (handle_no_address_safety_analysis_attribute): New
2844 function.
2845 (c_common_attribute_table): Add no_address_safety_analysis.
2846
5dc99c46
SB
28472012-11-16 Simon Baldwin <simonb@google.com>
2848
2849 * c.opt: Add f[no-]canonical-system-headers.
2850 * c-opts.c (c_common_handle_option): Handle
2851 OPT_fcanonical_system_headers.
2852
a4a0016d
ESR
28532012-11-09 Ed Smith-Rowland <3dw4rd@verizon.net>
2854
2855 PR c++/54413
2856 * c-opts.c (c_common_handle_option): Set new flags.
2857 * c.opt: Describe new flags.
2858
7dbb85a7
JM
28592012-11-09 Jason Merrill <jason@redhat.com>
2860
2861 * c.opt (Wabi-tag): New.
2862
ad7bac31
AK
28632012-11-09 Andi Kleen <ak@linux.intel.com>
2864
2865 PR 55139
2866 * c-common.c (get_atomic_generic_size): Mask with
2867 MEMMODEL_MASK
2868
7332899a
MLI
28692012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
2870
2871 PR c/53063
2872 * c.opt (Wformat): Make it Alias Wformat=1.
2873 (Wformat-contains-nul,Wformat-extra-args,Wformat-nonliteral,
2874 Wformat-security,Wformat-y2k,Wformat-zero-length): Use
2875 LangEnabledBy.
2876 (Wformat=): RejectNegative. Use LangEnabledBy.
2877 (Wnonnull): Use LangEnabledBy.
2878 * c-opts.c (c_common_handle_option): Do not handle Wformat here.
2879 * c-format.c (set_Wformat): Delete.
2880 (decode_format_attr): Replace OPT_Wformat with OPT_Wformat_.
2881 (maybe_read_dollar_number): Likewise.
2882 (avoid_dollar_number): Likewise.
2883 (finish_dollar_format_checking): Likewise.
2884 (check_format_info): Likewise.
2885 (check_format_info_main): Likewise.
2886 (check_format_types): Likewise.
2887 (format_type_warning): Likewise.
2888 * c-common.c (int): Likewise.
2889 (check_function_sentinel): Likewise.
2890 * c-common.h (warn_format,set_Wformat): Do not declare here.
2891
34a180a6
MLI
28922012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
2893
2894 PR c/53063
2895 * c.opt(Warray-bounds,Wdelete-non-virtual-dtor,Wenum-compare,
2896 Wmain,Woverlength-strings, Wunknown-pragmas,Wunused-macros):
2897 Use LangEnabledBy.
2898 (Wswitch,Wswitch-default,Wswitch-enum): Likewise. Move here from
2899 common.opt.
2900 (Wvariadic-macros): Init(1).
2901 * c-opts.c (c_common_handle_option): Do not handle them
2902 explicitly.
2903 (c_common_post_options): Likewise.
2904 (sanitize_cpp_opts): warn_unused_macros is now
2905 cpp_warn_unused_macros.
2906 (push_command_line_include): Likewise.
2907 * c-common.c (warn_unknown_pragmas): Do not define.
2908 * c-common.h (warn_unknown_pragmas): Do not declare.
2909
3f46d6a5
MLI
29102012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
2911
2912 PR c/51294
2913 * c-common.c (conversion_warning): Handle conditional expressions.
2914
880661a4
JW
29152012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
2916
2917 PR c++/54930
2918 * c.opt (Wreturn_local_addr): Define new option.
2919
4514a96b
JM
29202012-10-25 Jason Merrill <jason@redhat.com>
2921
f14edc1a
JM
2922 * c.opt (Wvirtual-move-assign): New.
2923
4514a96b
JM
2924 * c.opt (Winherited-variadic-ctor): New.
2925
93100c6b
MG
29262012-10-25 Marc Glisse <marc.glisse@inria.fr>
2927
2928 PR c++/54427
2929 * c-common.c (scalar_to_vector): Handle VEC_COND_EXPR.
2930
1efcb8c6
JM
29312012-10-23 Joseph Myers <joseph@codesourcery.com>
2932
2933 * c-common.h (pch_cpp_save_state): Declare.
2934 * c-target.def (c_preinclude): New hook.
2935 * c-opts.c (done_preinclude): New.
2936 (push_command_line_include): Handle default preincluded header.
2937 (cb_file_change): Call pch_cpp_save_state when calling
2938 push_command_line_include.
2939 * c-pch.c (pch_ready_to_save_cpp_state, pch_cpp_state_saved)
2940 (pch_cpp_save_state): New.
2941 (pch_init): Call pch_cpp_save_state conditionally, instead of
2942 calling cpp_save_state.
2943
4a0ae68e
MLI
29442012-10-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
2945
2946 PR c/53063
2947 PR c/40989
2948 * c.opt (Waddress,Wchar-subscripts,Wsign-conversion,Wimplicit,
2949 Wimplicit-function-declaration,Wimplicit-int,Wsizeof-pointer-memaccess,
2950 Wnarrowing,Wparentheses,Wpointer-sign,Wreturn-type,Wsequence-point,
2951 Wsign-compare,Wuninitialized,Wmaybe-uninitialized,Wunused,
2952 Wvolatile-register-var): Add LangEnabledBy or EnabledBy.
2953 * c-opts.c (c_common_handle_option): Remove explicit handling from
2954 here.
2955 (c_common_post_options): Likewise.
2956
67e4210b
EB
29572012-10-18 Eric Botcazou <ebotcazou@adacore.com>
2958
2959 * c-ada-spec.c (LOCATION_COL): Delete.
2960 (compare_location): New function.
2961 (compare_node): Use it.
2962 (compare_comment): Likewise.
2963
65d4f2cd
MLI
29642012-10-16 Manuel López-Ibáñez <manu@gcc.gnu.org>
2965
2966 PR c/53063
2967 PR c/40989
2968 * c.opt (Wstrict-aliasing=,Wstrict-overflow=): Use LangEnabledBy.
2969 * c-opts.c (c_common_handle_option): Do not set them here. Add
2970 comment.
2971 (c_common_post_options): Likewise.
2972
909881cb
EB
29732012-10-16 Eric Botcazou <ebotcazou@adacore.com>
2974
2975 * c-ada-spec.c (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Define.
2976 (dump_generic_ada_node) <INTEGER_CST>: Deal with sizetype specially.
2977 Remove POINTER_TYPE handling, add large unsigned handling and use
2978 ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX for big numbers.
2979
3a785c97
JJ
29802012-10-12 Jakub Jelinek <jakub@redhat.com>
2981
2982 PR c/54381
2983 * c-common.h (sizeof_pointer_memaccess_warning): Adjust prototype.
2984 * c-common.c (sizeof_pointer_memaccess_warning): Take array of 3
2985 locs and array of 3 trees instead of just single loc and single
2986 sizeof_arg tree. Handle __builtin___*_chk builtins too, and
2987 also stpncpy, bcopy, bcmp, bzero, snprintf and vsnprintf builtins.
2988 For *cmp* builtins that take two sources strings report warnings
2989 about first and second source, not about destination and source.
2990
5e54f81d
MG
29912012-10-12 Marc Glisse <marc.glisse@inria.fr>
2992
2993 PR c++/53055
2994 * c-common.h (enum ref_operator) [RO_ARROW_STAR]: New.
2995
f5b02f1e
EB
29962012-10-11 Eric Botcazou <ebotcazou@adacore.com>
2997
2998 * c-ada-spec.c (dump_ada_template): Bail out for template declarations
2999 declaring something coming from another file.
3000
b46dbc6c
AC
30012012-10-10 Arnaud Charlet <charlet@adacore.com>
3002
f5b02f1e 3003 PR ada/54845
b46dbc6c
AC
3004 * c-ada-spec.c (print_ada_struct_decl): Increase buf size.
3005
5d9de0d0
PC
30062012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
3007
3008 PR c++/54194
3009 * c-common.c (warn_about_parentheses): Add location_t parameter;
3010 use EXPR_LOC_OR_LOC.
3011 * c-common.h: Update declaration.
3012
a212e43f
MG
30132012-10-09 Marc Glisse <marc.glisse@inria.fr>
3014
3015 PR c++/54427
3016 * c-common.c (scalar_to_vector): Moved from c-typeck.c. Support
3017 more operations. Make error messages optional.
3018 * c-common.h (enum stv_conv): Moved from c-typeck.c.
3019 (scalar_to_vector): Declare.
3020
b1db7f91
JM
30212012-10-08 Jason Merrill <jason@redhat.com>
3022
3023 * c-common.c (c_common_reswords): Add thread_local.
3024
e28d52cf
DS
30252012-10-08 Dodji Seketeli <dodji@redhat.com>
3026
3027 PR c++/53528 C++11 attribute support
3028 * c-common.h (bitfield_p, cxx_fundamental_alignment_p): Declare
3029 new functions.
3030 * c-common.c (check_cxx_fundamental_alignment_constraints): New
3031 static function.
3032 (handle_aligned_attribute): In choose strictest alignment
3033 among many. Use new check_cxx_fundamental_alignment_constraints.
3034 (handle_transparent_union_attribute): In c++11 attribute syntax,
3035 don't look through typedefs.
3036
3b78de56
AC
30372012-10-04 Arnaud Charlet <charlet@adacore.com>
3038
3039 * c-ada-spec.c (print_ada_declaration): Remove handling of TDF_RAW.
3040 * c.opt (-fdump-ada-spec, -fdump-ada-spec-slim): Move switch definition
3041 out of dumpfile.h.
3042
6040bb5f
DC
30432012-09-25 Dehao Chen <dehao@google.com>
3044
3045 PR middle-end/54645
3b78de56 3046 * c-pch.c (c_common_read_pch): Rebuild the location_adhoc_data
6040bb5f
DC
3047 map when read in the pch.
3048
0b07a57e
AC
30492012-09-18 Arnaud Charlet <charlet@adacore.com>
3050
3051 * c-ada-spec.c: Style fixes.
3052
da5182be
TQ
30532012-09-18 Thomas Quinot <quinot@adacore.com>
3054
3055 * c.opt (-fada-spec-parent): Define new command line switch.
3056 * c-ada-spec.c (get_ada_package): When -fada-spec-parent
3057 is specified, generate binding spec as a child of the specified unit.
3058
0ccb505d
PC
30592012-09-13 Paolo Carlini <paolo.carlini@oracle.com>
3060 Manuel López-Ibáñez <manu@gcc.gnu.org>
3061
3062 PR c++/53210
3063 * c.opt ([Winit-self]): Enabled by -Wall in C++.
3064
c583af79
AC
30652012-08-23 Arnaud Charlet <charlet@adacore.com>
3066
3067 * c-ada-spec.c (dump_generic_ada_node): Fix handling of name_only
3068 for pointers, and add missing Convention C pragma.
3069 (print_ada_struct_decl): Add missing aliased keyword.
3070 (dump_ads): Add pragma Ada_2005 and Style_Checks (Off).
3071
1a4049e7
JJ
30722012-08-17 Jakub Jelinek <jakub@redhat.com>
3073
3074 * c-common.c (sizeof_pointer_memaccess_warning): New function.
3075 * c.opt (-Wsizeof-pointer-memaccess): Add new option.
3076 * c-opts.c (c_common_handle_option): Enable it for -Wall.
3077 * c-common.h (sizeof_pointer_memaccess_warning): Add prototype.
3078 * c-common.def (SIZEOF_EXPR): Moved here from cp-tree.def.
3079
70b5e7dc
RG
30802012-08-10 Richard Guenther <rguenther@suse.de>
3081
3082 * c-pretty-print.c (pp_c_expression): Handle anonymous SSA names.
3083
f8923f7e
SB
30842012-08-07 Steven Bosscher <steven@gcc.gnu.org>
3085
3086 * c-pretty-print.c (pp_c_function_definition): Use pp_newline_and_flush
3087 instead of separate pp_newline and pp_flush.
3088 (print_c_tree): Likewise.
3089
e45abe1f
RH
30902012-07-26 Richard Henderson <rth@redhat.com>
3091
3092 * c-common.c (handle_hot_attribute): Allow labels.
3093 (handle_cold_attribute): Likewise.
3094
332f1d24
JJ
30952012-07-20 Jakub Jelinek <jakub@redhat.com>
3096
3097 PR c++/28656
3098 * c-common.c (check_function_nonnull): Handle multiple nonnull
3099 attributes properly.
3100
7ee2468b
SB
31012012-07-16 Steven Bosscher <steven@gcc.gnu.org>
3102
3103 * c-gimplify.c: Include dumpfile.h instead of tree-dump.h.
3104 * c-ada-spec.c: Likewise.
3105 * c-dump.c (dump_stmt): Move to cp/dump.c, the only user.
3106
ee7b28eb
SB
31072012-07-14 Steven Bosscher <steven@gcc.gnu.org>
3108
3109 * c-pch.c (CHECK_NO_ASM_OUT_DURING_PCH): Do not define.
3110 Remove code conditional on it.
3111
6bdf3519
SB
31122012-07-11 Steven Bosscher <steven@gcc.gnu.org>
3113
3114 * c-gimplify.c: Do not include basic-block.h.
3115 * c-common.c: Do not include linfuncs.h.
3116
532aafad
SB
31172012-07-08 Steven Bosscher <steven@gcc.gnu.org>
3118
3119 * c-common.h: Include tree.h.
3120
8d0d1915
JM
31212012-07-02 Jason Merrill <jason@redhat.com>
3122
3123 PR c++/53524
3124 * c-common.c (get_priority): Call default_conversion.
3125
fbc873ad
UB
31262012-07-01 Uros Bizjak <ubizjak@gmail.com>
3127
3128 * c-pch.c (c_common_write_pch): Remove unused variables.
3129
d4a10d0a
SB
31302012-06-29 Steven Bosscher <steven@gcc.gnu.org>
3131
3132 * cppspec.c: Moved from gcc/ to here.
3133
6f3a2e23
KT
31342012-06-27 Kai Tietz <ktietz@redhat.com>
3135
3136 PR preprocessor/37215
3137 * c-ppoutput.c (preprocess_file): Check for nonempty buffer.
3138
8ca92d04
SB
31392012-06-21 Steven Bosscher <steven@gcc.gnu.org>
3140
3141 * c-common.h (c_common_print_pch_checksum): Remove.
3142 * c-pch.c: Do not include output.h.
3143 (CHECK_NO_ASM_OUT_DURING_PCH): Define and add FIXME.
3144 (asm_out_file): Define iff CHECK_NO_ASM_OUT_DURING_PCH isdefined.
3145 (asm_file_startpos): Define iff CHECK_NO_ASM_OUT_DURING_PCH is defined.
3146 (struct c_pch_header): Remove.
3147 (get_ident): Update gpch version.
3148 (pch_init): Do not print executable_checksum to asm_out_file.
3149 Do not fail if there is no asm_out_file to read back from. Set
3150 asm_file_startpos only if CHECK_NO_ASM_OUT_DURING_PCH is defined.
3151 (c_common_write_pch): Verify that nothing was written to asm_out_file
3152 since pch_init was called. Do not write a c_pch_header, and do not
3153 copy from asm_out_file to the PCH.
3154 (c_common_read_pch): Do not read a c_pch_header, and do not restore
3155 the content of asm_out_file from the PCH.
3156 (c_common_print_pch_checksum): Remove.
3157 * c-opts.c (c_common_init): Print out executable_checksum directly.
3158
70f42967
SB
31592012-06-19 Steven Bosscher <steven@gcc.gnu.org>
3160
3161 * c-target.def (objc_declare_unresolved_class_reference,
3162 objc_declare_class_definition): Add new hooks.
3163
a8781821
SB
31642012-06-19 Steven Bosscher <steven@gcc.gnu.org>
3165
3166 * c-lex.c: Do not include output.h.
3167 (cb_ident): Try to put out .ident with targetm.asm_out.output_ident.
3168 Remove uses of ASM_OUTPUT_IDENT.
3169
9e1a8dd1
RR
31702012-06-15 Marc Glisse <marc.glisse@inria.fr>
3171
3172 PR c++/51033
3173 * c-common.h (c_build_vec_perm_expr): Move decl here.
3174 * c-common.c (c_build_vec_perm_expr): Move definition
3175 here.
3176
6f07a821
SB
31772012-06-06 Steven Bosscher <steven@gcc.gnu.org>
3178
3179 * c.opt (fconserve-space): Turn into a no-op.
3180
9faeb493 31812012-06-04 Sterling Augustine <saugustine@google.com>
c265f413
SA
3182
3183 * c-pretty-print.h (pp_c_flag_gnu_v3): New enumerator.
3184 * c-pretty-print.c (pp_c_specifier_qualifier_list): Check it at
3185 both the start and end of the function.
3186
a4b7d13c
SB
31872012-06-04 Steven Bosscher <steven@gcc.gnu.org>
3188
3189 * c-common.c: Do not include output.h.
3190 * c-pragma.c: Likewise.
3191
c265f413
SA
31922012-06-04 Steven Bosscher <steven@gcc.gnu.org>
3193
3194 * error.c (dump_decl): Check pp_c_flag_gnu_v3.
3195 (decl_as_dwarf_string, lang_decl_dwarf_name): New functions.
3196 (lang_decl_name): Handle namespace decls.
3197
be7a421e
SB
31982012-05-31 Steven Bosscher <steven@gcc.gnu.org>
3199
3200 * c-ada-spec.c: Do not include output.h.
3201 * c-semantics.c: Likewise.
3202
65de6659
JM
32032012-05-29 Joseph Myers <joseph@codesourcery.com>
3204
3205 * c-common.c: Fix typo.
3206
ca5f4331
MM
32072012-05-29 Michael Matz <matz@suse.de>
3208
3209 * c-common.h (c_expand_decl): Remove prototype.
3210
4f7f7aca
MLI
32112012-05-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
3212
3213 * c.opt (Wmissing-braces): Use LangEnabledBy(C ObjC,Wall).
3214 * c-opts.c (c_common_handle_option): Remove code handling
3215 warn_missing_braces.
3216
4a792f9b
PC
32172012-05-28 Paolo Carlini <paolo.carlini@oracle.com>
3218
3219 PR c++/25137
3220 * c-opts.c (c_common_handle_option): For C++ -Wall doesn't enable
3221 -Wmissing_braces.
3222
650dc14a
DS
32232012-05-22 Dodji Seketeli <dodji@redhat.com>
3224
3225 PR c++/53322
3226 * c.opt (Wunused-local-typedefs): Use EnabledBy(Wunused).
3227
9b095bf1
MLI
32282012-05-17 Manuel López-Ibáñez <manu@gcc.gnu.org>
3229
3230 * c.opt (--pedantic-errors,-pedantic-errors): Do not handle here.
3231 * c-opts.c (c_common_handle_option): Do not handle explicitly
3232 Wreturn-type, Wwrite-strings, warn_ecpp, and -pedantic-errors.
3233
0b2c4be5
DS
32342012-05-16 Dodji Seketeli <dodji@redhat.com>
3235
3236 PR preprocessor/7263
3237 * c-lex.c (c_lex_with_flags): Pass a virtual location to the call
3238 to cpp_classify_number. For diagnostics, use the precise location
3239 instead of the global input_location.
3240
a1bde5af
PC
32412012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
3242
d02924ef 3243 PR c++/11856
a1bde5af
PC
3244 * c-common.c (shorten_compare): Check c_inhibit_evaluation_warnings.
3245
d1ede5f4
BS
32462012-05-14 Bernd Schmidt <bernds@codesourcery.com>
3247
a1bde5af 3248 * c-common.c (DEF_ATTR_STRING): Define and undefine as necessary.
d1ede5f4 3249
f2bc201f
MLI
32502012-05-14 Manuel López-Ibáñez <manu@gcc.gnu.org>
3251
3252 PR 53063
3253 * c.opt (Wc++0X-compat,Wdelete-non-virtual-dtor,Wjump-misses-init,
3254 Wreorder): Use LangEnabledBy.
3255 * c-opts.c (c_common_handle_option): Do not enable them
3256 explicitly. Call lang-specific generated functions.
3257 (c_common_post_options): Do not set them here.
3258
95744782
MLI
32592012-05-13 Manuel López-Ibáñez <manu@gcc.gnu.org>
3260
3261 * c.opt (Wclobbered,Wempty-body,Wignored-qualifiers,
3262 Wmissing-field-initializers,Wmissing-parameter-type,
3263 Wold-style-declaration,Woverride-init): Use EnabledBy.
3264 * c-opts.c (c_common_post_options): Do not set here explicitly.
3265
7d5a5747
MLI
32662012-05-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
3267
3268 PR 53063
3269 * c-opts.c (c_common_handle_option): Use handle_generated_option
3270 to enable sub-options.
3271
5a3c9cf2
PC
32722012-05-10 Paolo Carlini <paolo.carlini@oracle.com>
3273
3274 PR c++/53158
3275 * c-common.c (warnings_for_convert_and_check): Use warning_at.
3276
3ac8781c
RG
32772012-05-10 Richard Guenther <rguenther@suse.de>
3278
3279 * c-common.c (c_sizeof_or_alignof_type): Remove assert and
3280 adjust commentary about TYPE_IS_SIZETYPE types.
3281
1e537948
MLI
32822012-05-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
3283
3284 PR c++/53261
3285 * c-common.c (warn_logical_operator): Check that argument of
3286 integer_zerop is not NULL.
3287
f2c4a785
MLI
32882012-05-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
3289
3290 PR c/43772
3291 * c-common.c (warn_logical_operator): Do not warn if either side
3292 is already true or false.
3293
50f305ca
MLI
32942012-05-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
3295
3296 PR c/51712
3297 * c-common.c (expr_original_type): New.
3298 (shorten_compare): Do not warn for enumeration types.
3299
0c3641b0
MLI
33002012-05-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
3301
3302 * c.opt (fpermissive): Add Var(flag_permissive).
3303
7edaa4d2
MG
33042012-04-30 Marc Glisse <marc.glisse@inria.fr>
3305
3306 PR c++/51033
3307 * c-common.c (convert_vector_to_pointer_for_subscript): New function.
3308 * c-common.h (convert_vector_to_pointer_for_subscript): Declare it.
3309
b9c8da34
DS
33102012-04-30 Dodji Seketeli <dodji@redhat.com>
3311
3312 Add -Wvarargs option
3313 * c.opt (Wvarargs): Define new option.
3314
e6c69da0
MLI
33152012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
3316
3317 * c-common.c (check_function_arguments): Replace
3318 Wmissing-format-attribute with Wsuggest-attribute=format.
3319
90137d8f
MLI
33202012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
3321
3322 * c.opt (Wsuggest-attribute=format): New. Alias of
3323 Wmissing-format-attribute.
3324 * c-format.c (decode_format_type): Replace
3325 Wmissing-format-attribute with Wsuggest-attribute=format.
3326 (check_function_format): Likewise.
3327
9faeb493 33282012-04-27 Ollie Wild <aaw@google.com>
7f5f5f98
OW
3329
3330 * c-common.c: Add CPP_W_LITERAL_SUFFIX mapping.
3331 * c-opts.c (c_common_handle_option): Handle OPT_Wliteral_suffix.
3332 * c.opt: Add Wliteral-suffix.
3333
c1771a20
MLI
33342012-04-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
3335
3336 PR c/44774
3337 * c.opt (Wpedantic): New.
3338 (pedantic): Alias Wpedantic.
3339 * c-opts.c (c_common_handle_option): Replace -pedantic with -Wpedantic.
3340 (c_common_post_options): Likewise.
3341 (sanitize_cpp_opts): Likewise.
3342 * c-lex.c (interpret_float): Likewise.
3343 * c-format.c (check_format_types): Likewise.
3344 * c-common.c (pointer_int_sum): Likewise.
3345 (c_sizeof_or_alignof_type): Likewise.
3346 (c_add_case_label): Likewise.
3347 (c_do_switch_warnings): Likewise.
3348 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
3349
04b391c1
JM
33502012-04-15 Jason Merrill <jason@redhat.com>
3351
3352 PR c++/52818
3353 * c-format.c (CPLUSPLUS_STD_VER): C++11 inherits from C99.
3354 (C_STD_NAME): Distinguish between C++98 and C++11.
3355
ac868f29
EB
33562012-04-11 Eric Botcazou <ebotcazou@adacore.com>
3357
3358 PR target/52624
3359 * c-common.h (uint16_type_node): Rename into...
3360 (c_uint16_type_node): ...this.
3361 * c-common.c (c_common_nodes_and_builtins): Adjust for above renaming.
3362 * c-cppbuiltin.c (builtin_define_stdint_macros): Likewise.
3363
fd4116f4
MLI
33642012-04-10 Manuel López-Ibáñez <manu@gcc.gnu.org>
3365
3366 * c-common.c (warn_if_unused_value): Move definition to here.
3367 * c-common.h (warn_if_unused_value): Move declaration to here.
3368
573ac65e
WB
33692012-03-23 William Bader <williambader@hotmail.com>
3370
3371 * c-lex.c (c_lex_with_flags): Avoid declarations after stmts.
3372
552b8185
JM
33732012-03-20 Jason Merrill <jason@redhat.com>
3374
3375 * c-common.h (enum cxx_dialect): Add cxx1y.
3376 * c-common.c (c_common_nodes_and_builtins): Use >= for cxx_dialect
3377 test.
3378 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
3379 * c-opts.c (c_common_post_options): Likewise.
3380 (set_std_cxx1y): New.
3381 (c_common_handle_option): Call it.
3382 * c.opt (-std=c++1y, -std=gnu++1y): New flags.
3383
04398fa8
PC
33842012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
3385
3386 PR c++/14710
3387 * c.opt ([Wuseless-cast]): Add.
3388
d2a12ae7
RG
33892012-03-16 Richard Guenther <rguenther@suse.de>
3390
3391 * c-pretty-print.c (pp_c_initializer_list): Adjust.
3392
a12bf402
MLI
33932012-03-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
3394
3395 PR c++/44783
3396 * c.opt (ftemplate-backtrace-limit) Add.
3397
5c30094f
RO
33982012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3399
3400 * c-cppbuiltin.c (c_cpp_builtins): Remove #pragma extern_prefix
3401 handling.
3402 * c-pragma.c (handle_pragma_extern_prefix): Remove.
3403 (init_pragma): Don't register extern_prefix.
3404
21fa2faf
RG
34052012-03-12 Richard Guenther <rguenther@suse.de>
3406
3407 * c-common.c (c_common_get_narrower): Use c_common_type_for_size.
3408 (builtin_type_for_size): Likewise.
3409
e3793c6f
JJ
34102012-02-13 Jakub Jelinek <jakub@redhat.com>
3411
3412 PR c++/52215
3413 * c-common.c (sync_resolve_params): Don't decide whether to convert
3414 or not based on TYPE_SIZE comparison, convert whenever arg_type
3415 is unsigned INTEGER_TYPE.
3416
93286335
PC
34172012-02-06 Paolo Carlini <paolo.carlini@oracle.com>
3418
3419 PR c/52118
3420 * c.opt ([Wunused-local-typedefs]): Fix description.
3421
7a421706
MS
34222012-01-24 Mike Stump <mikestump@comcast.net>
3423
3424 * c-common.c (c_common_type_for_mode): Match signed/unsigned types
3425 exactly.
3426
ba9b1f11
RG
34272012-01-18 Richard Guenther <rguenther@suse.de>
3428
3429 * c-opts.c (c_common_post_options): Reset LTO flags if
3430 we are about to generate a PCH.
3431
465406be
PC
34322012-01-17 Paolo Carlini <paolo.carlini@oracle.com>
3433
3434 PR c++/51777
3435 * c-pretty-print.c (pp_c_integer_constant): For unsigned constants
3436 use pp_unsigned_wide_integer.
3437
aee15221
RG
34382012-01-10 Richard Guenther <rguenther@suse.de>
3439
3440 PR middle-end/51806
3441 * c-opts.c (c_common_handle_option): Move -Werror handling
3442 to language independent code.
3443
5720c0dc
RG
34442012-01-05 Richard Guenther <rguenther@suse.de>
3445
3446 PR middle-end/51764
3447 * c.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move here
3448 from common.opt.
3449
73ac190a
PC
34502011-12-30 Paolo Carlini <paolo.carlini@oracle.com>
3451
3452 PR c++/51316
3453 * c-common.c (c_sizeof_or_alignof_type): In C++ allow for alignof
3454 of array types with an unknown bound.
3455
48b0b196
JM
34562011-12-20 Joseph Myers <joseph@codesourcery.com>
3457
3458 * c-common.c (flag_isoc99): Update comment to refer to C11.
3459 (flag_isoc1x): Change to flag_isoc11.
3460 * c-common.h (flag_isoc99): Update comment to refer to C11.
3461 (flag_isoc1x): Change to flag_isoc11.
3462 * c-cppbuiltin.c (cpp_atomic_builtins): Change comment to refer to
3463 C11.
3464 * c-opts.c (set_std_c1x): Change to set_std_c11.
3465 (c_common_handle_option): Handle OPT_std_c11 and OPT_std_gnu11.
3466 Call set_std_c11.
3467 (set_std_c89, set_std_c99, set_std_c11): Use flag_isoc11.
3468 (set_std_c1): Use CLK_STDC11 and CLK_GNUC11.
3469 * c.opt (std=c1x): Change to std=c11. Document as non-draft
3470 standard.
3471 (std=c1x, std=iso9899:2011): Add as aliases of std=c11.
3472 (std=gnu1x): Change to std=gnu11. Refer to non-draft standard.
3473 (std=gnu1x): Make alias of std=gnu11.
3474
d58d6eb5
JM
34752011-12-19 Jason Merrill <jason@redhat.com>
3476
3477 PR c++/51228
3478 * c-common.c (handle_transparent_union_attribute): Check the first
3479 field if the type is complete.
3480
b3908fcc
JW
34812011-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
3482
3483 PR libstdc++/51365
3484 * c-common.c (RID_IS_FINAL): Add.
3485 * c-common.h (RID_IS_FINAL): Add.
3486
fea3ca91
IS
34872011-11-30 Iain Sandoe <iains@gcc.gnu.org>
3488
3489 * c.opt (fgnu-runtime): Provide full description.
3490 (fnext-runtime): Likewise.
3491 * c-opts.c (OPT_fgnu_runtime, OPT_fnext_runtime) Remove.
3492
62bad7cd
AM
34932011-11-28 Andrew MacLeod <amacleod@redhat.com>
3494
3495 * c-cpp-builtin.c (cpp_atomic_builtins):New. Emit all atomic
3496 predefines in one place. Add LOCK_FREE predefines.
3497 (c_cpp_builtins): Move Legacy HAVE_SYNC predefines to
3498 new func.
3499
c466c4ff
AM
35002011-11-24 Andrew MacLeod <amacleod@redhat.com>
3501
3502 PR c/51256
9faeb493 3503 * c-common.c (get_atomic_generic_size): Check for various error
c466c4ff 3504 conditions
9faeb493
UB
3505 (resolve_overloaded_atomic_exchange,
3506 resolve_overloaded_atomic_compare_exchange,
c466c4ff
AM
3507 resolve_overloaded_atomic_load, resolve_overloaded_atomic_store): Return
3508 error_mark_node for error conditions.
9faeb493 3509
a5952633
RG
35102011-11-08 Richard Guenther <rguenther@suse.de>
3511
3512 PR middle-end/51010
3513 c-family/
3514
0a35513e
AH
35152011-11-07 Richard Henderson <rth@redhat.com>
3516 Aldy Hernandez <aldyh@redhat.com>
3517 Torvald Riegel <triegel@redhat.com>
3518
3519 Merged from transactional-memory.
3520
3521 * c-common.c (handle_tm_wrap_attribute,
3522 handle_tm_attribute, ignore_attribute, parse_tm_stmt_attr): New.
3523 (struct c_common_reswords): Added __transaction* keywords.
3524 (struct c_common_attribute_table): Added transaction* and tm_regparm
3525 attributes.
3526 * c-common.h: Added RID_TRANSACTION*. Added TM_ATTR* and TM_STMT*
3527 masks.
3528 (parse_tm_stmt_attr, tm_attr_to_mask, tm_mask_to_attr,
3529 find_tm_attribute): Declare.
3530
6d87092d
JM
35312011-11-07 Jason Merrill <jason@redhat.com>
3532
3533 PR c++/35688
3534 * c-common.c, c-common.h: Revert yesterday's changes.
3535
8e7860a1
JM
35362011-11-06 Jason Merrill <jason@redhat.com>
3537
3538 PR c++/35688
3539 * c-common.c (decl_has_visibility_attr): Split out from...
3540 (c_determine_visibility): ...here.
3541 * c-common.h: Declare it.
3542
d19fa6b5
JM
35432011-11-06 Joseph Myers <joseph@codesourcery.com>
3544
3545 * c-common.c (c_common_reswords): Add _Alignas and _Alignof.
3546 (c_sizeof_or_alignof_type): Diagnose alignof applied to a function
3547 type.
3548 (check_user_alignment): New. Split out of
3549 handle_aligned_attribute. Disallow integer constants with
3550 noninteger types. Conditionally allow zero.
3551 (handle_aligned_attribute): Use check_user_alignment.
3552 * c-common.h (RID_ALIGNAS, check_user_alignment): New.
3553
86951993
AM
35542011-11-06 Andrew MacLeod <amacleod@redhat.com>
3555 Richard Henderson <rth@redhat.com>
3556
3557 Merged from cxx-mem-model.
3558
3559 * c-cppbuiltin.c (c_cpp_builtins): Test both atomic and sync patterns.
9faeb493 3560 * c-common.c (sync_resolve_params, sync_resolve_return): Only tweak
86951993
AM
3561 parameters that are the same type size.
3562 (get_atomic_generic_size): New. Find size of generic
3563 atomic function parameters and do typechecking.
3564 (add_atomic_size_parameter): New. Insert size into parameter list.
3565 (resolve_overloaded_atomic_exchange): Restructure __atomic_exchange to
3566 either __atomic_exchange_n or external library call.
9faeb493 3567 (resolve_overloaded_atomic_compare_exchange): Restructure
86951993 3568 __atomic_compare_exchange to either _n variant or external library call.
9faeb493 3569 (resolve_overloaded_atomic_load): Restructure __atomic_load to either
86951993
AM
3570 __atomic_load_n or an external library call.
3571 (resolve_overloaded_atomic_store): Restructure __atomic_store to either
3572 __atomic_store_n or an external library call.
3573 (resolve_overloaded_builtin): Handle new __atomic builtins.
3574
cf9e9959
EB
35752011-11-04 Eric Botcazou <ebotcazou@adacore.com>
3576
3577 PR c++/50608
3578 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1.
3579 (fold_offsetof_1): Make global. Remove STOP_REF argument and adjust.
3580 <INDIRECT_REF>: Return the argument.
3581 <ARRAY_REF>: Remove special code for negative offset.
3582 Call fold_build_pointer_plus instead of size_binop.
3583 (fold_offsetof): Remove STOP_REF argument and adjust.
3584 * c-common.h (fold_offsetof_1): Declare.
3585 (fold_offsetof): Remove STOP_REF argument.
3586
25339f10
JM
35872011-11-02 Paolo Carlini <paolo.carlini@oracle.com>
3588
3589 PR c++/50810
3590 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
3591 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
3592 Wnarrowing for C++0x and C++98.
3593 * c.opt ([Wnarrowing]): Update.
3594
89401152
PC
35952011-11-01 Paolo Carlini <paolo.carlini@oracle.com>
3596
3597 PR c++/44277
3598 * c.opt: Add Wzero-as-null-pointer-constant.
3599
97e3ad20
JM
36002011-10-31 Jason Merrill <jason@redhat.com>
3601
15694fdd
JM
3602 * c.opt (-fdeduce-init-list): Off by default.
3603
97e3ad20
JM
3604 PR c++/50920
3605 * c-common.h (cxx_dialect): Add cxx11 and cxx03.
3606 * c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03,
3607 and -Wc++11-compat.
3608 * c-opts.c (set_std_cxx11): Rename from set_std_cxx0x.
3609
fb9120e3
RAV
36102011-10-27 Roberto Agostino Vitillo <ravitillo@lbl.gov>
3611
3612 PR c++/30066
3613 * c.opt (fvisibility-inlines-hidden): Description change.
3614
3ce4f9e4
ESR
36152011-10-26 Ed Smith-Rowland <3dw4rd@verizon.net>
3616
3617 Implement C++11 user-defined literals.
3618 * c-common.c (build_userdef_literal): New.
3619 * c-common.def: New tree code.
3620 * c-common.h (tree_userdef_literal): New tree struct and accessors.
3621 * c-lex.c (interpret_float): Add suffix parm.
3622 (c_lex_with_flags): Build literal tokens.
3623
5f53c243
PC
36242011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
3625
3626 PR c++/50841
3627 Revert:
3628 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
3629
3630 PR c++/50810
3631 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
3632 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
3633 Wnarrowing for C++0x and C++98.
3634 * c.opt ([Wnarrowing]): Update.
3635
263734e1
PC
36362011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
3637
3638 PR c++/50810
3639 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
3640 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
3641 Wnarrowing for C++0x and C++98.
3642 * c.opt ([Wnarrowing]): Update.
3643
d2e312d7
PC
36442011-10-21 Paolo Carlini <paolo.carlini@oracle.com>
3645
3646 PR c++/45385
3647 * c-common.c (conversion_warning): Remove code looking for
3648 artificial operands.
3649
d17687f6
DS
36502011-10-18 Dodji Seketeli <dodji@redhat.com>
3651
3652 PR bootstrap/50760
3653 * c-lex.c (fe_file_change): Use LINEMAP_SYSP when
9faeb493 3654 !NO_IMPLICIT_EXTERN_C.
d17687f6 3655
fc8396e9
PC
36562011-10-17 Michael Spertus <mike_spertus@symantec.com>
3657
3658 * c-common.c (c_common_reswords): Add __bases,
3659 __direct_bases.
3660 * c-common.h: Add RID_BASES and RID_DIRECT_BASES.
3661
36622011-10-17 Paolo Carlini <paolo.carlini@oracle.com>
3663
3664 PR c++/50757
3665 * c.opt ([Wnonnull]): Add C++ and Objective-C++.
3666
847e697a
TT
36672011-10-15 Tom Tromey <tromey@redhat.com>
3668 Dodji Seketeli <dodji@redhat.com>
3669
3670 * c.opt (fdebug-cpp): New option.
3671 * c-opts.c (c_common_handle_option): Handle the option.
3672 * c-ppoutput.c (maybe_print_line_1): New static function. Takes an
3673 output stream in parameter. Factorized from ...
3674 (maybe_print_line): ... this. Dump location debug information when
3675 -fdebug-cpp is in effect.
3676 (print_line_1): New static function. Takes an output stream in
3677 parameter. Factorized from ...
3678 (print_line): ... here. Dump location information when -fdebug-cpp
3679 is in effect.
3680 (scan_translation_unit): Dump location information when
3681 -fdebug-cpp is in effect.
3682
92582b75
TT
36832011-10-15 Tom Tromey <tromey@redhat.com>
3684 Dodji Seketeli <dodji@redhat.com>
3685
3686 * c.opt (ftrack-macro-expansion): New option. Handle it with and
3687 without argument.
3688 * c-opts.c (c_common_handle_option)<case
3689 OPT_ftrack_macro_expansion_, case OPT_ftrack_macro_expansion>: New
3690 cases. Handle -ftrack-macro-expansion with and without argument.
3691
46427374
TT
36922011-10-15 Tom Tromey <tromey@redhat.com>
3693 Dodji Seketeli <dodji@redhat.com>
3694
3695 * c-ppoutput.c (scan_translation_unit, maybe_print_line)
3696 (print_line, cb_define, do_line_change): Adjust to avoid touching
3697 the internals of struct line_map. Use the public API instead.
3698 * c-pch.c (c_common_read_pch): Likewise.
3699 * c-lex.c (fe_file_change): Likewise.
3700
fc8396e9
PC
37012011-10-14 Paolo Carlini <paolo.carlini@oracle.com>
3702
3703 PR c++/17212
3704 * c.opt ([Wformat-zero-length]): Add C++ and Objective-C++.
3705
37062011-10-11 Paolo Carlini <paolo.carlini@oracle.com>
3707
3708 PR c++/33067
3709 * c-pretty-print.c (pp_c_floating_constant): Output
3710 max_digits10 (in the ISO C++ WG N1822 sense) decimal digits.
3711
e79983f4
MM
37122011-10-11 Michael Meissner <meissner@linux.vnet.ibm.com>
3713
3714 * c-common.c (def_builtin_1): Delete old interface with two
3715 parallel arrays to hold standard builtin declarations, and replace
3716 it with a function based interface that can support creating
3717 builtins on the fly in the future. Change all uses, and poison
3718 the old names. Make sure 0 is not a legitimate builtin index.
3719 * c-omp.c (c_finish_omp_barrier): Ditto.
3720 (c_finish_omp_taskwait): Ditto.
3721 (c_finish_omp_flush): Ditto.
3722
6637388f
TG
37232011-10-11 Tristan Gingold <gingold@adacore.com>
3724
3725 * c.opt: (fallow-parameterless-variadic-functions): New.
3726
3797cb21
DS
37272011-09-08 Dodji Seketeli <dodji@redhat.com>
3728
3729 PR c++/33255 - Support -Wunused-local-typedefs warning
3730 * c-common.h (struct c_language_function::local_typedefs): New
3731 field.
9faeb493
UB
3732 (record_locally_defined_typedef, maybe_record_typedef_use)
3733 (maybe_warn_unused_local_typedefs): Declare new functions.
3797cb21 3734 * c-common.c (record_locally_defined_typedef)
9faeb493
UB
3735 (maybe_record_typedef_use)
3736 (maybe_warn_unused_local_typedefs): Define new functions.
3797cb21
DS
3737 * c.opt: Declare new -Wunused-local-typedefs flag.
3738
693ddb1b
EB
37392011-09-06 Eric Botcazou <ebotcazou@adacore.com>
3740
3741 PR middle-end/50266
3742 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Fold offsetof-like
3743 computations.
3744
830c740f
RG
37452011-09-05 Richard Guenther <rguenther@suse.de>
3746
3747 * c-common.c (complete_array_type): Use ssize_int (-1) instead
3748 of integer_minus_one_node for empty array upper bounds.
3749
892a371f
DS
37502011-08-28 Dodji Seketeli <dodji@redhat.com>
3751
3752 * c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as
3753 it's the first time it's being called on this main TU.
3754
0e3fdb48
RB
37552011-08-24 Richard Guenther <rguenther@suse.de>
3756
3757 PR c/49396
3758 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional.
3759
37602011-08-22 Gabriel Charette <gchare@google.com>
e3dfef44
GC
3761
3762 * c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens
3763 defined in cpp_init_builtins and c_cpp_builtins.
3764
d4a83c10
JM
37652011-08-19 Joseph Myers <joseph@codesourcery.com>
3766
3767 * c-common.c (c_common_reswords): Add __builtin_complex.
3768 * c-common.h (RID_BUILTIN_COMPLEX): New.
3769
bbceee64
JM
37702011-08-18 Joseph Myers <joseph@codesourcery.com>
3771
3772 * c-common.c (c_common_reswords): Add _Noreturn.
3773 (keyword_is_function_specifier): Handle RID_NORETURN.
3774 * c-common.h (RID_NORETURN): New.
3775
0e3a99ae
AS
37762011-08-10 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
3777
3778 * c-common.c (unsafe_conversion_p): New function. Check if it is
3779 unsafe to convert an expression to the type.
3780 (conversion_warning): Adjust, use unsafe_conversion_p.
3781 * c-common.h (unsafe_conversion_p): New function declaration.
3782
20906c66
JJ
37832011-08-02 Jakub Jelinek <jakub@redhat.com>
3784
3785 * c-common.h (c_finish_omp_atomic): Adjust prototype.
3786 (c_finish_omp_taskyield): New prototype.
3787 * c-omp.c (c_finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1
3788 arguments. Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and
3789 OMP_ATOMIC_CAPTURE_NEW in addition to OMP_ATOMIC. If LHS1
3790 or RHS1 have side-effects, evaluate those too in the right spot,
3791 if it is a decl and LHS is also a decl, error out if they
3792 aren't the same.
3793 (c_finish_omp_taskyield): New function.
3794 * c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP to 201107.
3795 * c-pragma.c (omp_pragmas): Add taskyield.
3796 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKYIELD.
3797 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FINAL and
3798 PRAGMA_OMP_CLAUSE_MERGEABLE.
3799
770e5a2e
DS
38002011-07-25 Dodji Seketeli <dodji@redhat.com>
3801
3802 * c-common.h (set_underlying_type): Remove parm name from
3803 declaration.
3804
1baae426
RG
38052011-07-25 Romain Geissler <romain.geissler@gmail.com>
3806
3807 * c-pretty-print.h: Search c-common.h in c-family.
9faeb493 3808
fcb21722
JM
38092011-07-22 Jason Merrill <jason@redhat.com>
3810
76f86d00
JM
3811 PR c++/49793
3812 * c.opt (Wnarrowing): New.
3813
3a636414
JM
3814 PR c++/30112
3815 * c-common.h: Declare c_linkage_bindings.
3816 * c-pragma.c (handle_pragma_redefine_extname): Use it.
3817
fcb21722
JM
3818 PR c++/49813
3819 * c-opts.c (set_std_cxx0x): Set flag_isoc94 and flag_isoc99.
3820 * c-pretty-print.c (pp_c_cv_qualifiers): Check c_dialect_cxx as well
3821 as flag_isoc99 for 'restrict'.
3822 (pp_c_specifier_qualifier_list): Likewise for _Complex.
3823
02614448
ILT
38242011-07-21 Ian Lance Taylor <iant@google.com>
3825
3826 PR middle-end/49705
3827 * c-common.c (c_disable_warnings): New static function.
3828 (c_enable_warnings): New static function.
3829 (c_fully_fold_internal): Change local unused_p to bool. Call
3830 c_disable_warnings and c_enable_warnings rather than change
3831 c_inhibit_evaluation_warnings.
3832
34429675
JM
38332011-07-20 Jason Merrill <jason@redhat.com>
3834
3835 PR c++/6709 (DR 743)
3836 PR c++/42603 (DR 950)
3837 * c-common.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move from cp/parser.h.
3838 (CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise.
3839 (CPP_DECLTYPE): New.
3840 * c-common.c (c_parse_error): Handle CPP_DECLTYPE.
3841
5d49b6a7
RG
38422011-07-19 Richard Guenther <rguenther@suse.de>
3843
3844 * c-common.c (pointer_int_sum): Use fold_build_pointer_plus.
3845 * c-omp.c (c_finish_omp_for): Likewise.
3846
e84a58ff
EB
38472011-07-12 Eric Botcazou <ebotcazou@adacore.com>
3848
3849 * c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop
3850 body on the next line.
3851
329af3c7
JM
38522011-07-08 Jason Merrill <jason@redhat.com>
3853
4063e61b
JM
3854 PR c++/45437
3855 * c-omp.c (check_omp_for_incr_expr): Handle preevaluation.
3856
329af3c7
JM
3857 PR c++/49673
3858 * c-common.c (c_apply_type_quals_to_decl): Don't check
3859 TYPE_NEEDS_CONSTRUCTING.
3860
1a072294
RG
38612011-07-06 Richard Guenther <rguenther@suse.de>
3862
3863 * c-common.c (c_common_nodes_and_builtins):
3864 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
3865
fce5dddd
RG
38662011-07-05 Richard Guenther <rguenther@suse.de>
3867
3868 * c-common.c (c_common_nodes_and_builtins): Build all common
3869 tree nodes first.
3870
45d439ac
JJ
38712011-06-27 Jakub Jelinek <jakub@redhat.com>
3872
56300785
JJ
3873 * c-common.h (c_tree_chain_next): New static inline function.
3874
45d439ac
JJ
3875 * c-common.c (check_builtin_function_arguments): Handle
3876 BUILT_IN_ASSUME_ALIGNED.
3877
e0a8ecf2
AM
38782011-06-21 Andrew MacLeod <amacleod@redhat.com>
3879
3880 * c-common.c: Add sync_ or SYNC__ to builtin names.
3881 * c-omp.c: Add sync_ or SYNC__ to builtin names.
dfb43cd5
PV
3882
38832011-06-20 Pierre Vittet <piervit@pvittet.com>
3884
3885 * c-pragma.h (pragma_handler_1arg, pragma_handler_2arg): New
3886 handler.
3887 (gen_pragma_handler): New union.
3888 (internal_pragma_handler): New type.
3889 (c_register_pragma_with_data)
3890 (c_register_pragma_with_expansion_and_data): New functions.
3891
3892 * c-pragma.c (registered_pragmas, c_register_pragma_1)
3893 (c_register_pragma, c_register_pragma_with_expansion)
3894 (c_invoke_pragma_handler): Changed to work with
3895 internal_pragma_handler.
3896 (c_register_pragma_with_data)
3897 (c_register_pragma_with_expansion_and_data): New functions.
3898
677f3fa8
JM
38992011-06-14 Joseph Myers <joseph@codesourcery.com>
3900
3901 * c-common.c: Include common/common-target.h.
3902 (handle_section_attribute): Use
3903 targetm_common.have_named_sections.
3904 * c-cppbuiltin.c: Include common/common-target.h.
3905 (c_cpp_builtins): Use targetm_common.except_unwind_info.
3906
d7fc8c14
RG
39072011-06-10 Richard Guenther <rguenther@suse.de>
3908
3909 * c-pretty-print.c (pp_c_type_specifier): Use pp_c_identifier
3910 to print a IDENTIFIER_NODE.
3911
10e48e39
RO
39122011-06-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3913 Joseph Myers <joseph@codesourcery.com>
3914
3915 * c.opt (fbuilding-libgcc): New option.
3916 * c-cppbuiltin.c (c_cpp_builtins): Define
3917 __LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc.
3918
6976ae51
JM
39192011-06-07 Jason Merrill <jason@redhat.com>
3920
3ff60975
JM
3921 * c-common.c (max_tinst_depth): Lower default to 900.
3922
6976ae51
JM
3923 * c-format.c (gcc_cxxdiag_char_table): Add 'S' format.
3924
009db074
RG
39252011-06-07 Richard Guenther <rguenther@suse.de>
3926
3927 * c-common.c (c_common_nodes_and_builtins): Do not set
3928 size_type_node or call set_sizetype.
3929
b4592b92
DS
39302011-06-07 Dodji Seketeli <dodji@redhat.com>
3931
3932 PR debug/49130
3933 * c-pretty-print.c (pp_c_integer_constant): Consider the canonical
9faeb493 3934 type when using pointer comparison to compare types.
b4592b92 3935
014ab419
JW
39362011-06-02 Jonathan Wakely <jwakely.gcc@gmail.com>
3937
3938 * c.opt: Add -Wdelete-non-virtual-dtor.
3939 * c-opts.c (c_common_handle_option): Include it in -Wall.
3940
4f60111f
NF
39412011-05-30 Nathan Froyd <froydnj@gcc.gnu.org>
3942
3943 PR bootstrap/49190
3944
3945 Revert:
3946 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
3947
3948 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
3949 not tree_common.
3950
4cc4f2f4
JJ
39512011-05-27 Jakub Jelinek <jakub@redhat.com>
3952
3953 PR c++/49165
3954 * c-common.c (c_common_truthvalue_conversion) <case COND_EXPR>: For
3955 C++ don't call c_common_truthvalue_conversion on void type arms.
3956
38e01f9e
NF
39572011-05-27 Nathan Froyd <froydnj@codesourcery.com>
3958
3959 * c-common.h (struct stmt_tree_s) [x_cur_stmt_list]: Change to a VEC.
3960 (stmt_list_stack): Define.
3961 (cur_stmt_list): Adjust for new type of x_cur_stmt_list.
3962 * c-semantics.c (push_stmt_list, pop_stmt_list): Likewise.
3963
92e948a8
NF
39642011-05-26 Nathan Froyd <froydnj@codesourcery.com>
3965
3966 * c-common.c (warning_candidate_p): Check for BLOCKs.
3967
a2fc3e63
NF
39682011-05-26 Nathan Froyd <froydnj@codesourcery.com>
3969
3970 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
3971 not tree_common.
3972
0957c029
JJ
39732011-05-25 Jakub Jelinek <jakub@redhat.com>
3974
3975 * c-common.c (def_fn_type): Remove extra va_end.
3976
828fb3ba
JM
39772011-05-23 Jason Merrill <jason@redhat.com>
3978
3979 PR c++/48106
3980 * c-common.c (c_common_get_narrower): New.
3981 (shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.
3982
dde05067
NF
39832011-05-23 Nathan Froyd <froydnj@codesourcery.com>
3984
3985 * c-common.h (check_function_arguments): Tweak prototype of
3986 check_function_arguments.
3987 * c-common.c (check_function_arguments): Likewise. Adjust
3988 calls to check_function_nonnull, check_function_format, and
3989 check_function_sentinel.
3990 (check_function_sentinel): Take a FUNCTION_TYPE rather than
3991 separate attributes and typelist arguments. Use
3992 FOREACH_FUNCTION_ARGS to iterate over argument types.
3993
3c0d13bf
PC
39942011-05-15 Paolo Carlini <paolo.carlini@oracle.com>
3995
3996 * c-common.c (c_common_reswords): Reorder.
3997 * c-common.h (rid): Likewise.
3998
8242dd04
NF
39992011-05-10 Nathan Froyd <froydnj@codesourcery.com>
4000
4001 * c-common.c (def_fn_type): Don't call build_function_type, call
4002 build_function_type_array or build_varargs_function_type_array
4003 instead.
4004 (c_common_nodes_and_builtins): Likewise.
4005
3d528853
NF
40062011-05-05 Nathan Froyd <froydnj@codesourcery.com>
4007
4008 * c-common.c (c_add_case_label): Omit the loc argument to
4009 build_case_label.
4010 * c-common.h (build_case_label): Remove.
4011 * c-semantics.c (build_case_label): Remove.
4012
a04a722b
JM
40132011-05-05 Joseph Myers <joseph@codesourcery.com>
4014
4015 * c-objc.h (objc_start_method_definition): Update prototype.
4016 * stub-objc.c (objc_start_method_definition): Add extra parameter.
4017
e19a18d4
NF
40182011-05-04 Nathan Froyd <froydnj@codesourcery.com>
4019
4020 * c-common.c (check_main_parameter_types): Reindent. Don't use
4021 TYPE_ARG_TYPES directly.
4022 (handle_nonnull_attribute): Likewise.
4023 (sync_resolve_params): Likewise.
4024 * c-format.c (handle_format_arg_attribute): Likewise. Adjust call
4025 to check_format_string.
4026 (handle_format_attribute): Likewise.
4027 (check_format_string): Take a function type to examine instead of
4028 a type list. Use a function_arg_iterator to step through argument
4029 types.
4030
c62c040f
RG
40312011-05-04 Richard Guenther <rguenther@suse.de>
4032
4033 * c-common.c (fix_string_type): Use size_int for index type bounds.
4034 (start_fname_decls): Do not pass NULL to build_int_cst.
4035 (c_init_attributes): Likewise.
4036 * c-lex.c (c_lex_with_flags): Likewise.
4037
c12ff9d8
JM
40382011-04-27 Jason Merrill <jason@redhat.com>
4039
4040 * c-common.c (make_tree_vector_from_list): New.
4041 * c-common.h: Declare it.
4042
304dfbe3
RG
40432011-04-26 Richard Guenther <rguenther@suse.de>
4044
4045 PR preprocessor/48248
4046 * c-ppoutput.c (maybe_print_line): Always optimize newlines
4047 for output size with -P.
4048
3c0d13bf
PC
40492011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
4050
4051 * c-common.c (struct c_common_resword): Add __underlying_type.
4052 * c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
4053
04695783
JM
40542011-04-20 Jim Meyering <meyering@redhat.com>
4055
4056 * c-format.c (init_dollar_format_checking): Remove useless
4057 if-before-free.
4058
0dc33c3c
NP
40592011-04-15 Nicola Pero <nicola.pero@meta-innovation.com>
4060
4061 * c-objc.h (objc_get_interface_ivars): Removed.
3c0d13bf 4062 (objc_detect_field_duplicates): New.
0dc33c3c 4063 * stub-objc.c: Likewise.
3c0d13bf 4064
c59633d9
NP
40652011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
4066
4067 * stub-objc.c (objc_declare_protocols): Renamed to
4068 objc_declare_protocol.
4069 * c-objc.h: Likewise.
3c0d13bf 4070
32dabdaf
NP
40712011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
4072
4073 * stub-objc.c (objc_declare_class): Updated argument name.
4074
81f653d6
NF
40752011-04-12 Nathan Froyd <froydnj@codesourcery.com>
4076
4077 * c-common.h (c_common_init_ts): Declare.
4078 * c-common.c (c_common_init_ts): Define.
4079
eb345401
NP
40802011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
4081
4082 * c-objc.h (objc_build_message_expr): Updated prototype.
4083 * stub-objc.c (objc_build_message_expr): Likewise.
9faeb493 4084
a358e188
MJ
40852011-04-12 Martin Jambor <mjambor@suse.cz>
4086
4087 * c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
4088 of cgraph_node.
4089
e6313a78
RG
40902011-04-11 Richard Guenther <rguenther@suse.de>
4091
4092 * c-common.c (complete_array_type): Build a range type of
4093 proper type.
4094
dcf0c47e
NF
40952011-04-08 Nathan Froyd <froydnj@codesourcery.com>
4096
4097 * c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
4098 (handle_type_generic_attribute): Likewise.
4099
1ee44b26
JM
41002011-04-07 Jason Merrill <jason@redhat.com>
4101
4102 PR c++/48450
4103 * c-common.c (c_common_truthvalue_conversion): Don't ignore
4104 conversion from C++0x scoped enum.
4105
acce4e77
JM
41062011-04-06 Joseph Myers <joseph@codesourcery.com>
4107
4108 * c-target-def.h: New file.
4109 * c-target.def: New file.
4110 * c-target.h: New file.
4111 * c-common.c (targetcm): Don't define here.
4112 * c-common.h (default_handle_c_option): Declare.
4113 * c-format.c: Include c-target.h instead of target.h.
4114 * c-opts.c: Include c-target.h instead of target.h. Explicitly
4115 include tm.h.
4116 (default_handle_c_option): Move from targhooks.c.
4117
e2eefb55
JJ
41182011-03-29 Jakub Jelinek <jakub@redhat.com>
4119
4120 PR preprocessor/48248
4121 * c-ppoutput.c (print): Add src_file field.
4122 (init_pp_output): Initialize it.
4123 (maybe_print_line): Don't optimize by adding up to 8 newlines
4124 if map->to_file and print.src_file are different file.
4125 (print_line): Update print.src_file.
4126
ba78087b
KT
41272011-03-25 Kai Tietz <ktietz@redhat.com>
4128
4129 * c-ada-spec.c (compare_comment): Use filename_cmp
4130 instead of strcmp for filename.
4131
0edf1bb2
JL
41322011-03-25 Jeff Law <law@redhat.com>
4133
adfac8df 4134 * c-common.c (def_fn_type): Add missing va_end.
0edf1bb2 4135
c7dc8804
JM
41362011-03-25 Jason Merrill <jason@redhat.com>
4137
4138 * c.opt: Add -std=c++03.
4139
d1d879b1
EB
41402011-03-22 Eric Botcazou <ebotcazou@adacore.com>
4141
4142 * c-ada-spec.c (dump_ada_template): Skip non-class instances.
4143
62d784f7
KT
41442011-03-17 Kai Tietz
4145
4146 PR target/12171
5050afdf
KT
4147 * c-pretty-print.c (pp_c_specifier_qualifier_list):
4148 Display allowed attributes for function pointer types.
4149 (pp_c_attributes_display): New function to display
4150 attributes having affects_type_identity flag set to true.
4151 * c-pretty-print.h (pp_c_attributes_display): New prototype.
4152
62d784f7
KT
4153 * c-common.c (c_common_attribute_table):
4154 Add new element.
4155 (c_common_format_attribute_table): Likewise.
4156
82d37118
JM
41572011-03-18 Jason Merrill <jason@redhat.com>
4158
49a000c3
JM
4159 * c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
4160 * c-common.h: Don't declare it here.
4161 * c-common.c: Or define it here.
4162 * c-opts.c (c_common_handle_option): Or set it here.
4163
82d37118
JM
4164 PR c++/35315
4165 * c-common.c (handle_transparent_union_attribute): Don't
4166 make a duplicate type in C++.
4167
17bc631c
JM
41682011-03-15 Jason Merrill <jason@redhat.com>
4169
4170 * c-common.c (max_constexpr_depth): New.
4171 * c-common.h: Declare it.
4172 * c-opts.c (c_common_handle_option): Set it.
4173 * c.opt (fconstexpr-depth): New option.
4174
1b9b91a6
JM
41752011-03-11 Jason Merrill <jason@redhat.com>
4176
f231b5ff
JM
4177 * c-common.c (attribute_takes_identifier_p): Add missing const.
4178
1b9b91a6
JM
4179 PR c++/46803
4180 * c-common.c (attribute_takes_identifier_p): Assume that an
4181 unknown attribute takes an identifier.
4182
a19e4d44
NF
41832011-03-07 Nathan Froyd <froydnj@codesourcery.com>
4184
4185 PR c/47786
4186 * c-common.c (c_type_hash): Call list_length instead of iterating
4187 through DECL_CHAIN. Rename 'i' to 'n_elements'.
4188
982d62f6
JJ
41892011-02-19 Jakub Jelinek <jakub@redhat.com>
4190
4191 PR c/47809
4192 * c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
4193
0a256240
NP
41942011-02-17 Iain Sandoe <iains@gcc.gnu.org>
4195
4196 * c.opt (fobjc-abi-version=) New.
4197 (fobjc-nilcheck): New.
4198
ba9e6dd5
NF
41992011-02-03 Nathan Froyd <froydnj@codesourcery.com>
4200
4201 PR c++/46890
4202 * c-common.h (keyword_is_decl_specifier): Declare.
4203 * c-common.c (keyword_is_decl_specifier): Define.
4204 (keyword_is_function_specifier): New function.
4205
7273813a
JJ
42062011-01-26 Jakub Jelinek <jakub@redhat.com>
4207
4208 PR c/47473
4209 * c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
4210 EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
4211 REAL_TYPE.
4212
908ef79b
AC
42132011-01-26 Arnaud Charlet <charlet@adacore.com>
4214
4215 * c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type.
4216
237e9384
JJ
42172011-01-26 Jakub Jelinek <jakub@redhat.com>
4218
4219 PR pch/47430
4220 * c-opts.c (c_common_post_options): Call c_common_no_more_pch
4221 after init_c_lex if pch_file is set.
4222
47ea1edf
DK
42232011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
4224
d4dba752 4225 PR c++/43601
47ea1edf
DK
4226 * c.opt (-fkeep-inline-dllexport): New switch.
4227
2aa9c6ae
RG
42282011-01-12 Richard Guenther <rguenther@suse.de>
4229
4230 PR middle-end/32511
4231 * c-common.c (handle_weak_attribute): Warn instead of error
4232 on declaring an inline function weak.
4233
7bd11157
TT
42342011-01-05 Tom Tromey <tromey@redhat.com>
4235
4236 * c-common.h (lvalue_error): Update.
4237 * c-common.c (lvalue_error): Add 'loc' argument. Call error_at,
4238 not error.
4239
0e66e494 42402010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
9faeb493 4241
b4f588c4
NP
4242 PR objc/47075
4243 * c-objc.h (objc_finish_message_expr): Added argument to
4244 prototype.
4245
f4da8dce
NF
42462010-12-22 Nathan Froyd <froydnj@codesourcery.com>
4247
4248 * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute):
4249 Use prototype_p.
4250
46270f14
NP
42512010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
4252
4253 * c-objc.h (objc_maybe_warn_exceptions): New.
9faeb493 4254 * stub-objc.c (objc_maybe_warn_exceptions): New.
46270f14 4255
4816c593
NF
42562010-12-10 Nathan Froyd <froydnj@codesourcery.com>
4257
4258 * c-common.h (readonly_error): Declare.
4259 * c-common.c (readonly_error): Define.
4260
7a6daeb0
NF
42612010-12-09 Nathan Froyd <froydnj@codesourcery.com>
4262
4263 * c-common.h (invalid_indirection_error): Declare.
4264 * c-common.c (invalid_indirection_error): Define.
4265
892f6119
RG
42662010-12-03 Richard Guenther <rguenther@suse.de>
4267
4268 PR c/46745
4269 * c-pretty-print.c (pp_c_postfix_expression): Handle MEM_REF.
4270 (pp_c_unary_expression): Likewise.
4271 (pp_c_expression): Likewise.
4272
6c39e757
NP
42732010-11-30 Nicola Pero <nicola.pero@meta-innovation.com>
4274
4275 * c-common.h (objc_finish_function): New.
4276 (objc_non_volatilized_type): Removed.
4277 (objc_type_quals_match): Removed.
4278 * stub-objc.c (objc_finish_function): New.
4279 (objc_non_volatilized_type): Removed.
4280 (objc_type_quals_match): Removed.
9faeb493 4281
7c475d11
JM
42822010-11-30 Joseph Myers <joseph@codesourcery.com>
4283
4284 * c-common.h (parse_optimize_options): Declare.
4285 * c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c,
4286 c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h.
4287
71f3e391
JM
42882010-11-29 Joseph Myers <joseph@codesourcery.com>
4289
4290 * c-opts.c (check_deps_environment_vars): Use getenv instead of
4291 GET_ENVIRONMENT.
4292 * c-pch.c (O_BINARY): Don't define here.
4293 * c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
4294
d5fabb58
JM
42952010-11-25 Joseph Myers <joseph@codesourcery.com>
4296
4297 * c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
4298 targetm.except_unwind_info.
4299
299404a1
JM
43002010-11-23 Joseph Myers <joseph@codesourcery.com>
4301
4302 * c-opts.c (c_common_handle_option): Pass location to
4303 set_struct_debug_option.
4304
c98cd5bf
JM
43052010-11-23 Joseph Myers <joseph@codesourcery.com>
4306
4307 * c-common.c (visibility_options): Move from ../opts.c.
4308 * c-common.h (struct visibility_flags, visibility_options):
4309 Declare here.
4310 * c-opts.c (finish_options): Rename to c_finish_options.
4311 (c_common_init): Update call to finish_options.
4312
a9546771
NP
43132010-11-22 Nicola Pero <nicola.pero@meta-innovation.com>
4314
4315 PR objc/34033
4316 * c-lex.c (lex_string): Check that each string in an Objective-C
4317 string concat sequence starts with either one or zero '@', and
4318 that there are no spurious '@' signs at the end.
4319
24a57808
JM
43202010-11-20 Joseph Myers <joseph@codesourcery.com>
4321
4322 * c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
4323 HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
4324 HANDLE_PRAGMA_VISIBILITY.
4325 * c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
4326 HANDLE_PRAGMA_VISIBILITY): Don't define.
4327 (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.
4328
a9aa2c3a
NF
43292010-11-20 Nathan Froyd <froydnj@codesourcery.com>
4330
4331 PR c++/16189
4332 PR c++/36888
4333 PR c++/45331
4334 * c-common.h (keyword_begins_type_specifier): Declare.
4335 (keyword_is_storage_class_specifier): Declare.
4336 (keyword_is_type_qualifier): Declare.
4337 * c-common.c (keyword_begins_type_specifier): New function.
4338 (keyword_is_storage_class_specifier): New function.
4339 (keyword_is_type_qualifier): Declare.
4340
5386338c
JM
43412010-11-19 Joseph Myers <joseph@codesourcery.com>
4342
4343 PR c/46547
4344 * c-common.c (in_late_binary_op): Define.
4345 (c_common_truthvalue_conversion): Check in_late_binary_op before
4346 calling c_save_expr.
4347 * c-common.h (in_late_binary_op): Declare.
4348
69ccdddb
JM
43492010-11-19 Joseph Myers <joseph@codesourcery.com>
4350
4351 * c-opts.c (c_common_handle_option): Update calls to
4352 set_struct_debug_option.
4353
6b192a09
NP
43542010-11-19 Nicola Pero <nicola.pero@meta-innovation.com>
4355
4356 * c-common.h (objc_declare_protocols): Added additional argument.
4357 * stub-objc.c (objc_declare_protocol): Same change.
9faeb493 4358
fb52b50a
NF
43592010-11-18 Nathan Froyd <froydnj@codesourcery.com>
4360
4361 PR c/33193
4362 * c-common.h (build_real_imag_expr): Declare.
4363 * c-semantics.c (build_real_imag_expr): Define.
4364
b37421c6
JM
43652010-11-17 Joseph Myers <joseph@codesourcery.com>
4366
4367 * c-opts.c (c_common_parse_file): Take no arguments.
4368 * c-common.h (c_common_parse_file): Update prototype.
4369
07078664
JJ
43702010-11-16 Jakub Jelinek <jakub@redhat.com>
4371
4372 PR c++/46401
4373 * c-common.c (warning_candidate_p): Don't track non-const calls
4374 or STRING_CSTs.
4375
c6a13190
ILT
43762010-11-15 Ian Lance Taylor <iant@google.com>
4377
4378 * c-lex.c (init_c_lex): Set macro debug callbacks if
4379 flag_dump_go_spec is set.
4380
925e8657
NP
43812010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
4382
4383 * c-common.h (objc_build_incr_expr_for_property_ref): New.
4384 * stub-objc.c (objc_build_incr_expr_for_property_ref): New.
4385
bb0a9581
NF
43862010-11-15 Nathan Froyd <froydnj@codesourcery.com>
4387
4388 PR preprocessor/45038
4389 * c-cppbuiltin.c (c_cpp_builtins): Use different format for C++
4390 dialects.
4391
c5fa0890
JM
43922010-11-12 Joseph Myers <joseph@codesourcery.com>
4393
4394 * c-common.h (c_family_lang_mask): Declare.
4395 * c-opts.c (c_family_lang_mask): Make extern.
4396 * c-pragma.c (handle_pragma_diagnostic): Use
4397 control_warning_option.
4398
a4d8c676
JM
43992010-11-12 Joseph Myers <joseph@codesourcery.com>
4400
4401 * c-common.c (parse_optimize_options): Update call to
4402 decode_options.
4403 * c-common.h (c_common_handle_option): Update prototype.
4404 * c-opts.c (c_common_handle_option): Take location_t parameter and
4405 pass it to other functions.
4406
f954bd2c
JM
44072010-11-11 Joseph Myers <joseph@codesourcery.com>
4408
4409 * c-opts.c (warning_as_error_callback): Remove.
4410 (c_common_initialize_diagnostics): Don't call
4411 register_warning_as_error_callback.
4412 (c_common_handle_option): Handle -Werror=normalized= here.
4413
d8a07487
JM
44142010-11-10 Joseph Myers <joseph@codesourcery.com>
4415
4416 * c-common.c (handle_mode_attribute): Use %' and word "signedness"
4417 in diagnostic.
4418 * c-opts.c (c_common_parse_file): Start diagnostics with lowercase
4419 letter.
4420 * c-pragma.c (handle_pragma_target, handle_pragma_optimize):
4421 Remove trailing '.' from diagnostics.
4422 * c.opt (Wwrite-strings_: Avoid '`' in help text.
4423
d5478783
JM
44242010-11-10 Joseph Myers <joseph@codesourcery.com>
4425
4426 * c-common.c (parse_optimize_options): Pass global_dc to
4427 decode_options.
4428 * c-opts.c (c_common_handle_option): Pass &global_options to
4429 set_Wstrict_aliasing.
4430 * c.opt (v): Don't mark Common or document here.
4431
91ebb981
IS
44322010-11-06 Iain Sandoe <iains@gcc.gnu.org>
4433
4434 PR target/44981
4435 * c-format.c (format_type): New type gcc_objc_string_format_type.
4436 (valid_stringptr_type_p): New.
4437 (handle_format_arg_attribute): Use valid_stringptr_type_p ().
9faeb493 4438 (check_format_string): Pass expected type, use
91ebb981
IS
4439 valid_stringptr_type_p (), check that the format string types are
4440 consistent with the format specification.
4441 (decode_format_attr): Warn if NSString is used outside objective-c.
4442 (format_types_orig): Add NSString.
4443 (format_name): New.
4444 (format_flags): New.
4445 (check_format_arg): Handle format strings requiring an external parser.
4446 first_target_format_type: New variable.
4447 (handle_format_attribute): Set up first_target_format_type, pass the
4448 expected format arg string type to check_format_string().
4449 * c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL): New flag.
4450 * stub-objc.c (objc_string_ref_type_p): New.
4451 (objc_check_format_arg): New.
4452
bede2adc
NP
44532010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
4454
9faeb493 4455 Fixed using the Objective-C 2.0 dot-syntax with class names.
bede2adc
NP
4456 * c-common.h (objc_build_class_component_ref): New.
4457 * stub-objc.c (objc_build_class_component_ref): New.
4458
9a179d01
NP
44592010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
4460
4461 * c.opt (Wproperty-assign-default): New option.
4462
22d8d616
NP
44632010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
4464
4465 Implemented -fobjc-std=objc1 flag.
4466 * c.opt (fobjc-std=objc1): New option.
4467
2debdb4f
NP
44682010-11-01 Nicola Pero <nicola.pero@meta-innovation.com>
4469
4470 Implemented format and noreturn attributes for Objective-C methods.
4471 * c-common.c (handle_noreturn_attribute): Recognize 'noreturn'
4472 attribute for Objective-C methods.
4473
ec52b111
JM
44742010-10-31 Jason Merrill <jason@redhat.com>
4475
4476 * c-common.c (conversion_warning, warn_for_collisions_1): Use
4477 EXPR_LOC_OR_HERE.
4478
46a88c12
NP
44792010-10-30 Nicola Pero <nicola.pero@meta-innovation.com>
4480
4481 Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
4482 * c-common.h (enum rid): Removed RID_COPIES and RID_IVAR.
4483 (objc_add_property_declaration): Removed arguments for copies and
4484 ivar.
4485 (objc_build_getter_call): Renamed to
4486 objc_maybe_build_component_ref.
4487 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
4488 (objc_is_property_ref): New.
4489 * c-common.c (c_common_reswords): Removed copies and ivar.
4490 * stub-objc.c (objc_add_property_declaration): Removed arguments
4491 for copies and ivar.
4492 (objc_build_getter_call): Renamed to
4493 objc_maybe_build_component_ref.
4494 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
4495 (objc_is_property_ref): New.
9faeb493 4496
1e4bf85b
AC
44972010-10-29 Arnaud Charlet <charlet@adacore.com>
4498 Matthew Gingell <gingell@adacore.com>
4499
4500 * c-ada-spec.c (separate_class_package): New function.
4501 (pp_ada_tree_identifier): Prefix references to C++ classes with the
4502 name of their enclosing package.
4503 (print_ada_declaration): Use separate_class_package.
4504
81f0bab2
JM
45052010-10-27 Jason Merrill <jason@redhat.com>
4506
2b08f2c5
JM
4507 * c-common.c (c_common_reswords): Add __is_literal_type.
4508 * c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
4509
81f0bab2
JM
4510 * c-common.c (check_case_value): Remove special C++ code.
4511
200290f2
NP
45122010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
4513
4514 * c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN,
4515 RID_RETAIN, RID_COPY and RID_NONATOMIC. Updated RID_FIRST_PATTR
4516 and RID_LAST_PATTR.
4517 (objc_add_property_declaration): Added additional arguments.
4518 (objc_property_attribute_kind): Removed.
4519 (objc_set_property_attr): Removed.
4520 * c-common.c (c_common_reswords): Added readwrite, assign, retain,
4521 copy and nonatomic.
4522 * stub-objc.c (objc_add_property_declaration): Added additional
4523 arguments.
4524 (objc_set_property_attr): Removed.
9faeb493 4525
f614132b
NP
45262010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
4527
4528 * c-common.h (objc_add_property_variable): Renamed to
4529 objc_add_property_declaration. Added location argument.
4530 * stub-objc.c (objc_add_property_variable): Same change.
4531
b8a18805
NP
45322010-10-23 Nicola Pero <nicola.pero@meta-innovation.com>
4533
4534 * c-common.h (objc_maybe_printable_name): New.
4535 * stub-objc.c (objc_maybe_printable_name): New.
4536
30cd1c5d
AS
45372010-10-22 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
4538 Andrew Pinski <pinskia@gmail.com>
4539
4540 * c-common.h (c_common_mark_addressable_vec): Declare.
4541 * c-common.c (c_common_mark_addressable_vec): New function.
4542
249a82c4
NP
45432010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
4544
4545 * c-common.h (objc_set_method_type): Removed.
4546 (objc_add_method_declaration): Added boolean argument.
4547 (objc_start_method_definition): Same change.
4548 (objc_build_method_signature): Same change.
4549 * stub-objc.c (objc_set_method_type): Removed.
4550 (objc_add_method_declaration): Added boolean argument.
4551 (objc_start_method_definition): Same change.
4552 (objc_build_method_signature): Same change.
4553
977e30bc
NP
45542010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
4555
4556 * c-common.h (finish_file): Removed.
4557 (objc_write_global_declarations): New.
4558 * c-opts.c (c_common_parse_file): Do not call finish_file.
4559 * stub-objc.c (objc_write_global_declarations): New.
9faeb493 4560
da57d1b9
NP
45612010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
4562
4563 Implemented parsing @synthesize and @dynamic for
4564 Objective-C/Objective-C++.
4565 * c-common.h (enum rid): Add RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
4566 (objc_add_synthesize_declaration): New.
4567 (objc_add_dynamic_declaration): New.
4568 * c-common.c (c_common_reswords): Add synthesize and dynamic.
4569 * stub-objc.c (objc_add_synthesize_declaration): New.
4570 (objc_add_dynamic_declaration): New.
9faeb493 4571
0069111f
MM
45722010-10-18 Michael Meissner <meissner@linux.vnet.ibm.com>
4573
4574 PR target/46041
4575 * c-cppbuiltin.c (mode_has_fma): Move function here from
4576 builtins.c. Don't use the fma optab, instead just use the
4577 HAVE_fma* macros, so that __FP_FAST_FMA* will be defined when
4578 using -save-temps.
4579
e426b47b
NP
45802010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
4581
4582 Merge from 'apple/trunk' branch on FSF servers.
0069111f 4583
e426b47b
NP
4584 2005-11-08 Fariborz Jahanian <fjahanian@apple.com>
4585
9faeb493 4586 Radar 4330422
e426b47b
NP
4587 * c-common.h (objc_non_volatilized_type): New declaration
4588 * stub-objc.c (objc_non_volatilized_type): New stub.
4589
90fbfdc3
NP
45902010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
4591
e426b47b 4592 Merge from 'apple/trunk' branch on FSF servers.
90fbfdc3
NP
4593
4594 2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
4595
9faeb493 4596 Radar 4133425
90fbfdc3 4597 * c-common.h (objc_diagnose_private_ivar): New decl.
0069111f 4598 * stub-objc.c (objc_diagnose_private_ivar): New stub.
90fbfdc3 4599
c37d8c30
IS
46002010-10-17 Iain Sandoe <iains@gcc.gnu.org>
4601
4602 * c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
4603 * c-common.h (enum rid): Add RID_AT_PACKAGE.
4604 (objc_ivar_visibility_kind): New enum.
4605 (objc_set_visibility): Adjust prototype to use visibility enum.
0069111f 4606 * stub-objc.c (objc_set_visibility): Adjust stub to use
c37d8c30
IS
4607 visibility enum.
4608
1b1562a5
MM
46092010-10-14 Michael Meissner <meissner@linux.vnet.ibm.com>
4610
4611 * c-cppbuiltin.c (builtin_define_float_constants): Emit
4612 __FP_FAST_FMA, __FP_FAST_FMAF, and __FP_FAST_FMAL if the machine
4613 has the appropriate fma builtins.
4614 (c_cpp_builtins): Adjust call to builtin_define_float_constants.
4615
668ea4b1
IS
46162010-10-14 Iain Sandoe <iains@gcc.gnu.org>
4617
1b1562a5 4618 merge from FSF apple 'trunk' branch.
668ea4b1 4619 2006 Fariborz Jahanian <fjahanian@apple.com>
1b1562a5 4620
668ea4b1
IS
4621 Radars 4436866, 4505126, 4506903, 4517826
4622 * c-common.c (c_common_resword): Define @property and its attributes.
4623 * c-common.h: Define property attribute enum entries.
4624 (OBJC_IS_PATTR_KEYWORD): New.
4625 (objc_property_attribute_kind): New enum.
4626 Declare objc_set_property_attr (), objc_add_property_variable (),
4627 objc_build_getter_call () and objc_build_setter_call ().
4628 * stub-objc.c (objc_set_property_attr): New stub.
4629 (objc_add_property_variable): Likewise.
4630 (objc_build_getter_call): Likewise.
4631 (objc_build_setter_call) Likewise.
1b1562a5 4632
a1178b30
IS
46332010-10-13 Iain Sandoe <iains@gcc.gnu.org>
4634
1b1562a5 4635 merge from FSF apple 'trunk' branch.
a1178b30
IS
4636 2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
4637
4638 Radar 3803157 (method attributes)
4639 * c-common.c (handle_deprecated_attribute): Recognize
4640 objc methods as valid declarations.
4641 * c-common.h: Declare objc_method_decl ().
1b1562a5 4642 * stub-objc.c (objc_method_decl): New stub.
a1178b30 4643
a75bfaa6
JM
46442010-10-08 Joseph Myers <joseph@codesourcery.com>
4645
4646 * c-common.c (parse_optimize_options): Call
4647 decode_cmdline_options_to_array_default_mask before
4648 decode_options. Update arguments to decode_options.
4649 * c-common.h (c_common_init_options_struct): Declare.
4650 * c-opts.c (c_common_init_options_struct): New. Split out from
4651 c_common_init_options.
4652
f05b9d93
NP
46532010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
4654
4655 Implemented fast enumeration for Objective-C.
4656 * c-common.h (objc_finish_foreach_loop): New.
4657 * stub-objc.c (objc_finish_foreach_loop): New.
4658
1ebe4b4f
JM
46592010-10-05 Joseph Myers <joseph@codesourcery.com>
4660
4661 * c-common.h (struct diagnostic_context): Don't declare here.
4662 (c_common_initialize_diagnostics): Declare using
4663 diagnostic_context typedef.
4664 * c-opts.c (c_common_handle_option): Pass global_dc to
4665 handle_generated_option.
4666
d4d24ba4
JM
46672010-10-04 Joseph Myers <joseph@codesourcery.com>
4668
4669 * c-opts.c (c_common_handle_option): Pass &global_options_set to
4670 handle_generated_option.
4671
478a1c5b
ILT
46722010-10-03 Ian Lance Taylor <iant@google.com>
4673
4674 * c.opt (-fplan9-extensions): New option.
4675
82a1c2fe
FXC
46762010-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
4677
4678 * c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision):
4679 Remove.
4680 (c_cpp_builtins): Call functions from cppbuiltin.c instead
4681 of duplicating code.
4682
92902b1b
IS
46832010-09-30 Iain Sandoe <iains@gcc.gnu.org>
4684
4685 * c-common.c: Add two new entries for @optional
4686 and @required keywords.
4687
4688 merge from FSF 'apple/trunk' branch.
4689 2006-01-30 Fariborz Jahanian <fjahanian@apple.com>
4690
4691 Radar 4386773
4692 * c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new
4693 objective-c keywords.
4694 (objc_set_method_opt): New declaration.
4695 * stub-objc.c (objc_set_method_opt): New stub.
9faeb493 4696
46625112
JM
46972010-09-30 Joseph Myers <joseph@codesourcery.com>
4698
4699 * c-common.c (handle_optimize_attribute): Pass &global_options to
4700 cl_optimization_save and cl_optimization_restore.
4701 * c-opts.c (c_common_handle_option): Pass &global_options to
4702 handle_generated_option.
4703 * c-pragma.c (handle_pragma_diagnostic): Use option_flag_var.
4704 (handle_pragma_pop_options, handle_pragma_reset_options): Pass
4705 &global_options to cl_optimization_restore.
4706
49b91f05
NP
47072010-09-30 Nicola Pero <nicola.pero@meta-innovation.com>
4708
4709 * c-lex.c (c_lex_with_flags): Updated comments for CPP_AT_NAME
4710 Objective-C/Objective-C++ keywords.
4711
13ed556f 47122010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
a6341d57 4713
9faeb493
UB
4714 Merge from 'apple/trunk' branch on FSF servers.
4715
a6341d57
NP
4716 2005-10-04 Fariborz Jahanian <fjahanian@apple.com>
4717
4718 Radar 4281748
4719 * c-common.h (objc_check_global_decl): New declaration.
4720 * stub-objc.c (objc_check_global_decl): New stub.
4721
f0036cca
JM
47222010-09-29 Joseph Myers <joseph@codesourcery.com>
4723
4724 * c.opt: Don't use VarExists.
4725
e3339d0f
JM
47262010-09-29 Joseph Myers <joseph@codesourcery.com>
4727
4728 * c-common.c (c_cpp_error): Update names of diagnostic_context
4729 members.
4730 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of
4731 cl_optimization members.
4732 * c-opts.c (warning_as_error_callback, c_common_handle_option,
4733 sanitize_cpp_opts, finish_options): Update names of cpp_options
4734 members.
4735
1973201f
NP
47362010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
4737
4738 * c-common.h (OBJC_IS_CXX_KEYWORD): New macro. Updated comments.
4739 (objc_is_reserved_word): Removed.
4740 * c-common.c: Updated comments.
4741 * c-lex.c (c_lex_with_flags): Use OBJC_IS_CXX_KEYWORD instead of
4742 objc_is_reserved_word.
4743 * stub-objc.c (objc_is_reserved_word): Removed.
4744
f7e71da5
IS
47452010-09-28 Iain Sandoe <iains@gcc.gnu.org>
4746
9faeb493 4747 * c-common.h (objc_add_method_declaration): Adjust prototype to
f7e71da5
IS
4748 include attributes.
4749 (objc_start_method_definition): Likewise.
4750 (objc_build_keyword_decl): Likewise.
4751 * stub-objc.c:(objc_add_method_declaration): Handle attributes.
4752 (objc_start_method_definition): Likewise.
4753 (objc_build_keyword_decl): Likewise.
4754
c165dca7
IS
47552010-09-28 Iain Sandoe <iains@gcc.gnu.org>
4756
4757 * c-common.h (objc_start_class_interface): Adjust prototype.
4758 (objc_start_category_interface): Likewise.
4759 (objc_start_protocol): Likewise.
4760 * stub-objc.c (objc_start_protocol): Adjust for extra argument.
4761 (objc_start_class_interface): Likewise.
4762 (objc_start_category_interface): Likewise.
4763
7458026b
ILT
47642010-09-27 Ian Lance Taylor <iant@google.com>
4765
4766 * c-common.c (c_common_attribute_table): Add no_split_stack.
4767 (handle_no_split_stack_attribute): New static function.
4768
b581b85b
NP
47692010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
4770
9faeb493 4771 Merge from 'apple/trunk' branch on FSF servers.
b581b85b
NP
4772
4773 2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
4774
9faeb493 4775 Radar 4229905
b581b85b
NP
4776 * c-common.h (objc_have_common_type): New declaration.
4777 * stub-objc.c (objc_have_common_type): New stub.
4778
4779 2005-06-22 Ziemowit Laski <zlaski@apple.com>
4780
4781 Radar 4154928
4782 * c-common.h (objc_common_type): New prototype.
9faeb493 4783 * stub-objc.c (objc_common_type): New stub.
b581b85b 4784
46a4da10
JH
47852010-09-24 Jan Hubicka <jh@suse.cz>
4786
4787 * c-common.c (handle_leaf_attribute): New function.
4788 (struct attribute_spec c_common_att): Add leaf.
4789
e200444e
JM
47902010-09-22 Joseph Myers <joseph@codesourcery.com>
4791
4792 * c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
4793 -comments-in-macros, -define-macro, -define-macro=, -dependencies,
4794 -dump, -dump=, -imacros, -imacros=, -include, -include=,
4795 -include-barrier, -include-directory, -include-directory=,
4796 -include-directory-after, -include-directory-after=,
4797 -include-prefix, -include-prefix=, -include-with-prefix,
4798 -include-with-prefix=, -include-with-prefix-after,
4799 -include-with-prefix-after=, -include-with-prefix-before,
4800 -include-with-prefix-before=, -no-integrated-cpp,
4801 -no-line-commands, -no-standard-includes, -no-warnings, -output,
4802 -output=, -pedantic, -pedantic-errors, -preprocess,
4803 -print-missing-file-dependencies, -trace-includes, -traditional,
4804 -traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
4805 -user-dependencies, -verbose, -write-dependencies,
4806 -write-user-dependencies, no-integrated-cpp, traditional): New.
4807
29a80ea6
NP
48082010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
4809
4810 PR objc/23710
ac1fc2fc
NP
4811 * c-common.h (objc_start_method_definition): Return bool instead
4812 of void.
4813 * stub-objc.c (objc_start_method_definition): Return bool instead
4814 of void.
4815
48162010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
4817
4818 PR objc/25965
4819 * c-common.h (objc_get_interface_ivars): New declaration.
4820 * stub-objc.c (objc_get_interface_ivars): New stub.
29a80ea6 4821
de621752
ILT
48222010-09-15 Ian Lance Taylor <iant@google.com>
4823
4824 * c-common.c (parse_optimize_options): Do not capitalize warning
06730c5d 4825 messages. Remove period at end of warning message.
de621752 4826
ba885ec5
NS
48272010-09-09 Nathan Sidwell <nathan@codesourcery.com>
4828
4829 * c-common.c (handle_alias_ifunc_attribute): New, broken out of ...
4830 (handle_alias_attribute): ... here.
4831 (handle_ifunc_attribute): New.
4832
c5ee1358
MM
48332010-09-06 Mark Mitchell <mark@codesourcery.com>
4834
4835 * c-common.h (do_warn_double_promotion): Declare.
4836 * c-common.c (do_warn_double_promotion): Define.
4837
0a0b3574
MM
48382010-09-05 Mark Mitchell <mark@codesourcery.com>
4839
4840 * c.opt (Wdouble-promotion): New.
4841
d1779886
JM
48422010-09-02 Joseph Myers <joseph@codesourcery.com>
4843
4844 * c.opt (falt-external-templates, fhuge-objects, fvtable-gc,
4845 fvtable-thunks, fxref): Mark no longer supported in help text.
4846
2d2bd949
JM
48472010-09-02 Joseph Myers <joseph@codesourcery.com>
4848
4849 * c.opt (Wimport, fall-virtual, falt-external-templates,
4850 fdefault-inline, fenum-int-equiv, fexternal-templates,
4851 fguiding-decls, fhonor-std, fhuge-objects, flabels-ok,
4852 fname-mangling-version-, fnew-abi, fnonnull-objects,
4853 foptional-diags, fsquangle, fstrict-prototype, fthis-is-variable,
4854 fvtable-gc, fvtable-thunks, fxref): Mark with Ignore and Warn as
4855 applicable.
4856 (fhandle-exceptions): Mark with Alias and Warn.
4857 * c-opts.c (c_common_handle_option): Don't handle options marked
4858 as ignored.
4859
5de8299c
JM
48602010-09-02 Joseph Myers <joseph@codesourcery.com>
4861
4862 * c.opt (Wcomments, Werror-implicit-function-declaration,
4863 ftemplate-depth-, std=c89, std=c9x, std=gnu89, std=gnu9x,
4864 std=iso9899:1990, std=iso9899:1999, std=iso9899:199x): Mark as
4865 aliases.
4866 * c-common.c (option_codes): Use OPT_Wcomment instead of
4867 OPT_Wcomments.
4868 * c-opts.c (warning_as_error_callback, c_common_handle_option):
4869 Don't handle options marked as aliases.
4870
0ceb0201
RG
48712010-08-25 Richard Guenther <rguenther@suse.de>
4872
4873 * c-common.c (c_common_get_alias_set): Remove special
4874 handling for pointers.
4875
ac47786e
NF
48762010-08-20 Nathan Froyd <froydnj@codesourcery.com>
4877
4878 * c-common.c: Use FOR_EACH_VEC_ELT.
4879 * c-gimplify.c: Likewise.
4880 * c-pragma.c: Likewise.
4881
c878765b
JM
48822010-08-16 Joseph Myers <joseph@codesourcery.com>
4883
4884 * c.opt (MDX): Change back to MD. Mark NoDriverArg instead of
4885 RejectDriver.
4886 (MMDX): Change back to MMD. Mark NoDriverArg instead of
4887 RejectDriver.
4888 * c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
4889 instead of OPT_MDX and OPT_MMDX.
4890
603349bf
JM
48912010-08-16 Joseph Myers <joseph@codesourcery.com>
4892
4893 * c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.
4894
644fa7ac
JM
48952010-08-12 Joseph Myers <joseph@codesourcery.com>
4896
4897 * c.opt (MD, MMD): Change to MDX and MMDX.
4898 * c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX.
4899
481e1176
JM
49002010-08-11 Joseph Myers <joseph@codesourcery.com>
4901
4902 * c-opts.c (c_common_handle_option): Call handle_generated_option
4903 instead of handle_option.
4904
ac8dc9f7
NF
49052010-08-08 Nathan Froyd <froydnj@codesourcery.com>
4906
4907 * c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
4908 (maybe_apply_renaming_pragma): Delete unneeded declarations.
4909
4f8c876d
NF
49102010-08-08 Nathan Froyd <froydnj@codesourcery.com>
4911
4912 * c-pragma.c (pending_redefinition): Declare. Declare a VEC of it.
4913 (pending_redefine_extname): Change type to a VEC.
4914 (add_to_renaming_pragma_list): Update for new type of
4915 pending_redefine_extname.
ac8dc9f7 4916 (maybe_apply_renaming_pragma): Likewise.
4f8c876d 4917
3b0c690e
AC
49182010-08-04 Arnaud Charlet <charlet@adacore.com>
4919
4920 * c-ada-spec.c (dump_ada_template): Mark underlying instance type as
4921 visited.
4922 (dump_generic_ada_node): Code clean up. Use TREE_VISITED flag to
4923 decide whether a type has already been declared/seen.
4924 Do not go to the original type.
4925 (dump_nested_types): New parameter forward.
4926 Generate forward declaration if needed and mark type as visited.
4927 (print_ada_declaration): Call dump_nested_types if not already done.
4928 Mark types as visited.
4929
1890bccc
JM
49302010-08-03 Joseph Myers <joseph@codesourcery.com>
4931
4932 * c.opt (-print-pch-checksum): Remove option.
4933 * c-opts.c (c_common_handle_option): Don't handle
4934 OPT_print_pch_checksum.
4935
5f20c657
JM
49362010-07-27 Joseph Myers <joseph@codesourcery.com>
4937
4938 * c-common.h (c_common_handle_option): Update prototype and return
4939 value type.
4940 * c-opts.c (c_common_handle_option): Update prototype and return
4941 value type. Update calls to handle_option and
4942 enable_warning_as_error.
4943
f551f80c
JJ
49442010-07-27 Jakub Jelinek <jakub@redhat.com>
4945
4946 PR c/45079
4947 * c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
4948
61ff2bdc
JM
49492010-07-27 Joseph Myers <joseph@codesourcery.com>
4950
4951 * c-common.h (c_common_missing_argument): Remove.
4952 * c-opts.c (c_common_missing_argument): Remove.
4953 * c.opt (A, D, F, I, MD, MMD, MQ, MT, U, fconstant-string-class=,
4954 idirafter, imacros, include, isysroot, isystem, iquote): Add
4955 MissingArgError.
4956 * c-objc-common.h (LANG_HOOKS_MISSING_ARGUMENT): Remove.
4957
7a9bf9a4
JM
49582010-07-27 Joseph Myers <joseph@codesourcery.com>
4959
4960 * c-common.h (c_common_option_lang_mask,
4961 c_common_initialize_diagnostics, c_common_complain_wrong_lang_p):
4962 New.
4963 (c_common_init_options): Update prototype.
4964 * c-opts.c (c_common_option_lang_mask): New.
4965 (c_common_initialize_diagnostics): Split out of
4966 c_common_init_options.
4967 (accept_all_c_family_options, c_common_complain_wrong_lang_p):
4968 New.
4969 (c_common_init_options): Update prototype. Use decoded options in
4970 search for -lang-asm.
4971
910ad8de
NF
49722010-07-15 Nathan Froyd <froydnj@codesourcery.com>
4973
4974 * c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
4975 * c-format.c: Likewise.
4976
718f9c0f
MLI
49772010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
4978
4979 * c-common.h: Include diagnostic-core.h. Error if already
4980 included.
4981 * c-semantics.c: Do not define GCC_DIAG_STYLE here.
4982
4d451982
MLI
49832010-07-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
4984
adfac8df 4985 * c-common.c (IN_GCC_FRONTEND): Do not undef.
4d451982
MLI
4986 Do not include expr.h
4987 (vector_mode_valid_p): Move here.
4988
119fe915
SB
49892010-06-21 DJ Delorie <dj@redhat.com>
4990
4991 * c-pragma.c (handle_pragma_diagnostic): Add push/pop,
4992 allow these pragmas anywhere.
4993
49942010-06-14 Jakub Jelinek <jakub@redhat.com>
4995
4996 PR bootstrap/44509
4997 * c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
4998 (lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
4999 (lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
5000 ggc_strdup instead of xstrdup.
5001
50022010-06-10 Jakub Jelinek <jakub@redhat.com>
5003
5004 * c-cppbuiltin.c: Include cpp-id-data.h.
5005 (lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
5006 (lazy_hex_fp_value): New function.
5007 (builtin_define_with_hex_fp_value): Provide definitions lazily.
5008
6662d794
MLI
50092010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
5010
5011 * c-gimplify.c: Do not include tree-flow.h
5012
38f8b050
JR
50132010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
5014
5015 PR other/44034
5016 * c-common.c: Rename targetm member:
5017 targetm.enum_va_list -> targetm.enum_va_list_p
5018
9589f23e
AS
50192010-06-28 Anatoly Sokolov <aesok@post.ru>
5020
5021 * c-common.c (shorten_compare): Adjust call to force_fit_type_double.
5022
3b06d379
SB
50232010-06-28 Steven Bosscher <steven@gcc.gnu.org>
5024
5025 * c-cppbuiltin.c: Do not include except.h.
5026
d166d4c3
AK
50272010-06-24 Andi Kleen <ak@linux.intel.com>
5028
9faeb493
UB
5029 * c-common.c (warn_for_omitted_condop): New.
5030 * c-common.h (warn_for_omitted_condop): Add prototype.
d166d4c3 5031
70cb8be6
JM
50322010-06-21 Joseph Myers <joseph@codesourcery.com>
5033
5034 * c.opt (lang-objc): Remove.
5035 * c-opts.c (c_common_handle_option): Don't handle OPT_lang_objc.
5036
a4c97feb
JR
50372010-06-21 Joern Rennecke <joern.rennecke@embecosm.com>
5038
5039 * c-opts.c: Include "tm_p.h".
5040
6e2f1956
JM
50412010-06-20 Joseph Myers <joseph@codesourcery.com>
5042
5043 * c-common.c (parse_optimize_options): Update call to
5044 decode_options.
5045
bc87224e
NF
50462010-06-18 Nathan Froyd <froydnj@codesourcery.com>
5047
5048 * c-common.c (record_types_used_by_current_var_decl): Adjust for
5049 new type of types_used_by_cur_var_decl.
5050
b49cf425
JR
50512010-06-17 Joern Rennecke <joern.rennecke@embecosm.com>
5052
5053 PR bootstrap/44512
5054 * c-cppbuiltin.c (builtin_define_with_hex_fp_value): Add cast
5055 for C++ standard compliance.
5056
59f9c2ed
JM
50572010-06-16 Jason Merrill <jason@redhat.com>
5058
5059 * c.opt: Add -Wnoexcept.
5060
33766b66
RG
50612010-06-16 Richard Guenther <rguenther@suse.de>
5062
5063 PR c/44555
5064 * c-common.c (c_common_truthvalue_conversion): Remove
5065 premature and wrong optimization concering ADDR_EXPRs.
5066
eff7e30c
AC
50672010-06-15 Arnaud Charlet <charlet@adacore.com>
5068
5069 * c-ada-spec.c (dump_sloc): Remove column info.
5070 (is_simple_enum): New function.
5071 (dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada
5072 enum types when relevant.
5073
6312e84d
MLI
50742010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
5075
9faeb493 5076 * c-common.c (conversion_warning): Warn at expression
6312e84d
MLI
5077 location.
5078
1cb42611
JM
50792010-06-10 Joseph Myers <joseph@codesourcery.com>
5080
5081 * c-opts.c (c_common_handle_option): Don't handle
5082 OPT_fshow_column.
5083
a9429e29
LB
50842010-06-08 Laurynas Biveinis <laurynas.biveinis@gmail.com>
5085
5086 * c-pragma.c (push_alignment): Use typed GC allocation.
5087 (handle_pragma_push_options): Likewise.
5088
5089 * c-common.c (parse_optimize_options): Likewise.
5090
5091 * c-common.h (struct sorted_fields_type): Add variable_size GTY
5092 option.
5093
5498f011
JM
50942010-06-07 Joseph Myers <joseph@codesourcery.com>
5095
5096 * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
5097 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
5098 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
5099 flag_signed_bitfields, warn_strict_null_sentinel,
5100 flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
5101 flag_gen_declaration, flag_no_gnu_keywords,
5102 flag_implement_inlines, flag_implicit_templates,
5103 flag_implicit_inline_templates, flag_optional_diags,
5104 flag_elide_constructors, flag_default_inline, flag_rtti,
5105 flag_conserve_space, flag_access_control, flag_check_new,
5106 flag_new_for_scope, flag_weak, flag_working_directory,
5107 flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
5108 flag_enforce_eh_specs, flag_threadsafe_statics,
5109 flag_pretty_templates): Remove.
5110 * c-common.h (flag_preprocess_only, flag_nil_receivers,
5111 flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
5112 flag_replace_objc_classes, flag_undef, flag_no_builtin,
5113 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
5114 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
5115 flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
5116 flag_no_gnu_keywords, flag_implement_inlines,
5117 flag_implicit_templates, flag_implicit_inline_templates,
5118 flag_optional_diags, flag_elide_constructors, flag_default_inline,
5119 flag_rtti, flag_conserve_space, flag_access_control,
5120 flag_check_new, flag_new_for_scope, flag_weak,
5121 flag_working_directory, flag_use_cxa_atexit,
5122 flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
5123 flag_threadsafe_statics, flag_pretty_templates,
5124 warn_strict_null_sentinel): Remove.
5125 * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
5126 fbuiltin, fcheck-new, fconserve-space, felide-constructors,
5127 fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
5128 fimplicit-inline-templates, fimplicit-templates,
5129 flax-vector-conversions, fms-extensions, fnil-receivers,
5130 fnonansi-builtins, fpretty-templates, freplace-objc-classes,
5131 frtti, fshort-double, fshort-enums, fshort-wchar,
5132 fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
5133 funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
5134 fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
5135 gen-decls, undef): Use Var.
5136 (fdefault-inline, foptional-diags): Document as doing nothing.
5137 * c-opts.c (c_common_handle_option): Remove cases for options now
5138 using Var. Mark ignored options as such.
5139
39dabefd
SB
51402010-06-05 Steven Bosscher <steven@gcc.gnu.org>
5141
9faeb493 5142 * c-common.c: Moved to here from parent directory.
39dabefd
SB
5143 * c-common.def: Likewise.
5144 * c-common.h: Likewise.
5145 * c-cppbuiltin.c: Likewise.
5146 * c-dump.c: Likewise.
5147 * c-format.c: Likewise.
5148 * c-format.h : Likewise.
5149 * c-gimplify.c: Likewise.
5150 * c-lex.c: Likewise.
5151 * c-omp.c: Likewise.
5152 * c.opt: Likewise.
5153 * c-opts.c: Likewise.
5154 * c-pch.c: Likewise.
5155 * c-ppoutput.c: Likewise.
5156 * c-pragma.c: Likewise.
5157 * c-pragma.h: Likewise.
5158 * c-pretty-print.c: Likewise.
5159 * c-pretty-print.h: Likewise.
5160 * c-semantics.c: Likewise.
5161 * stub-objc.c: Likewise.
5162
5163 * c-common.c: Include gt-c-family-c-common.h.
5164 * c-pragma.c: Include gt-c-family-c-pragma.h.
5165\f
5624e564 5166Copyright (C) 2010-2015 Free Software Foundation, Inc.
39dabefd
SB
5167
5168Copying and distribution of this file, with or without modification,
5169are permitted in any medium without royalty provided the copyright
5170notice and this notice are preserved.
This page took 1.847726 seconds and 5 git commands to generate.