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