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