]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/c-family/ChangeLog
Daily bump.
[thirdparty/gcc.git] / gcc / c-family / ChangeLog
CommitLineData
0a508bb6
JJ
12013-11-22 Jakub Jelinek <jakub@redhat.com>
2
3 * c-ubsan.h (ubsan_instrument_return): New prototype.
4 * c-ubsan.c (ubsan_instrument_return): New function.
5
2fb9a547
AM
62013-11-22 Andrew MacLeod <amacleod@redhat.com>
7
8 * c-common.c: Add required include files from gimple.h.
9 * c-gimplify.c: Likewise
10 * cilk.c: Likewise
11
8400e75e
DM
122013-11-22 David Malcolm <dmalcolm@redhat.com>
13
14 * c-common.c (unsafe_conversion_p): Remove use of
15 EXPR_LOC_OR_HERE macro.
16 (conversion_warning): Likewise.
17 (warnings_for_convert_and_check): Likewise.
18 (warn_for_collisions_1): Likewise.
19 (shorten_compare): Likewise, and remove use of in_system_header
20 macro, using the location from the former.
21 * c-lex.c (dump_one_header): Remove use of input_filename macro.
22 (cb_def_pragma): Remove use of in_system_header macro.
23 (lex_string): Likewise.
24 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
25
eb1ce453
KZ
262013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com>
27 Mike Stump <mikestump@comcast.net>
28 Richard Sandiford <rdsandiford@googlemail.com>
29
30 * c-ada-spec.c (is_simple_enum): Use tree_to_shwi and tree_to_uhwi
31 instead of TREE_INT_CST_LOW, in cases where there is a protecting
32 tree_fits_shwi_p or tree_fits_uhwi_p.
33 (dump_generic_ada_node): Likewise.
34 * c-format.c (check_format_arg): Likewise.
35 * c-pretty-print.c (pp_c_integer_constant): Likewise.
36
6b3b8c27
KZ
372013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com>
38
39 * c-common.c (check_function_arguments_recurse): Use tree_to_uhwi.
40
49b0aa18
JC
412013-11-19 Joshua J Cogliati <jrincayc@yahoo.com>
42
43 PR c/53001
44 * c-common.c (unsafe_conversion_p): Make this function
45 return an enumeration with more detail.
46 (conversion_warning): Use the new return type of
47 unsafe_conversion_p to separately warn either about conversions
48 that lower floating point number precision or about the other
49 kinds of conversions.
50 * c-common.h (enum conversion_safety): New enumeration.
51 (unsafe_conversion_p): switching return type to
52 conversion_safety enumeration.
53 * c.opt: Adding new warning -Wfloat-conversion and
54 enabling it with -Wconversion.
55
b826515a
BS
562013-11-19 Basile Starynkevitch <basile@starynkevitch.net>
57
58 * c-opts.c: Include plugin.h.
59 (cb_file_change): Invoke plugin event PLUGIN_INCLUDE_FILE.
60
b9a55b13
MP
612013-11-19 Marek Polacek <polacek@redhat.com>
62
63 * c-ubsan.c (ubsan_instrument_division): Adjust ubsan_create_data
64 call.
65 (ubsan_instrument_shift): Likewise.
66 (ubsan_instrument_vla): Likewise.
67
7d362f6c
RS
682013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
69
70 * c-common.c (convert_vector_to_pointer_for_subscript): Remove
71 cast to unsigned type.
72
386b1f1f
RS
732013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
74
75 * c-common.c (fold_offsetof_1): Use tree_to_uhwi rather than
76 tree_low_cst.
77 (complete_array_type): Update comment to refer to tree_to_[su]hwi
78 rather than tree_low_cst.
79
ae7e9ddd
RS
802013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
81
82 * c-common.c, c-cppbuiltin.c: Replace tree_low_cst (..., 1) with
83 tree_to_uhwi throughout.
84
9439e9a1
RS
852013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
86
87 * c-common.c, c-format.c, c-omp.c, c-pretty-print.c: Replace
88 tree_low_cst (..., 0) with tree_to_shwi throughout.
89
cc269bb6
RS
902013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
91
92 * c-ada-spec.c, c-common.c, c-pretty-print.c: Replace
93 host_integerp (..., 1) with tree_fits_uhwi_p throughout.
94
9541ffee
RS
952013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
96
97 * c-ada-spec.c, c-common.c, c-format.c, c-pretty-print.c: Replace
98 host_integerp (..., 0) with tree_fits_shwi_p throughout.
99
c02065fc
AH
1002013-11-15 Aldy Hernandez <aldyh@redhat.com>
101
102 * c-cilkplus.c: New file.
103 * c-common.c (readonly_error): Add location argument.
104 * c-common.h (readonly_error): Same.
105 (c_finish_cilk_clauses): Protoize.
106 (c_check_cilk_loop): Same.
107 c-omp.c (c_finish_omp_for): Handle CILK_SIMD nodes.
108 Do not fail on error_mark_node.
109 Abstract increment canonicalization to here...
110 (c_omp_for_incr_canonicalize_ptr): New.
111 c-pragma.c (init_pragma): Register "simd" pragma.
112 c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_SIMD.
113 (enum pragma_cilk_clause): New.
114
9cc65f15
RS
1152013-11-15 Richard Sandiford <rdsandiford@googlemail.com>
116
117 * c-pretty-print.c (pp_c_character_constant): Remove unnecessary
118 wchar_type and host_integerp checks.
119
18f429e2
AM
1202013-11-14 Andrew MacLeod <amacleod@redhat.com>
121
122 * c-common.c: Likewise.
123 * c-gimplify.c: Likewise.
124 * cilk.c: Likewise.
125
d8a2d370
DN
1262013-11-14 Diego Novillo <dnovillo@google.com>
127
128 * c-common.c: Include fold-const.h.
129 Include stor-layout.h.
130 Include calls.h.
131 Include stringpool.h.
132 Include attribs.h.
133 Include varasm.h.
134 Include trans-mem.h.
135 * c-cppbuiltin.c: Include stor-layout.h.
136 Include stringpool.h.
137 * c-format.c: Include stringpool.h.
138 * c-lex.c: Include stringpool.h.
139 Include stor-layout.h.
140 * c-pragma.c: Include stringpool.h.
141 Include attribs.h.
142 Include varasm.h.
143 Include gcc-symtab.h.
144 * c-pretty-print.c: Include stor-layout.h.
145 Include attribs.h.
146 * cilk.c: Include stringpool.h.
147 Include calls.h.
148
38b7bc7f
JM
1492013-11-13 Joseph Myers <joseph@codesourcery.com>
150
151 * c-common.h (enum rid): Add RID_AUTO_TYPE.
152 * c-common.c (c_common_reswords): Add __auto_type.
153 (keyword_begins_type_specifier): Handle RID_AUTO_TYPE.
154
45b0be94
AM
1552013-11-12 Andrew MacLeod <amacleod@redhat.com>
156
18f429e2
AM
157 * c-common.c: Include gimplify.h.
158 * c-gimplify.c: Likewise.
159 * cilk.c: Likewise.
160 * c-omp.c: Include gimple-expr.h instead of gimple.h.
161 * c-ubsan.c: Don't include gimple.h.
45b0be94 162
582d9b50
JM
1632013-11-12 Joseph Myers <joseph@codesourcery.com>
164
165 * c-common.c (c_common_reswords): Add _Thread_local.
166
6b28e197
JM
1672013-11-09 Joseph Myers <joseph@codesourcery.com>
168
169 * c-common.c (atomic_size_supported_p): New function.
170 (resolve_overloaded_atomic_exchange)
171 (resolve_overloaded_atomic_compare_exchange)
172 (resolve_overloaded_atomic_load, resolve_overloaded_atomic_store):
173 Use it instead of comparing size with a local list of sizes.
174
267bac10
JM
1752013-11-07 Andrew MacLeod <amacleod@redhat.com>
176 Joseph Myers <joseph@codesourcery.com>
177
178 * c-common.h (enum rid): Add RID_ATOMIC.
179 * c-common.c (c_common_reswords): Add _Atomic.
180 (sync_resolve_params): Use TYPE_MAIN_VARIANT on pointer argument.
181 (keyword_is_type_qualifier): Accept RID_ATOMIC.
182 * c-format.c (check_format_types): Check for extra _Atomic
183 qualifiers in format argument.
184 * c-pretty-print.c (pp_c_cv_qualifiers): Handle atomic qualifier.
185 (pp_c_type_qualifier_list): Mention _Atomic in comment.
186
5157b91e
TB
1872013-11-06 Tobias Burnus <burnus@net-b.de>
188
189 * c-common.c (reason_option_codes_t): Add CPP_W_DATE_TIME.
190
6dbe0958
JM
1912013-11-06 Joseph Myers <joseph@codesourcery.com>
192
193 * c-opts.c (c_common_post_options): Set -ffp-contract=off in C
194 standards modes.
195 * c-cppbuiltin.c (cpp_iec_559_value): Consider -ffp-contract=fast
196 to mean lack of IEEE 754 support.
197
e8ff5196
TB
1982013-11-05 Tobias Burnus <burnus@net-b.de>
199
200 * c.opt (-Wdate-time): New option
201 * c-opts.c (sanitize_cpp_opts): Pass on to libcpp.
202
254a0760
JM
2032013-11-05 Joseph Myers <joseph@codesourcery.com>
204
205 * c-cppbuiltin.c (cpp_iec_559_value): Test
206 flag_excess_precision_cmdline not flag_excess_precision.
207
6d7f7e0a
TB
2082013-11-05 Tobias Burnus <burnus@net-b.de>
209
210 * c.opt (fopenmp-simd): New option.
211 * c-pragma.c (omp_pragmas): Move pragmas which can contain simd to ...
212 (omp_pragmas): ... this new struct.
213 (c_pp_lookup_pragma): Also walk omp_pragmas.
214 (init_pragma): Init pragmas for -fopenmp-simd.
215
55a7f02f
MP
2162013-11-04 Marek Polacek <polacek@redhat.com>
217
218 PR c++/58979
219 * c-common.c (invalid_indirection_error): Handle RO_ARROW_STAR case.
220
9193fb05
JM
2212013-11-04 Joseph Myers <joseph@codesourcery.com>
222
223 * c-cppbuiltin.c (cpp_iec_559_value, cpp_iec_559_complex_value):
224 New functions.
225 (c_cpp_builtins): Define __GCC_IEC_559 and __GCC_IEC_559_COMPLEX.
226
94159ecf
EB
2272013-11-04 Eric Botcazou <ebotcazou@adacore.com>
228
229 * c-ada-spec.h (cpp_operation): Add IS_TRIVIAL.
230 (dump_ada_specs): Adjust prototype of second callback.
231 * c-ada-spec.c (cpp_check): New global variable.
232 (dump_ada_nodes): Remove cpp_check parameter and do not pass it down.
233 (print_generic_ada_decl): Likewise.
234 (has_static_fields): Change return type to bool and add guard.
235 (has_nontrivial_methods): New predicate.
236 (is_tagged_type): Change return type to bool.
237 (separate_class_package): Call has_nontrivial_methods.
238 (pp_ada_tree_identifier): Minor tweaks.
239 (dump_ada_function_declaration): Adjust calls to dump_generic_ada_node.
240 (dump_ada_array_domains): Likewise.
241 (dump_ada_array_type): Likewise.
242 (dump_template_types): Remove cpp_check parameter and do not pass it to
243 dump_generic_ada_node.
244 (dump_ada_template): Likewise.
245 (dump_generic_ada_node): Remove cpp_check parameter and do not pass it
246 recursively.
247 (print_ada_methods): Change return type to integer. Remove cpp_check
248 parameter and do not pass it down.
249 (dump_nested_types): Remove cpp_check parameter and do not pass it to
250 dump_generic_ada_node.
251 (print_ada_declaration): Likewise. Test RECORD_OR_UNION_TYPE_P before
252 accessing methods.
253 (print_ada_struct_decl): Remove cpp_check parameter and do not pass it
254 down. Use has_nontrivial_methods to recognize C++ classes. Use return
255 value of print_ada_methods.
256 (dump_ads): Rename cpp_check parameter to check and adjust prototype.
257 Set cpp_check to it before invoking dump_ada_nodes.
258 (dump_ada_specs): Likewise.
259
b906f4ca
MP
2602013-11-03 Marek Polacek <polacek@redhat.com>
261
262 * c-ubsan.c: Don't include hash-table.h.
263 (ubsan_instrument_vla): New function.
264 * c-ubsan.h: Declare it.
265
5e20cdc9
DM
2662013-10-31 David Malcolm <dmalcolm@redhat.com>
267
268 Automated part of renaming of symtab_node_base to symtab_node.
269
270 Patch autogenerated by rename_symtab.py from
271 https://github.com/davidmalcolm/gcc-refactoring-scripts
272 revision 58bb219cc090b2f4516a9297d868c245495ee622
273
274 * c-pragma.c (maybe_apply_pending_pragma_weaks): Rename
275 symtab_node_base to symtab_node.
276
7057e645
ESR
2772013-10-31 Edward Smith-Rowland <3dw4rd@verizon.net>
278
279 Implement C++14 digit separators.
280 * c-lex.c (interpret_float): Remove digit separators from scratch string
281 before building real literal.
282
193ea7bc
JJ
2832013-10-30 Jakub Jelinek <jakub@redhat.com>
284
285 * cilk.c (create_cilk_helper_decl): Use HOST_WIDE_INT_PRINT_DEC.
286
939b37da
BI
2872013-10-29 Balaji V. Iyer <balaji.v.iyer@intel.com>
288
289 * c-common.c (c_common_reswords[]): Added _Cilk_spawn and _Cilk_sync
290 fields.
291 (c_define_builtins): Called cilk_init_builtins if Cilk Plus is
292 enabled.
293 * c-common.h (enum rid): Added RID_CILK_SPAWN and RID_CILK_SYNC.
294 (insert_cilk_frame): New prototype.
295 (cilk_init_builtins): Likewise.
296 (gimplify_cilk_spawn): Likewise.
297 (c_cilk_install_body_w_frame_cleanup): Likewise.
298 (cilk_detect_spawn_and_unwrap): Likewise.
299 (cilk_set_spawn_marker): Likewise.
300 (build_cilk_sync): Likewise.
301 (build_cilk_spawn): Likewise.
302 * cilk.c: New file.
303
67348ccc
DM
3042013-10-29 David Malcolm <dmalcolm@redhat.com>
305
306 Patch autogenerated by refactor_symtab.py from
307 https://github.com/davidmalcolm/gcc-refactoring-scripts
308 revision 58bb219cc090b2f4516a9297d868c245495ee622
309
310 * c-gimplify.c (c_genericize): Update for conversion of symtab types
311 to a true class hierarchy.
312 * c-pragma.c (maybe_apply_pending_pragma_weaks): Likewise.
313
d570872d
RS
3142013-10-27 Richard Sandiford <rdsandiford@googlemail.com>
315
316 * c-lex.c (interpret_integer): Remove call to cpp_num_sign_extend.
317
98906124
JL
3182013-10-26 Jeff Law <law@redhat.com>
319
320 * c-family/c-common.c (c_define_builtins): Remove mudflap support.
321 * c-family/c.opt: Ignore and warn for mudflap options.
322
d73749df 3232013-10-24 Tobias Burnus <burnus@net-b.de>
8170608b
TB
324
325 PR other/33426
326 * c-pragma.c (init_pragma) Add #pragma ivdep handling.
327 * c-pragma.h (pragma_kind): Add PRAGMA_IVDEP.
328
3f04b1bb
JM
3292013-10-23 Jason Merrill <jason@redhat.com>
330
331 * c-format.c (gcc_cxxdiag_char_table): Add %X.
332
acf0174b
JJ
3332013-10-11 Jakub Jelinek <jakub@redhat.com>
334
acd15a28
JJ
335 * c-common.h (omp_clause_mask::operator !=): New method.
336 * c-omp.c (c_omp_split_clauses): Use if ((mask & something) != 0)
337 instead of if (mask & something) tests everywhere.
338
acf0174b
JJ
339 * c-cppbuiltin.c (c_cpp_builtins): Predefine _OPENMP to
340 201307 instead of 201107.
341 * c-common.c (DEF_FUNCTION_TYPE_8): Define.
342 (c_common_attribute_table): Add "omp declare target" and
343 "omp declare simd" attributes.
344 (handle_omp_declare_target_attribute,
345 handle_omp_declare_simd_attribute): New functions.
346 * c-omp.c: Include c-pragma.h.
347 (c_finish_omp_taskgroup): New function.
348 (c_finish_omp_atomic): Add swapped argument, if true,
349 build the operation first with rhs, lhs arguments and use NOP_EXPR
350 build_modify_expr.
351 (c_finish_omp_for): Add code argument, pass it down to make_code.
352 (c_omp_split_clauses): New function.
353 (c_split_parallel_clauses): Removed.
354 (c_omp_declare_simd_clause_cmp, c_omp_declare_simd_clauses_to_numbers,
355 c_omp_declare_simd_clauses_to_decls): New functions.
356 * c-common.h (omp_clause_mask): New type.
357 (OMP_CLAUSE_MASK_1): Define.
358 (omp_clause_mask::omp_clause_mask, omp_clause_mask::operator &=,
359 omp_clause_mask::operator |=, omp_clause_mask::operator ~,
360 omp_clause_mask::operator |, omp_clause_mask::operator &,
361 omp_clause_mask::operator <<, omp_clause_mask::operator >>,
362 omp_clause_mask::operator ==): New methods.
363 (enum c_omp_clause_split): New.
364 (c_finish_omp_taskgroup): New prototype.
365 (c_finish_omp_atomic): Add swapped argument.
366 (c_finish_omp_for): Add code argument.
367 (c_omp_split_clauses): New prototype.
368 (c_split_parallel_clauses): Removed.
369 (c_omp_declare_simd_clauses_to_numbers,
370 c_omp_declare_simd_clauses_to_decls): New prototypes.
371 * c-pragma.c (omp_pragmas): Add new OpenMP 4.0 constructs.
372 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_CANCEL,
373 PRAGMA_OMP_CANCELLATION_POINT, PRAGMA_OMP_DECLARE_REDUCTION,
374 PRAGMA_OMP_DISTRIBUTE, PRAGMA_OMP_END_DECLARE_TARGET, PRAGMA_OMP_SIMD,
375 PRAGMA_OMP_TARGET, PRAGMA_OMP_TASKGROUP and PRAGMA_OMP_TEAMS.
376 Remove PRAGMA_OMP_PARALLEL_FOR and PRAGMA_OMP_PARALLEL_SECTIONS.
377 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_ALIGNED,
378 PRAGMA_OMP_CLAUSE_DEPEND, PRAGMA_OMP_CLAUSE_DEVICE,
379 PRAGMA_OMP_CLAUSE_DIST_SCHEDULE, PRAGMA_OMP_CLAUSE_FOR,
380 PRAGMA_OMP_CLAUSE_FROM, PRAGMA_OMP_CLAUSE_INBRANCH,
381 PRAGMA_OMP_CLAUSE_LINEAR, PRAGMA_OMP_CLAUSE_MAP,
382 PRAGMA_OMP_CLAUSE_NOTINBRANCH, PRAGMA_OMP_CLAUSE_NUM_TEAMS,
383 PRAGMA_OMP_CLAUSE_PARALLEL, PRAGMA_OMP_CLAUSE_PROC_BIND,
384 PRAGMA_OMP_CLAUSE_SAFELEN, PRAGMA_OMP_CLAUSE_SECTIONS,
385 PRAGMA_OMP_CLAUSE_SIMDLEN, PRAGMA_OMP_CLAUSE_TASKGROUP,
386 PRAGMA_OMP_CLAUSE_THREAD_LIMIT, PRAGMA_OMP_CLAUSE_TO and
387 PRAGMA_OMP_CLAUSE_UNIFORM.
388
826cacfe
MG
3892013-10-09 Marc Glisse <marc.glisse@inria.fr>
390
391 PR tree-optimization/20318
392 * c-common.c (handle_returns_nonnull_attribute): New function.
393 (c_common_attribute_table): Add returns_nonnull.
394
2284b034
MG
3952013-10-03 Marc Glisse <marc.glisse@inria.fr>
396
397 PR c++/19476
398 * c.opt (fcheck-new): Move to common.opt.
399
b56e9788
MP
4002013-09-25 Marek Polacek <polacek@redhat.com>
401 Jakub Jelinek <jakub@redhat.com>
402
403 PR sanitizer/58413
404 * c-ubsan.c (ubsan_instrument_shift): Don't instrument
405 an expression if we can prove it is correct.
406 (ubsan_instrument_division): Likewise. Remove unnecessary
407 check.
408
ce6923c5
MP
4092013-09-18 Marek Polacek <polacek@redhat.com>
410
411 PR sanitizer/58411
412 * c-common.c (handle_no_sanitize_undefined_attribute): New function.
413 Declare it.
414 (struct attribute_spec c_common_att): Add no_sanitize_undefined.
415
fb5610fb
IS
4162013-09-14 Iain Sandoe <iain@codesourcery.com>
417
418 PR target/48094
419 * c.opt (fgnu-runtime, fnext-runtime, fobjc-abi-version,
420 fobjc-gc, freplace-objc-classes): Accept for LTO.
421
88b0e79e
JC
4222013-09-13 Jacek Caban <jacek@codeweavers.com>
423
424 * c-target.def: New hook
425
c9b0866a
PC
4262013-09-09 Paolo Carlini <paolo.carlini@oracle.com>
427
428 PR c++/43452
429 * c.opt (Wdelete-incomplete): Add.
430
0af94e6f
JR
4312013-09-08 Joern Rennecke <joern.rennecke@embecosm.com>
432
433 * c-common.c (same_scalar_type_ignoring_signedness): Delete.
434 (vector_types_compatible_elements_p): New function.
435 * c-common.h: (same_scalar_type_ignoring_signedness): Delete
436 declaration.
437 (vector_types_compatible_elements_p): Declare.
438
7c26172c
GDR
4392013-09-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
440
441 * c-pretty-print.h (c_pretty_printer::simple_type_specifier): Now
442 a virtual member function.
443 (pp_simple_type_specifier): Remove.
444 (pp_c_type_specifier): Likewise.
445 * c-pretty-print.c (c_pretty_printer::simple_type_specifier):
446 Rename from pp_c_type_specifier. Adjust.
447 (c_pretty_printer::c_pretty_printer): Do not assign to
448 simple_type_specifier.
449
20059c8b
GDR
4502013-09-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
451
452 * c-pretty-print.h (c_pretty_printer::type_id): Now a virtual
453 member function.
454 (c_pretty_printer::storage_class_specifier): Likewise.
455 (c_pretty_printer::initializer): Likewise.
456 (pp_declaration): Remove.
457 (pp_declaration_specifiers): Likewise.
458 (pp_abstract_declarator): Likewise.
459 (pp_declarator): Likewise.
460 (pp_type_id): Likewise.
461 (pp_statement): Likewise.
462 (pp_constant): Likewise.
463 (pp_id_expression): Likewise.
464 (pp_primary_expression): Likewise.
465 (pp_unary_expression): Likewise.
466 (pp_multiplicative_expression): Likewise.
467 (pp_conditional_expression): Likewise.
468 (pp_assignment_expression): Likewise.
469 (pp_expression): Likewise.
470 (pp_c_type_id): Likewise.
471 (pp_c_storage_class_specifier): Likewise.
472 * c-pretty-print.c (pp_c_type_cast): Tidy.
473 (pp_c_pointer): Likewise.
474 (pp_c_type_specifier): Likewise.
475 (pp_c_parameter_type_list): Likewise.
476 (pp_c_function_definition): Likewise.
477 (pp_c_init_declarator): Likewise.
478 (pp_c_initializer_list): Likewise.
479 (pp_c_constructor_elts): Likewise.
480 (c_pretty_printer::direct_abstract_declarator): Likewise.
481 (c_pretty_printer::declaration_specifiers): Likewise.
482 (c_pretty_printer::primary_expression): Likewise.
483 (c_pretty_printer::postfix_expression): Likewise.
484 (c_pretty_printer::type_id): Rename from pp_c_type_id.
485 (c_pretty_printer::storage_class_specifier): Rename from
486 pp_c_storage_class_specifier.
487 (c_pretty_printer::initializer): Rename from pp_c_initializer.
488 (c_pretty_printer::c_pretty_printer): Do not assign to type_id,
489 storage_class_specifier, initializer, offset_list, flags.
490
de5a5fa1
MP
4912013-08-30 Marek Polacek <polacek@redhat.com>
492
493 * c-ubsan.c: New file.
494 * c-ubsan.h: New file.
495
8f0e4d72
GDR
4962013-08-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
497
498 * c-pretty-print.h (c_pretty_printer::declaration): Now a virtual
499 member function.
500 (c_pretty_printer::declaration_specifiers): Likewise.
501 (c_pretty_printer::declarator): Likewise.
502 (c_pretty_printer::abstract_declarator): Likewise.
503 (c_pretty_printer::direct_abstract_declarator): Likewise.
504 (c_pretty_printer::direct_declarator): Likewise.
505 (c_pretty_printer::function_specifier): Likewise.
506 (pp_declaration): Adjust.
507 (pp_declaration_specifiers): Likewise.
508 (pp_abstract_declarator): Likewise.
509 (pp_direct_declarator): Likewise.
510 (pp_function_specifier): Likewise.
511 (pp_direct_abstract_declarator): Remove as unused.
512 (pp_c_declaration): Remove.
513 (pp_c_declaration_specifiers): Likewise.
514 (pp_c_declarator): Likewise.
515 (pp_c_direct_declarator): Likewise.
516 (pp_c_function_specifier): Likewise.
517 (pp_c_direct_abstract_declarator): Likewise.
518 * c-pretty-print.c (c_pretty_printer::abstract_declarator): Rename
519 from pp_c_abstract_declarator. Adjust.
520 (c_pretty_printer::direct_abstract_declarator): Rename from
521 pp_c_direct_abstract_declarator. Adjust.
522 (c_pretty_printer::function_specifier): Rename from
523 pp_c_function_specifier. Adjust.
524 (c_pretty_printer::declaration_specifiers): Rename from
525 pp_c_declaration_specifiers. Adjust.
526 (c_pretty_printer::direct_declarator): Rename from
527 pp_c_direct_declarator. Adjust.
528 (c_pretty_printer::declarator): Rename from pp_c_declarator. Adjust.
529 (c_pretty_printer::declaration): Rename from pp_c_declaration. Adjust.
530 (c_pretty_printer::c_pretty_printer): Do not assign to
531 declaration, declaration_specifiers, declarator,
532 direct_declarator, direct_abstract_declarator, function_specifier.
533
00d34d3a
GDR
5342013-08-26 Gabriel Dos Reis <gdre@integrable-solutions.net>
535
536 * c-pretty-print.h (c_pretty_printer::unary_expression): Now a
537 virtual member function.
538 (c_pretty_printer::multiplicative_expression): Likewise.
539 (c_pretty_printer::conditional_expression): Likewise.
540 (c_pretty_printer::assignment_expression): Likewise.
541 (c_pretty_printer::expression): Likewise.
542 (pp_unary_expression): Adjust.
543 (pp_multiplicative_expression): Likewise.
544 (pp_assignment_expression): Likewise.
545 (pp_conditional_expression): Likewise.
546 (pp_expression): Likewise.
547 * c-pretty-print.c (c_pretty_printer::unary_expression): Rename
548 from pp_c_unary_expression. Adjust.
549 (c_pretty_printer::multiplicative_expression): Rename from
550 pp_c_multiplicative_expression. Adjust.
551 (c_pretty_printer::conditional_expression): Rename from
552 pp_c_conditional_expression. Adjust.
553 (c_pretty_printer::assignment_expression): Rename from
554 pp_c_assignment_expression. Adjust.
555 (c_pretty_printer::expression): Rename from pp_c_expression. Adjust.
556 (c_pretty_printer::c_pretty_printer): Do not assign to
557 unary_expression, multiplicative_expression,
558 conditional_expression, expression.
559
fb22178f
GDR
5602013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
561
562 * c-pretty-print.h (c_pretty_printer::postfix_expression): Now a
563 virtual member function.
564 (pp_postfix_expression): Adjust.
565 (pp_c_postfix_expression): Remove.
566 * c-pretty-print.c (c_pretty_printer::postfix_expression): Rename
567 from pp_c_postfix_expression. Adjust.
568 (c_pretty_printer::c_pretty_printer): Do not assign to
569 postfix_expression.
570
7ecc2600
GDR
5712013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
572
573 * c-pretty-print.h (c_pretty_printer::primary_expression): Now a
574 virtua member function.
575 (pp_primary_expression): Adjust.
576 (pp_c_primary_expression): Remove.
577 * c-pretty-print.c (c_pretty_printer::primary_expression): Rename
578 from pp_c_primary_expression. Adjust.
579 (pp_c_initializer_list): Use pp_primary_expression.
580 (c_pretty_printer::c_pretty_printer): Do not assign to
581 primary_expression.
582
0691175f
GDR
5832013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
584
585 * c-pretty-print.h (c_pretty_printer::translate_string): Declare.
586 * c-pretty-print.c (M_): Remove.
587 (c_pretty_printer::translate_string): Define.
588 (pp_c_type_specifier): Use it.
589 (pp_c_primary_expression): Likewise.
590 (pp_c_expression): Likewise.
591
66dfe4c4
GDR
5922013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
593
594 * c-pretty-print.h (c_pretty_printer::id_expression): Now a
595 virtual function.
596 (pp_c_id_expression): Remove.
597 (pp_id_expression): Adjust.
598 * c-pretty-print.c (c_pretty_printer::id_expression): Rename from
599 pp_c_id_expression. Adjust.
600 (pp_c_postfix_expression): Use pp_id_expression.
601 (c_pretty_printer::c_pretty_printer): Do not assign to id_expression.
602
ca43e9d5
GDR
6032013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
604
605 * c-pretty-print.h (c_pretty_printer::constant): Now a virtual
606 member function.
607 (pp_constant): Adjust.
608 (pp_c_constant): Remove.
609 * c-pretty-print.c (c_pretty_printer::constant): Rename from
610 pp_c_constant. Adjust.
611 (pp_c_constant)
612 (pp_c_primary_expression): Call pp_constant in lieu of pp_c_constant.
613 (c_pretty_printer::c_pretty_printer): Remove assignment to constant.
614
da6ca2b5
GDR
6152013-08-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
616
617 * c-pretty-print.h (pp_c_pretty_printer_init): Remove.
618 (c_pretty_printer::c_pretty_printer): Declare.
619 * c-pretty-print.c (pretty_printer::c_pretty_printer): Rename from
620 c_pretty_printer_init. Adjust.
621 (print_c_tree): Do not call c_pretty_printer_init.
622 * c-ada-spec.c (dump_ads): Remove call to pp_construct.
623
65a372f4
AC
6242013-08-09 Arnaud Charlet <charlet@adacore.com>
625
626 * c-ada-spec.c (print_ada_declaration): Prevent accessing null asm name
627
fd9b0f32
PC
6282013-08-05 Paolo Carlini <paolo.carlini@oracle.com>
629
630 PR c++/58080
631 * c-common.c (pointer_int_sum): Add bool parameter.
632 * c-common.h (pointer_int_sum): Adjust declaration.
633
e0aec1e9
GDR
6342013-08-05 Gabriel Dos Reis <gdr@integrable-solutions.net>
635
636 * c-pretty-print.c (print_c_tree): Simplify. Use non-static local
637 c_pretty_printer variable.
638
b066401f
GDR
6392013-08-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
640
641 * c-pretty-print.h (c_pretty_printer): Derive from pretty_printer.
642 (pp_base): Remove.
643 (pp_c_base): Likewise. Adjust users.
644 * c-pretty-print.c (pp_c_maybe_whitespace): Adjust.
645 (pp_c_whitespace): Do not call pp_base.
646 (pp_c_left_paren): Likewise.
647 (pp_c_right_paren): Likewise.
648 (pp_c_left_brace): Likewise.
649 (pp_c_right_brace): Likewise.
650 (pp_c_left_bracket): Likewise.
651 (pp_c_right_bracket): Likewise.
652 (pp_c_dot): Likewise.
653 (pp_c_ampersand): Likewise.
654 (pp_c_star): Likewise.
655 (pp_c_arrow): Likewise.
656 (pp_c_semicolon): Likewise.
657 (pp_c_complement): Likewise.
658 (pp_c_exclamation): Likewise.
659 (pp_c_direct_declarator): Likewise.
660 (pp_c_ws_string): Likewise.
661 (pp_c_identifier): Likewise.
662 (pp_c_statement): Likewise.
663 (print_c_tree): Likewise.
664
65e5a578
ESR
6652013-08-04 Ed Smith-Rowland <3dw4rd@verizon.net>
666
667 PR c++/58072
668 * c-common.c (c_parse_error): Catch user-defined literal tokens and
669 provide useful error strings.
670
137a1a27
GDR
6712013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
672
673 * c-ada-spec.c (pp_ada_tree_identifier): Use specialized pretty
674 printer functions instead of pp_string or operators and punctuators.
675 (dump_generic_ada_node): Likewise.
676 * c-pretty-print.c (pp_c_type_specifier): Likewise.
677 (pp_c_relational_expression): Likewise.
678 (pp_c_logical_or_expression): Likewise.
679
07838b13
GDR
6802013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
681
682 * c-ada-spec.c (print_ada_macros): Use specialized pretty printer
683 functions instead of pp_character.
684 (pp_ada_tree_identifier): Likewise.
685 (dump_ada_double_name): Likewise.
686 (dump_ada_function_declaration): Likewise.
687 (dump_ada_array_domains): Likewise.
688 (dump_template_types): Likewise.
689 (dump_generic_ada_node): Likewise.
690 (print_ada_declaration): Likewise.
691 (print_ada_struct_decl): Likewise.
692 * c-pretty-print.c (pp_c_integer_constant): Likewise.
693
433cc7b0
TT
6942013-07-23 Tom Tromey <tromey@redhat.com>
695
696 * c-common.h (enum rid) <RID_GENERIC>: New constant.
697 * c-common.c (c_common_reswords): Add _Generic.
698
688010ba
OB
6992013-07-21 OndÅ\99ej Bílka <neleai@seznam.cz>
700
701 * c-common.c: Fix typos.
702 * c-common.h: Likewise.
703
2a99e5e6
LL
7042013-07-13 Lubos Lunak <l.lunak@suse.cz>
705
706 PR c++/55203
707 * c-common.c (c_common_attribute_table): Add warn_unused.
708 (handle_warn_unused_attribute): New.
709
c26302d5
JJ
7102013-07-10 Jakub Jelinek <jakub@redhat.com>
711
712 * c-ppoutput.c (scan_translation_unit): Call account_for_newlines
713 for all CPP_TOKEN_FLD_STR tokens, not just CPP_COMMENT.
714
dfeadaa0
PC
7152013-07-10 Paolo Carlini <paolo.carlini@oracle.com>
716
717 PR c++/57869
718 * c.opt: Add Wconditionally-supported.
719
6a2fa4b2
GS
7202013-07-08 Graham Stott <graham.stott@btinternet.com>
721
722 * c-family/array-notation-common.c (length_mismatch_in_expr_p): Delete
723 unused variables l_length and l_node.
724
ecdbd01a 7252013-07-04 Joern Rennecke <joern.rennecke@embecosm.com>
40d3d530
JR
726
727 PR c/57821
728 * c-common.c (complete_array_type): Delay folding first index
729 like other indices. When folding, check for index overflow.
730
bedc293e
MG
7312013-06-27 Marc Glisse <marc.glisse@inria.fr>
732
733 PR c++/57509
734 * c-common.h (c_build_vec_perm_expr): New complain argument.
735 * c-common.c (c_build_vec_perm_expr): Likewise.
736 Use save_expr also in C++.
737
604b2bfc
GDR
7382013-06-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
739
740 * c-common.c (c_common_nodes_and_builtins): Use cxx11 in lieu of cxx0x.
741 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
742 * c-opts.c (c_common_post_options): Likewise.
743
dfeadaa0 7442013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
713b46fa
BI
745
746 * array-notation-common.c (length_mismatch_in_expr): Changed the
747 parameter type's from a dynamic array to a vec_tree. Also removed
748 the size parameters.
749 * c-common.h (length_mismatch_in_expr_p): Fixed prototype's as per
750 the change above.
751
2ce86d2e
BI
7522013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
753
754 * c-common.h (struct cilkplus_an_parts): New structure.
755 (struct cilkplus_an_loop_parts): Likewise.
756 (cilkplus_extract_an_triplets): New prototype.
757 (fix_sec_implicit_args): Likewise.
758 * array-notation-common.c (cilkplus_extract_an_triplets): New function.
759 (fix_sec_implicit_args): Likewise.
604b2bfc 760
07a6825b
BI
7612013-06-20 Balaji V. Iyer <balaji.v.iyer@intel.com>
762
763 * array-notation-common.c (find_inv_trees): Removed an unwanted
764 typecasting.
765 * c-common.h (struct inv_list::additional_tcodes): Changed type from
766 enum rid to enum tree_code.
767
08346abd
JH
7682013-06-11 Jan Hubicka <jh@suse.cz>
769
770 * c-common.c (handle_alias_ifunc_attribute): Do not set
771 DECL_EXTERNAL for weakref variables.
772 * c-pragma.c (handle_pragma_weak): Make sure aliases
773 are not declared as external.
774
d60f1706
BI
7752013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
776
777 * array-notation-common.c (length_mismatch_in_expr_p): Moved this
778 function from c/c-array-notation.c.
779 (is_cilkplus_reduce_builtin): Likewise.
780 (find_rank): Likewise.
781 (extract_array_notation_exprs): Likewise.
782 (replace_array_notations): Likewise.
783 (find_inv_trees): Likewise.
784 (replace_inv_trees): Likewise.
785 (contains_array_notation_expr): Likewise.
786 (find_correct_array_notation_type): Likewise.
787 * c-common.h (struct inv_list): Moved this struct from the file
788 c/c-array-notation.c and added a new field called additional tcodes.
789 (length_mismatch_in_expr_p): New prototype.
790 (is_cilkplus_reduce_builtin): Likewise.
791 (find_rank): Likewise.
792 (extract_array_notation_exprs): Likewise.
793 (replace_array_notation): Likewise.
794 (find_inv_trees): Likewise.
795 (replace_inv_trees): Likewise.
796 (find_correct_array_notation_type): Likewise.
dfeadaa0 797
36536d79
BI
7982013-05-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
799
800 * c-common.c (c_define_builtins): When cilkplus is enabled, the
801 function array_notation_init_builtins is called.
802 (c_common_init_ts): Added ARRAY_NOTATION_REF as typed.
803 * c-common.def (ARRAY_NOTATION_REF): New tree.
804 * c-common.h (build_array_notation_expr): New function declaration.
805 (build_array_notation_ref): Likewise.
806 (extract_sec_implicit_index_arg): New extern declaration.
807 (is_sec_implicit_index_fn): Likewise.
808 (ARRAY_NOTATION_CHECK): New define.
809 (ARRAY_NOTATION_ARRAY): Likewise.
810 (ARRAY_NOTATION_START): Likewise.
811 (ARRAY_NOTATION_LENGTH): Likewise.
812 (ARRAY_NOTATION_STRIDE): Likewise.
813 * c-pretty-print.c (pp_c_postifix_expression): Added a new case for
814 ARRAY_NOTATION_REF.
815 (pp_c_expression): Likewise.
816 * c.opt (flag_enable_cilkplus): New flag.
817 * array-notation-common.c: New file.
818
f7716d57
JJ
8192013-05-14 Jakub Jelinek <jakub@redhat.com>
820
821 PR c++/57274
822 * c-common.c (verify_tree): Don't recurse into SIZEOF_EXPR.
823
a5e0cd1d
MG
8242013-05-10 Marc Glisse <marc.glisse@inria.fr>
825
826 * c-common.c (vector_types_convertible_p): No TYPE_PRECISION for
827 vectors.
828
f6bc1c4a
HS
8292013-05-07 Han Shen <shenhan@google.com>
830
831 * c-cppbuiltin.c (c_cpp_builtins): Added "__SSP_STRONG__=3".
832
3f12f6e9
SKS
8332013-04-29 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
834
835 * c-common.c (check_user_alignment): Emit error for negative values.
836
61949153
PC
8372013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
838
839 * c-opts.c (set_std_cxx11): Use CLK_CXX1Y and CLK_GNUCXX1Y.
840
e93e18e9
PC
8412013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
842
843 * c-cppbuiltin.c (c_cpp_builtins): Do not define
844 __GXX_EXPERIMENTAL_CXX1Y__.
845
44d90fe1
PC
8462013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
847 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
848
849 * c.opt ([Wpointer-arith]): Enabled by -Wpedantic, as documented.
850 * c-common.c (pointer_int_sum): Change -Wpointer-arith pedwarns
851 to simply use OPT_Wpointer_arith.
852 (c_sizeof_or_alignof_type): Likewise.
853
13f39b2e
PC
8542013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
855
856 * c-cppbuiltin.c (c_cpp_builtins): Define __GXX_EXPERIMENTAL_CXX1Y__.
857
4b84d650
JJ
8582013-04-12 Jakub Jelinek <jakub@redhat.com>
859
860 * c-format.c (gcc_diag_char_table, gcc_tdiag_char_table,
861 gcc_cdiag_char_table, gcc_cxxdiag_char_table): Add %r and %R format
862 specifiers.
863
fb037b5d
SB
8642013-04-07 Steven Bosscher <steven@gcc.gnu.org>
865
866 * c-pragma.c (add_to_renaming_pragma_list): Fix leading comment.
867
4e856798
PC
8682013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
869
870 * c-common.c (pointer_int_sum): Remove dead code.
871
4b1baac8
RS
8722013-03-09 Richard Sandiford <rdsandiford@googlemail.com>
873
874 PR middle-end/56524
875 * c-common.c (handle_optimize_attribute): Don't call
876 save_optabs_if_changed.
877
0b50e654
JJ
8782013-03-05 Jakub Jelinek <jakub@redhat.com>
879
880 PR middle-end/56461
881 * c-pch.c (pch_init): Free target_validity at the end.
882
48c41403
JJ
8832013-03-04 Jakub Jelinek <jakub@redhat.com>
884
885 * c-pretty-print.c (pp_c_pretty_printer_init): Clear pp->flags.
886
e664c61c
KS
8872013-02-28 Konstantin Serebryany <konstantin.s.serebryany@gmail.com>
888 Jakub Jelinek <jakub@redhat.com>
889
890 PR sanitizer/56454
891 * c-common.c (handle_no_sanitize_address_attribute): New function.
892 (c_common_attribute_table): Add no_sanitize_address attribute.
893 (handle_no_address_safety_analysis_attribute): Add
894 no_sanitize_address attribute, not no_address_safety_analysis
895 attribute.
896
a475fd3d 8972013-02-18 Aldy Hernandez <aldyh@redhat.com>
135204dd
AH
898
899 PR target/52555
900 * c-common.c (handle_optimize_attribute): Call
901 save_optabs_if_changed.
902
f6007d99
JJ
9032013-02-18 Jakub Jelinek <jakub@redhat.com>
904 Steven Bosscher <steven@gcc.gnu.org>
905
906 PR pch/54117
907 * c-opts.c (c_common_post_options): If debug info is enabled
908 and non-dwarf*, refuse to load PCH files and when writing PCH
909 file warn.
910
cf35e2b1
JJ
9112013-02-05 Jakub Jelinek <jakub@redhat.com>
912
913 PR middle-end/56167
914 * c-common.c (handle_error_attribute): Fix condition.
915
32887460
JJ
9162013-01-30 Jakub Jelinek <jakub@redhat.com>
917
918 PR c++/55742
919 * c-common.c (handle_target_attribute): Revert 2012-12-26 change.
920
5af057d8
JM
9212013-01-18 Jason Merrill <jason@redhat.com>
922
923 PR target/54908
924 * c.opt (-fextern-tls-init): New.
925 * c-opts.c (c_common_post_options): Handle it.
926
cc83c823
JJ
9272013-01-09 Jakub Jelinek <jakub@redhat.com>
928
929 PR c/48418
930 * c-common.c (c_fully_fold_internal): Warn for LSHIFT_EXPR and
931 RSHIFT_EXPR, if orig_op1 isn't INTEGER_CST, op1 is INTEGER_CST
932 and is either negative or bigger or equal to type precision
933 of the first operand.
934
a859517f
MP
9352012-12-03 Marek Polacek <polacek@redhat.com>
936
937 PR c/55570
938 * c-common.c (check_user_alignment): Swap order of tests,
939 check TREE_CODE first.
940
2d7aa578
ESR
9412012-11-29 Ed Smith-Rowland <3dw4rd@verizon.net>
942
943 PR c++/52654
944 * c-common.h (overflow_type): New enum.
945 (build_userdef_literal): Add overflow_type argument.
946 (tree_userdef_literal): Add overflow_type.
947 (USERDEF_LITERAL_OVERFLOW): New access macro.
948 * c-common.c (build_userdef_literal): Add overflow_type
949 argument.
950 * c-lex.c (c_lex_with_flags): Add overflow_type to
951 build_userdef_literal calls.
952 (interpret_integer, interpret_float): Add overflow_type argument.
953
cc3c4f62
RB
9542012-11-28 Richard Biener <rguenther@suse.de>
955
956 PR c/35634
957 * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
958 here and use a type with proper overflow behavior for types that would
959 need to be promoted for the arithmetic.
960
77bc5132
JJ
9612012-11-23 Jakub Jelinek <jakub@redhat.com>
962
963 PR sanitizer/55435
964 * c-common.c (handle_no_address_safety_analysis_attribute): New
965 function.
966 (c_common_attribute_table): Add no_address_safety_analysis.
967
5dc99c46
SB
9682012-11-16 Simon Baldwin <simonb@google.com>
969
970 * c.opt: Add f[no-]canonical-system-headers.
971 * c-opts.c (c_common_handle_option): Handle
972 OPT_fcanonical_system_headers.
973
a4a0016d
ESR
9742012-11-09 Ed Smith-Rowland <3dw4rd@verizon.net>
975
976 PR c++/54413
977 * c-opts.c (c_common_handle_option): Set new flags.
978 * c.opt: Describe new flags.
979
7dbb85a7
JM
9802012-11-09 Jason Merrill <jason@redhat.com>
981
982 * c.opt (Wabi-tag): New.
983
ad7bac31
AK
9842012-11-09 Andi Kleen <ak@linux.intel.com>
985
986 PR 55139
987 * c-common.c (get_atomic_generic_size): Mask with
988 MEMMODEL_MASK
989
7332899a
MLI
9902012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
991
992 PR c/53063
993 * c.opt (Wformat): Make it Alias Wformat=1.
994 (Wformat-contains-nul,Wformat-extra-args,Wformat-nonliteral,
995 Wformat-security,Wformat-y2k,Wformat-zero-length): Use
996 LangEnabledBy.
997 (Wformat=): RejectNegative. Use LangEnabledBy.
998 (Wnonnull): Use LangEnabledBy.
999 * c-opts.c (c_common_handle_option): Do not handle Wformat here.
1000 * c-format.c (set_Wformat): Delete.
1001 (decode_format_attr): Replace OPT_Wformat with OPT_Wformat_.
1002 (maybe_read_dollar_number): Likewise.
1003 (avoid_dollar_number): Likewise.
1004 (finish_dollar_format_checking): Likewise.
1005 (check_format_info): Likewise.
1006 (check_format_info_main): Likewise.
1007 (check_format_types): Likewise.
1008 (format_type_warning): Likewise.
1009 * c-common.c (int): Likewise.
1010 (check_function_sentinel): Likewise.
1011 * c-common.h (warn_format,set_Wformat): Do not declare here.
1012
34a180a6
MLI
10132012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
1014
1015 PR c/53063
1016 * c.opt(Warray-bounds,Wdelete-non-virtual-dtor,Wenum-compare,
1017 Wmain,Woverlength-strings, Wunknown-pragmas,Wunused-macros):
1018 Use LangEnabledBy.
1019 (Wswitch,Wswitch-default,Wswitch-enum): Likewise. Move here from
1020 common.opt.
1021 (Wvariadic-macros): Init(1).
1022 * c-opts.c (c_common_handle_option): Do not handle them
1023 explicitly.
1024 (c_common_post_options): Likewise.
1025 (sanitize_cpp_opts): warn_unused_macros is now
1026 cpp_warn_unused_macros.
1027 (push_command_line_include): Likewise.
1028 * c-common.c (warn_unknown_pragmas): Do not define.
1029 * c-common.h (warn_unknown_pragmas): Do not declare.
1030
3f46d6a5
MLI
10312012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
1032
1033 PR c/51294
1034 * c-common.c (conversion_warning): Handle conditional expressions.
1035
880661a4
JW
10362012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
1037
1038 PR c++/54930
1039 * c.opt (Wreturn_local_addr): Define new option.
1040
4514a96b
JM
10412012-10-25 Jason Merrill <jason@redhat.com>
1042
f14edc1a
JM
1043 * c.opt (Wvirtual-move-assign): New.
1044
4514a96b
JM
1045 * c.opt (Winherited-variadic-ctor): New.
1046
93100c6b
MG
10472012-10-25 Marc Glisse <marc.glisse@inria.fr>
1048
1049 PR c++/54427
1050 * c-common.c (scalar_to_vector): Handle VEC_COND_EXPR.
1051
1efcb8c6
JM
10522012-10-23 Joseph Myers <joseph@codesourcery.com>
1053
1054 * c-common.h (pch_cpp_save_state): Declare.
1055 * c-target.def (c_preinclude): New hook.
1056 * c-opts.c (done_preinclude): New.
1057 (push_command_line_include): Handle default preincluded header.
1058 (cb_file_change): Call pch_cpp_save_state when calling
1059 push_command_line_include.
1060 * c-pch.c (pch_ready_to_save_cpp_state, pch_cpp_state_saved)
1061 (pch_cpp_save_state): New.
1062 (pch_init): Call pch_cpp_save_state conditionally, instead of
1063 calling cpp_save_state.
1064
4a0ae68e
MLI
10652012-10-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
1066
1067 PR c/53063
1068 PR c/40989
1069 * c.opt (Waddress,Wchar-subscripts,Wsign-conversion,Wimplicit,
1070 Wimplicit-function-declaration,Wimplicit-int,Wsizeof-pointer-memaccess,
1071 Wnarrowing,Wparentheses,Wpointer-sign,Wreturn-type,Wsequence-point,
1072 Wsign-compare,Wuninitialized,Wmaybe-uninitialized,Wunused,
1073 Wvolatile-register-var): Add LangEnabledBy or EnabledBy.
1074 * c-opts.c (c_common_handle_option): Remove explicit handling from
1075 here.
1076 (c_common_post_options): Likewise.
1077
67e4210b
EB
10782012-10-18 Eric Botcazou <ebotcazou@adacore.com>
1079
1080 * c-ada-spec.c (LOCATION_COL): Delete.
1081 (compare_location): New function.
1082 (compare_node): Use it.
1083 (compare_comment): Likewise.
1084
65d4f2cd
MLI
10852012-10-16 Manuel López-Ibáñez <manu@gcc.gnu.org>
1086
1087 PR c/53063
1088 PR c/40989
1089 * c.opt (Wstrict-aliasing=,Wstrict-overflow=): Use LangEnabledBy.
1090 * c-opts.c (c_common_handle_option): Do not set them here. Add
1091 comment.
1092 (c_common_post_options): Likewise.
1093
909881cb
EB
10942012-10-16 Eric Botcazou <ebotcazou@adacore.com>
1095
1096 * c-ada-spec.c (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Define.
1097 (dump_generic_ada_node) <INTEGER_CST>: Deal with sizetype specially.
1098 Remove POINTER_TYPE handling, add large unsigned handling and use
1099 ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX for big numbers.
1100
3a785c97
JJ
11012012-10-12 Jakub Jelinek <jakub@redhat.com>
1102
1103 PR c/54381
1104 * c-common.h (sizeof_pointer_memaccess_warning): Adjust prototype.
1105 * c-common.c (sizeof_pointer_memaccess_warning): Take array of 3
1106 locs and array of 3 trees instead of just single loc and single
1107 sizeof_arg tree. Handle __builtin___*_chk builtins too, and
1108 also stpncpy, bcopy, bcmp, bzero, snprintf and vsnprintf builtins.
1109 For *cmp* builtins that take two sources strings report warnings
1110 about first and second source, not about destination and source.
1111
5e54f81d
MG
11122012-10-12 Marc Glisse <marc.glisse@inria.fr>
1113
1114 PR c++/53055
1115 * c-common.h (enum ref_operator) [RO_ARROW_STAR]: New.
1116
f5b02f1e
EB
11172012-10-11 Eric Botcazou <ebotcazou@adacore.com>
1118
1119 * c-ada-spec.c (dump_ada_template): Bail out for template declarations
1120 declaring something coming from another file.
1121
b46dbc6c
AC
11222012-10-10 Arnaud Charlet <charlet@adacore.com>
1123
f5b02f1e 1124 PR ada/54845
b46dbc6c
AC
1125 * c-ada-spec.c (print_ada_struct_decl): Increase buf size.
1126
5d9de0d0
PC
11272012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
1128
1129 PR c++/54194
1130 * c-common.c (warn_about_parentheses): Add location_t parameter;
1131 use EXPR_LOC_OR_LOC.
1132 * c-common.h: Update declaration.
1133
a212e43f
MG
11342012-10-09 Marc Glisse <marc.glisse@inria.fr>
1135
1136 PR c++/54427
1137 * c-common.c (scalar_to_vector): Moved from c-typeck.c. Support
1138 more operations. Make error messages optional.
1139 * c-common.h (enum stv_conv): Moved from c-typeck.c.
1140 (scalar_to_vector): Declare.
1141
b1db7f91
JM
11422012-10-08 Jason Merrill <jason@redhat.com>
1143
1144 * c-common.c (c_common_reswords): Add thread_local.
1145
e28d52cf
DS
11462012-10-08 Dodji Seketeli <dodji@redhat.com>
1147
1148 PR c++/53528 C++11 attribute support
1149 * c-common.h (bitfield_p, cxx_fundamental_alignment_p): Declare
1150 new functions.
1151 * c-common.c (check_cxx_fundamental_alignment_constraints): New
1152 static function.
1153 (handle_aligned_attribute): In choose strictest alignment
1154 among many. Use new check_cxx_fundamental_alignment_constraints.
1155 (handle_transparent_union_attribute): In c++11 attribute syntax,
1156 don't look through typedefs.
1157
3b78de56
AC
11582012-10-04 Arnaud Charlet <charlet@adacore.com>
1159
1160 * c-ada-spec.c (print_ada_declaration): Remove handling of TDF_RAW.
1161 * c.opt (-fdump-ada-spec, -fdump-ada-spec-slim): Move switch definition
1162 out of dumpfile.h.
1163
6040bb5f
DC
11642012-09-25 Dehao Chen <dehao@google.com>
1165
1166 PR middle-end/54645
3b78de56 1167 * c-pch.c (c_common_read_pch): Rebuild the location_adhoc_data
6040bb5f
DC
1168 map when read in the pch.
1169
0b07a57e
AC
11702012-09-18 Arnaud Charlet <charlet@adacore.com>
1171
1172 * c-ada-spec.c: Style fixes.
1173
da5182be
TQ
11742012-09-18 Thomas Quinot <quinot@adacore.com>
1175
1176 * c.opt (-fada-spec-parent): Define new command line switch.
1177 * c-ada-spec.c (get_ada_package): When -fada-spec-parent
1178 is specified, generate binding spec as a child of the specified unit.
1179
0ccb505d
PC
11802012-09-13 Paolo Carlini <paolo.carlini@oracle.com>
1181 Manuel López-Ibáñez <manu@gcc.gnu.org>
1182
1183 PR c++/53210
1184 * c.opt ([Winit-self]): Enabled by -Wall in C++.
1185
c583af79
AC
11862012-08-23 Arnaud Charlet <charlet@adacore.com>
1187
1188 * c-ada-spec.c (dump_generic_ada_node): Fix handling of name_only
1189 for pointers, and add missing Convention C pragma.
1190 (print_ada_struct_decl): Add missing aliased keyword.
1191 (dump_ads): Add pragma Ada_2005 and Style_Checks (Off).
1192
1a4049e7
JJ
11932012-08-17 Jakub Jelinek <jakub@redhat.com>
1194
1195 * c-common.c (sizeof_pointer_memaccess_warning): New function.
1196 * c.opt (-Wsizeof-pointer-memaccess): Add new option.
1197 * c-opts.c (c_common_handle_option): Enable it for -Wall.
1198 * c-common.h (sizeof_pointer_memaccess_warning): Add prototype.
1199 * c-common.def (SIZEOF_EXPR): Moved here from cp-tree.def.
1200
70b5e7dc
RG
12012012-08-10 Richard Guenther <rguenther@suse.de>
1202
1203 * c-pretty-print.c (pp_c_expression): Handle anonymous SSA names.
1204
f8923f7e
SB
12052012-08-07 Steven Bosscher <steven@gcc.gnu.org>
1206
1207 * c-pretty-print.c (pp_c_function_definition): Use pp_newline_and_flush
1208 instead of separate pp_newline and pp_flush.
1209 (print_c_tree): Likewise.
1210
e45abe1f
RH
12112012-07-26 Richard Henderson <rth@redhat.com>
1212
1213 * c-common.c (handle_hot_attribute): Allow labels.
1214 (handle_cold_attribute): Likewise.
1215
332f1d24
JJ
12162012-07-20 Jakub Jelinek <jakub@redhat.com>
1217
1218 PR c++/28656
1219 * c-common.c (check_function_nonnull): Handle multiple nonnull
1220 attributes properly.
1221
7ee2468b
SB
12222012-07-16 Steven Bosscher <steven@gcc.gnu.org>
1223
1224 * c-gimplify.c: Include dumpfile.h instead of tree-dump.h.
1225 * c-ada-spec.c: Likewise.
1226 * c-dump.c (dump_stmt): Move to cp/dump.c, the only user.
1227
ee7b28eb
SB
12282012-07-14 Steven Bosscher <steven@gcc.gnu.org>
1229
1230 * c-pch.c (CHECK_NO_ASM_OUT_DURING_PCH): Do not define.
1231 Remove code conditional on it.
1232
6bdf3519
SB
12332012-07-11 Steven Bosscher <steven@gcc.gnu.org>
1234
1235 * c-gimplify.c: Do not include basic-block.h.
1236 * c-common.c: Do not include linfuncs.h.
1237
532aafad
SB
12382012-07-08 Steven Bosscher <steven@gcc.gnu.org>
1239
1240 * c-common.h: Include tree.h.
1241
8d0d1915
JM
12422012-07-02 Jason Merrill <jason@redhat.com>
1243
1244 PR c++/53524
1245 * c-common.c (get_priority): Call default_conversion.
1246
fbc873ad
UB
12472012-07-01 Uros Bizjak <ubizjak@gmail.com>
1248
1249 * c-pch.c (c_common_write_pch): Remove unused variables.
1250
d4a10d0a
SB
12512012-06-29 Steven Bosscher <steven@gcc.gnu.org>
1252
1253 * cppspec.c: Moved from gcc/ to here.
1254
6f3a2e23
KT
12552012-06-27 Kai Tietz <ktietz@redhat.com>
1256
1257 PR preprocessor/37215
1258 * c-ppoutput.c (preprocess_file): Check for nonempty buffer.
1259
8ca92d04
SB
12602012-06-21 Steven Bosscher <steven@gcc.gnu.org>
1261
1262 * c-common.h (c_common_print_pch_checksum): Remove.
1263 * c-pch.c: Do not include output.h.
1264 (CHECK_NO_ASM_OUT_DURING_PCH): Define and add FIXME.
1265 (asm_out_file): Define iff CHECK_NO_ASM_OUT_DURING_PCH isdefined.
1266 (asm_file_startpos): Define iff CHECK_NO_ASM_OUT_DURING_PCH is defined.
1267 (struct c_pch_header): Remove.
1268 (get_ident): Update gpch version.
1269 (pch_init): Do not print executable_checksum to asm_out_file.
1270 Do not fail if there is no asm_out_file to read back from. Set
1271 asm_file_startpos only if CHECK_NO_ASM_OUT_DURING_PCH is defined.
1272 (c_common_write_pch): Verify that nothing was written to asm_out_file
1273 since pch_init was called. Do not write a c_pch_header, and do not
1274 copy from asm_out_file to the PCH.
1275 (c_common_read_pch): Do not read a c_pch_header, and do not restore
1276 the content of asm_out_file from the PCH.
1277 (c_common_print_pch_checksum): Remove.
1278 * c-opts.c (c_common_init): Print out executable_checksum directly.
1279
70f42967
SB
12802012-06-19 Steven Bosscher <steven@gcc.gnu.org>
1281
1282 * c-target.def (objc_declare_unresolved_class_reference,
1283 objc_declare_class_definition): Add new hooks.
1284
a8781821
SB
12852012-06-19 Steven Bosscher <steven@gcc.gnu.org>
1286
1287 * c-lex.c: Do not include output.h.
1288 (cb_ident): Try to put out .ident with targetm.asm_out.output_ident.
1289 Remove uses of ASM_OUTPUT_IDENT.
1290
9e1a8dd1
RR
12912012-06-15 Marc Glisse <marc.glisse@inria.fr>
1292
1293 PR c++/51033
1294 * c-common.h (c_build_vec_perm_expr): Move decl here.
1295 * c-common.c (c_build_vec_perm_expr): Move definition
1296 here.
1297
6f07a821
SB
12982012-06-06 Steven Bosscher <steven@gcc.gnu.org>
1299
1300 * c.opt (fconserve-space): Turn into a no-op.
1301
9faeb493 13022012-06-04 Sterling Augustine <saugustine@google.com>
c265f413
SA
1303
1304 * c-pretty-print.h (pp_c_flag_gnu_v3): New enumerator.
1305 * c-pretty-print.c (pp_c_specifier_qualifier_list): Check it at
1306 both the start and end of the function.
1307
a4b7d13c
SB
13082012-06-04 Steven Bosscher <steven@gcc.gnu.org>
1309
1310 * c-common.c: Do not include output.h.
1311 * c-pragma.c: Likewise.
1312
c265f413
SA
13132012-06-04 Steven Bosscher <steven@gcc.gnu.org>
1314
1315 * error.c (dump_decl): Check pp_c_flag_gnu_v3.
1316 (decl_as_dwarf_string, lang_decl_dwarf_name): New functions.
1317 (lang_decl_name): Handle namespace decls.
1318
be7a421e
SB
13192012-05-31 Steven Bosscher <steven@gcc.gnu.org>
1320
1321 * c-ada-spec.c: Do not include output.h.
1322 * c-semantics.c: Likewise.
1323
65de6659
JM
13242012-05-29 Joseph Myers <joseph@codesourcery.com>
1325
1326 * c-common.c: Fix typo.
1327
ca5f4331
MM
13282012-05-29 Michael Matz <matz@suse.de>
1329
1330 * c-common.h (c_expand_decl): Remove prototype.
1331
4f7f7aca
MLI
13322012-05-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
1333
1334 * c.opt (Wmissing-braces): Use LangEnabledBy(C ObjC,Wall).
1335 * c-opts.c (c_common_handle_option): Remove code handling
1336 warn_missing_braces.
1337
4a792f9b
PC
13382012-05-28 Paolo Carlini <paolo.carlini@oracle.com>
1339
1340 PR c++/25137
1341 * c-opts.c (c_common_handle_option): For C++ -Wall doesn't enable
1342 -Wmissing_braces.
1343
650dc14a
DS
13442012-05-22 Dodji Seketeli <dodji@redhat.com>
1345
1346 PR c++/53322
1347 * c.opt (Wunused-local-typedefs): Use EnabledBy(Wunused).
1348
9b095bf1
MLI
13492012-05-17 Manuel López-Ibáñez <manu@gcc.gnu.org>
1350
1351 * c.opt (--pedantic-errors,-pedantic-errors): Do not handle here.
1352 * c-opts.c (c_common_handle_option): Do not handle explicitly
1353 Wreturn-type, Wwrite-strings, warn_ecpp, and -pedantic-errors.
1354
0b2c4be5
DS
13552012-05-16 Dodji Seketeli <dodji@redhat.com>
1356
1357 PR preprocessor/7263
1358 * c-lex.c (c_lex_with_flags): Pass a virtual location to the call
1359 to cpp_classify_number. For diagnostics, use the precise location
1360 instead of the global input_location.
1361
a1bde5af
PC
13622012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
1363
d02924ef 1364 PR c++/11856
a1bde5af
PC
1365 * c-common.c (shorten_compare): Check c_inhibit_evaluation_warnings.
1366
d1ede5f4
BS
13672012-05-14 Bernd Schmidt <bernds@codesourcery.com>
1368
a1bde5af 1369 * c-common.c (DEF_ATTR_STRING): Define and undefine as necessary.
d1ede5f4 1370
f2bc201f
MLI
13712012-05-14 Manuel López-Ibáñez <manu@gcc.gnu.org>
1372
1373 PR 53063
1374 * c.opt (Wc++0X-compat,Wdelete-non-virtual-dtor,Wjump-misses-init,
1375 Wreorder): Use LangEnabledBy.
1376 * c-opts.c (c_common_handle_option): Do not enable them
1377 explicitly. Call lang-specific generated functions.
1378 (c_common_post_options): Do not set them here.
1379
95744782
MLI
13802012-05-13 Manuel López-Ibáñez <manu@gcc.gnu.org>
1381
1382 * c.opt (Wclobbered,Wempty-body,Wignored-qualifiers,
1383 Wmissing-field-initializers,Wmissing-parameter-type,
1384 Wold-style-declaration,Woverride-init): Use EnabledBy.
1385 * c-opts.c (c_common_post_options): Do not set here explicitly.
1386
7d5a5747
MLI
13872012-05-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
1388
1389 PR 53063
1390 * c-opts.c (c_common_handle_option): Use handle_generated_option
1391 to enable sub-options.
1392
5a3c9cf2
PC
13932012-05-10 Paolo Carlini <paolo.carlini@oracle.com>
1394
1395 PR c++/53158
1396 * c-common.c (warnings_for_convert_and_check): Use warning_at.
1397
3ac8781c
RG
13982012-05-10 Richard Guenther <rguenther@suse.de>
1399
1400 * c-common.c (c_sizeof_or_alignof_type): Remove assert and
1401 adjust commentary about TYPE_IS_SIZETYPE types.
1402
1e537948
MLI
14032012-05-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
1404
1405 PR c++/53261
1406 * c-common.c (warn_logical_operator): Check that argument of
1407 integer_zerop is not NULL.
1408
f2c4a785
MLI
14092012-05-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
1410
1411 PR c/43772
1412 * c-common.c (warn_logical_operator): Do not warn if either side
1413 is already true or false.
1414
50f305ca
MLI
14152012-05-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
1416
1417 PR c/51712
1418 * c-common.c (expr_original_type): New.
1419 (shorten_compare): Do not warn for enumeration types.
1420
0c3641b0
MLI
14212012-05-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
1422
1423 * c.opt (fpermissive): Add Var(flag_permissive).
1424
7edaa4d2
MG
14252012-04-30 Marc Glisse <marc.glisse@inria.fr>
1426
1427 PR c++/51033
1428 * c-common.c (convert_vector_to_pointer_for_subscript): New function.
1429 * c-common.h (convert_vector_to_pointer_for_subscript): Declare it.
1430
b9c8da34
DS
14312012-04-30 Dodji Seketeli <dodji@redhat.com>
1432
1433 Add -Wvarargs option
1434 * c.opt (Wvarargs): Define new option.
1435
e6c69da0
MLI
14362012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
1437
1438 * c-common.c (check_function_arguments): Replace
1439 Wmissing-format-attribute with Wsuggest-attribute=format.
1440
90137d8f
MLI
14412012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
1442
1443 * c.opt (Wsuggest-attribute=format): New. Alias of
1444 Wmissing-format-attribute.
1445 * c-format.c (decode_format_type): Replace
1446 Wmissing-format-attribute with Wsuggest-attribute=format.
1447 (check_function_format): Likewise.
1448
9faeb493 14492012-04-27 Ollie Wild <aaw@google.com>
7f5f5f98
OW
1450
1451 * c-common.c: Add CPP_W_LITERAL_SUFFIX mapping.
1452 * c-opts.c (c_common_handle_option): Handle OPT_Wliteral_suffix.
1453 * c.opt: Add Wliteral-suffix.
1454
c1771a20
MLI
14552012-04-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
1456
1457 PR c/44774
1458 * c.opt (Wpedantic): New.
1459 (pedantic): Alias Wpedantic.
1460 * c-opts.c (c_common_handle_option): Replace -pedantic with -Wpedantic.
1461 (c_common_post_options): Likewise.
1462 (sanitize_cpp_opts): Likewise.
1463 * c-lex.c (interpret_float): Likewise.
1464 * c-format.c (check_format_types): Likewise.
1465 * c-common.c (pointer_int_sum): Likewise.
1466 (c_sizeof_or_alignof_type): Likewise.
1467 (c_add_case_label): Likewise.
1468 (c_do_switch_warnings): Likewise.
1469 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
1470
04b391c1
JM
14712012-04-15 Jason Merrill <jason@redhat.com>
1472
1473 PR c++/52818
1474 * c-format.c (CPLUSPLUS_STD_VER): C++11 inherits from C99.
1475 (C_STD_NAME): Distinguish between C++98 and C++11.
1476
ac868f29
EB
14772012-04-11 Eric Botcazou <ebotcazou@adacore.com>
1478
1479 PR target/52624
1480 * c-common.h (uint16_type_node): Rename into...
1481 (c_uint16_type_node): ...this.
1482 * c-common.c (c_common_nodes_and_builtins): Adjust for above renaming.
1483 * c-cppbuiltin.c (builtin_define_stdint_macros): Likewise.
1484
fd4116f4
MLI
14852012-04-10 Manuel López-Ibáñez <manu@gcc.gnu.org>
1486
1487 * c-common.c (warn_if_unused_value): Move definition to here.
1488 * c-common.h (warn_if_unused_value): Move declaration to here.
1489
573ac65e
WB
14902012-03-23 William Bader <williambader@hotmail.com>
1491
1492 * c-lex.c (c_lex_with_flags): Avoid declarations after stmts.
1493
552b8185
JM
14942012-03-20 Jason Merrill <jason@redhat.com>
1495
1496 * c-common.h (enum cxx_dialect): Add cxx1y.
1497 * c-common.c (c_common_nodes_and_builtins): Use >= for cxx_dialect
1498 test.
1499 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
1500 * c-opts.c (c_common_post_options): Likewise.
1501 (set_std_cxx1y): New.
1502 (c_common_handle_option): Call it.
1503 * c.opt (-std=c++1y, -std=gnu++1y): New flags.
1504
04398fa8
PC
15052012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
1506
1507 PR c++/14710
1508 * c.opt ([Wuseless-cast]): Add.
1509
d2a12ae7
RG
15102012-03-16 Richard Guenther <rguenther@suse.de>
1511
1512 * c-pretty-print.c (pp_c_initializer_list): Adjust.
1513
a12bf402
MLI
15142012-03-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
1515
1516 PR c++/44783
1517 * c.opt (ftemplate-backtrace-limit) Add.
1518
5c30094f
RO
15192012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1520
1521 * c-cppbuiltin.c (c_cpp_builtins): Remove #pragma extern_prefix
1522 handling.
1523 * c-pragma.c (handle_pragma_extern_prefix): Remove.
1524 (init_pragma): Don't register extern_prefix.
1525
21fa2faf
RG
15262012-03-12 Richard Guenther <rguenther@suse.de>
1527
1528 * c-common.c (c_common_get_narrower): Use c_common_type_for_size.
1529 (builtin_type_for_size): Likewise.
1530
e3793c6f
JJ
15312012-02-13 Jakub Jelinek <jakub@redhat.com>
1532
1533 PR c++/52215
1534 * c-common.c (sync_resolve_params): Don't decide whether to convert
1535 or not based on TYPE_SIZE comparison, convert whenever arg_type
1536 is unsigned INTEGER_TYPE.
1537
93286335
PC
15382012-02-06 Paolo Carlini <paolo.carlini@oracle.com>
1539
1540 PR c/52118
1541 * c.opt ([Wunused-local-typedefs]): Fix description.
1542
7a421706
MS
15432012-01-24 Mike Stump <mikestump@comcast.net>
1544
1545 * c-common.c (c_common_type_for_mode): Match signed/unsigned types
1546 exactly.
1547
ba9b1f11
RG
15482012-01-18 Richard Guenther <rguenther@suse.de>
1549
1550 * c-opts.c (c_common_post_options): Reset LTO flags if
1551 we are about to generate a PCH.
1552
465406be
PC
15532012-01-17 Paolo Carlini <paolo.carlini@oracle.com>
1554
1555 PR c++/51777
1556 * c-pretty-print.c (pp_c_integer_constant): For unsigned constants
1557 use pp_unsigned_wide_integer.
1558
aee15221
RG
15592012-01-10 Richard Guenther <rguenther@suse.de>
1560
1561 PR middle-end/51806
1562 * c-opts.c (c_common_handle_option): Move -Werror handling
1563 to language independent code.
1564
5720c0dc
RG
15652012-01-05 Richard Guenther <rguenther@suse.de>
1566
1567 PR middle-end/51764
1568 * c.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move here
1569 from common.opt.
1570
73ac190a
PC
15712011-12-30 Paolo Carlini <paolo.carlini@oracle.com>
1572
1573 PR c++/51316
1574 * c-common.c (c_sizeof_or_alignof_type): In C++ allow for alignof
1575 of array types with an unknown bound.
1576
48b0b196
JM
15772011-12-20 Joseph Myers <joseph@codesourcery.com>
1578
1579 * c-common.c (flag_isoc99): Update comment to refer to C11.
1580 (flag_isoc1x): Change to flag_isoc11.
1581 * c-common.h (flag_isoc99): Update comment to refer to C11.
1582 (flag_isoc1x): Change to flag_isoc11.
1583 * c-cppbuiltin.c (cpp_atomic_builtins): Change comment to refer to
1584 C11.
1585 * c-opts.c (set_std_c1x): Change to set_std_c11.
1586 (c_common_handle_option): Handle OPT_std_c11 and OPT_std_gnu11.
1587 Call set_std_c11.
1588 (set_std_c89, set_std_c99, set_std_c11): Use flag_isoc11.
1589 (set_std_c1): Use CLK_STDC11 and CLK_GNUC11.
1590 * c.opt (std=c1x): Change to std=c11. Document as non-draft
1591 standard.
1592 (std=c1x, std=iso9899:2011): Add as aliases of std=c11.
1593 (std=gnu1x): Change to std=gnu11. Refer to non-draft standard.
1594 (std=gnu1x): Make alias of std=gnu11.
1595
d58d6eb5
JM
15962011-12-19 Jason Merrill <jason@redhat.com>
1597
1598 PR c++/51228
1599 * c-common.c (handle_transparent_union_attribute): Check the first
1600 field if the type is complete.
1601
b3908fcc
JW
16022011-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
1603
1604 PR libstdc++/51365
1605 * c-common.c (RID_IS_FINAL): Add.
1606 * c-common.h (RID_IS_FINAL): Add.
1607
fea3ca91
IS
16082011-11-30 Iain Sandoe <iains@gcc.gnu.org>
1609
1610 * c.opt (fgnu-runtime): Provide full description.
1611 (fnext-runtime): Likewise.
1612 * c-opts.c (OPT_fgnu_runtime, OPT_fnext_runtime) Remove.
1613
62bad7cd
AM
16142011-11-28 Andrew MacLeod <amacleod@redhat.com>
1615
1616 * c-cpp-builtin.c (cpp_atomic_builtins):New. Emit all atomic
1617 predefines in one place. Add LOCK_FREE predefines.
1618 (c_cpp_builtins): Move Legacy HAVE_SYNC predefines to
1619 new func.
1620
c466c4ff
AM
16212011-11-24 Andrew MacLeod <amacleod@redhat.com>
1622
1623 PR c/51256
9faeb493 1624 * c-common.c (get_atomic_generic_size): Check for various error
c466c4ff 1625 conditions
9faeb493
UB
1626 (resolve_overloaded_atomic_exchange,
1627 resolve_overloaded_atomic_compare_exchange,
c466c4ff
AM
1628 resolve_overloaded_atomic_load, resolve_overloaded_atomic_store): Return
1629 error_mark_node for error conditions.
9faeb493 1630
a5952633
RG
16312011-11-08 Richard Guenther <rguenther@suse.de>
1632
1633 PR middle-end/51010
1634 c-family/
1635
0a35513e
AH
16362011-11-07 Richard Henderson <rth@redhat.com>
1637 Aldy Hernandez <aldyh@redhat.com>
1638 Torvald Riegel <triegel@redhat.com>
1639
1640 Merged from transactional-memory.
1641
1642 * c-common.c (handle_tm_wrap_attribute,
1643 handle_tm_attribute, ignore_attribute, parse_tm_stmt_attr): New.
1644 (struct c_common_reswords): Added __transaction* keywords.
1645 (struct c_common_attribute_table): Added transaction* and tm_regparm
1646 attributes.
1647 * c-common.h: Added RID_TRANSACTION*. Added TM_ATTR* and TM_STMT*
1648 masks.
1649 (parse_tm_stmt_attr, tm_attr_to_mask, tm_mask_to_attr,
1650 find_tm_attribute): Declare.
1651
6d87092d
JM
16522011-11-07 Jason Merrill <jason@redhat.com>
1653
1654 PR c++/35688
1655 * c-common.c, c-common.h: Revert yesterday's changes.
1656
8e7860a1
JM
16572011-11-06 Jason Merrill <jason@redhat.com>
1658
1659 PR c++/35688
1660 * c-common.c (decl_has_visibility_attr): Split out from...
1661 (c_determine_visibility): ...here.
1662 * c-common.h: Declare it.
1663
d19fa6b5
JM
16642011-11-06 Joseph Myers <joseph@codesourcery.com>
1665
1666 * c-common.c (c_common_reswords): Add _Alignas and _Alignof.
1667 (c_sizeof_or_alignof_type): Diagnose alignof applied to a function
1668 type.
1669 (check_user_alignment): New. Split out of
1670 handle_aligned_attribute. Disallow integer constants with
1671 noninteger types. Conditionally allow zero.
1672 (handle_aligned_attribute): Use check_user_alignment.
1673 * c-common.h (RID_ALIGNAS, check_user_alignment): New.
1674
86951993
AM
16752011-11-06 Andrew MacLeod <amacleod@redhat.com>
1676 Richard Henderson <rth@redhat.com>
1677
1678 Merged from cxx-mem-model.
1679
1680 * c-cppbuiltin.c (c_cpp_builtins): Test both atomic and sync patterns.
9faeb493 1681 * c-common.c (sync_resolve_params, sync_resolve_return): Only tweak
86951993
AM
1682 parameters that are the same type size.
1683 (get_atomic_generic_size): New. Find size of generic
1684 atomic function parameters and do typechecking.
1685 (add_atomic_size_parameter): New. Insert size into parameter list.
1686 (resolve_overloaded_atomic_exchange): Restructure __atomic_exchange to
1687 either __atomic_exchange_n or external library call.
9faeb493 1688 (resolve_overloaded_atomic_compare_exchange): Restructure
86951993 1689 __atomic_compare_exchange to either _n variant or external library call.
9faeb493 1690 (resolve_overloaded_atomic_load): Restructure __atomic_load to either
86951993
AM
1691 __atomic_load_n or an external library call.
1692 (resolve_overloaded_atomic_store): Restructure __atomic_store to either
1693 __atomic_store_n or an external library call.
1694 (resolve_overloaded_builtin): Handle new __atomic builtins.
1695
cf9e9959
EB
16962011-11-04 Eric Botcazou <ebotcazou@adacore.com>
1697
1698 PR c++/50608
1699 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1.
1700 (fold_offsetof_1): Make global. Remove STOP_REF argument and adjust.
1701 <INDIRECT_REF>: Return the argument.
1702 <ARRAY_REF>: Remove special code for negative offset.
1703 Call fold_build_pointer_plus instead of size_binop.
1704 (fold_offsetof): Remove STOP_REF argument and adjust.
1705 * c-common.h (fold_offsetof_1): Declare.
1706 (fold_offsetof): Remove STOP_REF argument.
1707
25339f10
JM
17082011-11-02 Paolo Carlini <paolo.carlini@oracle.com>
1709
1710 PR c++/50810
1711 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
1712 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
1713 Wnarrowing for C++0x and C++98.
1714 * c.opt ([Wnarrowing]): Update.
1715
89401152
PC
17162011-11-01 Paolo Carlini <paolo.carlini@oracle.com>
1717
1718 PR c++/44277
1719 * c.opt: Add Wzero-as-null-pointer-constant.
1720
97e3ad20
JM
17212011-10-31 Jason Merrill <jason@redhat.com>
1722
15694fdd
JM
1723 * c.opt (-fdeduce-init-list): Off by default.
1724
97e3ad20
JM
1725 PR c++/50920
1726 * c-common.h (cxx_dialect): Add cxx11 and cxx03.
1727 * c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03,
1728 and -Wc++11-compat.
1729 * c-opts.c (set_std_cxx11): Rename from set_std_cxx0x.
1730
fb9120e3
RAV
17312011-10-27 Roberto Agostino Vitillo <ravitillo@lbl.gov>
1732
1733 PR c++/30066
1734 * c.opt (fvisibility-inlines-hidden): Description change.
1735
3ce4f9e4
ESR
17362011-10-26 Ed Smith-Rowland <3dw4rd@verizon.net>
1737
1738 Implement C++11 user-defined literals.
1739 * c-common.c (build_userdef_literal): New.
1740 * c-common.def: New tree code.
1741 * c-common.h (tree_userdef_literal): New tree struct and accessors.
1742 * c-lex.c (interpret_float): Add suffix parm.
1743 (c_lex_with_flags): Build literal tokens.
1744
5f53c243
PC
17452011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
1746
1747 PR c++/50841
1748 Revert:
1749 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
1750
1751 PR c++/50810
1752 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
1753 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
1754 Wnarrowing for C++0x and C++98.
1755 * c.opt ([Wnarrowing]): Update.
1756
263734e1
PC
17572011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
1758
1759 PR c++/50810
1760 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
1761 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
1762 Wnarrowing for C++0x and C++98.
1763 * c.opt ([Wnarrowing]): Update.
1764
d2e312d7
PC
17652011-10-21 Paolo Carlini <paolo.carlini@oracle.com>
1766
1767 PR c++/45385
1768 * c-common.c (conversion_warning): Remove code looking for
1769 artificial operands.
1770
d17687f6
DS
17712011-10-18 Dodji Seketeli <dodji@redhat.com>
1772
1773 PR bootstrap/50760
1774 * c-lex.c (fe_file_change): Use LINEMAP_SYSP when
9faeb493 1775 !NO_IMPLICIT_EXTERN_C.
d17687f6 1776
fc8396e9
PC
17772011-10-17 Michael Spertus <mike_spertus@symantec.com>
1778
1779 * c-common.c (c_common_reswords): Add __bases,
1780 __direct_bases.
1781 * c-common.h: Add RID_BASES and RID_DIRECT_BASES.
1782
17832011-10-17 Paolo Carlini <paolo.carlini@oracle.com>
1784
1785 PR c++/50757
1786 * c.opt ([Wnonnull]): Add C++ and Objective-C++.
1787
847e697a
TT
17882011-10-15 Tom Tromey <tromey@redhat.com>
1789 Dodji Seketeli <dodji@redhat.com>
1790
1791 * c.opt (fdebug-cpp): New option.
1792 * c-opts.c (c_common_handle_option): Handle the option.
1793 * c-ppoutput.c (maybe_print_line_1): New static function. Takes an
1794 output stream in parameter. Factorized from ...
1795 (maybe_print_line): ... this. Dump location debug information when
1796 -fdebug-cpp is in effect.
1797 (print_line_1): New static function. Takes an output stream in
1798 parameter. Factorized from ...
1799 (print_line): ... here. Dump location information when -fdebug-cpp
1800 is in effect.
1801 (scan_translation_unit): Dump location information when
1802 -fdebug-cpp is in effect.
1803
92582b75
TT
18042011-10-15 Tom Tromey <tromey@redhat.com>
1805 Dodji Seketeli <dodji@redhat.com>
1806
1807 * c.opt (ftrack-macro-expansion): New option. Handle it with and
1808 without argument.
1809 * c-opts.c (c_common_handle_option)<case
1810 OPT_ftrack_macro_expansion_, case OPT_ftrack_macro_expansion>: New
1811 cases. Handle -ftrack-macro-expansion with and without argument.
1812
46427374
TT
18132011-10-15 Tom Tromey <tromey@redhat.com>
1814 Dodji Seketeli <dodji@redhat.com>
1815
1816 * c-ppoutput.c (scan_translation_unit, maybe_print_line)
1817 (print_line, cb_define, do_line_change): Adjust to avoid touching
1818 the internals of struct line_map. Use the public API instead.
1819 * c-pch.c (c_common_read_pch): Likewise.
1820 * c-lex.c (fe_file_change): Likewise.
1821
fc8396e9
PC
18222011-10-14 Paolo Carlini <paolo.carlini@oracle.com>
1823
1824 PR c++/17212
1825 * c.opt ([Wformat-zero-length]): Add C++ and Objective-C++.
1826
18272011-10-11 Paolo Carlini <paolo.carlini@oracle.com>
1828
1829 PR c++/33067
1830 * c-pretty-print.c (pp_c_floating_constant): Output
1831 max_digits10 (in the ISO C++ WG N1822 sense) decimal digits.
1832
e79983f4
MM
18332011-10-11 Michael Meissner <meissner@linux.vnet.ibm.com>
1834
1835 * c-common.c (def_builtin_1): Delete old interface with two
1836 parallel arrays to hold standard builtin declarations, and replace
1837 it with a function based interface that can support creating
1838 builtins on the fly in the future. Change all uses, and poison
1839 the old names. Make sure 0 is not a legitimate builtin index.
1840 * c-omp.c (c_finish_omp_barrier): Ditto.
1841 (c_finish_omp_taskwait): Ditto.
1842 (c_finish_omp_flush): Ditto.
1843
6637388f
TG
18442011-10-11 Tristan Gingold <gingold@adacore.com>
1845
1846 * c.opt: (fallow-parameterless-variadic-functions): New.
1847
3797cb21
DS
18482011-09-08 Dodji Seketeli <dodji@redhat.com>
1849
1850 PR c++/33255 - Support -Wunused-local-typedefs warning
1851 * c-common.h (struct c_language_function::local_typedefs): New
1852 field.
9faeb493
UB
1853 (record_locally_defined_typedef, maybe_record_typedef_use)
1854 (maybe_warn_unused_local_typedefs): Declare new functions.
3797cb21 1855 * c-common.c (record_locally_defined_typedef)
9faeb493
UB
1856 (maybe_record_typedef_use)
1857 (maybe_warn_unused_local_typedefs): Define new functions.
3797cb21
DS
1858 * c.opt: Declare new -Wunused-local-typedefs flag.
1859
693ddb1b
EB
18602011-09-06 Eric Botcazou <ebotcazou@adacore.com>
1861
1862 PR middle-end/50266
1863 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Fold offsetof-like
1864 computations.
1865
830c740f
RG
18662011-09-05 Richard Guenther <rguenther@suse.de>
1867
1868 * c-common.c (complete_array_type): Use ssize_int (-1) instead
1869 of integer_minus_one_node for empty array upper bounds.
1870
892a371f
DS
18712011-08-28 Dodji Seketeli <dodji@redhat.com>
1872
1873 * c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as
1874 it's the first time it's being called on this main TU.
1875
0e3fdb48
RB
18762011-08-24 Richard Guenther <rguenther@suse.de>
1877
1878 PR c/49396
1879 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional.
1880
18812011-08-22 Gabriel Charette <gchare@google.com>
e3dfef44
GC
1882
1883 * c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens
1884 defined in cpp_init_builtins and c_cpp_builtins.
1885
d4a83c10
JM
18862011-08-19 Joseph Myers <joseph@codesourcery.com>
1887
1888 * c-common.c (c_common_reswords): Add __builtin_complex.
1889 * c-common.h (RID_BUILTIN_COMPLEX): New.
1890
bbceee64
JM
18912011-08-18 Joseph Myers <joseph@codesourcery.com>
1892
1893 * c-common.c (c_common_reswords): Add _Noreturn.
1894 (keyword_is_function_specifier): Handle RID_NORETURN.
1895 * c-common.h (RID_NORETURN): New.
1896
0e3a99ae
AS
18972011-08-10 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
1898
1899 * c-common.c (unsafe_conversion_p): New function. Check if it is
1900 unsafe to convert an expression to the type.
1901 (conversion_warning): Adjust, use unsafe_conversion_p.
1902 * c-common.h (unsafe_conversion_p): New function declaration.
1903
20906c66
JJ
19042011-08-02 Jakub Jelinek <jakub@redhat.com>
1905
1906 * c-common.h (c_finish_omp_atomic): Adjust prototype.
1907 (c_finish_omp_taskyield): New prototype.
1908 * c-omp.c (c_finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1
1909 arguments. Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and
1910 OMP_ATOMIC_CAPTURE_NEW in addition to OMP_ATOMIC. If LHS1
1911 or RHS1 have side-effects, evaluate those too in the right spot,
1912 if it is a decl and LHS is also a decl, error out if they
1913 aren't the same.
1914 (c_finish_omp_taskyield): New function.
1915 * c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP to 201107.
1916 * c-pragma.c (omp_pragmas): Add taskyield.
1917 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKYIELD.
1918 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FINAL and
1919 PRAGMA_OMP_CLAUSE_MERGEABLE.
1920
770e5a2e
DS
19212011-07-25 Dodji Seketeli <dodji@redhat.com>
1922
1923 * c-common.h (set_underlying_type): Remove parm name from
1924 declaration.
1925
1baae426
RG
19262011-07-25 Romain Geissler <romain.geissler@gmail.com>
1927
1928 * c-pretty-print.h: Search c-common.h in c-family.
9faeb493 1929
fcb21722
JM
19302011-07-22 Jason Merrill <jason@redhat.com>
1931
76f86d00
JM
1932 PR c++/49793
1933 * c.opt (Wnarrowing): New.
1934
3a636414
JM
1935 PR c++/30112
1936 * c-common.h: Declare c_linkage_bindings.
1937 * c-pragma.c (handle_pragma_redefine_extname): Use it.
1938
fcb21722
JM
1939 PR c++/49813
1940 * c-opts.c (set_std_cxx0x): Set flag_isoc94 and flag_isoc99.
1941 * c-pretty-print.c (pp_c_cv_qualifiers): Check c_dialect_cxx as well
1942 as flag_isoc99 for 'restrict'.
1943 (pp_c_specifier_qualifier_list): Likewise for _Complex.
1944
02614448
ILT
19452011-07-21 Ian Lance Taylor <iant@google.com>
1946
1947 PR middle-end/49705
1948 * c-common.c (c_disable_warnings): New static function.
1949 (c_enable_warnings): New static function.
1950 (c_fully_fold_internal): Change local unused_p to bool. Call
1951 c_disable_warnings and c_enable_warnings rather than change
1952 c_inhibit_evaluation_warnings.
1953
34429675
JM
19542011-07-20 Jason Merrill <jason@redhat.com>
1955
1956 PR c++/6709 (DR 743)
1957 PR c++/42603 (DR 950)
1958 * c-common.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move from cp/parser.h.
1959 (CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise.
1960 (CPP_DECLTYPE): New.
1961 * c-common.c (c_parse_error): Handle CPP_DECLTYPE.
1962
5d49b6a7
RG
19632011-07-19 Richard Guenther <rguenther@suse.de>
1964
1965 * c-common.c (pointer_int_sum): Use fold_build_pointer_plus.
1966 * c-omp.c (c_finish_omp_for): Likewise.
1967
e84a58ff
EB
19682011-07-12 Eric Botcazou <ebotcazou@adacore.com>
1969
1970 * c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop
1971 body on the next line.
1972
329af3c7
JM
19732011-07-08 Jason Merrill <jason@redhat.com>
1974
4063e61b
JM
1975 PR c++/45437
1976 * c-omp.c (check_omp_for_incr_expr): Handle preevaluation.
1977
329af3c7
JM
1978 PR c++/49673
1979 * c-common.c (c_apply_type_quals_to_decl): Don't check
1980 TYPE_NEEDS_CONSTRUCTING.
1981
1a072294
RG
19822011-07-06 Richard Guenther <rguenther@suse.de>
1983
1984 * c-common.c (c_common_nodes_and_builtins):
1985 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
1986
fce5dddd
RG
19872011-07-05 Richard Guenther <rguenther@suse.de>
1988
1989 * c-common.c (c_common_nodes_and_builtins): Build all common
1990 tree nodes first.
1991
45d439ac
JJ
19922011-06-27 Jakub Jelinek <jakub@redhat.com>
1993
56300785
JJ
1994 * c-common.h (c_tree_chain_next): New static inline function.
1995
45d439ac
JJ
1996 * c-common.c (check_builtin_function_arguments): Handle
1997 BUILT_IN_ASSUME_ALIGNED.
1998
e0a8ecf2
AM
19992011-06-21 Andrew MacLeod <amacleod@redhat.com>
2000
2001 * c-common.c: Add sync_ or SYNC__ to builtin names.
2002 * c-omp.c: Add sync_ or SYNC__ to builtin names.
dfb43cd5
PV
2003
20042011-06-20 Pierre Vittet <piervit@pvittet.com>
2005
2006 * c-pragma.h (pragma_handler_1arg, pragma_handler_2arg): New
2007 handler.
2008 (gen_pragma_handler): New union.
2009 (internal_pragma_handler): New type.
2010 (c_register_pragma_with_data)
2011 (c_register_pragma_with_expansion_and_data): New functions.
2012
2013 * c-pragma.c (registered_pragmas, c_register_pragma_1)
2014 (c_register_pragma, c_register_pragma_with_expansion)
2015 (c_invoke_pragma_handler): Changed to work with
2016 internal_pragma_handler.
2017 (c_register_pragma_with_data)
2018 (c_register_pragma_with_expansion_and_data): New functions.
2019
677f3fa8
JM
20202011-06-14 Joseph Myers <joseph@codesourcery.com>
2021
2022 * c-common.c: Include common/common-target.h.
2023 (handle_section_attribute): Use
2024 targetm_common.have_named_sections.
2025 * c-cppbuiltin.c: Include common/common-target.h.
2026 (c_cpp_builtins): Use targetm_common.except_unwind_info.
2027
d7fc8c14
RG
20282011-06-10 Richard Guenther <rguenther@suse.de>
2029
2030 * c-pretty-print.c (pp_c_type_specifier): Use pp_c_identifier
2031 to print a IDENTIFIER_NODE.
2032
10e48e39
RO
20332011-06-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2034 Joseph Myers <joseph@codesourcery.com>
2035
2036 * c.opt (fbuilding-libgcc): New option.
2037 * c-cppbuiltin.c (c_cpp_builtins): Define
2038 __LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc.
2039
6976ae51
JM
20402011-06-07 Jason Merrill <jason@redhat.com>
2041
3ff60975
JM
2042 * c-common.c (max_tinst_depth): Lower default to 900.
2043
6976ae51
JM
2044 * c-format.c (gcc_cxxdiag_char_table): Add 'S' format.
2045
009db074
RG
20462011-06-07 Richard Guenther <rguenther@suse.de>
2047
2048 * c-common.c (c_common_nodes_and_builtins): Do not set
2049 size_type_node or call set_sizetype.
2050
b4592b92
DS
20512011-06-07 Dodji Seketeli <dodji@redhat.com>
2052
2053 PR debug/49130
2054 * c-pretty-print.c (pp_c_integer_constant): Consider the canonical
9faeb493 2055 type when using pointer comparison to compare types.
b4592b92 2056
014ab419
JW
20572011-06-02 Jonathan Wakely <jwakely.gcc@gmail.com>
2058
2059 * c.opt: Add -Wdelete-non-virtual-dtor.
2060 * c-opts.c (c_common_handle_option): Include it in -Wall.
2061
4f60111f
NF
20622011-05-30 Nathan Froyd <froydnj@gcc.gnu.org>
2063
2064 PR bootstrap/49190
2065
2066 Revert:
2067 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
2068
2069 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
2070 not tree_common.
2071
4cc4f2f4
JJ
20722011-05-27 Jakub Jelinek <jakub@redhat.com>
2073
2074 PR c++/49165
2075 * c-common.c (c_common_truthvalue_conversion) <case COND_EXPR>: For
2076 C++ don't call c_common_truthvalue_conversion on void type arms.
2077
38e01f9e
NF
20782011-05-27 Nathan Froyd <froydnj@codesourcery.com>
2079
2080 * c-common.h (struct stmt_tree_s) [x_cur_stmt_list]: Change to a VEC.
2081 (stmt_list_stack): Define.
2082 (cur_stmt_list): Adjust for new type of x_cur_stmt_list.
2083 * c-semantics.c (push_stmt_list, pop_stmt_list): Likewise.
2084
92e948a8
NF
20852011-05-26 Nathan Froyd <froydnj@codesourcery.com>
2086
2087 * c-common.c (warning_candidate_p): Check for BLOCKs.
2088
a2fc3e63
NF
20892011-05-26 Nathan Froyd <froydnj@codesourcery.com>
2090
2091 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
2092 not tree_common.
2093
0957c029
JJ
20942011-05-25 Jakub Jelinek <jakub@redhat.com>
2095
2096 * c-common.c (def_fn_type): Remove extra va_end.
2097
828fb3ba
JM
20982011-05-23 Jason Merrill <jason@redhat.com>
2099
2100 PR c++/48106
2101 * c-common.c (c_common_get_narrower): New.
2102 (shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.
2103
dde05067
NF
21042011-05-23 Nathan Froyd <froydnj@codesourcery.com>
2105
2106 * c-common.h (check_function_arguments): Tweak prototype of
2107 check_function_arguments.
2108 * c-common.c (check_function_arguments): Likewise. Adjust
2109 calls to check_function_nonnull, check_function_format, and
2110 check_function_sentinel.
2111 (check_function_sentinel): Take a FUNCTION_TYPE rather than
2112 separate attributes and typelist arguments. Use
2113 FOREACH_FUNCTION_ARGS to iterate over argument types.
2114
3c0d13bf
PC
21152011-05-15 Paolo Carlini <paolo.carlini@oracle.com>
2116
2117 * c-common.c (c_common_reswords): Reorder.
2118 * c-common.h (rid): Likewise.
2119
8242dd04
NF
21202011-05-10 Nathan Froyd <froydnj@codesourcery.com>
2121
2122 * c-common.c (def_fn_type): Don't call build_function_type, call
2123 build_function_type_array or build_varargs_function_type_array
2124 instead.
2125 (c_common_nodes_and_builtins): Likewise.
2126
3d528853
NF
21272011-05-05 Nathan Froyd <froydnj@codesourcery.com>
2128
2129 * c-common.c (c_add_case_label): Omit the loc argument to
2130 build_case_label.
2131 * c-common.h (build_case_label): Remove.
2132 * c-semantics.c (build_case_label): Remove.
2133
a04a722b
JM
21342011-05-05 Joseph Myers <joseph@codesourcery.com>
2135
2136 * c-objc.h (objc_start_method_definition): Update prototype.
2137 * stub-objc.c (objc_start_method_definition): Add extra parameter.
2138
e19a18d4
NF
21392011-05-04 Nathan Froyd <froydnj@codesourcery.com>
2140
2141 * c-common.c (check_main_parameter_types): Reindent. Don't use
2142 TYPE_ARG_TYPES directly.
2143 (handle_nonnull_attribute): Likewise.
2144 (sync_resolve_params): Likewise.
2145 * c-format.c (handle_format_arg_attribute): Likewise. Adjust call
2146 to check_format_string.
2147 (handle_format_attribute): Likewise.
2148 (check_format_string): Take a function type to examine instead of
2149 a type list. Use a function_arg_iterator to step through argument
2150 types.
2151
c62c040f
RG
21522011-05-04 Richard Guenther <rguenther@suse.de>
2153
2154 * c-common.c (fix_string_type): Use size_int for index type bounds.
2155 (start_fname_decls): Do not pass NULL to build_int_cst.
2156 (c_init_attributes): Likewise.
2157 * c-lex.c (c_lex_with_flags): Likewise.
2158
c12ff9d8
JM
21592011-04-27 Jason Merrill <jason@redhat.com>
2160
2161 * c-common.c (make_tree_vector_from_list): New.
2162 * c-common.h: Declare it.
2163
304dfbe3
RG
21642011-04-26 Richard Guenther <rguenther@suse.de>
2165
2166 PR preprocessor/48248
2167 * c-ppoutput.c (maybe_print_line): Always optimize newlines
2168 for output size with -P.
2169
3c0d13bf
PC
21702011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
2171
2172 * c-common.c (struct c_common_resword): Add __underlying_type.
2173 * c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
2174
04695783
JM
21752011-04-20 Jim Meyering <meyering@redhat.com>
2176
2177 * c-format.c (init_dollar_format_checking): Remove useless
2178 if-before-free.
2179
0dc33c3c
NP
21802011-04-15 Nicola Pero <nicola.pero@meta-innovation.com>
2181
2182 * c-objc.h (objc_get_interface_ivars): Removed.
3c0d13bf 2183 (objc_detect_field_duplicates): New.
0dc33c3c 2184 * stub-objc.c: Likewise.
3c0d13bf 2185
c59633d9
NP
21862011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
2187
2188 * stub-objc.c (objc_declare_protocols): Renamed to
2189 objc_declare_protocol.
2190 * c-objc.h: Likewise.
3c0d13bf 2191
32dabdaf
NP
21922011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
2193
2194 * stub-objc.c (objc_declare_class): Updated argument name.
2195
81f653d6
NF
21962011-04-12 Nathan Froyd <froydnj@codesourcery.com>
2197
2198 * c-common.h (c_common_init_ts): Declare.
2199 * c-common.c (c_common_init_ts): Define.
2200
eb345401
NP
22012011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
2202
2203 * c-objc.h (objc_build_message_expr): Updated prototype.
2204 * stub-objc.c (objc_build_message_expr): Likewise.
9faeb493 2205
a358e188
MJ
22062011-04-12 Martin Jambor <mjambor@suse.cz>
2207
2208 * c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
2209 of cgraph_node.
2210
e6313a78
RG
22112011-04-11 Richard Guenther <rguenther@suse.de>
2212
2213 * c-common.c (complete_array_type): Build a range type of
2214 proper type.
2215
dcf0c47e
NF
22162011-04-08 Nathan Froyd <froydnj@codesourcery.com>
2217
2218 * c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
2219 (handle_type_generic_attribute): Likewise.
2220
1ee44b26
JM
22212011-04-07 Jason Merrill <jason@redhat.com>
2222
2223 PR c++/48450
2224 * c-common.c (c_common_truthvalue_conversion): Don't ignore
2225 conversion from C++0x scoped enum.
2226
acce4e77
JM
22272011-04-06 Joseph Myers <joseph@codesourcery.com>
2228
2229 * c-target-def.h: New file.
2230 * c-target.def: New file.
2231 * c-target.h: New file.
2232 * c-common.c (targetcm): Don't define here.
2233 * c-common.h (default_handle_c_option): Declare.
2234 * c-format.c: Include c-target.h instead of target.h.
2235 * c-opts.c: Include c-target.h instead of target.h. Explicitly
2236 include tm.h.
2237 (default_handle_c_option): Move from targhooks.c.
2238
e2eefb55
JJ
22392011-03-29 Jakub Jelinek <jakub@redhat.com>
2240
2241 PR preprocessor/48248
2242 * c-ppoutput.c (print): Add src_file field.
2243 (init_pp_output): Initialize it.
2244 (maybe_print_line): Don't optimize by adding up to 8 newlines
2245 if map->to_file and print.src_file are different file.
2246 (print_line): Update print.src_file.
2247
ba78087b
KT
22482011-03-25 Kai Tietz <ktietz@redhat.com>
2249
2250 * c-ada-spec.c (compare_comment): Use filename_cmp
2251 instead of strcmp for filename.
2252
0edf1bb2
JL
22532011-03-25 Jeff Law <law@redhat.com>
2254
2255 * c-family/c-common.c (def_fn_type): Add missing va_end.
2256
c7dc8804
JM
22572011-03-25 Jason Merrill <jason@redhat.com>
2258
2259 * c.opt: Add -std=c++03.
2260
d1d879b1
EB
22612011-03-22 Eric Botcazou <ebotcazou@adacore.com>
2262
2263 * c-ada-spec.c (dump_ada_template): Skip non-class instances.
2264
62d784f7
KT
22652011-03-17 Kai Tietz
2266
2267 PR target/12171
5050afdf
KT
2268 * c-pretty-print.c (pp_c_specifier_qualifier_list):
2269 Display allowed attributes for function pointer types.
2270 (pp_c_attributes_display): New function to display
2271 attributes having affects_type_identity flag set to true.
2272 * c-pretty-print.h (pp_c_attributes_display): New prototype.
2273
62d784f7
KT
2274 * c-common.c (c_common_attribute_table):
2275 Add new element.
2276 (c_common_format_attribute_table): Likewise.
2277
82d37118
JM
22782011-03-18 Jason Merrill <jason@redhat.com>
2279
49a000c3
JM
2280 * c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
2281 * c-common.h: Don't declare it here.
2282 * c-common.c: Or define it here.
2283 * c-opts.c (c_common_handle_option): Or set it here.
2284
82d37118
JM
2285 PR c++/35315
2286 * c-common.c (handle_transparent_union_attribute): Don't
2287 make a duplicate type in C++.
2288
17bc631c
JM
22892011-03-15 Jason Merrill <jason@redhat.com>
2290
2291 * c-common.c (max_constexpr_depth): New.
2292 * c-common.h: Declare it.
2293 * c-opts.c (c_common_handle_option): Set it.
2294 * c.opt (fconstexpr-depth): New option.
2295
1b9b91a6
JM
22962011-03-11 Jason Merrill <jason@redhat.com>
2297
f231b5ff
JM
2298 * c-common.c (attribute_takes_identifier_p): Add missing const.
2299
1b9b91a6
JM
2300 PR c++/46803
2301 * c-common.c (attribute_takes_identifier_p): Assume that an
2302 unknown attribute takes an identifier.
2303
a19e4d44
NF
23042011-03-07 Nathan Froyd <froydnj@codesourcery.com>
2305
2306 PR c/47786
2307 * c-common.c (c_type_hash): Call list_length instead of iterating
2308 through DECL_CHAIN. Rename 'i' to 'n_elements'.
2309
982d62f6
JJ
23102011-02-19 Jakub Jelinek <jakub@redhat.com>
2311
2312 PR c/47809
2313 * c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
2314
0a256240
NP
23152011-02-17 Iain Sandoe <iains@gcc.gnu.org>
2316
2317 * c.opt (fobjc-abi-version=) New.
2318 (fobjc-nilcheck): New.
2319
ba9e6dd5
NF
23202011-02-03 Nathan Froyd <froydnj@codesourcery.com>
2321
2322 PR c++/46890
2323 * c-common.h (keyword_is_decl_specifier): Declare.
2324 * c-common.c (keyword_is_decl_specifier): Define.
2325 (keyword_is_function_specifier): New function.
2326
7273813a
JJ
23272011-01-26 Jakub Jelinek <jakub@redhat.com>
2328
2329 PR c/47473
2330 * c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
2331 EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
2332 REAL_TYPE.
2333
908ef79b
AC
23342011-01-26 Arnaud Charlet <charlet@adacore.com>
2335
2336 * c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type.
2337
237e9384
JJ
23382011-01-26 Jakub Jelinek <jakub@redhat.com>
2339
2340 PR pch/47430
2341 * c-opts.c (c_common_post_options): Call c_common_no_more_pch
2342 after init_c_lex if pch_file is set.
2343
47ea1edf
DK
23442011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
2345
d4dba752 2346 PR c++/43601
47ea1edf
DK
2347 * c.opt (-fkeep-inline-dllexport): New switch.
2348
2aa9c6ae
RG
23492011-01-12 Richard Guenther <rguenther@suse.de>
2350
2351 PR middle-end/32511
2352 * c-common.c (handle_weak_attribute): Warn instead of error
2353 on declaring an inline function weak.
2354
7bd11157
TT
23552011-01-05 Tom Tromey <tromey@redhat.com>
2356
2357 * c-common.h (lvalue_error): Update.
2358 * c-common.c (lvalue_error): Add 'loc' argument. Call error_at,
2359 not error.
2360
0e66e494 23612010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
9faeb493 2362
b4f588c4
NP
2363 PR objc/47075
2364 * c-objc.h (objc_finish_message_expr): Added argument to
2365 prototype.
2366
f4da8dce
NF
23672010-12-22 Nathan Froyd <froydnj@codesourcery.com>
2368
2369 * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute):
2370 Use prototype_p.
2371
46270f14
NP
23722010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
2373
2374 * c-objc.h (objc_maybe_warn_exceptions): New.
9faeb493 2375 * stub-objc.c (objc_maybe_warn_exceptions): New.
46270f14 2376
4816c593
NF
23772010-12-10 Nathan Froyd <froydnj@codesourcery.com>
2378
2379 * c-common.h (readonly_error): Declare.
2380 * c-common.c (readonly_error): Define.
2381
7a6daeb0
NF
23822010-12-09 Nathan Froyd <froydnj@codesourcery.com>
2383
2384 * c-common.h (invalid_indirection_error): Declare.
2385 * c-common.c (invalid_indirection_error): Define.
2386
892f6119
RG
23872010-12-03 Richard Guenther <rguenther@suse.de>
2388
2389 PR c/46745
2390 * c-pretty-print.c (pp_c_postfix_expression): Handle MEM_REF.
2391 (pp_c_unary_expression): Likewise.
2392 (pp_c_expression): Likewise.
2393
6c39e757
NP
23942010-11-30 Nicola Pero <nicola.pero@meta-innovation.com>
2395
2396 * c-common.h (objc_finish_function): New.
2397 (objc_non_volatilized_type): Removed.
2398 (objc_type_quals_match): Removed.
2399 * stub-objc.c (objc_finish_function): New.
2400 (objc_non_volatilized_type): Removed.
2401 (objc_type_quals_match): Removed.
9faeb493 2402
7c475d11
JM
24032010-11-30 Joseph Myers <joseph@codesourcery.com>
2404
2405 * c-common.h (parse_optimize_options): Declare.
2406 * c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c,
2407 c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h.
2408
71f3e391
JM
24092010-11-29 Joseph Myers <joseph@codesourcery.com>
2410
2411 * c-opts.c (check_deps_environment_vars): Use getenv instead of
2412 GET_ENVIRONMENT.
2413 * c-pch.c (O_BINARY): Don't define here.
2414 * c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
2415
d5fabb58
JM
24162010-11-25 Joseph Myers <joseph@codesourcery.com>
2417
2418 * c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
2419 targetm.except_unwind_info.
2420
299404a1
JM
24212010-11-23 Joseph Myers <joseph@codesourcery.com>
2422
2423 * c-opts.c (c_common_handle_option): Pass location to
2424 set_struct_debug_option.
2425
c98cd5bf
JM
24262010-11-23 Joseph Myers <joseph@codesourcery.com>
2427
2428 * c-common.c (visibility_options): Move from ../opts.c.
2429 * c-common.h (struct visibility_flags, visibility_options):
2430 Declare here.
2431 * c-opts.c (finish_options): Rename to c_finish_options.
2432 (c_common_init): Update call to finish_options.
2433
a9546771
NP
24342010-11-22 Nicola Pero <nicola.pero@meta-innovation.com>
2435
2436 PR objc/34033
2437 * c-lex.c (lex_string): Check that each string in an Objective-C
2438 string concat sequence starts with either one or zero '@', and
2439 that there are no spurious '@' signs at the end.
2440
24a57808
JM
24412010-11-20 Joseph Myers <joseph@codesourcery.com>
2442
2443 * c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
2444 HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
2445 HANDLE_PRAGMA_VISIBILITY.
2446 * c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
2447 HANDLE_PRAGMA_VISIBILITY): Don't define.
2448 (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.
2449
a9aa2c3a
NF
24502010-11-20 Nathan Froyd <froydnj@codesourcery.com>
2451
2452 PR c++/16189
2453 PR c++/36888
2454 PR c++/45331
2455 * c-common.h (keyword_begins_type_specifier): Declare.
2456 (keyword_is_storage_class_specifier): Declare.
2457 (keyword_is_type_qualifier): Declare.
2458 * c-common.c (keyword_begins_type_specifier): New function.
2459 (keyword_is_storage_class_specifier): New function.
2460 (keyword_is_type_qualifier): Declare.
2461
5386338c
JM
24622010-11-19 Joseph Myers <joseph@codesourcery.com>
2463
2464 PR c/46547
2465 * c-common.c (in_late_binary_op): Define.
2466 (c_common_truthvalue_conversion): Check in_late_binary_op before
2467 calling c_save_expr.
2468 * c-common.h (in_late_binary_op): Declare.
2469
69ccdddb
JM
24702010-11-19 Joseph Myers <joseph@codesourcery.com>
2471
2472 * c-opts.c (c_common_handle_option): Update calls to
2473 set_struct_debug_option.
2474
6b192a09
NP
24752010-11-19 Nicola Pero <nicola.pero@meta-innovation.com>
2476
2477 * c-common.h (objc_declare_protocols): Added additional argument.
2478 * stub-objc.c (objc_declare_protocol): Same change.
9faeb493 2479
fb52b50a
NF
24802010-11-18 Nathan Froyd <froydnj@codesourcery.com>
2481
2482 PR c/33193
2483 * c-common.h (build_real_imag_expr): Declare.
2484 * c-semantics.c (build_real_imag_expr): Define.
2485
b37421c6
JM
24862010-11-17 Joseph Myers <joseph@codesourcery.com>
2487
2488 * c-opts.c (c_common_parse_file): Take no arguments.
2489 * c-common.h (c_common_parse_file): Update prototype.
2490
07078664
JJ
24912010-11-16 Jakub Jelinek <jakub@redhat.com>
2492
2493 PR c++/46401
2494 * c-common.c (warning_candidate_p): Don't track non-const calls
2495 or STRING_CSTs.
2496
c6a13190
ILT
24972010-11-15 Ian Lance Taylor <iant@google.com>
2498
2499 * c-lex.c (init_c_lex): Set macro debug callbacks if
2500 flag_dump_go_spec is set.
2501
925e8657
NP
25022010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
2503
2504 * c-common.h (objc_build_incr_expr_for_property_ref): New.
2505 * stub-objc.c (objc_build_incr_expr_for_property_ref): New.
2506
bb0a9581
NF
25072010-11-15 Nathan Froyd <froydnj@codesourcery.com>
2508
2509 PR preprocessor/45038
2510 * c-cppbuiltin.c (c_cpp_builtins): Use different format for C++
2511 dialects.
2512
c5fa0890
JM
25132010-11-12 Joseph Myers <joseph@codesourcery.com>
2514
2515 * c-common.h (c_family_lang_mask): Declare.
2516 * c-opts.c (c_family_lang_mask): Make extern.
2517 * c-pragma.c (handle_pragma_diagnostic): Use
2518 control_warning_option.
2519
a4d8c676
JM
25202010-11-12 Joseph Myers <joseph@codesourcery.com>
2521
2522 * c-common.c (parse_optimize_options): Update call to
2523 decode_options.
2524 * c-common.h (c_common_handle_option): Update prototype.
2525 * c-opts.c (c_common_handle_option): Take location_t parameter and
2526 pass it to other functions.
2527
f954bd2c
JM
25282010-11-11 Joseph Myers <joseph@codesourcery.com>
2529
2530 * c-opts.c (warning_as_error_callback): Remove.
2531 (c_common_initialize_diagnostics): Don't call
2532 register_warning_as_error_callback.
2533 (c_common_handle_option): Handle -Werror=normalized= here.
2534
d8a07487
JM
25352010-11-10 Joseph Myers <joseph@codesourcery.com>
2536
2537 * c-common.c (handle_mode_attribute): Use %' and word "signedness"
2538 in diagnostic.
2539 * c-opts.c (c_common_parse_file): Start diagnostics with lowercase
2540 letter.
2541 * c-pragma.c (handle_pragma_target, handle_pragma_optimize):
2542 Remove trailing '.' from diagnostics.
2543 * c.opt (Wwrite-strings_: Avoid '`' in help text.
2544
d5478783
JM
25452010-11-10 Joseph Myers <joseph@codesourcery.com>
2546
2547 * c-common.c (parse_optimize_options): Pass global_dc to
2548 decode_options.
2549 * c-opts.c (c_common_handle_option): Pass &global_options to
2550 set_Wstrict_aliasing.
2551 * c.opt (v): Don't mark Common or document here.
2552
91ebb981
IS
25532010-11-06 Iain Sandoe <iains@gcc.gnu.org>
2554
2555 PR target/44981
2556 * c-format.c (format_type): New type gcc_objc_string_format_type.
2557 (valid_stringptr_type_p): New.
2558 (handle_format_arg_attribute): Use valid_stringptr_type_p ().
9faeb493 2559 (check_format_string): Pass expected type, use
91ebb981
IS
2560 valid_stringptr_type_p (), check that the format string types are
2561 consistent with the format specification.
2562 (decode_format_attr): Warn if NSString is used outside objective-c.
2563 (format_types_orig): Add NSString.
2564 (format_name): New.
2565 (format_flags): New.
2566 (check_format_arg): Handle format strings requiring an external parser.
2567 first_target_format_type: New variable.
2568 (handle_format_attribute): Set up first_target_format_type, pass the
2569 expected format arg string type to check_format_string().
2570 * c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL): New flag.
2571 * stub-objc.c (objc_string_ref_type_p): New.
2572 (objc_check_format_arg): New.
2573
bede2adc
NP
25742010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
2575
9faeb493 2576 Fixed using the Objective-C 2.0 dot-syntax with class names.
bede2adc
NP
2577 * c-common.h (objc_build_class_component_ref): New.
2578 * stub-objc.c (objc_build_class_component_ref): New.
2579
9a179d01
NP
25802010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
2581
2582 * c.opt (Wproperty-assign-default): New option.
2583
22d8d616
NP
25842010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
2585
2586 Implemented -fobjc-std=objc1 flag.
2587 * c.opt (fobjc-std=objc1): New option.
2588
2debdb4f
NP
25892010-11-01 Nicola Pero <nicola.pero@meta-innovation.com>
2590
2591 Implemented format and noreturn attributes for Objective-C methods.
2592 * c-common.c (handle_noreturn_attribute): Recognize 'noreturn'
2593 attribute for Objective-C methods.
2594
ec52b111
JM
25952010-10-31 Jason Merrill <jason@redhat.com>
2596
2597 * c-common.c (conversion_warning, warn_for_collisions_1): Use
2598 EXPR_LOC_OR_HERE.
2599
46a88c12
NP
26002010-10-30 Nicola Pero <nicola.pero@meta-innovation.com>
2601
2602 Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
2603 * c-common.h (enum rid): Removed RID_COPIES and RID_IVAR.
2604 (objc_add_property_declaration): Removed arguments for copies and
2605 ivar.
2606 (objc_build_getter_call): Renamed to
2607 objc_maybe_build_component_ref.
2608 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
2609 (objc_is_property_ref): New.
2610 * c-common.c (c_common_reswords): Removed copies and ivar.
2611 * stub-objc.c (objc_add_property_declaration): Removed arguments
2612 for copies and ivar.
2613 (objc_build_getter_call): Renamed to
2614 objc_maybe_build_component_ref.
2615 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
2616 (objc_is_property_ref): New.
9faeb493 2617
1e4bf85b
AC
26182010-10-29 Arnaud Charlet <charlet@adacore.com>
2619 Matthew Gingell <gingell@adacore.com>
2620
2621 * c-ada-spec.c (separate_class_package): New function.
2622 (pp_ada_tree_identifier): Prefix references to C++ classes with the
2623 name of their enclosing package.
2624 (print_ada_declaration): Use separate_class_package.
2625
81f0bab2
JM
26262010-10-27 Jason Merrill <jason@redhat.com>
2627
2b08f2c5
JM
2628 * c-common.c (c_common_reswords): Add __is_literal_type.
2629 * c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
2630
81f0bab2
JM
2631 * c-common.c (check_case_value): Remove special C++ code.
2632
200290f2
NP
26332010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
2634
2635 * c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN,
2636 RID_RETAIN, RID_COPY and RID_NONATOMIC. Updated RID_FIRST_PATTR
2637 and RID_LAST_PATTR.
2638 (objc_add_property_declaration): Added additional arguments.
2639 (objc_property_attribute_kind): Removed.
2640 (objc_set_property_attr): Removed.
2641 * c-common.c (c_common_reswords): Added readwrite, assign, retain,
2642 copy and nonatomic.
2643 * stub-objc.c (objc_add_property_declaration): Added additional
2644 arguments.
2645 (objc_set_property_attr): Removed.
9faeb493 2646
f614132b
NP
26472010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
2648
2649 * c-common.h (objc_add_property_variable): Renamed to
2650 objc_add_property_declaration. Added location argument.
2651 * stub-objc.c (objc_add_property_variable): Same change.
2652
b8a18805
NP
26532010-10-23 Nicola Pero <nicola.pero@meta-innovation.com>
2654
2655 * c-common.h (objc_maybe_printable_name): New.
2656 * stub-objc.c (objc_maybe_printable_name): New.
2657
30cd1c5d
AS
26582010-10-22 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
2659 Andrew Pinski <pinskia@gmail.com>
2660
2661 * c-common.h (c_common_mark_addressable_vec): Declare.
2662 * c-common.c (c_common_mark_addressable_vec): New function.
2663
249a82c4
NP
26642010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
2665
2666 * c-common.h (objc_set_method_type): Removed.
2667 (objc_add_method_declaration): Added boolean argument.
2668 (objc_start_method_definition): Same change.
2669 (objc_build_method_signature): Same change.
2670 * stub-objc.c (objc_set_method_type): Removed.
2671 (objc_add_method_declaration): Added boolean argument.
2672 (objc_start_method_definition): Same change.
2673 (objc_build_method_signature): Same change.
2674
977e30bc
NP
26752010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
2676
2677 * c-common.h (finish_file): Removed.
2678 (objc_write_global_declarations): New.
2679 * c-opts.c (c_common_parse_file): Do not call finish_file.
2680 * stub-objc.c (objc_write_global_declarations): New.
9faeb493 2681
da57d1b9
NP
26822010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
2683
2684 Implemented parsing @synthesize and @dynamic for
2685 Objective-C/Objective-C++.
2686 * c-common.h (enum rid): Add RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
2687 (objc_add_synthesize_declaration): New.
2688 (objc_add_dynamic_declaration): New.
2689 * c-common.c (c_common_reswords): Add synthesize and dynamic.
2690 * stub-objc.c (objc_add_synthesize_declaration): New.
2691 (objc_add_dynamic_declaration): New.
9faeb493 2692
0069111f
MM
26932010-10-18 Michael Meissner <meissner@linux.vnet.ibm.com>
2694
2695 PR target/46041
2696 * c-cppbuiltin.c (mode_has_fma): Move function here from
2697 builtins.c. Don't use the fma optab, instead just use the
2698 HAVE_fma* macros, so that __FP_FAST_FMA* will be defined when
2699 using -save-temps.
2700
e426b47b
NP
27012010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
2702
2703 Merge from 'apple/trunk' branch on FSF servers.
0069111f 2704
e426b47b
NP
2705 2005-11-08 Fariborz Jahanian <fjahanian@apple.com>
2706
9faeb493 2707 Radar 4330422
e426b47b
NP
2708 * c-common.h (objc_non_volatilized_type): New declaration
2709 * stub-objc.c (objc_non_volatilized_type): New stub.
2710
90fbfdc3
NP
27112010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
2712
e426b47b 2713 Merge from 'apple/trunk' branch on FSF servers.
90fbfdc3
NP
2714
2715 2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
2716
9faeb493 2717 Radar 4133425
90fbfdc3 2718 * c-common.h (objc_diagnose_private_ivar): New decl.
0069111f 2719 * stub-objc.c (objc_diagnose_private_ivar): New stub.
90fbfdc3 2720
c37d8c30
IS
27212010-10-17 Iain Sandoe <iains@gcc.gnu.org>
2722
2723 * c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
2724 * c-common.h (enum rid): Add RID_AT_PACKAGE.
2725 (objc_ivar_visibility_kind): New enum.
2726 (objc_set_visibility): Adjust prototype to use visibility enum.
0069111f 2727 * stub-objc.c (objc_set_visibility): Adjust stub to use
c37d8c30
IS
2728 visibility enum.
2729
1b1562a5
MM
27302010-10-14 Michael Meissner <meissner@linux.vnet.ibm.com>
2731
2732 * c-cppbuiltin.c (builtin_define_float_constants): Emit
2733 __FP_FAST_FMA, __FP_FAST_FMAF, and __FP_FAST_FMAL if the machine
2734 has the appropriate fma builtins.
2735 (c_cpp_builtins): Adjust call to builtin_define_float_constants.
2736
668ea4b1
IS
27372010-10-14 Iain Sandoe <iains@gcc.gnu.org>
2738
1b1562a5 2739 merge from FSF apple 'trunk' branch.
668ea4b1 2740 2006 Fariborz Jahanian <fjahanian@apple.com>
1b1562a5 2741
668ea4b1
IS
2742 Radars 4436866, 4505126, 4506903, 4517826
2743 * c-common.c (c_common_resword): Define @property and its attributes.
2744 * c-common.h: Define property attribute enum entries.
2745 (OBJC_IS_PATTR_KEYWORD): New.
2746 (objc_property_attribute_kind): New enum.
2747 Declare objc_set_property_attr (), objc_add_property_variable (),
2748 objc_build_getter_call () and objc_build_setter_call ().
2749 * stub-objc.c (objc_set_property_attr): New stub.
2750 (objc_add_property_variable): Likewise.
2751 (objc_build_getter_call): Likewise.
2752 (objc_build_setter_call) Likewise.
1b1562a5 2753
a1178b30
IS
27542010-10-13 Iain Sandoe <iains@gcc.gnu.org>
2755
1b1562a5 2756 merge from FSF apple 'trunk' branch.
a1178b30
IS
2757 2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
2758
2759 Radar 3803157 (method attributes)
2760 * c-common.c (handle_deprecated_attribute): Recognize
2761 objc methods as valid declarations.
2762 * c-common.h: Declare objc_method_decl ().
1b1562a5 2763 * stub-objc.c (objc_method_decl): New stub.
a1178b30 2764
a75bfaa6
JM
27652010-10-08 Joseph Myers <joseph@codesourcery.com>
2766
2767 * c-common.c (parse_optimize_options): Call
2768 decode_cmdline_options_to_array_default_mask before
2769 decode_options. Update arguments to decode_options.
2770 * c-common.h (c_common_init_options_struct): Declare.
2771 * c-opts.c (c_common_init_options_struct): New. Split out from
2772 c_common_init_options.
2773
f05b9d93
NP
27742010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
2775
2776 Implemented fast enumeration for Objective-C.
2777 * c-common.h (objc_finish_foreach_loop): New.
2778 * stub-objc.c (objc_finish_foreach_loop): New.
2779
1ebe4b4f
JM
27802010-10-05 Joseph Myers <joseph@codesourcery.com>
2781
2782 * c-common.h (struct diagnostic_context): Don't declare here.
2783 (c_common_initialize_diagnostics): Declare using
2784 diagnostic_context typedef.
2785 * c-opts.c (c_common_handle_option): Pass global_dc to
2786 handle_generated_option.
2787
d4d24ba4
JM
27882010-10-04 Joseph Myers <joseph@codesourcery.com>
2789
2790 * c-opts.c (c_common_handle_option): Pass &global_options_set to
2791 handle_generated_option.
2792
478a1c5b
ILT
27932010-10-03 Ian Lance Taylor <iant@google.com>
2794
2795 * c.opt (-fplan9-extensions): New option.
2796
82a1c2fe
FXC
27972010-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
2798
2799 * c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision):
2800 Remove.
2801 (c_cpp_builtins): Call functions from cppbuiltin.c instead
2802 of duplicating code.
2803
92902b1b
IS
28042010-09-30 Iain Sandoe <iains@gcc.gnu.org>
2805
2806 * c-common.c: Add two new entries for @optional
2807 and @required keywords.
2808
2809 merge from FSF 'apple/trunk' branch.
2810 2006-01-30 Fariborz Jahanian <fjahanian@apple.com>
2811
2812 Radar 4386773
2813 * c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new
2814 objective-c keywords.
2815 (objc_set_method_opt): New declaration.
2816 * stub-objc.c (objc_set_method_opt): New stub.
9faeb493 2817
46625112
JM
28182010-09-30 Joseph Myers <joseph@codesourcery.com>
2819
2820 * c-common.c (handle_optimize_attribute): Pass &global_options to
2821 cl_optimization_save and cl_optimization_restore.
2822 * c-opts.c (c_common_handle_option): Pass &global_options to
2823 handle_generated_option.
2824 * c-pragma.c (handle_pragma_diagnostic): Use option_flag_var.
2825 (handle_pragma_pop_options, handle_pragma_reset_options): Pass
2826 &global_options to cl_optimization_restore.
2827
49b91f05
NP
28282010-09-30 Nicola Pero <nicola.pero@meta-innovation.com>
2829
2830 * c-lex.c (c_lex_with_flags): Updated comments for CPP_AT_NAME
2831 Objective-C/Objective-C++ keywords.
2832
13ed556f 28332010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
a6341d57 2834
9faeb493
UB
2835 Merge from 'apple/trunk' branch on FSF servers.
2836
a6341d57
NP
2837 2005-10-04 Fariborz Jahanian <fjahanian@apple.com>
2838
2839 Radar 4281748
2840 * c-common.h (objc_check_global_decl): New declaration.
2841 * stub-objc.c (objc_check_global_decl): New stub.
2842
f0036cca
JM
28432010-09-29 Joseph Myers <joseph@codesourcery.com>
2844
2845 * c.opt: Don't use VarExists.
2846
e3339d0f
JM
28472010-09-29 Joseph Myers <joseph@codesourcery.com>
2848
2849 * c-common.c (c_cpp_error): Update names of diagnostic_context
2850 members.
2851 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of
2852 cl_optimization members.
2853 * c-opts.c (warning_as_error_callback, c_common_handle_option,
2854 sanitize_cpp_opts, finish_options): Update names of cpp_options
2855 members.
2856
1973201f
NP
28572010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
2858
2859 * c-common.h (OBJC_IS_CXX_KEYWORD): New macro. Updated comments.
2860 (objc_is_reserved_word): Removed.
2861 * c-common.c: Updated comments.
2862 * c-lex.c (c_lex_with_flags): Use OBJC_IS_CXX_KEYWORD instead of
2863 objc_is_reserved_word.
2864 * stub-objc.c (objc_is_reserved_word): Removed.
2865
f7e71da5
IS
28662010-09-28 Iain Sandoe <iains@gcc.gnu.org>
2867
9faeb493 2868 * c-common.h (objc_add_method_declaration): Adjust prototype to
f7e71da5
IS
2869 include attributes.
2870 (objc_start_method_definition): Likewise.
2871 (objc_build_keyword_decl): Likewise.
2872 * stub-objc.c:(objc_add_method_declaration): Handle attributes.
2873 (objc_start_method_definition): Likewise.
2874 (objc_build_keyword_decl): Likewise.
2875
c165dca7
IS
28762010-09-28 Iain Sandoe <iains@gcc.gnu.org>
2877
2878 * c-common.h (objc_start_class_interface): Adjust prototype.
2879 (objc_start_category_interface): Likewise.
2880 (objc_start_protocol): Likewise.
2881 * stub-objc.c (objc_start_protocol): Adjust for extra argument.
2882 (objc_start_class_interface): Likewise.
2883 (objc_start_category_interface): Likewise.
2884
7458026b
ILT
28852010-09-27 Ian Lance Taylor <iant@google.com>
2886
2887 * c-common.c (c_common_attribute_table): Add no_split_stack.
2888 (handle_no_split_stack_attribute): New static function.
2889
b581b85b
NP
28902010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
2891
9faeb493 2892 Merge from 'apple/trunk' branch on FSF servers.
b581b85b
NP
2893
2894 2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
2895
9faeb493 2896 Radar 4229905
b581b85b
NP
2897 * c-common.h (objc_have_common_type): New declaration.
2898 * stub-objc.c (objc_have_common_type): New stub.
2899
2900 2005-06-22 Ziemowit Laski <zlaski@apple.com>
2901
2902 Radar 4154928
2903 * c-common.h (objc_common_type): New prototype.
9faeb493 2904 * stub-objc.c (objc_common_type): New stub.
b581b85b 2905
46a4da10
JH
29062010-09-24 Jan Hubicka <jh@suse.cz>
2907
2908 * c-common.c (handle_leaf_attribute): New function.
2909 (struct attribute_spec c_common_att): Add leaf.
2910
e200444e
JM
29112010-09-22 Joseph Myers <joseph@codesourcery.com>
2912
2913 * c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
2914 -comments-in-macros, -define-macro, -define-macro=, -dependencies,
2915 -dump, -dump=, -imacros, -imacros=, -include, -include=,
2916 -include-barrier, -include-directory, -include-directory=,
2917 -include-directory-after, -include-directory-after=,
2918 -include-prefix, -include-prefix=, -include-with-prefix,
2919 -include-with-prefix=, -include-with-prefix-after,
2920 -include-with-prefix-after=, -include-with-prefix-before,
2921 -include-with-prefix-before=, -no-integrated-cpp,
2922 -no-line-commands, -no-standard-includes, -no-warnings, -output,
2923 -output=, -pedantic, -pedantic-errors, -preprocess,
2924 -print-missing-file-dependencies, -trace-includes, -traditional,
2925 -traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
2926 -user-dependencies, -verbose, -write-dependencies,
2927 -write-user-dependencies, no-integrated-cpp, traditional): New.
2928
29a80ea6
NP
29292010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
2930
2931 PR objc/23710
ac1fc2fc
NP
2932 * c-common.h (objc_start_method_definition): Return bool instead
2933 of void.
2934 * stub-objc.c (objc_start_method_definition): Return bool instead
2935 of void.
2936
29372010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
2938
2939 PR objc/25965
2940 * c-common.h (objc_get_interface_ivars): New declaration.
2941 * stub-objc.c (objc_get_interface_ivars): New stub.
29a80ea6 2942
de621752
ILT
29432010-09-15 Ian Lance Taylor <iant@google.com>
2944
2945 * c-common.c (parse_optimize_options): Do not capitalize warning
06730c5d 2946 messages. Remove period at end of warning message.
de621752 2947
ba885ec5
NS
29482010-09-09 Nathan Sidwell <nathan@codesourcery.com>
2949
2950 * c-common.c (handle_alias_ifunc_attribute): New, broken out of ...
2951 (handle_alias_attribute): ... here.
2952 (handle_ifunc_attribute): New.
2953
c5ee1358
MM
29542010-09-06 Mark Mitchell <mark@codesourcery.com>
2955
2956 * c-common.h (do_warn_double_promotion): Declare.
2957 * c-common.c (do_warn_double_promotion): Define.
2958
0a0b3574
MM
29592010-09-05 Mark Mitchell <mark@codesourcery.com>
2960
2961 * c.opt (Wdouble-promotion): New.
2962
d1779886
JM
29632010-09-02 Joseph Myers <joseph@codesourcery.com>
2964
2965 * c.opt (falt-external-templates, fhuge-objects, fvtable-gc,
2966 fvtable-thunks, fxref): Mark no longer supported in help text.
2967
2d2bd949
JM
29682010-09-02 Joseph Myers <joseph@codesourcery.com>
2969
2970 * c.opt (Wimport, fall-virtual, falt-external-templates,
2971 fdefault-inline, fenum-int-equiv, fexternal-templates,
2972 fguiding-decls, fhonor-std, fhuge-objects, flabels-ok,
2973 fname-mangling-version-, fnew-abi, fnonnull-objects,
2974 foptional-diags, fsquangle, fstrict-prototype, fthis-is-variable,
2975 fvtable-gc, fvtable-thunks, fxref): Mark with Ignore and Warn as
2976 applicable.
2977 (fhandle-exceptions): Mark with Alias and Warn.
2978 * c-opts.c (c_common_handle_option): Don't handle options marked
2979 as ignored.
2980
5de8299c
JM
29812010-09-02 Joseph Myers <joseph@codesourcery.com>
2982
2983 * c.opt (Wcomments, Werror-implicit-function-declaration,
2984 ftemplate-depth-, std=c89, std=c9x, std=gnu89, std=gnu9x,
2985 std=iso9899:1990, std=iso9899:1999, std=iso9899:199x): Mark as
2986 aliases.
2987 * c-common.c (option_codes): Use OPT_Wcomment instead of
2988 OPT_Wcomments.
2989 * c-opts.c (warning_as_error_callback, c_common_handle_option):
2990 Don't handle options marked as aliases.
2991
0ceb0201
RG
29922010-08-25 Richard Guenther <rguenther@suse.de>
2993
2994 * c-common.c (c_common_get_alias_set): Remove special
2995 handling for pointers.
2996
ac47786e
NF
29972010-08-20 Nathan Froyd <froydnj@codesourcery.com>
2998
2999 * c-common.c: Use FOR_EACH_VEC_ELT.
3000 * c-gimplify.c: Likewise.
3001 * c-pragma.c: Likewise.
3002
c878765b
JM
30032010-08-16 Joseph Myers <joseph@codesourcery.com>
3004
3005 * c.opt (MDX): Change back to MD. Mark NoDriverArg instead of
3006 RejectDriver.
3007 (MMDX): Change back to MMD. Mark NoDriverArg instead of
3008 RejectDriver.
3009 * c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
3010 instead of OPT_MDX and OPT_MMDX.
3011
603349bf
JM
30122010-08-16 Joseph Myers <joseph@codesourcery.com>
3013
3014 * c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.
3015
644fa7ac
JM
30162010-08-12 Joseph Myers <joseph@codesourcery.com>
3017
3018 * c.opt (MD, MMD): Change to MDX and MMDX.
3019 * c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX.
3020
481e1176
JM
30212010-08-11 Joseph Myers <joseph@codesourcery.com>
3022
3023 * c-opts.c (c_common_handle_option): Call handle_generated_option
3024 instead of handle_option.
3025
ac8dc9f7
NF
30262010-08-08 Nathan Froyd <froydnj@codesourcery.com>
3027
3028 * c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
3029 (maybe_apply_renaming_pragma): Delete unneeded declarations.
3030
4f8c876d
NF
30312010-08-08 Nathan Froyd <froydnj@codesourcery.com>
3032
3033 * c-pragma.c (pending_redefinition): Declare. Declare a VEC of it.
3034 (pending_redefine_extname): Change type to a VEC.
3035 (add_to_renaming_pragma_list): Update for new type of
3036 pending_redefine_extname.
ac8dc9f7 3037 (maybe_apply_renaming_pragma): Likewise.
4f8c876d 3038
3b0c690e
AC
30392010-08-04 Arnaud Charlet <charlet@adacore.com>
3040
3041 * c-ada-spec.c (dump_ada_template): Mark underlying instance type as
3042 visited.
3043 (dump_generic_ada_node): Code clean up. Use TREE_VISITED flag to
3044 decide whether a type has already been declared/seen.
3045 Do not go to the original type.
3046 (dump_nested_types): New parameter forward.
3047 Generate forward declaration if needed and mark type as visited.
3048 (print_ada_declaration): Call dump_nested_types if not already done.
3049 Mark types as visited.
3050
1890bccc
JM
30512010-08-03 Joseph Myers <joseph@codesourcery.com>
3052
3053 * c.opt (-print-pch-checksum): Remove option.
3054 * c-opts.c (c_common_handle_option): Don't handle
3055 OPT_print_pch_checksum.
3056
5f20c657
JM
30572010-07-27 Joseph Myers <joseph@codesourcery.com>
3058
3059 * c-common.h (c_common_handle_option): Update prototype and return
3060 value type.
3061 * c-opts.c (c_common_handle_option): Update prototype and return
3062 value type. Update calls to handle_option and
3063 enable_warning_as_error.
3064
f551f80c
JJ
30652010-07-27 Jakub Jelinek <jakub@redhat.com>
3066
3067 PR c/45079
3068 * c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
3069
61ff2bdc
JM
30702010-07-27 Joseph Myers <joseph@codesourcery.com>
3071
3072 * c-common.h (c_common_missing_argument): Remove.
3073 * c-opts.c (c_common_missing_argument): Remove.
3074 * c.opt (A, D, F, I, MD, MMD, MQ, MT, U, fconstant-string-class=,
3075 idirafter, imacros, include, isysroot, isystem, iquote): Add
3076 MissingArgError.
3077 * c-objc-common.h (LANG_HOOKS_MISSING_ARGUMENT): Remove.
3078
7a9bf9a4
JM
30792010-07-27 Joseph Myers <joseph@codesourcery.com>
3080
3081 * c-common.h (c_common_option_lang_mask,
3082 c_common_initialize_diagnostics, c_common_complain_wrong_lang_p):
3083 New.
3084 (c_common_init_options): Update prototype.
3085 * c-opts.c (c_common_option_lang_mask): New.
3086 (c_common_initialize_diagnostics): Split out of
3087 c_common_init_options.
3088 (accept_all_c_family_options, c_common_complain_wrong_lang_p):
3089 New.
3090 (c_common_init_options): Update prototype. Use decoded options in
3091 search for -lang-asm.
3092
910ad8de
NF
30932010-07-15 Nathan Froyd <froydnj@codesourcery.com>
3094
3095 * c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
3096 * c-format.c: Likewise.
3097
718f9c0f
MLI
30982010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
3099
3100 * c-common.h: Include diagnostic-core.h. Error if already
3101 included.
3102 * c-semantics.c: Do not define GCC_DIAG_STYLE here.
3103
4d451982
MLI
31042010-07-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
3105
3106 * c-family/c-common.c (IN_GCC_FRONTEND): Do not undef.
3107 Do not include expr.h
3108 (vector_mode_valid_p): Move here.
3109
119fe915
SB
31102010-06-21 DJ Delorie <dj@redhat.com>
3111
3112 * c-pragma.c (handle_pragma_diagnostic): Add push/pop,
3113 allow these pragmas anywhere.
3114
31152010-06-14 Jakub Jelinek <jakub@redhat.com>
3116
3117 PR bootstrap/44509
3118 * c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
3119 (lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
3120 (lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
3121 ggc_strdup instead of xstrdup.
3122
31232010-06-10 Jakub Jelinek <jakub@redhat.com>
3124
3125 * c-cppbuiltin.c: Include cpp-id-data.h.
3126 (lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
3127 (lazy_hex_fp_value): New function.
3128 (builtin_define_with_hex_fp_value): Provide definitions lazily.
3129
6662d794
MLI
31302010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
3131
3132 * c-gimplify.c: Do not include tree-flow.h
3133
38f8b050
JR
31342010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
3135
3136 PR other/44034
3137 * c-common.c: Rename targetm member:
3138 targetm.enum_va_list -> targetm.enum_va_list_p
3139
9589f23e
AS
31402010-06-28 Anatoly Sokolov <aesok@post.ru>
3141
3142 * c-common.c (shorten_compare): Adjust call to force_fit_type_double.
3143
3b06d379
SB
31442010-06-28 Steven Bosscher <steven@gcc.gnu.org>
3145
3146 * c-cppbuiltin.c: Do not include except.h.
3147
d166d4c3
AK
31482010-06-24 Andi Kleen <ak@linux.intel.com>
3149
9faeb493
UB
3150 * c-common.c (warn_for_omitted_condop): New.
3151 * c-common.h (warn_for_omitted_condop): Add prototype.
d166d4c3 3152
70cb8be6
JM
31532010-06-21 Joseph Myers <joseph@codesourcery.com>
3154
3155 * c.opt (lang-objc): Remove.
3156 * c-opts.c (c_common_handle_option): Don't handle OPT_lang_objc.
3157
a4c97feb
JR
31582010-06-21 Joern Rennecke <joern.rennecke@embecosm.com>
3159
3160 * c-opts.c: Include "tm_p.h".
3161
6e2f1956
JM
31622010-06-20 Joseph Myers <joseph@codesourcery.com>
3163
3164 * c-common.c (parse_optimize_options): Update call to
3165 decode_options.
3166
bc87224e
NF
31672010-06-18 Nathan Froyd <froydnj@codesourcery.com>
3168
3169 * c-common.c (record_types_used_by_current_var_decl): Adjust for
3170 new type of types_used_by_cur_var_decl.
3171
b49cf425
JR
31722010-06-17 Joern Rennecke <joern.rennecke@embecosm.com>
3173
3174 PR bootstrap/44512
3175 * c-cppbuiltin.c (builtin_define_with_hex_fp_value): Add cast
3176 for C++ standard compliance.
3177
59f9c2ed
JM
31782010-06-16 Jason Merrill <jason@redhat.com>
3179
3180 * c.opt: Add -Wnoexcept.
3181
33766b66
RG
31822010-06-16 Richard Guenther <rguenther@suse.de>
3183
3184 PR c/44555
3185 * c-common.c (c_common_truthvalue_conversion): Remove
3186 premature and wrong optimization concering ADDR_EXPRs.
3187
eff7e30c
AC
31882010-06-15 Arnaud Charlet <charlet@adacore.com>
3189
3190 * c-ada-spec.c (dump_sloc): Remove column info.
3191 (is_simple_enum): New function.
3192 (dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada
3193 enum types when relevant.
3194
6312e84d
MLI
31952010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
3196
9faeb493 3197 * c-common.c (conversion_warning): Warn at expression
6312e84d
MLI
3198 location.
3199
1cb42611
JM
32002010-06-10 Joseph Myers <joseph@codesourcery.com>
3201
3202 * c-opts.c (c_common_handle_option): Don't handle
3203 OPT_fshow_column.
3204
a9429e29
LB
32052010-06-08 Laurynas Biveinis <laurynas.biveinis@gmail.com>
3206
3207 * c-pragma.c (push_alignment): Use typed GC allocation.
3208 (handle_pragma_push_options): Likewise.
3209
3210 * c-common.c (parse_optimize_options): Likewise.
3211
3212 * c-common.h (struct sorted_fields_type): Add variable_size GTY
3213 option.
3214
5498f011
JM
32152010-06-07 Joseph Myers <joseph@codesourcery.com>
3216
3217 * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
3218 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
3219 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
3220 flag_signed_bitfields, warn_strict_null_sentinel,
3221 flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
3222 flag_gen_declaration, flag_no_gnu_keywords,
3223 flag_implement_inlines, flag_implicit_templates,
3224 flag_implicit_inline_templates, flag_optional_diags,
3225 flag_elide_constructors, flag_default_inline, flag_rtti,
3226 flag_conserve_space, flag_access_control, flag_check_new,
3227 flag_new_for_scope, flag_weak, flag_working_directory,
3228 flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
3229 flag_enforce_eh_specs, flag_threadsafe_statics,
3230 flag_pretty_templates): Remove.
3231 * c-common.h (flag_preprocess_only, flag_nil_receivers,
3232 flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
3233 flag_replace_objc_classes, flag_undef, flag_no_builtin,
3234 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
3235 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
3236 flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
3237 flag_no_gnu_keywords, flag_implement_inlines,
3238 flag_implicit_templates, flag_implicit_inline_templates,
3239 flag_optional_diags, flag_elide_constructors, flag_default_inline,
3240 flag_rtti, flag_conserve_space, flag_access_control,
3241 flag_check_new, flag_new_for_scope, flag_weak,
3242 flag_working_directory, flag_use_cxa_atexit,
3243 flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
3244 flag_threadsafe_statics, flag_pretty_templates,
3245 warn_strict_null_sentinel): Remove.
3246 * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
3247 fbuiltin, fcheck-new, fconserve-space, felide-constructors,
3248 fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
3249 fimplicit-inline-templates, fimplicit-templates,
3250 flax-vector-conversions, fms-extensions, fnil-receivers,
3251 fnonansi-builtins, fpretty-templates, freplace-objc-classes,
3252 frtti, fshort-double, fshort-enums, fshort-wchar,
3253 fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
3254 funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
3255 fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
3256 gen-decls, undef): Use Var.
3257 (fdefault-inline, foptional-diags): Document as doing nothing.
3258 * c-opts.c (c_common_handle_option): Remove cases for options now
3259 using Var. Mark ignored options as such.
3260
39dabefd
SB
32612010-06-05 Steven Bosscher <steven@gcc.gnu.org>
3262
9faeb493 3263 * c-common.c: Moved to here from parent directory.
39dabefd
SB
3264 * c-common.def: Likewise.
3265 * c-common.h: Likewise.
3266 * c-cppbuiltin.c: Likewise.
3267 * c-dump.c: Likewise.
3268 * c-format.c: Likewise.
3269 * c-format.h : Likewise.
3270 * c-gimplify.c: Likewise.
3271 * c-lex.c: Likewise.
3272 * c-omp.c: Likewise.
3273 * c.opt: Likewise.
3274 * c-opts.c: Likewise.
3275 * c-pch.c: Likewise.
3276 * c-ppoutput.c: Likewise.
3277 * c-pragma.c: Likewise.
3278 * c-pragma.h: Likewise.
3279 * c-pretty-print.c: Likewise.
3280 * c-pretty-print.h: Likewise.
3281 * c-semantics.c: Likewise.
3282 * stub-objc.c: Likewise.
3283
3284 * c-common.c: Include gt-c-family-c-common.h.
3285 * c-pragma.c: Include gt-c-family-c-pragma.h.
3286\f
d1e082c2 3287Copyright (C) 2010-2013 Free Software Foundation, Inc.
39dabefd
SB
3288
3289Copying and distribution of this file, with or without modification,
3290are permitted in any medium without royalty provided the copyright
3291notice and this notice are preserved.