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