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