]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/c-family/ChangeLog
gcc/ada/
[thirdparty/gcc.git] / gcc / c-family / ChangeLog
1 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
2
3 * c-ada-spec.c, c-common.c, c-format.c, c-pretty-print.c: Replace
4 host_integerp (..., 0) with tree_fits_shwi_p throughout.
5
6 2013-11-15 Aldy Hernandez <aldyh@redhat.com>
7
8 * c-cilkplus.c: New file.
9 * c-common.c (readonly_error): Add location argument.
10 * c-common.h (readonly_error): Same.
11 (c_finish_cilk_clauses): Protoize.
12 (c_check_cilk_loop): Same.
13 c-omp.c (c_finish_omp_for): Handle CILK_SIMD nodes.
14 Do not fail on error_mark_node.
15 Abstract increment canonicalization to here...
16 (c_omp_for_incr_canonicalize_ptr): New.
17 c-pragma.c (init_pragma): Register "simd" pragma.
18 c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_SIMD.
19 (enum pragma_cilk_clause): New.
20
21 2013-11-15 Richard Sandiford <rdsandiford@googlemail.com>
22
23 * c-pretty-print.c (pp_c_character_constant): Remove unnecessary
24 wchar_type and host_integerp checks.
25
26 2013-11-14 Andrew MacLeod <amacleod@redhat.com>
27
28 * c-common.c: Likewise.
29 * c-gimplify.c: Likewise.
30 * cilk.c: Likewise.
31
32 2013-11-13 Joseph Myers <joseph@codesourcery.com>
33
34 * c-common.h (enum rid): Add RID_AUTO_TYPE.
35 * c-common.c (c_common_reswords): Add __auto_type.
36 (keyword_begins_type_specifier): Handle RID_AUTO_TYPE.
37
38 2013-11-12 Andrew MacLeod <amacleod@redhat.com>
39
40 * c-common.c: Include gimplify.h.
41 * c-gimplify.c: Likewise.
42 * cilk.c: Likewise.
43 * c-omp.c: Include gimple-expr.h instead of gimple.h.
44 * c-ubsan.c: Don't include gimple.h.
45
46 2013-11-12 Joseph Myers <joseph@codesourcery.com>
47
48 * c-common.c (c_common_reswords): Add _Thread_local.
49
50 2013-11-09 Joseph Myers <joseph@codesourcery.com>
51
52 * c-common.c (atomic_size_supported_p): New function.
53 (resolve_overloaded_atomic_exchange)
54 (resolve_overloaded_atomic_compare_exchange)
55 (resolve_overloaded_atomic_load, resolve_overloaded_atomic_store):
56 Use it instead of comparing size with a local list of sizes.
57
58 2013-11-07 Andrew MacLeod <amacleod@redhat.com>
59 Joseph Myers <joseph@codesourcery.com>
60
61 * c-common.h (enum rid): Add RID_ATOMIC.
62 * c-common.c (c_common_reswords): Add _Atomic.
63 (sync_resolve_params): Use TYPE_MAIN_VARIANT on pointer argument.
64 (keyword_is_type_qualifier): Accept RID_ATOMIC.
65 * c-format.c (check_format_types): Check for extra _Atomic
66 qualifiers in format argument.
67 * c-pretty-print.c (pp_c_cv_qualifiers): Handle atomic qualifier.
68 (pp_c_type_qualifier_list): Mention _Atomic in comment.
69
70 2013-11-06 Tobias Burnus <burnus@net-b.de>
71
72 * c-common.c (reason_option_codes_t): Add CPP_W_DATE_TIME.
73
74 2013-11-06 Joseph Myers <joseph@codesourcery.com>
75
76 * c-opts.c (c_common_post_options): Set -ffp-contract=off in C
77 standards modes.
78 * c-cppbuiltin.c (cpp_iec_559_value): Consider -ffp-contract=fast
79 to mean lack of IEEE 754 support.
80
81 2013-11-05 Tobias Burnus <burnus@net-b.de>
82
83 * c.opt (-Wdate-time): New option
84 * c-opts.c (sanitize_cpp_opts): Pass on to libcpp.
85
86 2013-11-05 Joseph Myers <joseph@codesourcery.com>
87
88 * c-cppbuiltin.c (cpp_iec_559_value): Test
89 flag_excess_precision_cmdline not flag_excess_precision.
90
91 2013-11-05 Tobias Burnus <burnus@net-b.de>
92
93 * c.opt (fopenmp-simd): New option.
94 * c-pragma.c (omp_pragmas): Move pragmas which can contain simd to ...
95 (omp_pragmas): ... this new struct.
96 (c_pp_lookup_pragma): Also walk omp_pragmas.
97 (init_pragma): Init pragmas for -fopenmp-simd.
98
99 2013-11-04 Marek Polacek <polacek@redhat.com>
100
101 PR c++/58979
102 * c-common.c (invalid_indirection_error): Handle RO_ARROW_STAR case.
103
104 2013-11-04 Joseph Myers <joseph@codesourcery.com>
105
106 * c-cppbuiltin.c (cpp_iec_559_value, cpp_iec_559_complex_value):
107 New functions.
108 (c_cpp_builtins): Define __GCC_IEC_559 and __GCC_IEC_559_COMPLEX.
109
110 2013-11-04 Eric Botcazou <ebotcazou@adacore.com>
111
112 * c-ada-spec.h (cpp_operation): Add IS_TRIVIAL.
113 (dump_ada_specs): Adjust prototype of second callback.
114 * c-ada-spec.c (cpp_check): New global variable.
115 (dump_ada_nodes): Remove cpp_check parameter and do not pass it down.
116 (print_generic_ada_decl): Likewise.
117 (has_static_fields): Change return type to bool and add guard.
118 (has_nontrivial_methods): New predicate.
119 (is_tagged_type): Change return type to bool.
120 (separate_class_package): Call has_nontrivial_methods.
121 (pp_ada_tree_identifier): Minor tweaks.
122 (dump_ada_function_declaration): Adjust calls to dump_generic_ada_node.
123 (dump_ada_array_domains): Likewise.
124 (dump_ada_array_type): Likewise.
125 (dump_template_types): Remove cpp_check parameter and do not pass it to
126 dump_generic_ada_node.
127 (dump_ada_template): Likewise.
128 (dump_generic_ada_node): Remove cpp_check parameter and do not pass it
129 recursively.
130 (print_ada_methods): Change return type to integer. Remove cpp_check
131 parameter and do not pass it down.
132 (dump_nested_types): Remove cpp_check parameter and do not pass it to
133 dump_generic_ada_node.
134 (print_ada_declaration): Likewise. Test RECORD_OR_UNION_TYPE_P before
135 accessing methods.
136 (print_ada_struct_decl): Remove cpp_check parameter and do not pass it
137 down. Use has_nontrivial_methods to recognize C++ classes. Use return
138 value of print_ada_methods.
139 (dump_ads): Rename cpp_check parameter to check and adjust prototype.
140 Set cpp_check to it before invoking dump_ada_nodes.
141 (dump_ada_specs): Likewise.
142
143 2013-11-03 Marek Polacek <polacek@redhat.com>
144
145 * c-ubsan.c: Don't include hash-table.h.
146 (ubsan_instrument_vla): New function.
147 * c-ubsan.h: Declare it.
148
149 2013-10-31 David Malcolm <dmalcolm@redhat.com>
150
151 Automated part of renaming of symtab_node_base to symtab_node.
152
153 Patch autogenerated by rename_symtab.py from
154 https://github.com/davidmalcolm/gcc-refactoring-scripts
155 revision 58bb219cc090b2f4516a9297d868c245495ee622
156
157 * c-pragma.c (maybe_apply_pending_pragma_weaks): Rename
158 symtab_node_base to symtab_node.
159
160 2013-10-31 Edward Smith-Rowland <3dw4rd@verizon.net>
161
162 Implement C++14 digit separators.
163 * c-lex.c (interpret_float): Remove digit separators from scratch string
164 before building real literal.
165
166 2013-10-30 Jakub Jelinek <jakub@redhat.com>
167
168 * cilk.c (create_cilk_helper_decl): Use HOST_WIDE_INT_PRINT_DEC.
169
170 2013-10-29 Balaji V. Iyer <balaji.v.iyer@intel.com>
171
172 * c-common.c (c_common_reswords[]): Added _Cilk_spawn and _Cilk_sync
173 fields.
174 (c_define_builtins): Called cilk_init_builtins if Cilk Plus is
175 enabled.
176 * c-common.h (enum rid): Added RID_CILK_SPAWN and RID_CILK_SYNC.
177 (insert_cilk_frame): New prototype.
178 (cilk_init_builtins): Likewise.
179 (gimplify_cilk_spawn): Likewise.
180 (c_cilk_install_body_w_frame_cleanup): Likewise.
181 (cilk_detect_spawn_and_unwrap): Likewise.
182 (cilk_set_spawn_marker): Likewise.
183 (build_cilk_sync): Likewise.
184 (build_cilk_spawn): Likewise.
185 * cilk.c: New file.
186
187 2013-10-29 David Malcolm <dmalcolm@redhat.com>
188
189 Patch autogenerated by refactor_symtab.py from
190 https://github.com/davidmalcolm/gcc-refactoring-scripts
191 revision 58bb219cc090b2f4516a9297d868c245495ee622
192
193 * c-gimplify.c (c_genericize): Update for conversion of symtab types
194 to a true class hierarchy.
195 * c-pragma.c (maybe_apply_pending_pragma_weaks): Likewise.
196
197 2013-10-27 Richard Sandiford <rdsandiford@googlemail.com>
198
199 * c-lex.c (interpret_integer): Remove call to cpp_num_sign_extend.
200
201 2013-10-26 Jeff Law <law@redhat.com>
202
203 * c-family/c-common.c (c_define_builtins): Remove mudflap support.
204 * c-family/c.opt: Ignore and warn for mudflap options.
205
206 2013-10-24 Tobias Burnus <burnus@net-b.de>
207
208 PR other/33426
209 * c-pragma.c (init_pragma) Add #pragma ivdep handling.
210 * c-pragma.h (pragma_kind): Add PRAGMA_IVDEP.
211
212 2013-10-23 Jason Merrill <jason@redhat.com>
213
214 * c-format.c (gcc_cxxdiag_char_table): Add %X.
215
216 2013-10-11 Jakub Jelinek <jakub@redhat.com>
217
218 * c-common.h (omp_clause_mask::operator !=): New method.
219 * c-omp.c (c_omp_split_clauses): Use if ((mask & something) != 0)
220 instead of if (mask & something) tests everywhere.
221
222 * c-cppbuiltin.c (c_cpp_builtins): Predefine _OPENMP to
223 201307 instead of 201107.
224 * c-common.c (DEF_FUNCTION_TYPE_8): Define.
225 (c_common_attribute_table): Add "omp declare target" and
226 "omp declare simd" attributes.
227 (handle_omp_declare_target_attribute,
228 handle_omp_declare_simd_attribute): New functions.
229 * c-omp.c: Include c-pragma.h.
230 (c_finish_omp_taskgroup): New function.
231 (c_finish_omp_atomic): Add swapped argument, if true,
232 build the operation first with rhs, lhs arguments and use NOP_EXPR
233 build_modify_expr.
234 (c_finish_omp_for): Add code argument, pass it down to make_code.
235 (c_omp_split_clauses): New function.
236 (c_split_parallel_clauses): Removed.
237 (c_omp_declare_simd_clause_cmp, c_omp_declare_simd_clauses_to_numbers,
238 c_omp_declare_simd_clauses_to_decls): New functions.
239 * c-common.h (omp_clause_mask): New type.
240 (OMP_CLAUSE_MASK_1): Define.
241 (omp_clause_mask::omp_clause_mask, omp_clause_mask::operator &=,
242 omp_clause_mask::operator |=, omp_clause_mask::operator ~,
243 omp_clause_mask::operator |, omp_clause_mask::operator &,
244 omp_clause_mask::operator <<, omp_clause_mask::operator >>,
245 omp_clause_mask::operator ==): New methods.
246 (enum c_omp_clause_split): New.
247 (c_finish_omp_taskgroup): New prototype.
248 (c_finish_omp_atomic): Add swapped argument.
249 (c_finish_omp_for): Add code argument.
250 (c_omp_split_clauses): New prototype.
251 (c_split_parallel_clauses): Removed.
252 (c_omp_declare_simd_clauses_to_numbers,
253 c_omp_declare_simd_clauses_to_decls): New prototypes.
254 * c-pragma.c (omp_pragmas): Add new OpenMP 4.0 constructs.
255 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_CANCEL,
256 PRAGMA_OMP_CANCELLATION_POINT, PRAGMA_OMP_DECLARE_REDUCTION,
257 PRAGMA_OMP_DISTRIBUTE, PRAGMA_OMP_END_DECLARE_TARGET, PRAGMA_OMP_SIMD,
258 PRAGMA_OMP_TARGET, PRAGMA_OMP_TASKGROUP and PRAGMA_OMP_TEAMS.
259 Remove PRAGMA_OMP_PARALLEL_FOR and PRAGMA_OMP_PARALLEL_SECTIONS.
260 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_ALIGNED,
261 PRAGMA_OMP_CLAUSE_DEPEND, PRAGMA_OMP_CLAUSE_DEVICE,
262 PRAGMA_OMP_CLAUSE_DIST_SCHEDULE, PRAGMA_OMP_CLAUSE_FOR,
263 PRAGMA_OMP_CLAUSE_FROM, PRAGMA_OMP_CLAUSE_INBRANCH,
264 PRAGMA_OMP_CLAUSE_LINEAR, PRAGMA_OMP_CLAUSE_MAP,
265 PRAGMA_OMP_CLAUSE_NOTINBRANCH, PRAGMA_OMP_CLAUSE_NUM_TEAMS,
266 PRAGMA_OMP_CLAUSE_PARALLEL, PRAGMA_OMP_CLAUSE_PROC_BIND,
267 PRAGMA_OMP_CLAUSE_SAFELEN, PRAGMA_OMP_CLAUSE_SECTIONS,
268 PRAGMA_OMP_CLAUSE_SIMDLEN, PRAGMA_OMP_CLAUSE_TASKGROUP,
269 PRAGMA_OMP_CLAUSE_THREAD_LIMIT, PRAGMA_OMP_CLAUSE_TO and
270 PRAGMA_OMP_CLAUSE_UNIFORM.
271
272 2013-10-09 Marc Glisse <marc.glisse@inria.fr>
273
274 PR tree-optimization/20318
275 * c-common.c (handle_returns_nonnull_attribute): New function.
276 (c_common_attribute_table): Add returns_nonnull.
277
278 2013-10-03 Marc Glisse <marc.glisse@inria.fr>
279
280 PR c++/19476
281 * c.opt (fcheck-new): Move to common.opt.
282
283 2013-09-25 Marek Polacek <polacek@redhat.com>
284 Jakub Jelinek <jakub@redhat.com>
285
286 PR sanitizer/58413
287 * c-ubsan.c (ubsan_instrument_shift): Don't instrument
288 an expression if we can prove it is correct.
289 (ubsan_instrument_division): Likewise. Remove unnecessary
290 check.
291
292 2013-09-18 Marek Polacek <polacek@redhat.com>
293
294 PR sanitizer/58411
295 * c-common.c (handle_no_sanitize_undefined_attribute): New function.
296 Declare it.
297 (struct attribute_spec c_common_att): Add no_sanitize_undefined.
298
299 2013-09-14 Iain Sandoe <iain@codesourcery.com>
300
301 PR target/48094
302 * c.opt (fgnu-runtime, fnext-runtime, fobjc-abi-version,
303 fobjc-gc, freplace-objc-classes): Accept for LTO.
304
305 2013-09-13 Jacek Caban <jacek@codeweavers.com>
306
307 * c-target.def: New hook
308
309 2013-09-09 Paolo Carlini <paolo.carlini@oracle.com>
310
311 PR c++/43452
312 * c.opt (Wdelete-incomplete): Add.
313
314 2013-09-08 Joern Rennecke <joern.rennecke@embecosm.com>
315
316 * c-common.c (same_scalar_type_ignoring_signedness): Delete.
317 (vector_types_compatible_elements_p): New function.
318 * c-common.h: (same_scalar_type_ignoring_signedness): Delete
319 declaration.
320 (vector_types_compatible_elements_p): Declare.
321
322 2013-09-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
323
324 * c-pretty-print.h (c_pretty_printer::simple_type_specifier): Now
325 a virtual member function.
326 (pp_simple_type_specifier): Remove.
327 (pp_c_type_specifier): Likewise.
328 * c-pretty-print.c (c_pretty_printer::simple_type_specifier):
329 Rename from pp_c_type_specifier. Adjust.
330 (c_pretty_printer::c_pretty_printer): Do not assign to
331 simple_type_specifier.
332
333 2013-09-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
334
335 * c-pretty-print.h (c_pretty_printer::type_id): Now a virtual
336 member function.
337 (c_pretty_printer::storage_class_specifier): Likewise.
338 (c_pretty_printer::initializer): Likewise.
339 (pp_declaration): Remove.
340 (pp_declaration_specifiers): Likewise.
341 (pp_abstract_declarator): Likewise.
342 (pp_declarator): Likewise.
343 (pp_type_id): Likewise.
344 (pp_statement): Likewise.
345 (pp_constant): Likewise.
346 (pp_id_expression): Likewise.
347 (pp_primary_expression): Likewise.
348 (pp_unary_expression): Likewise.
349 (pp_multiplicative_expression): Likewise.
350 (pp_conditional_expression): Likewise.
351 (pp_assignment_expression): Likewise.
352 (pp_expression): Likewise.
353 (pp_c_type_id): Likewise.
354 (pp_c_storage_class_specifier): Likewise.
355 * c-pretty-print.c (pp_c_type_cast): Tidy.
356 (pp_c_pointer): Likewise.
357 (pp_c_type_specifier): Likewise.
358 (pp_c_parameter_type_list): Likewise.
359 (pp_c_function_definition): Likewise.
360 (pp_c_init_declarator): Likewise.
361 (pp_c_initializer_list): Likewise.
362 (pp_c_constructor_elts): Likewise.
363 (c_pretty_printer::direct_abstract_declarator): Likewise.
364 (c_pretty_printer::declaration_specifiers): Likewise.
365 (c_pretty_printer::primary_expression): Likewise.
366 (c_pretty_printer::postfix_expression): Likewise.
367 (c_pretty_printer::type_id): Rename from pp_c_type_id.
368 (c_pretty_printer::storage_class_specifier): Rename from
369 pp_c_storage_class_specifier.
370 (c_pretty_printer::initializer): Rename from pp_c_initializer.
371 (c_pretty_printer::c_pretty_printer): Do not assign to type_id,
372 storage_class_specifier, initializer, offset_list, flags.
373
374 2013-08-30 Marek Polacek <polacek@redhat.com>
375
376 * c-ubsan.c: New file.
377 * c-ubsan.h: New file.
378
379 2013-08-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
380
381 * c-pretty-print.h (c_pretty_printer::declaration): Now a virtual
382 member function.
383 (c_pretty_printer::declaration_specifiers): Likewise.
384 (c_pretty_printer::declarator): Likewise.
385 (c_pretty_printer::abstract_declarator): Likewise.
386 (c_pretty_printer::direct_abstract_declarator): Likewise.
387 (c_pretty_printer::direct_declarator): Likewise.
388 (c_pretty_printer::function_specifier): Likewise.
389 (pp_declaration): Adjust.
390 (pp_declaration_specifiers): Likewise.
391 (pp_abstract_declarator): Likewise.
392 (pp_direct_declarator): Likewise.
393 (pp_function_specifier): Likewise.
394 (pp_direct_abstract_declarator): Remove as unused.
395 (pp_c_declaration): Remove.
396 (pp_c_declaration_specifiers): Likewise.
397 (pp_c_declarator): Likewise.
398 (pp_c_direct_declarator): Likewise.
399 (pp_c_function_specifier): Likewise.
400 (pp_c_direct_abstract_declarator): Likewise.
401 * c-pretty-print.c (c_pretty_printer::abstract_declarator): Rename
402 from pp_c_abstract_declarator. Adjust.
403 (c_pretty_printer::direct_abstract_declarator): Rename from
404 pp_c_direct_abstract_declarator. Adjust.
405 (c_pretty_printer::function_specifier): Rename from
406 pp_c_function_specifier. Adjust.
407 (c_pretty_printer::declaration_specifiers): Rename from
408 pp_c_declaration_specifiers. Adjust.
409 (c_pretty_printer::direct_declarator): Rename from
410 pp_c_direct_declarator. Adjust.
411 (c_pretty_printer::declarator): Rename from pp_c_declarator. Adjust.
412 (c_pretty_printer::declaration): Rename from pp_c_declaration. Adjust.
413 (c_pretty_printer::c_pretty_printer): Do not assign to
414 declaration, declaration_specifiers, declarator,
415 direct_declarator, direct_abstract_declarator, function_specifier.
416
417 2013-08-26 Gabriel Dos Reis <gdre@integrable-solutions.net>
418
419 * c-pretty-print.h (c_pretty_printer::unary_expression): Now a
420 virtual member function.
421 (c_pretty_printer::multiplicative_expression): Likewise.
422 (c_pretty_printer::conditional_expression): Likewise.
423 (c_pretty_printer::assignment_expression): Likewise.
424 (c_pretty_printer::expression): Likewise.
425 (pp_unary_expression): Adjust.
426 (pp_multiplicative_expression): Likewise.
427 (pp_assignment_expression): Likewise.
428 (pp_conditional_expression): Likewise.
429 (pp_expression): Likewise.
430 * c-pretty-print.c (c_pretty_printer::unary_expression): Rename
431 from pp_c_unary_expression. Adjust.
432 (c_pretty_printer::multiplicative_expression): Rename from
433 pp_c_multiplicative_expression. Adjust.
434 (c_pretty_printer::conditional_expression): Rename from
435 pp_c_conditional_expression. Adjust.
436 (c_pretty_printer::assignment_expression): Rename from
437 pp_c_assignment_expression. Adjust.
438 (c_pretty_printer::expression): Rename from pp_c_expression. Adjust.
439 (c_pretty_printer::c_pretty_printer): Do not assign to
440 unary_expression, multiplicative_expression,
441 conditional_expression, expression.
442
443 2013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
444
445 * c-pretty-print.h (c_pretty_printer::postfix_expression): Now a
446 virtual member function.
447 (pp_postfix_expression): Adjust.
448 (pp_c_postfix_expression): Remove.
449 * c-pretty-print.c (c_pretty_printer::postfix_expression): Rename
450 from pp_c_postfix_expression. Adjust.
451 (c_pretty_printer::c_pretty_printer): Do not assign to
452 postfix_expression.
453
454 2013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
455
456 * c-pretty-print.h (c_pretty_printer::primary_expression): Now a
457 virtua member function.
458 (pp_primary_expression): Adjust.
459 (pp_c_primary_expression): Remove.
460 * c-pretty-print.c (c_pretty_printer::primary_expression): Rename
461 from pp_c_primary_expression. Adjust.
462 (pp_c_initializer_list): Use pp_primary_expression.
463 (c_pretty_printer::c_pretty_printer): Do not assign to
464 primary_expression.
465
466 2013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
467
468 * c-pretty-print.h (c_pretty_printer::translate_string): Declare.
469 * c-pretty-print.c (M_): Remove.
470 (c_pretty_printer::translate_string): Define.
471 (pp_c_type_specifier): Use it.
472 (pp_c_primary_expression): Likewise.
473 (pp_c_expression): Likewise.
474
475 2013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
476
477 * c-pretty-print.h (c_pretty_printer::id_expression): Now a
478 virtual function.
479 (pp_c_id_expression): Remove.
480 (pp_id_expression): Adjust.
481 * c-pretty-print.c (c_pretty_printer::id_expression): Rename from
482 pp_c_id_expression. Adjust.
483 (pp_c_postfix_expression): Use pp_id_expression.
484 (c_pretty_printer::c_pretty_printer): Do not assign to id_expression.
485
486 2013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
487
488 * c-pretty-print.h (c_pretty_printer::constant): Now a virtual
489 member function.
490 (pp_constant): Adjust.
491 (pp_c_constant): Remove.
492 * c-pretty-print.c (c_pretty_printer::constant): Rename from
493 pp_c_constant. Adjust.
494 (pp_c_constant)
495 (pp_c_primary_expression): Call pp_constant in lieu of pp_c_constant.
496 (c_pretty_printer::c_pretty_printer): Remove assignment to constant.
497
498 2013-08-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
499
500 * c-pretty-print.h (pp_c_pretty_printer_init): Remove.
501 (c_pretty_printer::c_pretty_printer): Declare.
502 * c-pretty-print.c (pretty_printer::c_pretty_printer): Rename from
503 c_pretty_printer_init. Adjust.
504 (print_c_tree): Do not call c_pretty_printer_init.
505 * c-ada-spec.c (dump_ads): Remove call to pp_construct.
506
507 2013-08-09 Arnaud Charlet <charlet@adacore.com>
508
509 * c-ada-spec.c (print_ada_declaration): Prevent accessing null asm name
510
511 2013-08-05 Paolo Carlini <paolo.carlini@oracle.com>
512
513 PR c++/58080
514 * c-common.c (pointer_int_sum): Add bool parameter.
515 * c-common.h (pointer_int_sum): Adjust declaration.
516
517 2013-08-05 Gabriel Dos Reis <gdr@integrable-solutions.net>
518
519 * c-pretty-print.c (print_c_tree): Simplify. Use non-static local
520 c_pretty_printer variable.
521
522 2013-08-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
523
524 * c-pretty-print.h (c_pretty_printer): Derive from pretty_printer.
525 (pp_base): Remove.
526 (pp_c_base): Likewise. Adjust users.
527 * c-pretty-print.c (pp_c_maybe_whitespace): Adjust.
528 (pp_c_whitespace): Do not call pp_base.
529 (pp_c_left_paren): Likewise.
530 (pp_c_right_paren): Likewise.
531 (pp_c_left_brace): Likewise.
532 (pp_c_right_brace): Likewise.
533 (pp_c_left_bracket): Likewise.
534 (pp_c_right_bracket): Likewise.
535 (pp_c_dot): Likewise.
536 (pp_c_ampersand): Likewise.
537 (pp_c_star): Likewise.
538 (pp_c_arrow): Likewise.
539 (pp_c_semicolon): Likewise.
540 (pp_c_complement): Likewise.
541 (pp_c_exclamation): Likewise.
542 (pp_c_direct_declarator): Likewise.
543 (pp_c_ws_string): Likewise.
544 (pp_c_identifier): Likewise.
545 (pp_c_statement): Likewise.
546 (print_c_tree): Likewise.
547
548 2013-08-04 Ed Smith-Rowland <3dw4rd@verizon.net>
549
550 PR c++/58072
551 * c-common.c (c_parse_error): Catch user-defined literal tokens and
552 provide useful error strings.
553
554 2013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
555
556 * c-ada-spec.c (pp_ada_tree_identifier): Use specialized pretty
557 printer functions instead of pp_string or operators and punctuators.
558 (dump_generic_ada_node): Likewise.
559 * c-pretty-print.c (pp_c_type_specifier): Likewise.
560 (pp_c_relational_expression): Likewise.
561 (pp_c_logical_or_expression): Likewise.
562
563 2013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
564
565 * c-ada-spec.c (print_ada_macros): Use specialized pretty printer
566 functions instead of pp_character.
567 (pp_ada_tree_identifier): Likewise.
568 (dump_ada_double_name): Likewise.
569 (dump_ada_function_declaration): Likewise.
570 (dump_ada_array_domains): Likewise.
571 (dump_template_types): Likewise.
572 (dump_generic_ada_node): Likewise.
573 (print_ada_declaration): Likewise.
574 (print_ada_struct_decl): Likewise.
575 * c-pretty-print.c (pp_c_integer_constant): Likewise.
576
577 2013-07-23 Tom Tromey <tromey@redhat.com>
578
579 * c-common.h (enum rid) <RID_GENERIC>: New constant.
580 * c-common.c (c_common_reswords): Add _Generic.
581
582 2013-07-21 OndÅ\99ej Bílka <neleai@seznam.cz>
583
584 * c-common.c: Fix typos.
585 * c-common.h: Likewise.
586
587 2013-07-13 Lubos Lunak <l.lunak@suse.cz>
588
589 PR c++/55203
590 * c-common.c (c_common_attribute_table): Add warn_unused.
591 (handle_warn_unused_attribute): New.
592
593 2013-07-10 Jakub Jelinek <jakub@redhat.com>
594
595 * c-ppoutput.c (scan_translation_unit): Call account_for_newlines
596 for all CPP_TOKEN_FLD_STR tokens, not just CPP_COMMENT.
597
598 2013-07-10 Paolo Carlini <paolo.carlini@oracle.com>
599
600 PR c++/57869
601 * c.opt: Add Wconditionally-supported.
602
603 2013-07-08 Graham Stott <graham.stott@btinternet.com>
604
605 * c-family/array-notation-common.c (length_mismatch_in_expr_p): Delete
606 unused variables l_length and l_node.
607
608 2013-07-04 Joern Rennecke <joern.rennecke@embecosm.com>
609
610 PR c/57821
611 * c-common.c (complete_array_type): Delay folding first index
612 like other indices. When folding, check for index overflow.
613
614 2013-06-27 Marc Glisse <marc.glisse@inria.fr>
615
616 PR c++/57509
617 * c-common.h (c_build_vec_perm_expr): New complain argument.
618 * c-common.c (c_build_vec_perm_expr): Likewise.
619 Use save_expr also in C++.
620
621 2013-06-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
622
623 * c-common.c (c_common_nodes_and_builtins): Use cxx11 in lieu of cxx0x.
624 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
625 * c-opts.c (c_common_post_options): Likewise.
626
627 2013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
628
629 * array-notation-common.c (length_mismatch_in_expr): Changed the
630 parameter type's from a dynamic array to a vec_tree. Also removed
631 the size parameters.
632 * c-common.h (length_mismatch_in_expr_p): Fixed prototype's as per
633 the change above.
634
635 2013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
636
637 * c-common.h (struct cilkplus_an_parts): New structure.
638 (struct cilkplus_an_loop_parts): Likewise.
639 (cilkplus_extract_an_triplets): New prototype.
640 (fix_sec_implicit_args): Likewise.
641 * array-notation-common.c (cilkplus_extract_an_triplets): New function.
642 (fix_sec_implicit_args): Likewise.
643
644 2013-06-20 Balaji V. Iyer <balaji.v.iyer@intel.com>
645
646 * array-notation-common.c (find_inv_trees): Removed an unwanted
647 typecasting.
648 * c-common.h (struct inv_list::additional_tcodes): Changed type from
649 enum rid to enum tree_code.
650
651 2013-06-11 Jan Hubicka <jh@suse.cz>
652
653 * c-common.c (handle_alias_ifunc_attribute): Do not set
654 DECL_EXTERNAL for weakref variables.
655 * c-pragma.c (handle_pragma_weak): Make sure aliases
656 are not declared as external.
657
658 2013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
659
660 * array-notation-common.c (length_mismatch_in_expr_p): Moved this
661 function from c/c-array-notation.c.
662 (is_cilkplus_reduce_builtin): Likewise.
663 (find_rank): Likewise.
664 (extract_array_notation_exprs): Likewise.
665 (replace_array_notations): Likewise.
666 (find_inv_trees): Likewise.
667 (replace_inv_trees): Likewise.
668 (contains_array_notation_expr): Likewise.
669 (find_correct_array_notation_type): Likewise.
670 * c-common.h (struct inv_list): Moved this struct from the file
671 c/c-array-notation.c and added a new field called additional tcodes.
672 (length_mismatch_in_expr_p): New prototype.
673 (is_cilkplus_reduce_builtin): Likewise.
674 (find_rank): Likewise.
675 (extract_array_notation_exprs): Likewise.
676 (replace_array_notation): Likewise.
677 (find_inv_trees): Likewise.
678 (replace_inv_trees): Likewise.
679 (find_correct_array_notation_type): Likewise.
680
681 2013-05-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
682
683 * c-common.c (c_define_builtins): When cilkplus is enabled, the
684 function array_notation_init_builtins is called.
685 (c_common_init_ts): Added ARRAY_NOTATION_REF as typed.
686 * c-common.def (ARRAY_NOTATION_REF): New tree.
687 * c-common.h (build_array_notation_expr): New function declaration.
688 (build_array_notation_ref): Likewise.
689 (extract_sec_implicit_index_arg): New extern declaration.
690 (is_sec_implicit_index_fn): Likewise.
691 (ARRAY_NOTATION_CHECK): New define.
692 (ARRAY_NOTATION_ARRAY): Likewise.
693 (ARRAY_NOTATION_START): Likewise.
694 (ARRAY_NOTATION_LENGTH): Likewise.
695 (ARRAY_NOTATION_STRIDE): Likewise.
696 * c-pretty-print.c (pp_c_postifix_expression): Added a new case for
697 ARRAY_NOTATION_REF.
698 (pp_c_expression): Likewise.
699 * c.opt (flag_enable_cilkplus): New flag.
700 * array-notation-common.c: New file.
701
702 2013-05-14 Jakub Jelinek <jakub@redhat.com>
703
704 PR c++/57274
705 * c-common.c (verify_tree): Don't recurse into SIZEOF_EXPR.
706
707 2013-05-10 Marc Glisse <marc.glisse@inria.fr>
708
709 * c-common.c (vector_types_convertible_p): No TYPE_PRECISION for
710 vectors.
711
712 2013-05-07 Han Shen <shenhan@google.com>
713
714 * c-cppbuiltin.c (c_cpp_builtins): Added "__SSP_STRONG__=3".
715
716 2013-04-29 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
717
718 * c-common.c (check_user_alignment): Emit error for negative values.
719
720 2013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
721
722 * c-opts.c (set_std_cxx11): Use CLK_CXX1Y and CLK_GNUCXX1Y.
723
724 2013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
725
726 * c-cppbuiltin.c (c_cpp_builtins): Do not define
727 __GXX_EXPERIMENTAL_CXX1Y__.
728
729 2013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
730 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
731
732 * c.opt ([Wpointer-arith]): Enabled by -Wpedantic, as documented.
733 * c-common.c (pointer_int_sum): Change -Wpointer-arith pedwarns
734 to simply use OPT_Wpointer_arith.
735 (c_sizeof_or_alignof_type): Likewise.
736
737 2013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
738
739 * c-cppbuiltin.c (c_cpp_builtins): Define __GXX_EXPERIMENTAL_CXX1Y__.
740
741 2013-04-12 Jakub Jelinek <jakub@redhat.com>
742
743 * c-format.c (gcc_diag_char_table, gcc_tdiag_char_table,
744 gcc_cdiag_char_table, gcc_cxxdiag_char_table): Add %r and %R format
745 specifiers.
746
747 2013-04-07 Steven Bosscher <steven@gcc.gnu.org>
748
749 * c-pragma.c (add_to_renaming_pragma_list): Fix leading comment.
750
751 2013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
752
753 * c-common.c (pointer_int_sum): Remove dead code.
754
755 2013-03-09 Richard Sandiford <rdsandiford@googlemail.com>
756
757 PR middle-end/56524
758 * c-common.c (handle_optimize_attribute): Don't call
759 save_optabs_if_changed.
760
761 2013-03-05 Jakub Jelinek <jakub@redhat.com>
762
763 PR middle-end/56461
764 * c-pch.c (pch_init): Free target_validity at the end.
765
766 2013-03-04 Jakub Jelinek <jakub@redhat.com>
767
768 * c-pretty-print.c (pp_c_pretty_printer_init): Clear pp->flags.
769
770 2013-02-28 Konstantin Serebryany <konstantin.s.serebryany@gmail.com>
771 Jakub Jelinek <jakub@redhat.com>
772
773 PR sanitizer/56454
774 * c-common.c (handle_no_sanitize_address_attribute): New function.
775 (c_common_attribute_table): Add no_sanitize_address attribute.
776 (handle_no_address_safety_analysis_attribute): Add
777 no_sanitize_address attribute, not no_address_safety_analysis
778 attribute.
779
780 2013-02-18 Aldy Hernandez <aldyh@redhat.com>
781
782 PR target/52555
783 * c-common.c (handle_optimize_attribute): Call
784 save_optabs_if_changed.
785
786 2013-02-18 Jakub Jelinek <jakub@redhat.com>
787 Steven Bosscher <steven@gcc.gnu.org>
788
789 PR pch/54117
790 * c-opts.c (c_common_post_options): If debug info is enabled
791 and non-dwarf*, refuse to load PCH files and when writing PCH
792 file warn.
793
794 2013-02-05 Jakub Jelinek <jakub@redhat.com>
795
796 PR middle-end/56167
797 * c-common.c (handle_error_attribute): Fix condition.
798
799 2013-01-30 Jakub Jelinek <jakub@redhat.com>
800
801 PR c++/55742
802 * c-common.c (handle_target_attribute): Revert 2012-12-26 change.
803
804 2013-01-18 Jason Merrill <jason@redhat.com>
805
806 PR target/54908
807 * c.opt (-fextern-tls-init): New.
808 * c-opts.c (c_common_post_options): Handle it.
809
810 2013-01-09 Jakub Jelinek <jakub@redhat.com>
811
812 PR c/48418
813 * c-common.c (c_fully_fold_internal): Warn for LSHIFT_EXPR and
814 RSHIFT_EXPR, if orig_op1 isn't INTEGER_CST, op1 is INTEGER_CST
815 and is either negative or bigger or equal to type precision
816 of the first operand.
817
818 2012-12-03 Marek Polacek <polacek@redhat.com>
819
820 PR c/55570
821 * c-common.c (check_user_alignment): Swap order of tests,
822 check TREE_CODE first.
823
824 2012-11-29 Ed Smith-Rowland <3dw4rd@verizon.net>
825
826 PR c++/52654
827 * c-common.h (overflow_type): New enum.
828 (build_userdef_literal): Add overflow_type argument.
829 (tree_userdef_literal): Add overflow_type.
830 (USERDEF_LITERAL_OVERFLOW): New access macro.
831 * c-common.c (build_userdef_literal): Add overflow_type
832 argument.
833 * c-lex.c (c_lex_with_flags): Add overflow_type to
834 build_userdef_literal calls.
835 (interpret_integer, interpret_float): Add overflow_type argument.
836
837 2012-11-28 Richard Biener <rguenther@suse.de>
838
839 PR c/35634
840 * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
841 here and use a type with proper overflow behavior for types that would
842 need to be promoted for the arithmetic.
843
844 2012-11-23 Jakub Jelinek <jakub@redhat.com>
845
846 PR sanitizer/55435
847 * c-common.c (handle_no_address_safety_analysis_attribute): New
848 function.
849 (c_common_attribute_table): Add no_address_safety_analysis.
850
851 2012-11-16 Simon Baldwin <simonb@google.com>
852
853 * c.opt: Add f[no-]canonical-system-headers.
854 * c-opts.c (c_common_handle_option): Handle
855 OPT_fcanonical_system_headers.
856
857 2012-11-09 Ed Smith-Rowland <3dw4rd@verizon.net>
858
859 PR c++/54413
860 * c-opts.c (c_common_handle_option): Set new flags.
861 * c.opt: Describe new flags.
862
863 2012-11-09 Jason Merrill <jason@redhat.com>
864
865 * c.opt (Wabi-tag): New.
866
867 2012-11-09 Andi Kleen <ak@linux.intel.com>
868
869 PR 55139
870 * c-common.c (get_atomic_generic_size): Mask with
871 MEMMODEL_MASK
872
873 2012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
874
875 PR c/53063
876 * c.opt (Wformat): Make it Alias Wformat=1.
877 (Wformat-contains-nul,Wformat-extra-args,Wformat-nonliteral,
878 Wformat-security,Wformat-y2k,Wformat-zero-length): Use
879 LangEnabledBy.
880 (Wformat=): RejectNegative. Use LangEnabledBy.
881 (Wnonnull): Use LangEnabledBy.
882 * c-opts.c (c_common_handle_option): Do not handle Wformat here.
883 * c-format.c (set_Wformat): Delete.
884 (decode_format_attr): Replace OPT_Wformat with OPT_Wformat_.
885 (maybe_read_dollar_number): Likewise.
886 (avoid_dollar_number): Likewise.
887 (finish_dollar_format_checking): Likewise.
888 (check_format_info): Likewise.
889 (check_format_info_main): Likewise.
890 (check_format_types): Likewise.
891 (format_type_warning): Likewise.
892 * c-common.c (int): Likewise.
893 (check_function_sentinel): Likewise.
894 * c-common.h (warn_format,set_Wformat): Do not declare here.
895
896 2012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
897
898 PR c/53063
899 * c.opt(Warray-bounds,Wdelete-non-virtual-dtor,Wenum-compare,
900 Wmain,Woverlength-strings, Wunknown-pragmas,Wunused-macros):
901 Use LangEnabledBy.
902 (Wswitch,Wswitch-default,Wswitch-enum): Likewise. Move here from
903 common.opt.
904 (Wvariadic-macros): Init(1).
905 * c-opts.c (c_common_handle_option): Do not handle them
906 explicitly.
907 (c_common_post_options): Likewise.
908 (sanitize_cpp_opts): warn_unused_macros is now
909 cpp_warn_unused_macros.
910 (push_command_line_include): Likewise.
911 * c-common.c (warn_unknown_pragmas): Do not define.
912 * c-common.h (warn_unknown_pragmas): Do not declare.
913
914 2012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
915
916 PR c/51294
917 * c-common.c (conversion_warning): Handle conditional expressions.
918
919 2012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
920
921 PR c++/54930
922 * c.opt (Wreturn_local_addr): Define new option.
923
924 2012-10-25 Jason Merrill <jason@redhat.com>
925
926 * c.opt (Wvirtual-move-assign): New.
927
928 * c.opt (Winherited-variadic-ctor): New.
929
930 2012-10-25 Marc Glisse <marc.glisse@inria.fr>
931
932 PR c++/54427
933 * c-common.c (scalar_to_vector): Handle VEC_COND_EXPR.
934
935 2012-10-23 Joseph Myers <joseph@codesourcery.com>
936
937 * c-common.h (pch_cpp_save_state): Declare.
938 * c-target.def (c_preinclude): New hook.
939 * c-opts.c (done_preinclude): New.
940 (push_command_line_include): Handle default preincluded header.
941 (cb_file_change): Call pch_cpp_save_state when calling
942 push_command_line_include.
943 * c-pch.c (pch_ready_to_save_cpp_state, pch_cpp_state_saved)
944 (pch_cpp_save_state): New.
945 (pch_init): Call pch_cpp_save_state conditionally, instead of
946 calling cpp_save_state.
947
948 2012-10-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
949
950 PR c/53063
951 PR c/40989
952 * c.opt (Waddress,Wchar-subscripts,Wsign-conversion,Wimplicit,
953 Wimplicit-function-declaration,Wimplicit-int,Wsizeof-pointer-memaccess,
954 Wnarrowing,Wparentheses,Wpointer-sign,Wreturn-type,Wsequence-point,
955 Wsign-compare,Wuninitialized,Wmaybe-uninitialized,Wunused,
956 Wvolatile-register-var): Add LangEnabledBy or EnabledBy.
957 * c-opts.c (c_common_handle_option): Remove explicit handling from
958 here.
959 (c_common_post_options): Likewise.
960
961 2012-10-18 Eric Botcazou <ebotcazou@adacore.com>
962
963 * c-ada-spec.c (LOCATION_COL): Delete.
964 (compare_location): New function.
965 (compare_node): Use it.
966 (compare_comment): Likewise.
967
968 2012-10-16 Manuel López-Ibáñez <manu@gcc.gnu.org>
969
970 PR c/53063
971 PR c/40989
972 * c.opt (Wstrict-aliasing=,Wstrict-overflow=): Use LangEnabledBy.
973 * c-opts.c (c_common_handle_option): Do not set them here. Add
974 comment.
975 (c_common_post_options): Likewise.
976
977 2012-10-16 Eric Botcazou <ebotcazou@adacore.com>
978
979 * c-ada-spec.c (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Define.
980 (dump_generic_ada_node) <INTEGER_CST>: Deal with sizetype specially.
981 Remove POINTER_TYPE handling, add large unsigned handling and use
982 ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX for big numbers.
983
984 2012-10-12 Jakub Jelinek <jakub@redhat.com>
985
986 PR c/54381
987 * c-common.h (sizeof_pointer_memaccess_warning): Adjust prototype.
988 * c-common.c (sizeof_pointer_memaccess_warning): Take array of 3
989 locs and array of 3 trees instead of just single loc and single
990 sizeof_arg tree. Handle __builtin___*_chk builtins too, and
991 also stpncpy, bcopy, bcmp, bzero, snprintf and vsnprintf builtins.
992 For *cmp* builtins that take two sources strings report warnings
993 about first and second source, not about destination and source.
994
995 2012-10-12 Marc Glisse <marc.glisse@inria.fr>
996
997 PR c++/53055
998 * c-common.h (enum ref_operator) [RO_ARROW_STAR]: New.
999
1000 2012-10-11 Eric Botcazou <ebotcazou@adacore.com>
1001
1002 * c-ada-spec.c (dump_ada_template): Bail out for template declarations
1003 declaring something coming from another file.
1004
1005 2012-10-10 Arnaud Charlet <charlet@adacore.com>
1006
1007 PR ada/54845
1008 * c-ada-spec.c (print_ada_struct_decl): Increase buf size.
1009
1010 2012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
1011
1012 PR c++/54194
1013 * c-common.c (warn_about_parentheses): Add location_t parameter;
1014 use EXPR_LOC_OR_LOC.
1015 * c-common.h: Update declaration.
1016
1017 2012-10-09 Marc Glisse <marc.glisse@inria.fr>
1018
1019 PR c++/54427
1020 * c-common.c (scalar_to_vector): Moved from c-typeck.c. Support
1021 more operations. Make error messages optional.
1022 * c-common.h (enum stv_conv): Moved from c-typeck.c.
1023 (scalar_to_vector): Declare.
1024
1025 2012-10-08 Jason Merrill <jason@redhat.com>
1026
1027 * c-common.c (c_common_reswords): Add thread_local.
1028
1029 2012-10-08 Dodji Seketeli <dodji@redhat.com>
1030
1031 PR c++/53528 C++11 attribute support
1032 * c-common.h (bitfield_p, cxx_fundamental_alignment_p): Declare
1033 new functions.
1034 * c-common.c (check_cxx_fundamental_alignment_constraints): New
1035 static function.
1036 (handle_aligned_attribute): In choose strictest alignment
1037 among many. Use new check_cxx_fundamental_alignment_constraints.
1038 (handle_transparent_union_attribute): In c++11 attribute syntax,
1039 don't look through typedefs.
1040
1041 2012-10-04 Arnaud Charlet <charlet@adacore.com>
1042
1043 * c-ada-spec.c (print_ada_declaration): Remove handling of TDF_RAW.
1044 * c.opt (-fdump-ada-spec, -fdump-ada-spec-slim): Move switch definition
1045 out of dumpfile.h.
1046
1047 2012-09-25 Dehao Chen <dehao@google.com>
1048
1049 PR middle-end/54645
1050 * c-pch.c (c_common_read_pch): Rebuild the location_adhoc_data
1051 map when read in the pch.
1052
1053 2012-09-18 Arnaud Charlet <charlet@adacore.com>
1054
1055 * c-ada-spec.c: Style fixes.
1056
1057 2012-09-18 Thomas Quinot <quinot@adacore.com>
1058
1059 * c.opt (-fada-spec-parent): Define new command line switch.
1060 * c-ada-spec.c (get_ada_package): When -fada-spec-parent
1061 is specified, generate binding spec as a child of the specified unit.
1062
1063 2012-09-13 Paolo Carlini <paolo.carlini@oracle.com>
1064 Manuel López-Ibáñez <manu@gcc.gnu.org>
1065
1066 PR c++/53210
1067 * c.opt ([Winit-self]): Enabled by -Wall in C++.
1068
1069 2012-08-23 Arnaud Charlet <charlet@adacore.com>
1070
1071 * c-ada-spec.c (dump_generic_ada_node): Fix handling of name_only
1072 for pointers, and add missing Convention C pragma.
1073 (print_ada_struct_decl): Add missing aliased keyword.
1074 (dump_ads): Add pragma Ada_2005 and Style_Checks (Off).
1075
1076 2012-08-17 Jakub Jelinek <jakub@redhat.com>
1077
1078 * c-common.c (sizeof_pointer_memaccess_warning): New function.
1079 * c.opt (-Wsizeof-pointer-memaccess): Add new option.
1080 * c-opts.c (c_common_handle_option): Enable it for -Wall.
1081 * c-common.h (sizeof_pointer_memaccess_warning): Add prototype.
1082 * c-common.def (SIZEOF_EXPR): Moved here from cp-tree.def.
1083
1084 2012-08-10 Richard Guenther <rguenther@suse.de>
1085
1086 * c-pretty-print.c (pp_c_expression): Handle anonymous SSA names.
1087
1088 2012-08-07 Steven Bosscher <steven@gcc.gnu.org>
1089
1090 * c-pretty-print.c (pp_c_function_definition): Use pp_newline_and_flush
1091 instead of separate pp_newline and pp_flush.
1092 (print_c_tree): Likewise.
1093
1094 2012-07-26 Richard Henderson <rth@redhat.com>
1095
1096 * c-common.c (handle_hot_attribute): Allow labels.
1097 (handle_cold_attribute): Likewise.
1098
1099 2012-07-20 Jakub Jelinek <jakub@redhat.com>
1100
1101 PR c++/28656
1102 * c-common.c (check_function_nonnull): Handle multiple nonnull
1103 attributes properly.
1104
1105 2012-07-16 Steven Bosscher <steven@gcc.gnu.org>
1106
1107 * c-gimplify.c: Include dumpfile.h instead of tree-dump.h.
1108 * c-ada-spec.c: Likewise.
1109 * c-dump.c (dump_stmt): Move to cp/dump.c, the only user.
1110
1111 2012-07-14 Steven Bosscher <steven@gcc.gnu.org>
1112
1113 * c-pch.c (CHECK_NO_ASM_OUT_DURING_PCH): Do not define.
1114 Remove code conditional on it.
1115
1116 2012-07-11 Steven Bosscher <steven@gcc.gnu.org>
1117
1118 * c-gimplify.c: Do not include basic-block.h.
1119 * c-common.c: Do not include linfuncs.h.
1120
1121 2012-07-08 Steven Bosscher <steven@gcc.gnu.org>
1122
1123 * c-common.h: Include tree.h.
1124
1125 2012-07-02 Jason Merrill <jason@redhat.com>
1126
1127 PR c++/53524
1128 * c-common.c (get_priority): Call default_conversion.
1129
1130 2012-07-01 Uros Bizjak <ubizjak@gmail.com>
1131
1132 * c-pch.c (c_common_write_pch): Remove unused variables.
1133
1134 2012-06-29 Steven Bosscher <steven@gcc.gnu.org>
1135
1136 * cppspec.c: Moved from gcc/ to here.
1137
1138 2012-06-27 Kai Tietz <ktietz@redhat.com>
1139
1140 PR preprocessor/37215
1141 * c-ppoutput.c (preprocess_file): Check for nonempty buffer.
1142
1143 2012-06-21 Steven Bosscher <steven@gcc.gnu.org>
1144
1145 * c-common.h (c_common_print_pch_checksum): Remove.
1146 * c-pch.c: Do not include output.h.
1147 (CHECK_NO_ASM_OUT_DURING_PCH): Define and add FIXME.
1148 (asm_out_file): Define iff CHECK_NO_ASM_OUT_DURING_PCH isdefined.
1149 (asm_file_startpos): Define iff CHECK_NO_ASM_OUT_DURING_PCH is defined.
1150 (struct c_pch_header): Remove.
1151 (get_ident): Update gpch version.
1152 (pch_init): Do not print executable_checksum to asm_out_file.
1153 Do not fail if there is no asm_out_file to read back from. Set
1154 asm_file_startpos only if CHECK_NO_ASM_OUT_DURING_PCH is defined.
1155 (c_common_write_pch): Verify that nothing was written to asm_out_file
1156 since pch_init was called. Do not write a c_pch_header, and do not
1157 copy from asm_out_file to the PCH.
1158 (c_common_read_pch): Do not read a c_pch_header, and do not restore
1159 the content of asm_out_file from the PCH.
1160 (c_common_print_pch_checksum): Remove.
1161 * c-opts.c (c_common_init): Print out executable_checksum directly.
1162
1163 2012-06-19 Steven Bosscher <steven@gcc.gnu.org>
1164
1165 * c-target.def (objc_declare_unresolved_class_reference,
1166 objc_declare_class_definition): Add new hooks.
1167
1168 2012-06-19 Steven Bosscher <steven@gcc.gnu.org>
1169
1170 * c-lex.c: Do not include output.h.
1171 (cb_ident): Try to put out .ident with targetm.asm_out.output_ident.
1172 Remove uses of ASM_OUTPUT_IDENT.
1173
1174 2012-06-15 Marc Glisse <marc.glisse@inria.fr>
1175
1176 PR c++/51033
1177 * c-common.h (c_build_vec_perm_expr): Move decl here.
1178 * c-common.c (c_build_vec_perm_expr): Move definition
1179 here.
1180
1181 2012-06-06 Steven Bosscher <steven@gcc.gnu.org>
1182
1183 * c.opt (fconserve-space): Turn into a no-op.
1184
1185 2012-06-04 Sterling Augustine <saugustine@google.com>
1186
1187 * c-pretty-print.h (pp_c_flag_gnu_v3): New enumerator.
1188 * c-pretty-print.c (pp_c_specifier_qualifier_list): Check it at
1189 both the start and end of the function.
1190
1191 2012-06-04 Steven Bosscher <steven@gcc.gnu.org>
1192
1193 * c-common.c: Do not include output.h.
1194 * c-pragma.c: Likewise.
1195
1196 2012-06-04 Steven Bosscher <steven@gcc.gnu.org>
1197
1198 * error.c (dump_decl): Check pp_c_flag_gnu_v3.
1199 (decl_as_dwarf_string, lang_decl_dwarf_name): New functions.
1200 (lang_decl_name): Handle namespace decls.
1201
1202 2012-05-31 Steven Bosscher <steven@gcc.gnu.org>
1203
1204 * c-ada-spec.c: Do not include output.h.
1205 * c-semantics.c: Likewise.
1206
1207 2012-05-29 Joseph Myers <joseph@codesourcery.com>
1208
1209 * c-common.c: Fix typo.
1210
1211 2012-05-29 Michael Matz <matz@suse.de>
1212
1213 * c-common.h (c_expand_decl): Remove prototype.
1214
1215 2012-05-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
1216
1217 * c.opt (Wmissing-braces): Use LangEnabledBy(C ObjC,Wall).
1218 * c-opts.c (c_common_handle_option): Remove code handling
1219 warn_missing_braces.
1220
1221 2012-05-28 Paolo Carlini <paolo.carlini@oracle.com>
1222
1223 PR c++/25137
1224 * c-opts.c (c_common_handle_option): For C++ -Wall doesn't enable
1225 -Wmissing_braces.
1226
1227 2012-05-22 Dodji Seketeli <dodji@redhat.com>
1228
1229 PR c++/53322
1230 * c.opt (Wunused-local-typedefs): Use EnabledBy(Wunused).
1231
1232 2012-05-17 Manuel López-Ibáñez <manu@gcc.gnu.org>
1233
1234 * c.opt (--pedantic-errors,-pedantic-errors): Do not handle here.
1235 * c-opts.c (c_common_handle_option): Do not handle explicitly
1236 Wreturn-type, Wwrite-strings, warn_ecpp, and -pedantic-errors.
1237
1238 2012-05-16 Dodji Seketeli <dodji@redhat.com>
1239
1240 PR preprocessor/7263
1241 * c-lex.c (c_lex_with_flags): Pass a virtual location to the call
1242 to cpp_classify_number. For diagnostics, use the precise location
1243 instead of the global input_location.
1244
1245 2012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
1246
1247 PR c++/11856
1248 * c-common.c (shorten_compare): Check c_inhibit_evaluation_warnings.
1249
1250 2012-05-14 Bernd Schmidt <bernds@codesourcery.com>
1251
1252 * c-common.c (DEF_ATTR_STRING): Define and undefine as necessary.
1253
1254 2012-05-14 Manuel López-Ibáñez <manu@gcc.gnu.org>
1255
1256 PR 53063
1257 * c.opt (Wc++0X-compat,Wdelete-non-virtual-dtor,Wjump-misses-init,
1258 Wreorder): Use LangEnabledBy.
1259 * c-opts.c (c_common_handle_option): Do not enable them
1260 explicitly. Call lang-specific generated functions.
1261 (c_common_post_options): Do not set them here.
1262
1263 2012-05-13 Manuel López-Ibáñez <manu@gcc.gnu.org>
1264
1265 * c.opt (Wclobbered,Wempty-body,Wignored-qualifiers,
1266 Wmissing-field-initializers,Wmissing-parameter-type,
1267 Wold-style-declaration,Woverride-init): Use EnabledBy.
1268 * c-opts.c (c_common_post_options): Do not set here explicitly.
1269
1270 2012-05-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
1271
1272 PR 53063
1273 * c-opts.c (c_common_handle_option): Use handle_generated_option
1274 to enable sub-options.
1275
1276 2012-05-10 Paolo Carlini <paolo.carlini@oracle.com>
1277
1278 PR c++/53158
1279 * c-common.c (warnings_for_convert_and_check): Use warning_at.
1280
1281 2012-05-10 Richard Guenther <rguenther@suse.de>
1282
1283 * c-common.c (c_sizeof_or_alignof_type): Remove assert and
1284 adjust commentary about TYPE_IS_SIZETYPE types.
1285
1286 2012-05-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
1287
1288 PR c++/53261
1289 * c-common.c (warn_logical_operator): Check that argument of
1290 integer_zerop is not NULL.
1291
1292 2012-05-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
1293
1294 PR c/43772
1295 * c-common.c (warn_logical_operator): Do not warn if either side
1296 is already true or false.
1297
1298 2012-05-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
1299
1300 PR c/51712
1301 * c-common.c (expr_original_type): New.
1302 (shorten_compare): Do not warn for enumeration types.
1303
1304 2012-05-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
1305
1306 * c.opt (fpermissive): Add Var(flag_permissive).
1307
1308 2012-04-30 Marc Glisse <marc.glisse@inria.fr>
1309
1310 PR c++/51033
1311 * c-common.c (convert_vector_to_pointer_for_subscript): New function.
1312 * c-common.h (convert_vector_to_pointer_for_subscript): Declare it.
1313
1314 2012-04-30 Dodji Seketeli <dodji@redhat.com>
1315
1316 Add -Wvarargs option
1317 * c.opt (Wvarargs): Define new option.
1318
1319 2012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
1320
1321 * c-common.c (check_function_arguments): Replace
1322 Wmissing-format-attribute with Wsuggest-attribute=format.
1323
1324 2012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
1325
1326 * c.opt (Wsuggest-attribute=format): New. Alias of
1327 Wmissing-format-attribute.
1328 * c-format.c (decode_format_type): Replace
1329 Wmissing-format-attribute with Wsuggest-attribute=format.
1330 (check_function_format): Likewise.
1331
1332 2012-04-27 Ollie Wild <aaw@google.com>
1333
1334 * c-common.c: Add CPP_W_LITERAL_SUFFIX mapping.
1335 * c-opts.c (c_common_handle_option): Handle OPT_Wliteral_suffix.
1336 * c.opt: Add Wliteral-suffix.
1337
1338 2012-04-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
1339
1340 PR c/44774
1341 * c.opt (Wpedantic): New.
1342 (pedantic): Alias Wpedantic.
1343 * c-opts.c (c_common_handle_option): Replace -pedantic with -Wpedantic.
1344 (c_common_post_options): Likewise.
1345 (sanitize_cpp_opts): Likewise.
1346 * c-lex.c (interpret_float): Likewise.
1347 * c-format.c (check_format_types): Likewise.
1348 * c-common.c (pointer_int_sum): Likewise.
1349 (c_sizeof_or_alignof_type): Likewise.
1350 (c_add_case_label): Likewise.
1351 (c_do_switch_warnings): Likewise.
1352 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
1353
1354 2012-04-15 Jason Merrill <jason@redhat.com>
1355
1356 PR c++/52818
1357 * c-format.c (CPLUSPLUS_STD_VER): C++11 inherits from C99.
1358 (C_STD_NAME): Distinguish between C++98 and C++11.
1359
1360 2012-04-11 Eric Botcazou <ebotcazou@adacore.com>
1361
1362 PR target/52624
1363 * c-common.h (uint16_type_node): Rename into...
1364 (c_uint16_type_node): ...this.
1365 * c-common.c (c_common_nodes_and_builtins): Adjust for above renaming.
1366 * c-cppbuiltin.c (builtin_define_stdint_macros): Likewise.
1367
1368 2012-04-10 Manuel López-Ibáñez <manu@gcc.gnu.org>
1369
1370 * c-common.c (warn_if_unused_value): Move definition to here.
1371 * c-common.h (warn_if_unused_value): Move declaration to here.
1372
1373 2012-03-23 William Bader <williambader@hotmail.com>
1374
1375 * c-lex.c (c_lex_with_flags): Avoid declarations after stmts.
1376
1377 2012-03-20 Jason Merrill <jason@redhat.com>
1378
1379 * c-common.h (enum cxx_dialect): Add cxx1y.
1380 * c-common.c (c_common_nodes_and_builtins): Use >= for cxx_dialect
1381 test.
1382 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
1383 * c-opts.c (c_common_post_options): Likewise.
1384 (set_std_cxx1y): New.
1385 (c_common_handle_option): Call it.
1386 * c.opt (-std=c++1y, -std=gnu++1y): New flags.
1387
1388 2012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
1389
1390 PR c++/14710
1391 * c.opt ([Wuseless-cast]): Add.
1392
1393 2012-03-16 Richard Guenther <rguenther@suse.de>
1394
1395 * c-pretty-print.c (pp_c_initializer_list): Adjust.
1396
1397 2012-03-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
1398
1399 PR c++/44783
1400 * c.opt (ftemplate-backtrace-limit) Add.
1401
1402 2012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1403
1404 * c-cppbuiltin.c (c_cpp_builtins): Remove #pragma extern_prefix
1405 handling.
1406 * c-pragma.c (handle_pragma_extern_prefix): Remove.
1407 (init_pragma): Don't register extern_prefix.
1408
1409 2012-03-12 Richard Guenther <rguenther@suse.de>
1410
1411 * c-common.c (c_common_get_narrower): Use c_common_type_for_size.
1412 (builtin_type_for_size): Likewise.
1413
1414 2012-02-13 Jakub Jelinek <jakub@redhat.com>
1415
1416 PR c++/52215
1417 * c-common.c (sync_resolve_params): Don't decide whether to convert
1418 or not based on TYPE_SIZE comparison, convert whenever arg_type
1419 is unsigned INTEGER_TYPE.
1420
1421 2012-02-06 Paolo Carlini <paolo.carlini@oracle.com>
1422
1423 PR c/52118
1424 * c.opt ([Wunused-local-typedefs]): Fix description.
1425
1426 2012-01-24 Mike Stump <mikestump@comcast.net>
1427
1428 * c-common.c (c_common_type_for_mode): Match signed/unsigned types
1429 exactly.
1430
1431 2012-01-18 Richard Guenther <rguenther@suse.de>
1432
1433 * c-opts.c (c_common_post_options): Reset LTO flags if
1434 we are about to generate a PCH.
1435
1436 2012-01-17 Paolo Carlini <paolo.carlini@oracle.com>
1437
1438 PR c++/51777
1439 * c-pretty-print.c (pp_c_integer_constant): For unsigned constants
1440 use pp_unsigned_wide_integer.
1441
1442 2012-01-10 Richard Guenther <rguenther@suse.de>
1443
1444 PR middle-end/51806
1445 * c-opts.c (c_common_handle_option): Move -Werror handling
1446 to language independent code.
1447
1448 2012-01-05 Richard Guenther <rguenther@suse.de>
1449
1450 PR middle-end/51764
1451 * c.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move here
1452 from common.opt.
1453
1454 2011-12-30 Paolo Carlini <paolo.carlini@oracle.com>
1455
1456 PR c++/51316
1457 * c-common.c (c_sizeof_or_alignof_type): In C++ allow for alignof
1458 of array types with an unknown bound.
1459
1460 2011-12-20 Joseph Myers <joseph@codesourcery.com>
1461
1462 * c-common.c (flag_isoc99): Update comment to refer to C11.
1463 (flag_isoc1x): Change to flag_isoc11.
1464 * c-common.h (flag_isoc99): Update comment to refer to C11.
1465 (flag_isoc1x): Change to flag_isoc11.
1466 * c-cppbuiltin.c (cpp_atomic_builtins): Change comment to refer to
1467 C11.
1468 * c-opts.c (set_std_c1x): Change to set_std_c11.
1469 (c_common_handle_option): Handle OPT_std_c11 and OPT_std_gnu11.
1470 Call set_std_c11.
1471 (set_std_c89, set_std_c99, set_std_c11): Use flag_isoc11.
1472 (set_std_c1): Use CLK_STDC11 and CLK_GNUC11.
1473 * c.opt (std=c1x): Change to std=c11. Document as non-draft
1474 standard.
1475 (std=c1x, std=iso9899:2011): Add as aliases of std=c11.
1476 (std=gnu1x): Change to std=gnu11. Refer to non-draft standard.
1477 (std=gnu1x): Make alias of std=gnu11.
1478
1479 2011-12-19 Jason Merrill <jason@redhat.com>
1480
1481 PR c++/51228
1482 * c-common.c (handle_transparent_union_attribute): Check the first
1483 field if the type is complete.
1484
1485 2011-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
1486
1487 PR libstdc++/51365
1488 * c-common.c (RID_IS_FINAL): Add.
1489 * c-common.h (RID_IS_FINAL): Add.
1490
1491 2011-11-30 Iain Sandoe <iains@gcc.gnu.org>
1492
1493 * c.opt (fgnu-runtime): Provide full description.
1494 (fnext-runtime): Likewise.
1495 * c-opts.c (OPT_fgnu_runtime, OPT_fnext_runtime) Remove.
1496
1497 2011-11-28 Andrew MacLeod <amacleod@redhat.com>
1498
1499 * c-cpp-builtin.c (cpp_atomic_builtins):New. Emit all atomic
1500 predefines in one place. Add LOCK_FREE predefines.
1501 (c_cpp_builtins): Move Legacy HAVE_SYNC predefines to
1502 new func.
1503
1504 2011-11-24 Andrew MacLeod <amacleod@redhat.com>
1505
1506 PR c/51256
1507 * c-common.c (get_atomic_generic_size): Check for various error
1508 conditions
1509 (resolve_overloaded_atomic_exchange,
1510 resolve_overloaded_atomic_compare_exchange,
1511 resolve_overloaded_atomic_load, resolve_overloaded_atomic_store): Return
1512 error_mark_node for error conditions.
1513
1514 2011-11-08 Richard Guenther <rguenther@suse.de>
1515
1516 PR middle-end/51010
1517 c-family/
1518
1519 2011-11-07 Richard Henderson <rth@redhat.com>
1520 Aldy Hernandez <aldyh@redhat.com>
1521 Torvald Riegel <triegel@redhat.com>
1522
1523 Merged from transactional-memory.
1524
1525 * c-common.c (handle_tm_wrap_attribute,
1526 handle_tm_attribute, ignore_attribute, parse_tm_stmt_attr): New.
1527 (struct c_common_reswords): Added __transaction* keywords.
1528 (struct c_common_attribute_table): Added transaction* and tm_regparm
1529 attributes.
1530 * c-common.h: Added RID_TRANSACTION*. Added TM_ATTR* and TM_STMT*
1531 masks.
1532 (parse_tm_stmt_attr, tm_attr_to_mask, tm_mask_to_attr,
1533 find_tm_attribute): Declare.
1534
1535 2011-11-07 Jason Merrill <jason@redhat.com>
1536
1537 PR c++/35688
1538 * c-common.c, c-common.h: Revert yesterday's changes.
1539
1540 2011-11-06 Jason Merrill <jason@redhat.com>
1541
1542 PR c++/35688
1543 * c-common.c (decl_has_visibility_attr): Split out from...
1544 (c_determine_visibility): ...here.
1545 * c-common.h: Declare it.
1546
1547 2011-11-06 Joseph Myers <joseph@codesourcery.com>
1548
1549 * c-common.c (c_common_reswords): Add _Alignas and _Alignof.
1550 (c_sizeof_or_alignof_type): Diagnose alignof applied to a function
1551 type.
1552 (check_user_alignment): New. Split out of
1553 handle_aligned_attribute. Disallow integer constants with
1554 noninteger types. Conditionally allow zero.
1555 (handle_aligned_attribute): Use check_user_alignment.
1556 * c-common.h (RID_ALIGNAS, check_user_alignment): New.
1557
1558 2011-11-06 Andrew MacLeod <amacleod@redhat.com>
1559 Richard Henderson <rth@redhat.com>
1560
1561 Merged from cxx-mem-model.
1562
1563 * c-cppbuiltin.c (c_cpp_builtins): Test both atomic and sync patterns.
1564 * c-common.c (sync_resolve_params, sync_resolve_return): Only tweak
1565 parameters that are the same type size.
1566 (get_atomic_generic_size): New. Find size of generic
1567 atomic function parameters and do typechecking.
1568 (add_atomic_size_parameter): New. Insert size into parameter list.
1569 (resolve_overloaded_atomic_exchange): Restructure __atomic_exchange to
1570 either __atomic_exchange_n or external library call.
1571 (resolve_overloaded_atomic_compare_exchange): Restructure
1572 __atomic_compare_exchange to either _n variant or external library call.
1573 (resolve_overloaded_atomic_load): Restructure __atomic_load to either
1574 __atomic_load_n or an external library call.
1575 (resolve_overloaded_atomic_store): Restructure __atomic_store to either
1576 __atomic_store_n or an external library call.
1577 (resolve_overloaded_builtin): Handle new __atomic builtins.
1578
1579 2011-11-04 Eric Botcazou <ebotcazou@adacore.com>
1580
1581 PR c++/50608
1582 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1.
1583 (fold_offsetof_1): Make global. Remove STOP_REF argument and adjust.
1584 <INDIRECT_REF>: Return the argument.
1585 <ARRAY_REF>: Remove special code for negative offset.
1586 Call fold_build_pointer_plus instead of size_binop.
1587 (fold_offsetof): Remove STOP_REF argument and adjust.
1588 * c-common.h (fold_offsetof_1): Declare.
1589 (fold_offsetof): Remove STOP_REF argument.
1590
1591 2011-11-02 Paolo Carlini <paolo.carlini@oracle.com>
1592
1593 PR c++/50810
1594 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
1595 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
1596 Wnarrowing for C++0x and C++98.
1597 * c.opt ([Wnarrowing]): Update.
1598
1599 2011-11-01 Paolo Carlini <paolo.carlini@oracle.com>
1600
1601 PR c++/44277
1602 * c.opt: Add Wzero-as-null-pointer-constant.
1603
1604 2011-10-31 Jason Merrill <jason@redhat.com>
1605
1606 * c.opt (-fdeduce-init-list): Off by default.
1607
1608 PR c++/50920
1609 * c-common.h (cxx_dialect): Add cxx11 and cxx03.
1610 * c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03,
1611 and -Wc++11-compat.
1612 * c-opts.c (set_std_cxx11): Rename from set_std_cxx0x.
1613
1614 2011-10-27 Roberto Agostino Vitillo <ravitillo@lbl.gov>
1615
1616 PR c++/30066
1617 * c.opt (fvisibility-inlines-hidden): Description change.
1618
1619 2011-10-26 Ed Smith-Rowland <3dw4rd@verizon.net>
1620
1621 Implement C++11 user-defined literals.
1622 * c-common.c (build_userdef_literal): New.
1623 * c-common.def: New tree code.
1624 * c-common.h (tree_userdef_literal): New tree struct and accessors.
1625 * c-lex.c (interpret_float): Add suffix parm.
1626 (c_lex_with_flags): Build literal tokens.
1627
1628 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
1629
1630 PR c++/50841
1631 Revert:
1632 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
1633
1634 PR c++/50810
1635 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
1636 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
1637 Wnarrowing for C++0x and C++98.
1638 * c.opt ([Wnarrowing]): Update.
1639
1640 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
1641
1642 PR c++/50810
1643 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
1644 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
1645 Wnarrowing for C++0x and C++98.
1646 * c.opt ([Wnarrowing]): Update.
1647
1648 2011-10-21 Paolo Carlini <paolo.carlini@oracle.com>
1649
1650 PR c++/45385
1651 * c-common.c (conversion_warning): Remove code looking for
1652 artificial operands.
1653
1654 2011-10-18 Dodji Seketeli <dodji@redhat.com>
1655
1656 PR bootstrap/50760
1657 * c-lex.c (fe_file_change): Use LINEMAP_SYSP when
1658 !NO_IMPLICIT_EXTERN_C.
1659
1660 2011-10-17 Michael Spertus <mike_spertus@symantec.com>
1661
1662 * c-common.c (c_common_reswords): Add __bases,
1663 __direct_bases.
1664 * c-common.h: Add RID_BASES and RID_DIRECT_BASES.
1665
1666 2011-10-17 Paolo Carlini <paolo.carlini@oracle.com>
1667
1668 PR c++/50757
1669 * c.opt ([Wnonnull]): Add C++ and Objective-C++.
1670
1671 2011-10-15 Tom Tromey <tromey@redhat.com>
1672 Dodji Seketeli <dodji@redhat.com>
1673
1674 * c.opt (fdebug-cpp): New option.
1675 * c-opts.c (c_common_handle_option): Handle the option.
1676 * c-ppoutput.c (maybe_print_line_1): New static function. Takes an
1677 output stream in parameter. Factorized from ...
1678 (maybe_print_line): ... this. Dump location debug information when
1679 -fdebug-cpp is in effect.
1680 (print_line_1): New static function. Takes an output stream in
1681 parameter. Factorized from ...
1682 (print_line): ... here. Dump location information when -fdebug-cpp
1683 is in effect.
1684 (scan_translation_unit): Dump location information when
1685 -fdebug-cpp is in effect.
1686
1687 2011-10-15 Tom Tromey <tromey@redhat.com>
1688 Dodji Seketeli <dodji@redhat.com>
1689
1690 * c.opt (ftrack-macro-expansion): New option. Handle it with and
1691 without argument.
1692 * c-opts.c (c_common_handle_option)<case
1693 OPT_ftrack_macro_expansion_, case OPT_ftrack_macro_expansion>: New
1694 cases. Handle -ftrack-macro-expansion with and without argument.
1695
1696 2011-10-15 Tom Tromey <tromey@redhat.com>
1697 Dodji Seketeli <dodji@redhat.com>
1698
1699 * c-ppoutput.c (scan_translation_unit, maybe_print_line)
1700 (print_line, cb_define, do_line_change): Adjust to avoid touching
1701 the internals of struct line_map. Use the public API instead.
1702 * c-pch.c (c_common_read_pch): Likewise.
1703 * c-lex.c (fe_file_change): Likewise.
1704
1705 2011-10-14 Paolo Carlini <paolo.carlini@oracle.com>
1706
1707 PR c++/17212
1708 * c.opt ([Wformat-zero-length]): Add C++ and Objective-C++.
1709
1710 2011-10-11 Paolo Carlini <paolo.carlini@oracle.com>
1711
1712 PR c++/33067
1713 * c-pretty-print.c (pp_c_floating_constant): Output
1714 max_digits10 (in the ISO C++ WG N1822 sense) decimal digits.
1715
1716 2011-10-11 Michael Meissner <meissner@linux.vnet.ibm.com>
1717
1718 * c-common.c (def_builtin_1): Delete old interface with two
1719 parallel arrays to hold standard builtin declarations, and replace
1720 it with a function based interface that can support creating
1721 builtins on the fly in the future. Change all uses, and poison
1722 the old names. Make sure 0 is not a legitimate builtin index.
1723 * c-omp.c (c_finish_omp_barrier): Ditto.
1724 (c_finish_omp_taskwait): Ditto.
1725 (c_finish_omp_flush): Ditto.
1726
1727 2011-10-11 Tristan Gingold <gingold@adacore.com>
1728
1729 * c.opt: (fallow-parameterless-variadic-functions): New.
1730
1731 2011-09-08 Dodji Seketeli <dodji@redhat.com>
1732
1733 PR c++/33255 - Support -Wunused-local-typedefs warning
1734 * c-common.h (struct c_language_function::local_typedefs): New
1735 field.
1736 (record_locally_defined_typedef, maybe_record_typedef_use)
1737 (maybe_warn_unused_local_typedefs): Declare new functions.
1738 * c-common.c (record_locally_defined_typedef)
1739 (maybe_record_typedef_use)
1740 (maybe_warn_unused_local_typedefs): Define new functions.
1741 * c.opt: Declare new -Wunused-local-typedefs flag.
1742
1743 2011-09-06 Eric Botcazou <ebotcazou@adacore.com>
1744
1745 PR middle-end/50266
1746 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Fold offsetof-like
1747 computations.
1748
1749 2011-09-05 Richard Guenther <rguenther@suse.de>
1750
1751 * c-common.c (complete_array_type): Use ssize_int (-1) instead
1752 of integer_minus_one_node for empty array upper bounds.
1753
1754 2011-08-28 Dodji Seketeli <dodji@redhat.com>
1755
1756 * c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as
1757 it's the first time it's being called on this main TU.
1758
1759 2011-08-24 Richard Guenther <rguenther@suse.de>
1760
1761 PR c/49396
1762 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional.
1763
1764 2011-08-22 Gabriel Charette <gchare@google.com>
1765
1766 * c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens
1767 defined in cpp_init_builtins and c_cpp_builtins.
1768
1769 2011-08-19 Joseph Myers <joseph@codesourcery.com>
1770
1771 * c-common.c (c_common_reswords): Add __builtin_complex.
1772 * c-common.h (RID_BUILTIN_COMPLEX): New.
1773
1774 2011-08-18 Joseph Myers <joseph@codesourcery.com>
1775
1776 * c-common.c (c_common_reswords): Add _Noreturn.
1777 (keyword_is_function_specifier): Handle RID_NORETURN.
1778 * c-common.h (RID_NORETURN): New.
1779
1780 2011-08-10 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
1781
1782 * c-common.c (unsafe_conversion_p): New function. Check if it is
1783 unsafe to convert an expression to the type.
1784 (conversion_warning): Adjust, use unsafe_conversion_p.
1785 * c-common.h (unsafe_conversion_p): New function declaration.
1786
1787 2011-08-02 Jakub Jelinek <jakub@redhat.com>
1788
1789 * c-common.h (c_finish_omp_atomic): Adjust prototype.
1790 (c_finish_omp_taskyield): New prototype.
1791 * c-omp.c (c_finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1
1792 arguments. Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and
1793 OMP_ATOMIC_CAPTURE_NEW in addition to OMP_ATOMIC. If LHS1
1794 or RHS1 have side-effects, evaluate those too in the right spot,
1795 if it is a decl and LHS is also a decl, error out if they
1796 aren't the same.
1797 (c_finish_omp_taskyield): New function.
1798 * c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP to 201107.
1799 * c-pragma.c (omp_pragmas): Add taskyield.
1800 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKYIELD.
1801 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FINAL and
1802 PRAGMA_OMP_CLAUSE_MERGEABLE.
1803
1804 2011-07-25 Dodji Seketeli <dodji@redhat.com>
1805
1806 * c-common.h (set_underlying_type): Remove parm name from
1807 declaration.
1808
1809 2011-07-25 Romain Geissler <romain.geissler@gmail.com>
1810
1811 * c-pretty-print.h: Search c-common.h in c-family.
1812
1813 2011-07-22 Jason Merrill <jason@redhat.com>
1814
1815 PR c++/49793
1816 * c.opt (Wnarrowing): New.
1817
1818 PR c++/30112
1819 * c-common.h: Declare c_linkage_bindings.
1820 * c-pragma.c (handle_pragma_redefine_extname): Use it.
1821
1822 PR c++/49813
1823 * c-opts.c (set_std_cxx0x): Set flag_isoc94 and flag_isoc99.
1824 * c-pretty-print.c (pp_c_cv_qualifiers): Check c_dialect_cxx as well
1825 as flag_isoc99 for 'restrict'.
1826 (pp_c_specifier_qualifier_list): Likewise for _Complex.
1827
1828 2011-07-21 Ian Lance Taylor <iant@google.com>
1829
1830 PR middle-end/49705
1831 * c-common.c (c_disable_warnings): New static function.
1832 (c_enable_warnings): New static function.
1833 (c_fully_fold_internal): Change local unused_p to bool. Call
1834 c_disable_warnings and c_enable_warnings rather than change
1835 c_inhibit_evaluation_warnings.
1836
1837 2011-07-20 Jason Merrill <jason@redhat.com>
1838
1839 PR c++/6709 (DR 743)
1840 PR c++/42603 (DR 950)
1841 * c-common.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move from cp/parser.h.
1842 (CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise.
1843 (CPP_DECLTYPE): New.
1844 * c-common.c (c_parse_error): Handle CPP_DECLTYPE.
1845
1846 2011-07-19 Richard Guenther <rguenther@suse.de>
1847
1848 * c-common.c (pointer_int_sum): Use fold_build_pointer_plus.
1849 * c-omp.c (c_finish_omp_for): Likewise.
1850
1851 2011-07-12 Eric Botcazou <ebotcazou@adacore.com>
1852
1853 * c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop
1854 body on the next line.
1855
1856 2011-07-08 Jason Merrill <jason@redhat.com>
1857
1858 PR c++/45437
1859 * c-omp.c (check_omp_for_incr_expr): Handle preevaluation.
1860
1861 PR c++/49673
1862 * c-common.c (c_apply_type_quals_to_decl): Don't check
1863 TYPE_NEEDS_CONSTRUCTING.
1864
1865 2011-07-06 Richard Guenther <rguenther@suse.de>
1866
1867 * c-common.c (c_common_nodes_and_builtins):
1868 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
1869
1870 2011-07-05 Richard Guenther <rguenther@suse.de>
1871
1872 * c-common.c (c_common_nodes_and_builtins): Build all common
1873 tree nodes first.
1874
1875 2011-06-27 Jakub Jelinek <jakub@redhat.com>
1876
1877 * c-common.h (c_tree_chain_next): New static inline function.
1878
1879 * c-common.c (check_builtin_function_arguments): Handle
1880 BUILT_IN_ASSUME_ALIGNED.
1881
1882 2011-06-21 Andrew MacLeod <amacleod@redhat.com>
1883
1884 * c-common.c: Add sync_ or SYNC__ to builtin names.
1885 * c-omp.c: Add sync_ or SYNC__ to builtin names.
1886
1887 2011-06-20 Pierre Vittet <piervit@pvittet.com>
1888
1889 * c-pragma.h (pragma_handler_1arg, pragma_handler_2arg): New
1890 handler.
1891 (gen_pragma_handler): New union.
1892 (internal_pragma_handler): New type.
1893 (c_register_pragma_with_data)
1894 (c_register_pragma_with_expansion_and_data): New functions.
1895
1896 * c-pragma.c (registered_pragmas, c_register_pragma_1)
1897 (c_register_pragma, c_register_pragma_with_expansion)
1898 (c_invoke_pragma_handler): Changed to work with
1899 internal_pragma_handler.
1900 (c_register_pragma_with_data)
1901 (c_register_pragma_with_expansion_and_data): New functions.
1902
1903 2011-06-14 Joseph Myers <joseph@codesourcery.com>
1904
1905 * c-common.c: Include common/common-target.h.
1906 (handle_section_attribute): Use
1907 targetm_common.have_named_sections.
1908 * c-cppbuiltin.c: Include common/common-target.h.
1909 (c_cpp_builtins): Use targetm_common.except_unwind_info.
1910
1911 2011-06-10 Richard Guenther <rguenther@suse.de>
1912
1913 * c-pretty-print.c (pp_c_type_specifier): Use pp_c_identifier
1914 to print a IDENTIFIER_NODE.
1915
1916 2011-06-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1917 Joseph Myers <joseph@codesourcery.com>
1918
1919 * c.opt (fbuilding-libgcc): New option.
1920 * c-cppbuiltin.c (c_cpp_builtins): Define
1921 __LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc.
1922
1923 2011-06-07 Jason Merrill <jason@redhat.com>
1924
1925 * c-common.c (max_tinst_depth): Lower default to 900.
1926
1927 * c-format.c (gcc_cxxdiag_char_table): Add 'S' format.
1928
1929 2011-06-07 Richard Guenther <rguenther@suse.de>
1930
1931 * c-common.c (c_common_nodes_and_builtins): Do not set
1932 size_type_node or call set_sizetype.
1933
1934 2011-06-07 Dodji Seketeli <dodji@redhat.com>
1935
1936 PR debug/49130
1937 * c-pretty-print.c (pp_c_integer_constant): Consider the canonical
1938 type when using pointer comparison to compare types.
1939
1940 2011-06-02 Jonathan Wakely <jwakely.gcc@gmail.com>
1941
1942 * c.opt: Add -Wdelete-non-virtual-dtor.
1943 * c-opts.c (c_common_handle_option): Include it in -Wall.
1944
1945 2011-05-30 Nathan Froyd <froydnj@gcc.gnu.org>
1946
1947 PR bootstrap/49190
1948
1949 Revert:
1950 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
1951
1952 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
1953 not tree_common.
1954
1955 2011-05-27 Jakub Jelinek <jakub@redhat.com>
1956
1957 PR c++/49165
1958 * c-common.c (c_common_truthvalue_conversion) <case COND_EXPR>: For
1959 C++ don't call c_common_truthvalue_conversion on void type arms.
1960
1961 2011-05-27 Nathan Froyd <froydnj@codesourcery.com>
1962
1963 * c-common.h (struct stmt_tree_s) [x_cur_stmt_list]: Change to a VEC.
1964 (stmt_list_stack): Define.
1965 (cur_stmt_list): Adjust for new type of x_cur_stmt_list.
1966 * c-semantics.c (push_stmt_list, pop_stmt_list): Likewise.
1967
1968 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
1969
1970 * c-common.c (warning_candidate_p): Check for BLOCKs.
1971
1972 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
1973
1974 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
1975 not tree_common.
1976
1977 2011-05-25 Jakub Jelinek <jakub@redhat.com>
1978
1979 * c-common.c (def_fn_type): Remove extra va_end.
1980
1981 2011-05-23 Jason Merrill <jason@redhat.com>
1982
1983 PR c++/48106
1984 * c-common.c (c_common_get_narrower): New.
1985 (shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.
1986
1987 2011-05-23 Nathan Froyd <froydnj@codesourcery.com>
1988
1989 * c-common.h (check_function_arguments): Tweak prototype of
1990 check_function_arguments.
1991 * c-common.c (check_function_arguments): Likewise. Adjust
1992 calls to check_function_nonnull, check_function_format, and
1993 check_function_sentinel.
1994 (check_function_sentinel): Take a FUNCTION_TYPE rather than
1995 separate attributes and typelist arguments. Use
1996 FOREACH_FUNCTION_ARGS to iterate over argument types.
1997
1998 2011-05-15 Paolo Carlini <paolo.carlini@oracle.com>
1999
2000 * c-common.c (c_common_reswords): Reorder.
2001 * c-common.h (rid): Likewise.
2002
2003 2011-05-10 Nathan Froyd <froydnj@codesourcery.com>
2004
2005 * c-common.c (def_fn_type): Don't call build_function_type, call
2006 build_function_type_array or build_varargs_function_type_array
2007 instead.
2008 (c_common_nodes_and_builtins): Likewise.
2009
2010 2011-05-05 Nathan Froyd <froydnj@codesourcery.com>
2011
2012 * c-common.c (c_add_case_label): Omit the loc argument to
2013 build_case_label.
2014 * c-common.h (build_case_label): Remove.
2015 * c-semantics.c (build_case_label): Remove.
2016
2017 2011-05-05 Joseph Myers <joseph@codesourcery.com>
2018
2019 * c-objc.h (objc_start_method_definition): Update prototype.
2020 * stub-objc.c (objc_start_method_definition): Add extra parameter.
2021
2022 2011-05-04 Nathan Froyd <froydnj@codesourcery.com>
2023
2024 * c-common.c (check_main_parameter_types): Reindent. Don't use
2025 TYPE_ARG_TYPES directly.
2026 (handle_nonnull_attribute): Likewise.
2027 (sync_resolve_params): Likewise.
2028 * c-format.c (handle_format_arg_attribute): Likewise. Adjust call
2029 to check_format_string.
2030 (handle_format_attribute): Likewise.
2031 (check_format_string): Take a function type to examine instead of
2032 a type list. Use a function_arg_iterator to step through argument
2033 types.
2034
2035 2011-05-04 Richard Guenther <rguenther@suse.de>
2036
2037 * c-common.c (fix_string_type): Use size_int for index type bounds.
2038 (start_fname_decls): Do not pass NULL to build_int_cst.
2039 (c_init_attributes): Likewise.
2040 * c-lex.c (c_lex_with_flags): Likewise.
2041
2042 2011-04-27 Jason Merrill <jason@redhat.com>
2043
2044 * c-common.c (make_tree_vector_from_list): New.
2045 * c-common.h: Declare it.
2046
2047 2011-04-26 Richard Guenther <rguenther@suse.de>
2048
2049 PR preprocessor/48248
2050 * c-ppoutput.c (maybe_print_line): Always optimize newlines
2051 for output size with -P.
2052
2053 2011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
2054
2055 * c-common.c (struct c_common_resword): Add __underlying_type.
2056 * c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
2057
2058 2011-04-20 Jim Meyering <meyering@redhat.com>
2059
2060 * c-format.c (init_dollar_format_checking): Remove useless
2061 if-before-free.
2062
2063 2011-04-15 Nicola Pero <nicola.pero@meta-innovation.com>
2064
2065 * c-objc.h (objc_get_interface_ivars): Removed.
2066 (objc_detect_field_duplicates): New.
2067 * stub-objc.c: Likewise.
2068
2069 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
2070
2071 * stub-objc.c (objc_declare_protocols): Renamed to
2072 objc_declare_protocol.
2073 * c-objc.h: Likewise.
2074
2075 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
2076
2077 * stub-objc.c (objc_declare_class): Updated argument name.
2078
2079 2011-04-12 Nathan Froyd <froydnj@codesourcery.com>
2080
2081 * c-common.h (c_common_init_ts): Declare.
2082 * c-common.c (c_common_init_ts): Define.
2083
2084 2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
2085
2086 * c-objc.h (objc_build_message_expr): Updated prototype.
2087 * stub-objc.c (objc_build_message_expr): Likewise.
2088
2089 2011-04-12 Martin Jambor <mjambor@suse.cz>
2090
2091 * c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
2092 of cgraph_node.
2093
2094 2011-04-11 Richard Guenther <rguenther@suse.de>
2095
2096 * c-common.c (complete_array_type): Build a range type of
2097 proper type.
2098
2099 2011-04-08 Nathan Froyd <froydnj@codesourcery.com>
2100
2101 * c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
2102 (handle_type_generic_attribute): Likewise.
2103
2104 2011-04-07 Jason Merrill <jason@redhat.com>
2105
2106 PR c++/48450
2107 * c-common.c (c_common_truthvalue_conversion): Don't ignore
2108 conversion from C++0x scoped enum.
2109
2110 2011-04-06 Joseph Myers <joseph@codesourcery.com>
2111
2112 * c-target-def.h: New file.
2113 * c-target.def: New file.
2114 * c-target.h: New file.
2115 * c-common.c (targetcm): Don't define here.
2116 * c-common.h (default_handle_c_option): Declare.
2117 * c-format.c: Include c-target.h instead of target.h.
2118 * c-opts.c: Include c-target.h instead of target.h. Explicitly
2119 include tm.h.
2120 (default_handle_c_option): Move from targhooks.c.
2121
2122 2011-03-29 Jakub Jelinek <jakub@redhat.com>
2123
2124 PR preprocessor/48248
2125 * c-ppoutput.c (print): Add src_file field.
2126 (init_pp_output): Initialize it.
2127 (maybe_print_line): Don't optimize by adding up to 8 newlines
2128 if map->to_file and print.src_file are different file.
2129 (print_line): Update print.src_file.
2130
2131 2011-03-25 Kai Tietz <ktietz@redhat.com>
2132
2133 * c-ada-spec.c (compare_comment): Use filename_cmp
2134 instead of strcmp for filename.
2135
2136 2011-03-25 Jeff Law <law@redhat.com>
2137
2138 * c-family/c-common.c (def_fn_type): Add missing va_end.
2139
2140 2011-03-25 Jason Merrill <jason@redhat.com>
2141
2142 * c.opt: Add -std=c++03.
2143
2144 2011-03-22 Eric Botcazou <ebotcazou@adacore.com>
2145
2146 * c-ada-spec.c (dump_ada_template): Skip non-class instances.
2147
2148 2011-03-17 Kai Tietz
2149
2150 PR target/12171
2151 * c-pretty-print.c (pp_c_specifier_qualifier_list):
2152 Display allowed attributes for function pointer types.
2153 (pp_c_attributes_display): New function to display
2154 attributes having affects_type_identity flag set to true.
2155 * c-pretty-print.h (pp_c_attributes_display): New prototype.
2156
2157 * c-common.c (c_common_attribute_table):
2158 Add new element.
2159 (c_common_format_attribute_table): Likewise.
2160
2161 2011-03-18 Jason Merrill <jason@redhat.com>
2162
2163 * c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
2164 * c-common.h: Don't declare it here.
2165 * c-common.c: Or define it here.
2166 * c-opts.c (c_common_handle_option): Or set it here.
2167
2168 PR c++/35315
2169 * c-common.c (handle_transparent_union_attribute): Don't
2170 make a duplicate type in C++.
2171
2172 2011-03-15 Jason Merrill <jason@redhat.com>
2173
2174 * c-common.c (max_constexpr_depth): New.
2175 * c-common.h: Declare it.
2176 * c-opts.c (c_common_handle_option): Set it.
2177 * c.opt (fconstexpr-depth): New option.
2178
2179 2011-03-11 Jason Merrill <jason@redhat.com>
2180
2181 * c-common.c (attribute_takes_identifier_p): Add missing const.
2182
2183 PR c++/46803
2184 * c-common.c (attribute_takes_identifier_p): Assume that an
2185 unknown attribute takes an identifier.
2186
2187 2011-03-07 Nathan Froyd <froydnj@codesourcery.com>
2188
2189 PR c/47786
2190 * c-common.c (c_type_hash): Call list_length instead of iterating
2191 through DECL_CHAIN. Rename 'i' to 'n_elements'.
2192
2193 2011-02-19 Jakub Jelinek <jakub@redhat.com>
2194
2195 PR c/47809
2196 * c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
2197
2198 2011-02-17 Iain Sandoe <iains@gcc.gnu.org>
2199
2200 * c.opt (fobjc-abi-version=) New.
2201 (fobjc-nilcheck): New.
2202
2203 2011-02-03 Nathan Froyd <froydnj@codesourcery.com>
2204
2205 PR c++/46890
2206 * c-common.h (keyword_is_decl_specifier): Declare.
2207 * c-common.c (keyword_is_decl_specifier): Define.
2208 (keyword_is_function_specifier): New function.
2209
2210 2011-01-26 Jakub Jelinek <jakub@redhat.com>
2211
2212 PR c/47473
2213 * c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
2214 EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
2215 REAL_TYPE.
2216
2217 2011-01-26 Arnaud Charlet <charlet@adacore.com>
2218
2219 * c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type.
2220
2221 2011-01-26 Jakub Jelinek <jakub@redhat.com>
2222
2223 PR pch/47430
2224 * c-opts.c (c_common_post_options): Call c_common_no_more_pch
2225 after init_c_lex if pch_file is set.
2226
2227 2011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
2228
2229 PR c++/43601
2230 * c.opt (-fkeep-inline-dllexport): New switch.
2231
2232 2011-01-12 Richard Guenther <rguenther@suse.de>
2233
2234 PR middle-end/32511
2235 * c-common.c (handle_weak_attribute): Warn instead of error
2236 on declaring an inline function weak.
2237
2238 2011-01-05 Tom Tromey <tromey@redhat.com>
2239
2240 * c-common.h (lvalue_error): Update.
2241 * c-common.c (lvalue_error): Add 'loc' argument. Call error_at,
2242 not error.
2243
2244 2010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
2245
2246 PR objc/47075
2247 * c-objc.h (objc_finish_message_expr): Added argument to
2248 prototype.
2249
2250 2010-12-22 Nathan Froyd <froydnj@codesourcery.com>
2251
2252 * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute):
2253 Use prototype_p.
2254
2255 2010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
2256
2257 * c-objc.h (objc_maybe_warn_exceptions): New.
2258 * stub-objc.c (objc_maybe_warn_exceptions): New.
2259
2260 2010-12-10 Nathan Froyd <froydnj@codesourcery.com>
2261
2262 * c-common.h (readonly_error): Declare.
2263 * c-common.c (readonly_error): Define.
2264
2265 2010-12-09 Nathan Froyd <froydnj@codesourcery.com>
2266
2267 * c-common.h (invalid_indirection_error): Declare.
2268 * c-common.c (invalid_indirection_error): Define.
2269
2270 2010-12-03 Richard Guenther <rguenther@suse.de>
2271
2272 PR c/46745
2273 * c-pretty-print.c (pp_c_postfix_expression): Handle MEM_REF.
2274 (pp_c_unary_expression): Likewise.
2275 (pp_c_expression): Likewise.
2276
2277 2010-11-30 Nicola Pero <nicola.pero@meta-innovation.com>
2278
2279 * c-common.h (objc_finish_function): New.
2280 (objc_non_volatilized_type): Removed.
2281 (objc_type_quals_match): Removed.
2282 * stub-objc.c (objc_finish_function): New.
2283 (objc_non_volatilized_type): Removed.
2284 (objc_type_quals_match): Removed.
2285
2286 2010-11-30 Joseph Myers <joseph@codesourcery.com>
2287
2288 * c-common.h (parse_optimize_options): Declare.
2289 * c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c,
2290 c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h.
2291
2292 2010-11-29 Joseph Myers <joseph@codesourcery.com>
2293
2294 * c-opts.c (check_deps_environment_vars): Use getenv instead of
2295 GET_ENVIRONMENT.
2296 * c-pch.c (O_BINARY): Don't define here.
2297 * c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
2298
2299 2010-11-25 Joseph Myers <joseph@codesourcery.com>
2300
2301 * c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
2302 targetm.except_unwind_info.
2303
2304 2010-11-23 Joseph Myers <joseph@codesourcery.com>
2305
2306 * c-opts.c (c_common_handle_option): Pass location to
2307 set_struct_debug_option.
2308
2309 2010-11-23 Joseph Myers <joseph@codesourcery.com>
2310
2311 * c-common.c (visibility_options): Move from ../opts.c.
2312 * c-common.h (struct visibility_flags, visibility_options):
2313 Declare here.
2314 * c-opts.c (finish_options): Rename to c_finish_options.
2315 (c_common_init): Update call to finish_options.
2316
2317 2010-11-22 Nicola Pero <nicola.pero@meta-innovation.com>
2318
2319 PR objc/34033
2320 * c-lex.c (lex_string): Check that each string in an Objective-C
2321 string concat sequence starts with either one or zero '@', and
2322 that there are no spurious '@' signs at the end.
2323
2324 2010-11-20 Joseph Myers <joseph@codesourcery.com>
2325
2326 * c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
2327 HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
2328 HANDLE_PRAGMA_VISIBILITY.
2329 * c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
2330 HANDLE_PRAGMA_VISIBILITY): Don't define.
2331 (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.
2332
2333 2010-11-20 Nathan Froyd <froydnj@codesourcery.com>
2334
2335 PR c++/16189
2336 PR c++/36888
2337 PR c++/45331
2338 * c-common.h (keyword_begins_type_specifier): Declare.
2339 (keyword_is_storage_class_specifier): Declare.
2340 (keyword_is_type_qualifier): Declare.
2341 * c-common.c (keyword_begins_type_specifier): New function.
2342 (keyword_is_storage_class_specifier): New function.
2343 (keyword_is_type_qualifier): Declare.
2344
2345 2010-11-19 Joseph Myers <joseph@codesourcery.com>
2346
2347 PR c/46547
2348 * c-common.c (in_late_binary_op): Define.
2349 (c_common_truthvalue_conversion): Check in_late_binary_op before
2350 calling c_save_expr.
2351 * c-common.h (in_late_binary_op): Declare.
2352
2353 2010-11-19 Joseph Myers <joseph@codesourcery.com>
2354
2355 * c-opts.c (c_common_handle_option): Update calls to
2356 set_struct_debug_option.
2357
2358 2010-11-19 Nicola Pero <nicola.pero@meta-innovation.com>
2359
2360 * c-common.h (objc_declare_protocols): Added additional argument.
2361 * stub-objc.c (objc_declare_protocol): Same change.
2362
2363 2010-11-18 Nathan Froyd <froydnj@codesourcery.com>
2364
2365 PR c/33193
2366 * c-common.h (build_real_imag_expr): Declare.
2367 * c-semantics.c (build_real_imag_expr): Define.
2368
2369 2010-11-17 Joseph Myers <joseph@codesourcery.com>
2370
2371 * c-opts.c (c_common_parse_file): Take no arguments.
2372 * c-common.h (c_common_parse_file): Update prototype.
2373
2374 2010-11-16 Jakub Jelinek <jakub@redhat.com>
2375
2376 PR c++/46401
2377 * c-common.c (warning_candidate_p): Don't track non-const calls
2378 or STRING_CSTs.
2379
2380 2010-11-15 Ian Lance Taylor <iant@google.com>
2381
2382 * c-lex.c (init_c_lex): Set macro debug callbacks if
2383 flag_dump_go_spec is set.
2384
2385 2010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
2386
2387 * c-common.h (objc_build_incr_expr_for_property_ref): New.
2388 * stub-objc.c (objc_build_incr_expr_for_property_ref): New.
2389
2390 2010-11-15 Nathan Froyd <froydnj@codesourcery.com>
2391
2392 PR preprocessor/45038
2393 * c-cppbuiltin.c (c_cpp_builtins): Use different format for C++
2394 dialects.
2395
2396 2010-11-12 Joseph Myers <joseph@codesourcery.com>
2397
2398 * c-common.h (c_family_lang_mask): Declare.
2399 * c-opts.c (c_family_lang_mask): Make extern.
2400 * c-pragma.c (handle_pragma_diagnostic): Use
2401 control_warning_option.
2402
2403 2010-11-12 Joseph Myers <joseph@codesourcery.com>
2404
2405 * c-common.c (parse_optimize_options): Update call to
2406 decode_options.
2407 * c-common.h (c_common_handle_option): Update prototype.
2408 * c-opts.c (c_common_handle_option): Take location_t parameter and
2409 pass it to other functions.
2410
2411 2010-11-11 Joseph Myers <joseph@codesourcery.com>
2412
2413 * c-opts.c (warning_as_error_callback): Remove.
2414 (c_common_initialize_diagnostics): Don't call
2415 register_warning_as_error_callback.
2416 (c_common_handle_option): Handle -Werror=normalized= here.
2417
2418 2010-11-10 Joseph Myers <joseph@codesourcery.com>
2419
2420 * c-common.c (handle_mode_attribute): Use %' and word "signedness"
2421 in diagnostic.
2422 * c-opts.c (c_common_parse_file): Start diagnostics with lowercase
2423 letter.
2424 * c-pragma.c (handle_pragma_target, handle_pragma_optimize):
2425 Remove trailing '.' from diagnostics.
2426 * c.opt (Wwrite-strings_: Avoid '`' in help text.
2427
2428 2010-11-10 Joseph Myers <joseph@codesourcery.com>
2429
2430 * c-common.c (parse_optimize_options): Pass global_dc to
2431 decode_options.
2432 * c-opts.c (c_common_handle_option): Pass &global_options to
2433 set_Wstrict_aliasing.
2434 * c.opt (v): Don't mark Common or document here.
2435
2436 2010-11-06 Iain Sandoe <iains@gcc.gnu.org>
2437
2438 PR target/44981
2439 * c-format.c (format_type): New type gcc_objc_string_format_type.
2440 (valid_stringptr_type_p): New.
2441 (handle_format_arg_attribute): Use valid_stringptr_type_p ().
2442 (check_format_string): Pass expected type, use
2443 valid_stringptr_type_p (), check that the format string types are
2444 consistent with the format specification.
2445 (decode_format_attr): Warn if NSString is used outside objective-c.
2446 (format_types_orig): Add NSString.
2447 (format_name): New.
2448 (format_flags): New.
2449 (check_format_arg): Handle format strings requiring an external parser.
2450 first_target_format_type: New variable.
2451 (handle_format_attribute): Set up first_target_format_type, pass the
2452 expected format arg string type to check_format_string().
2453 * c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL): New flag.
2454 * stub-objc.c (objc_string_ref_type_p): New.
2455 (objc_check_format_arg): New.
2456
2457 2010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
2458
2459 Fixed using the Objective-C 2.0 dot-syntax with class names.
2460 * c-common.h (objc_build_class_component_ref): New.
2461 * stub-objc.c (objc_build_class_component_ref): New.
2462
2463 2010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
2464
2465 * c.opt (Wproperty-assign-default): New option.
2466
2467 2010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
2468
2469 Implemented -fobjc-std=objc1 flag.
2470 * c.opt (fobjc-std=objc1): New option.
2471
2472 2010-11-01 Nicola Pero <nicola.pero@meta-innovation.com>
2473
2474 Implemented format and noreturn attributes for Objective-C methods.
2475 * c-common.c (handle_noreturn_attribute): Recognize 'noreturn'
2476 attribute for Objective-C methods.
2477
2478 2010-10-31 Jason Merrill <jason@redhat.com>
2479
2480 * c-common.c (conversion_warning, warn_for_collisions_1): Use
2481 EXPR_LOC_OR_HERE.
2482
2483 2010-10-30 Nicola Pero <nicola.pero@meta-innovation.com>
2484
2485 Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
2486 * c-common.h (enum rid): Removed RID_COPIES and RID_IVAR.
2487 (objc_add_property_declaration): Removed arguments for copies and
2488 ivar.
2489 (objc_build_getter_call): Renamed to
2490 objc_maybe_build_component_ref.
2491 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
2492 (objc_is_property_ref): New.
2493 * c-common.c (c_common_reswords): Removed copies and ivar.
2494 * stub-objc.c (objc_add_property_declaration): Removed arguments
2495 for copies and ivar.
2496 (objc_build_getter_call): Renamed to
2497 objc_maybe_build_component_ref.
2498 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
2499 (objc_is_property_ref): New.
2500
2501 2010-10-29 Arnaud Charlet <charlet@adacore.com>
2502 Matthew Gingell <gingell@adacore.com>
2503
2504 * c-ada-spec.c (separate_class_package): New function.
2505 (pp_ada_tree_identifier): Prefix references to C++ classes with the
2506 name of their enclosing package.
2507 (print_ada_declaration): Use separate_class_package.
2508
2509 2010-10-27 Jason Merrill <jason@redhat.com>
2510
2511 * c-common.c (c_common_reswords): Add __is_literal_type.
2512 * c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
2513
2514 * c-common.c (check_case_value): Remove special C++ code.
2515
2516 2010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
2517
2518 * c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN,
2519 RID_RETAIN, RID_COPY and RID_NONATOMIC. Updated RID_FIRST_PATTR
2520 and RID_LAST_PATTR.
2521 (objc_add_property_declaration): Added additional arguments.
2522 (objc_property_attribute_kind): Removed.
2523 (objc_set_property_attr): Removed.
2524 * c-common.c (c_common_reswords): Added readwrite, assign, retain,
2525 copy and nonatomic.
2526 * stub-objc.c (objc_add_property_declaration): Added additional
2527 arguments.
2528 (objc_set_property_attr): Removed.
2529
2530 2010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
2531
2532 * c-common.h (objc_add_property_variable): Renamed to
2533 objc_add_property_declaration. Added location argument.
2534 * stub-objc.c (objc_add_property_variable): Same change.
2535
2536 2010-10-23 Nicola Pero <nicola.pero@meta-innovation.com>
2537
2538 * c-common.h (objc_maybe_printable_name): New.
2539 * stub-objc.c (objc_maybe_printable_name): New.
2540
2541 2010-10-22 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
2542 Andrew Pinski <pinskia@gmail.com>
2543
2544 * c-common.h (c_common_mark_addressable_vec): Declare.
2545 * c-common.c (c_common_mark_addressable_vec): New function.
2546
2547 2010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
2548
2549 * c-common.h (objc_set_method_type): Removed.
2550 (objc_add_method_declaration): Added boolean argument.
2551 (objc_start_method_definition): Same change.
2552 (objc_build_method_signature): Same change.
2553 * stub-objc.c (objc_set_method_type): Removed.
2554 (objc_add_method_declaration): Added boolean argument.
2555 (objc_start_method_definition): Same change.
2556 (objc_build_method_signature): Same change.
2557
2558 2010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
2559
2560 * c-common.h (finish_file): Removed.
2561 (objc_write_global_declarations): New.
2562 * c-opts.c (c_common_parse_file): Do not call finish_file.
2563 * stub-objc.c (objc_write_global_declarations): New.
2564
2565 2010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
2566
2567 Implemented parsing @synthesize and @dynamic for
2568 Objective-C/Objective-C++.
2569 * c-common.h (enum rid): Add RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
2570 (objc_add_synthesize_declaration): New.
2571 (objc_add_dynamic_declaration): New.
2572 * c-common.c (c_common_reswords): Add synthesize and dynamic.
2573 * stub-objc.c (objc_add_synthesize_declaration): New.
2574 (objc_add_dynamic_declaration): New.
2575
2576 2010-10-18 Michael Meissner <meissner@linux.vnet.ibm.com>
2577
2578 PR target/46041
2579 * c-cppbuiltin.c (mode_has_fma): Move function here from
2580 builtins.c. Don't use the fma optab, instead just use the
2581 HAVE_fma* macros, so that __FP_FAST_FMA* will be defined when
2582 using -save-temps.
2583
2584 2010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
2585
2586 Merge from 'apple/trunk' branch on FSF servers.
2587
2588 2005-11-08 Fariborz Jahanian <fjahanian@apple.com>
2589
2590 Radar 4330422
2591 * c-common.h (objc_non_volatilized_type): New declaration
2592 * stub-objc.c (objc_non_volatilized_type): New stub.
2593
2594 2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
2595
2596 Merge from 'apple/trunk' branch on FSF servers.
2597
2598 2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
2599
2600 Radar 4133425
2601 * c-common.h (objc_diagnose_private_ivar): New decl.
2602 * stub-objc.c (objc_diagnose_private_ivar): New stub.
2603
2604 2010-10-17 Iain Sandoe <iains@gcc.gnu.org>
2605
2606 * c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
2607 * c-common.h (enum rid): Add RID_AT_PACKAGE.
2608 (objc_ivar_visibility_kind): New enum.
2609 (objc_set_visibility): Adjust prototype to use visibility enum.
2610 * stub-objc.c (objc_set_visibility): Adjust stub to use
2611 visibility enum.
2612
2613 2010-10-14 Michael Meissner <meissner@linux.vnet.ibm.com>
2614
2615 * c-cppbuiltin.c (builtin_define_float_constants): Emit
2616 __FP_FAST_FMA, __FP_FAST_FMAF, and __FP_FAST_FMAL if the machine
2617 has the appropriate fma builtins.
2618 (c_cpp_builtins): Adjust call to builtin_define_float_constants.
2619
2620 2010-10-14 Iain Sandoe <iains@gcc.gnu.org>
2621
2622 merge from FSF apple 'trunk' branch.
2623 2006 Fariborz Jahanian <fjahanian@apple.com>
2624
2625 Radars 4436866, 4505126, 4506903, 4517826
2626 * c-common.c (c_common_resword): Define @property and its attributes.
2627 * c-common.h: Define property attribute enum entries.
2628 (OBJC_IS_PATTR_KEYWORD): New.
2629 (objc_property_attribute_kind): New enum.
2630 Declare objc_set_property_attr (), objc_add_property_variable (),
2631 objc_build_getter_call () and objc_build_setter_call ().
2632 * stub-objc.c (objc_set_property_attr): New stub.
2633 (objc_add_property_variable): Likewise.
2634 (objc_build_getter_call): Likewise.
2635 (objc_build_setter_call) Likewise.
2636
2637 2010-10-13 Iain Sandoe <iains@gcc.gnu.org>
2638
2639 merge from FSF apple 'trunk' branch.
2640 2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
2641
2642 Radar 3803157 (method attributes)
2643 * c-common.c (handle_deprecated_attribute): Recognize
2644 objc methods as valid declarations.
2645 * c-common.h: Declare objc_method_decl ().
2646 * stub-objc.c (objc_method_decl): New stub.
2647
2648 2010-10-08 Joseph Myers <joseph@codesourcery.com>
2649
2650 * c-common.c (parse_optimize_options): Call
2651 decode_cmdline_options_to_array_default_mask before
2652 decode_options. Update arguments to decode_options.
2653 * c-common.h (c_common_init_options_struct): Declare.
2654 * c-opts.c (c_common_init_options_struct): New. Split out from
2655 c_common_init_options.
2656
2657 2010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
2658
2659 Implemented fast enumeration for Objective-C.
2660 * c-common.h (objc_finish_foreach_loop): New.
2661 * stub-objc.c (objc_finish_foreach_loop): New.
2662
2663 2010-10-05 Joseph Myers <joseph@codesourcery.com>
2664
2665 * c-common.h (struct diagnostic_context): Don't declare here.
2666 (c_common_initialize_diagnostics): Declare using
2667 diagnostic_context typedef.
2668 * c-opts.c (c_common_handle_option): Pass global_dc to
2669 handle_generated_option.
2670
2671 2010-10-04 Joseph Myers <joseph@codesourcery.com>
2672
2673 * c-opts.c (c_common_handle_option): Pass &global_options_set to
2674 handle_generated_option.
2675
2676 2010-10-03 Ian Lance Taylor <iant@google.com>
2677
2678 * c.opt (-fplan9-extensions): New option.
2679
2680 2010-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
2681
2682 * c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision):
2683 Remove.
2684 (c_cpp_builtins): Call functions from cppbuiltin.c instead
2685 of duplicating code.
2686
2687 2010-09-30 Iain Sandoe <iains@gcc.gnu.org>
2688
2689 * c-common.c: Add two new entries for @optional
2690 and @required keywords.
2691
2692 merge from FSF 'apple/trunk' branch.
2693 2006-01-30 Fariborz Jahanian <fjahanian@apple.com>
2694
2695 Radar 4386773
2696 * c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new
2697 objective-c keywords.
2698 (objc_set_method_opt): New declaration.
2699 * stub-objc.c (objc_set_method_opt): New stub.
2700
2701 2010-09-30 Joseph Myers <joseph@codesourcery.com>
2702
2703 * c-common.c (handle_optimize_attribute): Pass &global_options to
2704 cl_optimization_save and cl_optimization_restore.
2705 * c-opts.c (c_common_handle_option): Pass &global_options to
2706 handle_generated_option.
2707 * c-pragma.c (handle_pragma_diagnostic): Use option_flag_var.
2708 (handle_pragma_pop_options, handle_pragma_reset_options): Pass
2709 &global_options to cl_optimization_restore.
2710
2711 2010-09-30 Nicola Pero <nicola.pero@meta-innovation.com>
2712
2713 * c-lex.c (c_lex_with_flags): Updated comments for CPP_AT_NAME
2714 Objective-C/Objective-C++ keywords.
2715
2716 2010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
2717
2718 Merge from 'apple/trunk' branch on FSF servers.
2719
2720 2005-10-04 Fariborz Jahanian <fjahanian@apple.com>
2721
2722 Radar 4281748
2723 * c-common.h (objc_check_global_decl): New declaration.
2724 * stub-objc.c (objc_check_global_decl): New stub.
2725
2726 2010-09-29 Joseph Myers <joseph@codesourcery.com>
2727
2728 * c.opt: Don't use VarExists.
2729
2730 2010-09-29 Joseph Myers <joseph@codesourcery.com>
2731
2732 * c-common.c (c_cpp_error): Update names of diagnostic_context
2733 members.
2734 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of
2735 cl_optimization members.
2736 * c-opts.c (warning_as_error_callback, c_common_handle_option,
2737 sanitize_cpp_opts, finish_options): Update names of cpp_options
2738 members.
2739
2740 2010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
2741
2742 * c-common.h (OBJC_IS_CXX_KEYWORD): New macro. Updated comments.
2743 (objc_is_reserved_word): Removed.
2744 * c-common.c: Updated comments.
2745 * c-lex.c (c_lex_with_flags): Use OBJC_IS_CXX_KEYWORD instead of
2746 objc_is_reserved_word.
2747 * stub-objc.c (objc_is_reserved_word): Removed.
2748
2749 2010-09-28 Iain Sandoe <iains@gcc.gnu.org>
2750
2751 * c-common.h (objc_add_method_declaration): Adjust prototype to
2752 include attributes.
2753 (objc_start_method_definition): Likewise.
2754 (objc_build_keyword_decl): Likewise.
2755 * stub-objc.c:(objc_add_method_declaration): Handle attributes.
2756 (objc_start_method_definition): Likewise.
2757 (objc_build_keyword_decl): Likewise.
2758
2759 2010-09-28 Iain Sandoe <iains@gcc.gnu.org>
2760
2761 * c-common.h (objc_start_class_interface): Adjust prototype.
2762 (objc_start_category_interface): Likewise.
2763 (objc_start_protocol): Likewise.
2764 * stub-objc.c (objc_start_protocol): Adjust for extra argument.
2765 (objc_start_class_interface): Likewise.
2766 (objc_start_category_interface): Likewise.
2767
2768 2010-09-27 Ian Lance Taylor <iant@google.com>
2769
2770 * c-common.c (c_common_attribute_table): Add no_split_stack.
2771 (handle_no_split_stack_attribute): New static function.
2772
2773 2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
2774
2775 Merge from 'apple/trunk' branch on FSF servers.
2776
2777 2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
2778
2779 Radar 4229905
2780 * c-common.h (objc_have_common_type): New declaration.
2781 * stub-objc.c (objc_have_common_type): New stub.
2782
2783 2005-06-22 Ziemowit Laski <zlaski@apple.com>
2784
2785 Radar 4154928
2786 * c-common.h (objc_common_type): New prototype.
2787 * stub-objc.c (objc_common_type): New stub.
2788
2789 2010-09-24 Jan Hubicka <jh@suse.cz>
2790
2791 * c-common.c (handle_leaf_attribute): New function.
2792 (struct attribute_spec c_common_att): Add leaf.
2793
2794 2010-09-22 Joseph Myers <joseph@codesourcery.com>
2795
2796 * c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
2797 -comments-in-macros, -define-macro, -define-macro=, -dependencies,
2798 -dump, -dump=, -imacros, -imacros=, -include, -include=,
2799 -include-barrier, -include-directory, -include-directory=,
2800 -include-directory-after, -include-directory-after=,
2801 -include-prefix, -include-prefix=, -include-with-prefix,
2802 -include-with-prefix=, -include-with-prefix-after,
2803 -include-with-prefix-after=, -include-with-prefix-before,
2804 -include-with-prefix-before=, -no-integrated-cpp,
2805 -no-line-commands, -no-standard-includes, -no-warnings, -output,
2806 -output=, -pedantic, -pedantic-errors, -preprocess,
2807 -print-missing-file-dependencies, -trace-includes, -traditional,
2808 -traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
2809 -user-dependencies, -verbose, -write-dependencies,
2810 -write-user-dependencies, no-integrated-cpp, traditional): New.
2811
2812 2010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
2813
2814 PR objc/23710
2815 * c-common.h (objc_start_method_definition): Return bool instead
2816 of void.
2817 * stub-objc.c (objc_start_method_definition): Return bool instead
2818 of void.
2819
2820 2010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
2821
2822 PR objc/25965
2823 * c-common.h (objc_get_interface_ivars): New declaration.
2824 * stub-objc.c (objc_get_interface_ivars): New stub.
2825
2826 2010-09-15 Ian Lance Taylor <iant@google.com>
2827
2828 * c-common.c (parse_optimize_options): Do not capitalize warning
2829 messages. Remove period at end of warning message.
2830
2831 2010-09-09 Nathan Sidwell <nathan@codesourcery.com>
2832
2833 * c-common.c (handle_alias_ifunc_attribute): New, broken out of ...
2834 (handle_alias_attribute): ... here.
2835 (handle_ifunc_attribute): New.
2836
2837 2010-09-06 Mark Mitchell <mark@codesourcery.com>
2838
2839 * c-common.h (do_warn_double_promotion): Declare.
2840 * c-common.c (do_warn_double_promotion): Define.
2841
2842 2010-09-05 Mark Mitchell <mark@codesourcery.com>
2843
2844 * c.opt (Wdouble-promotion): New.
2845
2846 2010-09-02 Joseph Myers <joseph@codesourcery.com>
2847
2848 * c.opt (falt-external-templates, fhuge-objects, fvtable-gc,
2849 fvtable-thunks, fxref): Mark no longer supported in help text.
2850
2851 2010-09-02 Joseph Myers <joseph@codesourcery.com>
2852
2853 * c.opt (Wimport, fall-virtual, falt-external-templates,
2854 fdefault-inline, fenum-int-equiv, fexternal-templates,
2855 fguiding-decls, fhonor-std, fhuge-objects, flabels-ok,
2856 fname-mangling-version-, fnew-abi, fnonnull-objects,
2857 foptional-diags, fsquangle, fstrict-prototype, fthis-is-variable,
2858 fvtable-gc, fvtable-thunks, fxref): Mark with Ignore and Warn as
2859 applicable.
2860 (fhandle-exceptions): Mark with Alias and Warn.
2861 * c-opts.c (c_common_handle_option): Don't handle options marked
2862 as ignored.
2863
2864 2010-09-02 Joseph Myers <joseph@codesourcery.com>
2865
2866 * c.opt (Wcomments, Werror-implicit-function-declaration,
2867 ftemplate-depth-, std=c89, std=c9x, std=gnu89, std=gnu9x,
2868 std=iso9899:1990, std=iso9899:1999, std=iso9899:199x): Mark as
2869 aliases.
2870 * c-common.c (option_codes): Use OPT_Wcomment instead of
2871 OPT_Wcomments.
2872 * c-opts.c (warning_as_error_callback, c_common_handle_option):
2873 Don't handle options marked as aliases.
2874
2875 2010-08-25 Richard Guenther <rguenther@suse.de>
2876
2877 * c-common.c (c_common_get_alias_set): Remove special
2878 handling for pointers.
2879
2880 2010-08-20 Nathan Froyd <froydnj@codesourcery.com>
2881
2882 * c-common.c: Use FOR_EACH_VEC_ELT.
2883 * c-gimplify.c: Likewise.
2884 * c-pragma.c: Likewise.
2885
2886 2010-08-16 Joseph Myers <joseph@codesourcery.com>
2887
2888 * c.opt (MDX): Change back to MD. Mark NoDriverArg instead of
2889 RejectDriver.
2890 (MMDX): Change back to MMD. Mark NoDriverArg instead of
2891 RejectDriver.
2892 * c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
2893 instead of OPT_MDX and OPT_MMDX.
2894
2895 2010-08-16 Joseph Myers <joseph@codesourcery.com>
2896
2897 * c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.
2898
2899 2010-08-12 Joseph Myers <joseph@codesourcery.com>
2900
2901 * c.opt (MD, MMD): Change to MDX and MMDX.
2902 * c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX.
2903
2904 2010-08-11 Joseph Myers <joseph@codesourcery.com>
2905
2906 * c-opts.c (c_common_handle_option): Call handle_generated_option
2907 instead of handle_option.
2908
2909 2010-08-08 Nathan Froyd <froydnj@codesourcery.com>
2910
2911 * c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
2912 (maybe_apply_renaming_pragma): Delete unneeded declarations.
2913
2914 2010-08-08 Nathan Froyd <froydnj@codesourcery.com>
2915
2916 * c-pragma.c (pending_redefinition): Declare. Declare a VEC of it.
2917 (pending_redefine_extname): Change type to a VEC.
2918 (add_to_renaming_pragma_list): Update for new type of
2919 pending_redefine_extname.
2920 (maybe_apply_renaming_pragma): Likewise.
2921
2922 2010-08-04 Arnaud Charlet <charlet@adacore.com>
2923
2924 * c-ada-spec.c (dump_ada_template): Mark underlying instance type as
2925 visited.
2926 (dump_generic_ada_node): Code clean up. Use TREE_VISITED flag to
2927 decide whether a type has already been declared/seen.
2928 Do not go to the original type.
2929 (dump_nested_types): New parameter forward.
2930 Generate forward declaration if needed and mark type as visited.
2931 (print_ada_declaration): Call dump_nested_types if not already done.
2932 Mark types as visited.
2933
2934 2010-08-03 Joseph Myers <joseph@codesourcery.com>
2935
2936 * c.opt (-print-pch-checksum): Remove option.
2937 * c-opts.c (c_common_handle_option): Don't handle
2938 OPT_print_pch_checksum.
2939
2940 2010-07-27 Joseph Myers <joseph@codesourcery.com>
2941
2942 * c-common.h (c_common_handle_option): Update prototype and return
2943 value type.
2944 * c-opts.c (c_common_handle_option): Update prototype and return
2945 value type. Update calls to handle_option and
2946 enable_warning_as_error.
2947
2948 2010-07-27 Jakub Jelinek <jakub@redhat.com>
2949
2950 PR c/45079
2951 * c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
2952
2953 2010-07-27 Joseph Myers <joseph@codesourcery.com>
2954
2955 * c-common.h (c_common_missing_argument): Remove.
2956 * c-opts.c (c_common_missing_argument): Remove.
2957 * c.opt (A, D, F, I, MD, MMD, MQ, MT, U, fconstant-string-class=,
2958 idirafter, imacros, include, isysroot, isystem, iquote): Add
2959 MissingArgError.
2960 * c-objc-common.h (LANG_HOOKS_MISSING_ARGUMENT): Remove.
2961
2962 2010-07-27 Joseph Myers <joseph@codesourcery.com>
2963
2964 * c-common.h (c_common_option_lang_mask,
2965 c_common_initialize_diagnostics, c_common_complain_wrong_lang_p):
2966 New.
2967 (c_common_init_options): Update prototype.
2968 * c-opts.c (c_common_option_lang_mask): New.
2969 (c_common_initialize_diagnostics): Split out of
2970 c_common_init_options.
2971 (accept_all_c_family_options, c_common_complain_wrong_lang_p):
2972 New.
2973 (c_common_init_options): Update prototype. Use decoded options in
2974 search for -lang-asm.
2975
2976 2010-07-15 Nathan Froyd <froydnj@codesourcery.com>
2977
2978 * c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
2979 * c-format.c: Likewise.
2980
2981 2010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
2982
2983 * c-common.h: Include diagnostic-core.h. Error if already
2984 included.
2985 * c-semantics.c: Do not define GCC_DIAG_STYLE here.
2986
2987 2010-07-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
2988
2989 * c-family/c-common.c (IN_GCC_FRONTEND): Do not undef.
2990 Do not include expr.h
2991 (vector_mode_valid_p): Move here.
2992
2993 2010-06-21 DJ Delorie <dj@redhat.com>
2994
2995 * c-pragma.c (handle_pragma_diagnostic): Add push/pop,
2996 allow these pragmas anywhere.
2997
2998 2010-06-14 Jakub Jelinek <jakub@redhat.com>
2999
3000 PR bootstrap/44509
3001 * c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
3002 (lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
3003 (lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
3004 ggc_strdup instead of xstrdup.
3005
3006 2010-06-10 Jakub Jelinek <jakub@redhat.com>
3007
3008 * c-cppbuiltin.c: Include cpp-id-data.h.
3009 (lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
3010 (lazy_hex_fp_value): New function.
3011 (builtin_define_with_hex_fp_value): Provide definitions lazily.
3012
3013 2010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
3014
3015 * c-gimplify.c: Do not include tree-flow.h
3016
3017 2010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
3018
3019 PR other/44034
3020 * c-common.c: Rename targetm member:
3021 targetm.enum_va_list -> targetm.enum_va_list_p
3022
3023 2010-06-28 Anatoly Sokolov <aesok@post.ru>
3024
3025 * c-common.c (shorten_compare): Adjust call to force_fit_type_double.
3026
3027 2010-06-28 Steven Bosscher <steven@gcc.gnu.org>
3028
3029 * c-cppbuiltin.c: Do not include except.h.
3030
3031 2010-06-24 Andi Kleen <ak@linux.intel.com>
3032
3033 * c-common.c (warn_for_omitted_condop): New.
3034 * c-common.h (warn_for_omitted_condop): Add prototype.
3035
3036 2010-06-21 Joseph Myers <joseph@codesourcery.com>
3037
3038 * c.opt (lang-objc): Remove.
3039 * c-opts.c (c_common_handle_option): Don't handle OPT_lang_objc.
3040
3041 2010-06-21 Joern Rennecke <joern.rennecke@embecosm.com>
3042
3043 * c-opts.c: Include "tm_p.h".
3044
3045 2010-06-20 Joseph Myers <joseph@codesourcery.com>
3046
3047 * c-common.c (parse_optimize_options): Update call to
3048 decode_options.
3049
3050 2010-06-18 Nathan Froyd <froydnj@codesourcery.com>
3051
3052 * c-common.c (record_types_used_by_current_var_decl): Adjust for
3053 new type of types_used_by_cur_var_decl.
3054
3055 2010-06-17 Joern Rennecke <joern.rennecke@embecosm.com>
3056
3057 PR bootstrap/44512
3058 * c-cppbuiltin.c (builtin_define_with_hex_fp_value): Add cast
3059 for C++ standard compliance.
3060
3061 2010-06-16 Jason Merrill <jason@redhat.com>
3062
3063 * c.opt: Add -Wnoexcept.
3064
3065 2010-06-16 Richard Guenther <rguenther@suse.de>
3066
3067 PR c/44555
3068 * c-common.c (c_common_truthvalue_conversion): Remove
3069 premature and wrong optimization concering ADDR_EXPRs.
3070
3071 2010-06-15 Arnaud Charlet <charlet@adacore.com>
3072
3073 * c-ada-spec.c (dump_sloc): Remove column info.
3074 (is_simple_enum): New function.
3075 (dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada
3076 enum types when relevant.
3077
3078 2010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
3079
3080 * c-common.c (conversion_warning): Warn at expression
3081 location.
3082
3083 2010-06-10 Joseph Myers <joseph@codesourcery.com>
3084
3085 * c-opts.c (c_common_handle_option): Don't handle
3086 OPT_fshow_column.
3087
3088 2010-06-08 Laurynas Biveinis <laurynas.biveinis@gmail.com>
3089
3090 * c-pragma.c (push_alignment): Use typed GC allocation.
3091 (handle_pragma_push_options): Likewise.
3092
3093 * c-common.c (parse_optimize_options): Likewise.
3094
3095 * c-common.h (struct sorted_fields_type): Add variable_size GTY
3096 option.
3097
3098 2010-06-07 Joseph Myers <joseph@codesourcery.com>
3099
3100 * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
3101 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
3102 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
3103 flag_signed_bitfields, warn_strict_null_sentinel,
3104 flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
3105 flag_gen_declaration, flag_no_gnu_keywords,
3106 flag_implement_inlines, flag_implicit_templates,
3107 flag_implicit_inline_templates, flag_optional_diags,
3108 flag_elide_constructors, flag_default_inline, flag_rtti,
3109 flag_conserve_space, flag_access_control, flag_check_new,
3110 flag_new_for_scope, flag_weak, flag_working_directory,
3111 flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
3112 flag_enforce_eh_specs, flag_threadsafe_statics,
3113 flag_pretty_templates): Remove.
3114 * c-common.h (flag_preprocess_only, flag_nil_receivers,
3115 flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
3116 flag_replace_objc_classes, flag_undef, flag_no_builtin,
3117 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
3118 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
3119 flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
3120 flag_no_gnu_keywords, flag_implement_inlines,
3121 flag_implicit_templates, flag_implicit_inline_templates,
3122 flag_optional_diags, flag_elide_constructors, flag_default_inline,
3123 flag_rtti, flag_conserve_space, flag_access_control,
3124 flag_check_new, flag_new_for_scope, flag_weak,
3125 flag_working_directory, flag_use_cxa_atexit,
3126 flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
3127 flag_threadsafe_statics, flag_pretty_templates,
3128 warn_strict_null_sentinel): Remove.
3129 * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
3130 fbuiltin, fcheck-new, fconserve-space, felide-constructors,
3131 fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
3132 fimplicit-inline-templates, fimplicit-templates,
3133 flax-vector-conversions, fms-extensions, fnil-receivers,
3134 fnonansi-builtins, fpretty-templates, freplace-objc-classes,
3135 frtti, fshort-double, fshort-enums, fshort-wchar,
3136 fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
3137 funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
3138 fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
3139 gen-decls, undef): Use Var.
3140 (fdefault-inline, foptional-diags): Document as doing nothing.
3141 * c-opts.c (c_common_handle_option): Remove cases for options now
3142 using Var. Mark ignored options as such.
3143
3144 2010-06-05 Steven Bosscher <steven@gcc.gnu.org>
3145
3146 * c-common.c: Moved to here from parent directory.
3147 * c-common.def: Likewise.
3148 * c-common.h: Likewise.
3149 * c-cppbuiltin.c: Likewise.
3150 * c-dump.c: Likewise.
3151 * c-format.c: Likewise.
3152 * c-format.h : Likewise.
3153 * c-gimplify.c: Likewise.
3154 * c-lex.c: Likewise.
3155 * c-omp.c: Likewise.
3156 * c.opt: Likewise.
3157 * c-opts.c: Likewise.
3158 * c-pch.c: Likewise.
3159 * c-ppoutput.c: Likewise.
3160 * c-pragma.c: Likewise.
3161 * c-pragma.h: Likewise.
3162 * c-pretty-print.c: Likewise.
3163 * c-pretty-print.h: Likewise.
3164 * c-semantics.c: Likewise.
3165 * stub-objc.c: Likewise.
3166
3167 * c-common.c: Include gt-c-family-c-common.h.
3168 * c-pragma.c: Include gt-c-family-c-pragma.h.
3169 \f
3170 Copyright (C) 2010-2013 Free Software Foundation, Inc.
3171
3172 Copying and distribution of this file, with or without modification,
3173 are permitted in any medium without royalty provided the copyright
3174 notice and this notice are preserved.