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