2011-09-05 Richard Guenther <rguenther@suse.de>
[official-gcc.git] / gcc / c-family / ChangeLog
blob95abde6b7fc35133faee19fb810312ecd0671db1
1 2011-09-05  Richard Guenther  <rguenther@suse.de>
3         * c-common.c (complete_array_type): Use ssize_int (-1) instead
4         of integer_minus_one_node for empty array upper bounds.
6 2011-08-28  Dodji Seketeli  <dodji@redhat.com>
8         * c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as
9         it's the first time it's being called on this main TU.
11 2011-08-24  Richard Guenther  <rguenther@suse.de>
13         PR c/49396
14         * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional.
16 2011-08-22  Gabriel Charette  <gchare@google.com>
18         * c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens
19         defined in cpp_init_builtins and c_cpp_builtins.
21 2011-08-19  Joseph Myers  <joseph@codesourcery.com>
23         * c-common.c (c_common_reswords): Add __builtin_complex.
24         * c-common.h (RID_BUILTIN_COMPLEX): New.
26 2011-08-18  Joseph Myers  <joseph@codesourcery.com>
28         * c-common.c (c_common_reswords): Add _Noreturn.
29         (keyword_is_function_specifier): Handle RID_NORETURN.
30         * c-common.h (RID_NORETURN): New.
32 2011-08-10  Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
34         * c-common.c (unsafe_conversion_p): New function. Check if it is
35         unsafe to convert an expression to the type.
36         (conversion_warning): Adjust, use unsafe_conversion_p.
37         * c-common.h (unsafe_conversion_p): New function declaration.
39 2011-08-02  Jakub Jelinek  <jakub@redhat.com>
41         * c-common.h (c_finish_omp_atomic): Adjust prototype.
42         (c_finish_omp_taskyield): New prototype.
43         * c-omp.c (c_finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1
44         arguments. Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and
45         OMP_ATOMIC_CAPTURE_NEW in addition to OMP_ATOMIC.  If LHS1
46         or RHS1 have side-effects, evaluate those too in the right spot,
47         if it is a decl and LHS is also a decl, error out if they
48         aren't the same.
49         (c_finish_omp_taskyield): New function.
50         * c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP to 201107.
51         * c-pragma.c (omp_pragmas): Add taskyield.
52         * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKYIELD.
53         (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FINAL and
54         PRAGMA_OMP_CLAUSE_MERGEABLE.
56 2011-07-25  Dodji Seketeli  <dodji@redhat.com>
58         * c-common.h (set_underlying_type): Remove parm name from
59         declaration.
61 2011-07-25  Romain Geissler  <romain.geissler@gmail.com>
63         * c-pretty-print.h: Search c-common.h in c-family.
64         
65 2011-07-22  Jason Merrill  <jason@redhat.com>
67         PR c++/49793
68         * c.opt (Wnarrowing): New.
70         PR c++/30112
71         * c-common.h: Declare c_linkage_bindings.
72         * c-pragma.c (handle_pragma_redefine_extname): Use it.
74         PR c++/49813
75         * c-opts.c (set_std_cxx0x): Set flag_isoc94 and flag_isoc99.
76         * c-pretty-print.c (pp_c_cv_qualifiers): Check c_dialect_cxx as well
77         as flag_isoc99 for 'restrict'.
78         (pp_c_specifier_qualifier_list): Likewise for _Complex.
80 2011-07-21  Ian Lance Taylor  <iant@google.com>
82         PR middle-end/49705
83         * c-common.c (c_disable_warnings): New static function.
84         (c_enable_warnings): New static function.
85         (c_fully_fold_internal): Change local unused_p to bool.  Call
86         c_disable_warnings and c_enable_warnings rather than change
87         c_inhibit_evaluation_warnings.
89 2011-07-20  Jason Merrill  <jason@redhat.com>
91         PR c++/6709 (DR 743)
92         PR c++/42603 (DR 950)
93         * c-common.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move from cp/parser.h.
94         (CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise.
95         (CPP_DECLTYPE): New.
96         * c-common.c (c_parse_error): Handle CPP_DECLTYPE.
98 2011-07-19  Richard Guenther  <rguenther@suse.de>
100         * c-common.c (pointer_int_sum): Use fold_build_pointer_plus.
101         * c-omp.c (c_finish_omp_for): Likewise.
103 2011-07-12  Eric Botcazou  <ebotcazou@adacore.com>
105         * c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop
106         body on the next line.
108 2011-07-08  Jason Merrill  <jason@redhat.com>
110         PR c++/45437
111         * c-omp.c (check_omp_for_incr_expr): Handle preevaluation.
113         PR c++/49673
114         * c-common.c (c_apply_type_quals_to_decl): Don't check
115         TYPE_NEEDS_CONSTRUCTING.
117 2011-07-06  Richard Guenther  <rguenther@suse.de>
119         * c-common.c (c_common_nodes_and_builtins):
120         Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
122 2011-07-05  Richard Guenther  <rguenther@suse.de>
124         * c-common.c (c_common_nodes_and_builtins): Build all common
125         tree nodes first.
127 2011-06-27  Jakub Jelinek  <jakub@redhat.com>
129         * c-common.h (c_tree_chain_next): New static inline function.
131         * c-common.c (check_builtin_function_arguments): Handle
132         BUILT_IN_ASSUME_ALIGNED.
134 2011-06-21  Andrew MacLeod  <amacleod@redhat.com>
136         * c-common.c: Add sync_ or SYNC__ to builtin names.
137         * c-omp.c: Add sync_ or SYNC__ to builtin names.
139 2011-06-20  Pierre Vittet  <piervit@pvittet.com>
141         * c-pragma.h (pragma_handler_1arg, pragma_handler_2arg): New
142         handler.
143         (gen_pragma_handler): New union.
144         (internal_pragma_handler): New type.
145         (c_register_pragma_with_data)
146         (c_register_pragma_with_expansion_and_data): New functions.
148         * c-pragma.c (registered_pragmas, c_register_pragma_1)
149         (c_register_pragma, c_register_pragma_with_expansion)
150         (c_invoke_pragma_handler): Changed to work with
151         internal_pragma_handler.
152         (c_register_pragma_with_data)
153         (c_register_pragma_with_expansion_and_data): New functions.
155 2011-06-14  Joseph Myers  <joseph@codesourcery.com>
157         * c-common.c: Include common/common-target.h.
158         (handle_section_attribute): Use
159         targetm_common.have_named_sections.
160         * c-cppbuiltin.c: Include common/common-target.h.
161         (c_cpp_builtins): Use targetm_common.except_unwind_info.
163 2011-06-10  Richard Guenther  <rguenther@suse.de>
165         * c-pretty-print.c (pp_c_type_specifier): Use pp_c_identifier
166         to print a IDENTIFIER_NODE.
168 2011-06-09  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
169             Joseph Myers  <joseph@codesourcery.com>
171         * c.opt (fbuilding-libgcc): New option.
172         * c-cppbuiltin.c (c_cpp_builtins): Define
173         __LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc.
175 2011-06-07  Jason Merrill  <jason@redhat.com>
177         * c-common.c (max_tinst_depth): Lower default to 900.
179         * c-format.c (gcc_cxxdiag_char_table): Add 'S' format.
181 2011-06-07  Richard Guenther  <rguenther@suse.de>
183         * c-common.c (c_common_nodes_and_builtins): Do not set
184         size_type_node or call set_sizetype.
186 2011-06-07  Dodji Seketeli  <dodji@redhat.com>
188         PR debug/49130
189         * c-pretty-print.c (pp_c_integer_constant): Consider the canonical
190         type when using pointer comparison to compare types.
192 2011-06-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
194         * c.opt: Add -Wdelete-non-virtual-dtor.
195         * c-opts.c (c_common_handle_option): Include it in -Wall.
197 2011-05-30  Nathan Froyd  <froydnj@gcc.gnu.org>
199         PR bootstrap/49190
201         Revert:
202         2011-05-26  Nathan Froyd  <froydnj@codesourcery.com>
204         * c-common.h (struct c_common_identifier): Inherit from tree_typed,
205         not tree_common.
207 2011-05-27  Jakub Jelinek  <jakub@redhat.com>
209         PR c++/49165
210         * c-common.c (c_common_truthvalue_conversion) <case COND_EXPR>: For
211         C++ don't call c_common_truthvalue_conversion on void type arms.
213 2011-05-27  Nathan Froyd  <froydnj@codesourcery.com>
215         * c-common.h (struct stmt_tree_s) [x_cur_stmt_list]: Change to a VEC.
216         (stmt_list_stack): Define.
217         (cur_stmt_list): Adjust for new type of x_cur_stmt_list.
218         * c-semantics.c (push_stmt_list, pop_stmt_list): Likewise.
220 2011-05-26  Nathan Froyd  <froydnj@codesourcery.com>
222         * c-common.c (warning_candidate_p): Check for BLOCKs.
224 2011-05-26  Nathan Froyd  <froydnj@codesourcery.com>
226         * c-common.h (struct c_common_identifier): Inherit from tree_typed,
227         not tree_common.
229 2011-05-25  Jakub Jelinek  <jakub@redhat.com>
231         * c-common.c (def_fn_type): Remove extra va_end.
233 2011-05-23  Jason Merrill  <jason@redhat.com>
235         PR c++/48106
236         * c-common.c (c_common_get_narrower): New.
237         (shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.
239 2011-05-23  Nathan Froyd  <froydnj@codesourcery.com>
241         * c-common.h (check_function_arguments): Tweak prototype of
242         check_function_arguments.
243         * c-common.c (check_function_arguments): Likewise.  Adjust
244         calls to check_function_nonnull, check_function_format, and
245         check_function_sentinel.
246         (check_function_sentinel): Take a FUNCTION_TYPE rather than
247         separate attributes and typelist arguments.  Use
248         FOREACH_FUNCTION_ARGS to iterate over argument types.
250 2011-05-15  Paolo Carlini  <paolo.carlini@oracle.com>
252         * c-common.c (c_common_reswords): Reorder.
253         * c-common.h (rid): Likewise.
255 2011-05-10  Nathan Froyd  <froydnj@codesourcery.com>
257         * c-common.c (def_fn_type): Don't call build_function_type, call
258         build_function_type_array or build_varargs_function_type_array
259         instead.
260         (c_common_nodes_and_builtins): Likewise.
262 2011-05-05  Nathan Froyd  <froydnj@codesourcery.com>
264         * c-common.c (c_add_case_label): Omit the loc argument to
265         build_case_label.
266         * c-common.h (build_case_label): Remove.
267         * c-semantics.c (build_case_label): Remove.
269 2011-05-05  Joseph Myers  <joseph@codesourcery.com>
271         * c-objc.h (objc_start_method_definition): Update prototype.
272         * stub-objc.c (objc_start_method_definition): Add extra parameter.
274 2011-05-04  Nathan Froyd  <froydnj@codesourcery.com>
276         * c-common.c (check_main_parameter_types): Reindent.  Don't use
277         TYPE_ARG_TYPES directly.
278         (handle_nonnull_attribute): Likewise.
279         (sync_resolve_params): Likewise.
280         * c-format.c (handle_format_arg_attribute): Likewise.  Adjust call
281         to check_format_string.
282         (handle_format_attribute): Likewise.
283         (check_format_string): Take a function type to examine instead of
284         a type list.  Use a function_arg_iterator to step through argument
285         types.
287 2011-05-04  Richard Guenther  <rguenther@suse.de>
289         * c-common.c (fix_string_type): Use size_int for index type bounds.
290         (start_fname_decls): Do not pass NULL to build_int_cst.
291         (c_init_attributes): Likewise.
292         * c-lex.c (c_lex_with_flags): Likewise.
294 2011-04-27  Jason Merrill  <jason@redhat.com>
296         * c-common.c (make_tree_vector_from_list): New.
297         * c-common.h: Declare it.
299 2011-04-26  Richard Guenther  <rguenther@suse.de>
301         PR preprocessor/48248
302         * c-ppoutput.c (maybe_print_line): Always optimize newlines
303         for output size with -P.
305 2011-04-25  Paolo Carlini  <paolo.carlini@oracle.com>
307         * c-common.c (struct c_common_resword): Add __underlying_type.
308         * c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
310 2011-04-20  Jim Meyering  <meyering@redhat.com>
312         * c-format.c (init_dollar_format_checking): Remove useless
313         if-before-free.
315 2011-04-15  Nicola Pero  <nicola.pero@meta-innovation.com>
317         * c-objc.h (objc_get_interface_ivars): Removed.
318         (objc_detect_field_duplicates): New.
319         * stub-objc.c: Likewise.
321 2011-04-14  Nicola Pero  <nicola.pero@meta-innovation.com>
323         * stub-objc.c (objc_declare_protocols): Renamed to
324         objc_declare_protocol.
325         * c-objc.h: Likewise.
327 2011-04-14  Nicola Pero  <nicola.pero@meta-innovation.com>
329         * stub-objc.c (objc_declare_class): Updated argument name.
331 2011-04-12  Nathan Froyd  <froydnj@codesourcery.com>
333         * c-common.h (c_common_init_ts): Declare.
334         * c-common.c (c_common_init_ts): Define.
336 2011-04-12  Nicola Pero  <nicola.pero@meta-innovation.com>
338         * c-objc.h (objc_build_message_expr): Updated prototype.
339         * stub-objc.c (objc_build_message_expr): Likewise.
340         
341 2011-04-12  Martin Jambor  <mjambor@suse.cz>
343         * c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
344         of cgraph_node.
346 2011-04-11  Richard Guenther  <rguenther@suse.de>
348         * c-common.c (complete_array_type): Build a range type of
349         proper type.
351 2011-04-08  Nathan Froyd  <froydnj@codesourcery.com>
353         * c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
354         (handle_type_generic_attribute): Likewise.
356 2011-04-07  Jason Merrill  <jason@redhat.com>
358         PR c++/48450
359         * c-common.c (c_common_truthvalue_conversion): Don't ignore
360         conversion from C++0x scoped enum.
362 2011-04-06  Joseph Myers  <joseph@codesourcery.com>
364         * c-target-def.h: New file.
365         * c-target.def: New file.
366         * c-target.h: New file.
367         * c-common.c (targetcm): Don't define here.
368         * c-common.h (default_handle_c_option): Declare.
369         * c-format.c: Include c-target.h instead of target.h.
370         * c-opts.c: Include c-target.h instead of target.h.  Explicitly
371         include tm.h.
372         (default_handle_c_option): Move from targhooks.c.
374 2011-03-29  Jakub Jelinek  <jakub@redhat.com>
376         PR preprocessor/48248
377         * c-ppoutput.c (print): Add src_file field.
378         (init_pp_output): Initialize it.
379         (maybe_print_line): Don't optimize by adding up to 8 newlines
380         if map->to_file and print.src_file are different file.
381         (print_line): Update print.src_file.
383 2011-03-25  Kai Tietz  <ktietz@redhat.com>
385         * c-ada-spec.c (compare_comment): Use filename_cmp
386         instead of strcmp for filename.
388 2011-03-25  Jeff Law  <law@redhat.com>
390         * c-family/c-common.c (def_fn_type): Add missing va_end.
392 2011-03-25  Jason Merrill  <jason@redhat.com>
394         * c.opt: Add -std=c++03.
396 2011-03-22  Eric Botcazou  <ebotcazou@adacore.com>
398         * c-ada-spec.c (dump_ada_template): Skip non-class instances.
400 2011-03-17  Kai Tietz
402         PR target/12171
403         * c-pretty-print.c (pp_c_specifier_qualifier_list):
404         Display allowed attributes for function pointer types.
405         (pp_c_attributes_display): New function to display
406         attributes having affects_type_identity flag set to true.
407         * c-pretty-print.h (pp_c_attributes_display): New prototype.
409         * c-common.c (c_common_attribute_table):
410         Add new element.
411         (c_common_format_attribute_table): Likewise.
413 2011-03-18  Jason Merrill  <jason@redhat.com>
415         * c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
416         * c-common.h: Don't declare it here.
417         * c-common.c: Or define it here.
418         * c-opts.c (c_common_handle_option): Or set it here.
420         PR c++/35315
421         * c-common.c (handle_transparent_union_attribute): Don't
422         make a duplicate type in C++.
424 2011-03-15  Jason Merrill  <jason@redhat.com>
426         * c-common.c (max_constexpr_depth): New.
427         * c-common.h: Declare it.
428         * c-opts.c (c_common_handle_option): Set it.
429         * c.opt (fconstexpr-depth): New option.
431 2011-03-11  Jason Merrill  <jason@redhat.com>
433         * c-common.c (attribute_takes_identifier_p): Add missing const.
435         PR c++/46803
436         * c-common.c (attribute_takes_identifier_p): Assume that an
437         unknown attribute takes an identifier.
439 2011-03-07  Nathan Froyd  <froydnj@codesourcery.com>
441         PR c/47786
442         * c-common.c (c_type_hash): Call list_length instead of iterating
443         through DECL_CHAIN.  Rename 'i' to 'n_elements'.
445 2011-02-19  Jakub Jelinek  <jakub@redhat.com>
447         PR c/47809
448         * c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
450 2011-02-17  Iain Sandoe  <iains@gcc.gnu.org>
452         * c.opt (fobjc-abi-version=) New.
453         (fobjc-nilcheck): New.
455 2011-02-03  Nathan Froyd  <froydnj@codesourcery.com>
457         PR c++/46890
458         * c-common.h (keyword_is_decl_specifier): Declare.
459         * c-common.c (keyword_is_decl_specifier): Define.
460         (keyword_is_function_specifier): New function.
462 2011-01-26  Jakub Jelinek  <jakub@redhat.com>
464         PR c/47473
465         * c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
466         EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
467         REAL_TYPE.
469 2011-01-26  Arnaud Charlet  <charlet@adacore.com>
471         * c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type.
473 2011-01-26  Jakub Jelinek  <jakub@redhat.com>
475         PR pch/47430
476         * c-opts.c (c_common_post_options): Call c_common_no_more_pch
477         after init_c_lex if pch_file is set.
479 2011-01-26  Dave Korn  <dave.korn.cygwin@gmail.com>
481         PR c++/43601
482         * c.opt (-fkeep-inline-dllexport): New switch.
484 2011-01-12  Richard Guenther  <rguenther@suse.de>
486         PR middle-end/32511
487         * c-common.c (handle_weak_attribute): Warn instead of error
488         on declaring an inline function weak.
490 2011-01-05  Tom Tromey  <tromey@redhat.com>
492         * c-common.h (lvalue_error): Update.
493         * c-common.c (lvalue_error): Add 'loc' argument.  Call error_at,
494         not error.
496 2010-12-29  Nicola Pero  <nicola.pero@meta-innovation.com>
497         
498         PR objc/47075
499         * c-objc.h (objc_finish_message_expr): Added argument to
500         prototype.
502 2010-12-22  Nathan Froyd  <froydnj@codesourcery.com>
504         * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute):
505         Use prototype_p.
507 2010-12-18  Nicola Pero  <nicola.pero@meta-innovation.com>
509         * c-objc.h (objc_maybe_warn_exceptions): New.
510         * stub-objc.c (objc_maybe_warn_exceptions): New.        
512 2010-12-10  Nathan Froyd  <froydnj@codesourcery.com>
514         * c-common.h (readonly_error): Declare.
515         * c-common.c (readonly_error): Define.
517 2010-12-09  Nathan Froyd  <froydnj@codesourcery.com>
519         * c-common.h (invalid_indirection_error): Declare.
520         * c-common.c (invalid_indirection_error): Define.
522 2010-12-03  Richard Guenther  <rguenther@suse.de>
524         PR c/46745
525         * c-pretty-print.c (pp_c_postfix_expression): Handle MEM_REF.
526         (pp_c_unary_expression): Likewise.
527         (pp_c_expression): Likewise.
529 2010-11-30  Nicola Pero  <nicola.pero@meta-innovation.com>
531         * c-common.h (objc_finish_function): New.
532         (objc_non_volatilized_type): Removed.
533         (objc_type_quals_match): Removed.
534         * stub-objc.c (objc_finish_function): New.
535         (objc_non_volatilized_type): Removed.
536         (objc_type_quals_match): Removed.
537         
538 2010-11-30  Joseph Myers  <joseph@codesourcery.com>
540         * c-common.h (parse_optimize_options): Declare.
541         * c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c,
542         c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h.
544 2010-11-29  Joseph Myers  <joseph@codesourcery.com>
546         * c-opts.c (check_deps_environment_vars): Use getenv instead of
547         GET_ENVIRONMENT.
548         * c-pch.c (O_BINARY): Don't define here.
549         * c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
551 2010-11-25  Joseph Myers  <joseph@codesourcery.com>
553         * c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
554         targetm.except_unwind_info.
556 2010-11-23  Joseph Myers  <joseph@codesourcery.com>
558         * c-opts.c (c_common_handle_option): Pass location to
559         set_struct_debug_option.
561 2010-11-23  Joseph Myers  <joseph@codesourcery.com>
563         * c-common.c (visibility_options): Move from ../opts.c.
564         * c-common.h (struct visibility_flags, visibility_options):
565         Declare here.
566         * c-opts.c (finish_options): Rename to c_finish_options.
567         (c_common_init): Update call to finish_options.
569 2010-11-22  Nicola Pero  <nicola.pero@meta-innovation.com>
571         PR objc/34033
572         * c-lex.c (lex_string): Check that each string in an Objective-C
573         string concat sequence starts with either one or zero '@', and
574         that there are no spurious '@' signs at the end.
576 2010-11-20  Joseph Myers  <joseph@codesourcery.com>
578         * c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
579         HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
580         HANDLE_PRAGMA_VISIBILITY.
581         * c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
582         HANDLE_PRAGMA_VISIBILITY): Don't define.
583         (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.
585 2010-11-20  Nathan Froyd  <froydnj@codesourcery.com>
587         PR c++/16189
588         PR c++/36888
589         PR c++/45331
590         * c-common.h (keyword_begins_type_specifier): Declare.
591         (keyword_is_storage_class_specifier): Declare.
592         (keyword_is_type_qualifier): Declare.
593         * c-common.c (keyword_begins_type_specifier): New function.
594         (keyword_is_storage_class_specifier): New function.
595         (keyword_is_type_qualifier): Declare.
597 2010-11-19  Joseph Myers  <joseph@codesourcery.com>
599         PR c/46547
600         * c-common.c (in_late_binary_op): Define.
601         (c_common_truthvalue_conversion): Check in_late_binary_op before
602         calling c_save_expr.
603         * c-common.h (in_late_binary_op): Declare.
605 2010-11-19  Joseph Myers  <joseph@codesourcery.com>
607         * c-opts.c (c_common_handle_option): Update calls to
608         set_struct_debug_option.
610 2010-11-19  Nicola Pero  <nicola.pero@meta-innovation.com>
612         * c-common.h (objc_declare_protocols): Added additional argument.
613         * stub-objc.c (objc_declare_protocol): Same change.
614         
615 2010-11-18  Nathan Froyd  <froydnj@codesourcery.com>
617         PR c/33193
618         * c-common.h (build_real_imag_expr): Declare.
619         * c-semantics.c (build_real_imag_expr): Define.
621 2010-11-17  Joseph Myers  <joseph@codesourcery.com>
623         * c-opts.c (c_common_parse_file): Take no arguments.
624         * c-common.h (c_common_parse_file): Update prototype.
626 2010-11-16  Jakub Jelinek  <jakub@redhat.com>
628         PR c++/46401
629         * c-common.c (warning_candidate_p): Don't track non-const calls
630         or STRING_CSTs.
632 2010-11-15  Ian Lance Taylor  <iant@google.com>
634         * c-lex.c (init_c_lex): Set macro debug callbacks if
635         flag_dump_go_spec is set.
637 2010-11-15  Nicola Pero  <nicola.pero@meta-innovation.com>
639         * c-common.h (objc_build_incr_expr_for_property_ref): New.
640         * stub-objc.c (objc_build_incr_expr_for_property_ref): New.
642 2010-11-15  Nathan Froyd  <froydnj@codesourcery.com>
644         PR preprocessor/45038
645         * c-cppbuiltin.c (c_cpp_builtins): Use different format for C++
646         dialects.
648 2010-11-12  Joseph Myers  <joseph@codesourcery.com>
650         * c-common.h (c_family_lang_mask): Declare.
651         * c-opts.c (c_family_lang_mask): Make extern.
652         * c-pragma.c (handle_pragma_diagnostic): Use
653         control_warning_option.
655 2010-11-12  Joseph Myers  <joseph@codesourcery.com>
657         * c-common.c (parse_optimize_options): Update call to
658         decode_options.
659         * c-common.h (c_common_handle_option): Update prototype.
660         * c-opts.c (c_common_handle_option): Take location_t parameter and
661         pass it to other functions.
663 2010-11-11  Joseph Myers  <joseph@codesourcery.com>
665         * c-opts.c (warning_as_error_callback): Remove.
666         (c_common_initialize_diagnostics): Don't call
667         register_warning_as_error_callback.
668         (c_common_handle_option): Handle -Werror=normalized= here.
670 2010-11-10  Joseph Myers  <joseph@codesourcery.com>
672         * c-common.c (handle_mode_attribute): Use %' and word "signedness"
673         in diagnostic.
674         * c-opts.c (c_common_parse_file): Start diagnostics with lowercase
675         letter.
676         * c-pragma.c (handle_pragma_target, handle_pragma_optimize):
677         Remove trailing '.' from diagnostics.
678         * c.opt (Wwrite-strings_: Avoid '`' in help text.
680 2010-11-10  Joseph Myers  <joseph@codesourcery.com>
682         * c-common.c (parse_optimize_options): Pass global_dc to
683         decode_options.
684         * c-opts.c (c_common_handle_option): Pass &global_options to
685         set_Wstrict_aliasing.
686         * c.opt (v): Don't mark Common or document here.
688 2010-11-06  Iain Sandoe  <iains@gcc.gnu.org>
690         PR target/44981
691         * c-format.c (format_type): New type gcc_objc_string_format_type.
692         (valid_stringptr_type_p): New.
693         (handle_format_arg_attribute): Use valid_stringptr_type_p ().
694         (check_format_string): Pass expected type, use 
695         valid_stringptr_type_p (), check that the format string types are
696         consistent with the format specification.
697         (decode_format_attr): Warn if NSString is used outside objective-c.
698         (format_types_orig): Add NSString.
699         (format_name): New.
700         (format_flags): New.
701         (check_format_arg): Handle format strings requiring an external parser.
702         first_target_format_type: New variable.
703         (handle_format_attribute): Set up first_target_format_type, pass the
704         expected format arg string type to check_format_string().
705         * c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL):  New flag.
706         * stub-objc.c (objc_string_ref_type_p): New.
707         (objc_check_format_arg): New.
709 2010-11-04  Nicola Pero  <nicola.pero@meta-innovation.com>
711         Fixed using the Objective-C 2.0 dot-syntax with class names.    
712         * c-common.h (objc_build_class_component_ref): New.
713         * stub-objc.c (objc_build_class_component_ref): New.
715 2010-11-03  Nicola Pero  <nicola.pero@meta-innovation.com>
717         * c.opt (Wproperty-assign-default): New option.
719 2010-11-03  Nicola Pero  <nicola.pero@meta-innovation.com>
721         Implemented -fobjc-std=objc1 flag.
722         * c.opt (fobjc-std=objc1): New option.
724 2010-11-01  Nicola Pero  <nicola.pero@meta-innovation.com>
726         Implemented format and noreturn attributes for Objective-C methods.
727         * c-common.c (handle_noreturn_attribute): Recognize 'noreturn'
728         attribute for Objective-C methods.
730 2010-10-31  Jason Merrill  <jason@redhat.com>
732         * c-common.c (conversion_warning, warn_for_collisions_1): Use
733         EXPR_LOC_OR_HERE.
735 2010-10-30  Nicola Pero  <nicola.pero@meta-innovation.com>
737         Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
738         * c-common.h (enum rid): Removed RID_COPIES and RID_IVAR.
739         (objc_add_property_declaration): Removed arguments for copies and
740         ivar.
741         (objc_build_getter_call): Renamed to
742         objc_maybe_build_component_ref.
743         (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
744         (objc_is_property_ref): New.
745         * c-common.c (c_common_reswords): Removed copies and ivar.
746         * stub-objc.c (objc_add_property_declaration): Removed arguments
747         for copies and ivar.
748         (objc_build_getter_call): Renamed to
749         objc_maybe_build_component_ref.
750         (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
751         (objc_is_property_ref): New.
752         
753 2010-10-29  Arnaud Charlet  <charlet@adacore.com>
754             Matthew Gingell  <gingell@adacore.com>
756         * c-ada-spec.c (separate_class_package): New function.
757         (pp_ada_tree_identifier): Prefix references to C++ classes with the
758         name of their enclosing package.
759         (print_ada_declaration): Use separate_class_package.
761 2010-10-27  Jason Merrill  <jason@redhat.com>
763         * c-common.c (c_common_reswords): Add __is_literal_type.
764         * c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
766         * c-common.c (check_case_value): Remove special C++ code.
768 2010-10-27  Nicola Pero  <nicola.pero@meta-innovation.com>
770         * c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN,
771         RID_RETAIN, RID_COPY and RID_NONATOMIC.  Updated RID_FIRST_PATTR
772         and RID_LAST_PATTR.
773         (objc_add_property_declaration): Added additional arguments.
774         (objc_property_attribute_kind): Removed.
775         (objc_set_property_attr): Removed.
776         * c-common.c (c_common_reswords): Added readwrite, assign, retain,
777         copy and nonatomic.
778         * stub-objc.c (objc_add_property_declaration): Added additional
779         arguments.
780         (objc_set_property_attr): Removed.
781         
782 2010-10-27  Nicola Pero  <nicola.pero@meta-innovation.com>
784         * c-common.h (objc_add_property_variable): Renamed to
785         objc_add_property_declaration.  Added location argument.
786         * stub-objc.c (objc_add_property_variable): Same change.
787         
788 2010-10-23  Nicola Pero  <nicola.pero@meta-innovation.com>
790         * c-common.h (objc_maybe_printable_name): New.
791         * stub-objc.c (objc_maybe_printable_name): New.
793 2010-10-22  Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
794         Andrew Pinski <pinskia@gmail.com>
796         * c-common.h (c_common_mark_addressable_vec): Declare.
797         * c-common.c (c_common_mark_addressable_vec): New function.
799 2010-10-20  Nicola Pero  <nicola.pero@meta-innovation.com>
801         * c-common.h (objc_set_method_type): Removed.
802         (objc_add_method_declaration): Added boolean argument.
803         (objc_start_method_definition): Same change.
804         (objc_build_method_signature): Same change.
805         * stub-objc.c (objc_set_method_type): Removed.
806         (objc_add_method_declaration): Added boolean argument.
807         (objc_start_method_definition): Same change.
808         (objc_build_method_signature): Same change.
810 2010-10-20  Nicola Pero  <nicola.pero@meta-innovation.com>
812         * c-common.h (finish_file): Removed.
813         (objc_write_global_declarations): New.
814         * c-opts.c (c_common_parse_file): Do not call finish_file.
815         * stub-objc.c (objc_write_global_declarations): New.
816         
817 2010-10-18  Nicola Pero  <nicola.pero@meta-innovation.com>
819         Implemented parsing @synthesize and @dynamic for
820         Objective-C/Objective-C++.
821         * c-common.h (enum rid): Add RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
822         (objc_add_synthesize_declaration): New.
823         (objc_add_dynamic_declaration): New.
824         * c-common.c (c_common_reswords): Add synthesize and dynamic.
825         * stub-objc.c (objc_add_synthesize_declaration): New.
826         (objc_add_dynamic_declaration): New.
827         
828 2010-10-18  Michael Meissner  <meissner@linux.vnet.ibm.com>
830         PR target/46041
831         * c-cppbuiltin.c (mode_has_fma): Move function here from
832         builtins.c.  Don't use the fma optab, instead just use the
833         HAVE_fma* macros, so that __FP_FAST_FMA* will be defined when
834         using -save-temps.
836 2010-10-18  Nicola Pero  <nicola.pero@meta-innovation.com>
838         Merge from 'apple/trunk' branch on FSF servers.
840         2005-11-08  Fariborz Jahanian <fjahanian@apple.com>
842         Radar 4330422
843         * c-common.h (objc_non_volatilized_type): New declaration
844         * stub-objc.c (objc_non_volatilized_type): New stub.
846 2010-10-17  Nicola Pero  <nicola.pero@meta-innovation.com>
848         Merge from 'apple/trunk' branch on FSF servers.
850         2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
852         Radar 4133425
853         * c-common.h (objc_diagnose_private_ivar): New decl.
854         * stub-objc.c (objc_diagnose_private_ivar): New stub.
856 2010-10-17  Iain Sandoe  <iains@gcc.gnu.org>
858         * c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
859         * c-common.h (enum rid): Add RID_AT_PACKAGE.
860         (objc_ivar_visibility_kind): New enum.
861         (objc_set_visibility): Adjust prototype to use visibility enum.
862         * stub-objc.c (objc_set_visibility): Adjust stub to use
863         visibility enum.
865 2010-10-14  Michael Meissner  <meissner@linux.vnet.ibm.com>
867         * c-cppbuiltin.c (builtin_define_float_constants): Emit
868         __FP_FAST_FMA, __FP_FAST_FMAF, and __FP_FAST_FMAL if the machine
869         has the appropriate fma builtins.
870         (c_cpp_builtins): Adjust call to builtin_define_float_constants.
872 2010-10-14  Iain Sandoe  <iains@gcc.gnu.org>
874         merge from FSF apple 'trunk' branch.
875         2006 Fariborz Jahanian <fjahanian@apple.com>
877         Radars 4436866, 4505126, 4506903, 4517826
878         * c-common.c (c_common_resword): Define @property and its attributes.
879         * c-common.h: Define property attribute enum entries.
880         (OBJC_IS_PATTR_KEYWORD): New.
881         (objc_property_attribute_kind): New enum.
882         Declare objc_set_property_attr (), objc_add_property_variable (),
883         objc_build_getter_call () and objc_build_setter_call ().
884         * stub-objc.c (objc_set_property_attr): New stub.
885         (objc_add_property_variable): Likewise.
886         (objc_build_getter_call): Likewise.
887         (objc_build_setter_call) Likewise.
889 2010-10-13  Iain Sandoe  <iains@gcc.gnu.org>
891         merge from FSF apple 'trunk' branch.
892         2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
894         Radar 3803157 (method attributes)
895         * c-common.c (handle_deprecated_attribute): Recognize
896         objc methods as valid declarations.
897         * c-common.h: Declare objc_method_decl ().
898         * stub-objc.c (objc_method_decl): New stub.
900 2010-10-08  Joseph Myers  <joseph@codesourcery.com>
902         * c-common.c (parse_optimize_options): Call
903         decode_cmdline_options_to_array_default_mask before
904         decode_options.  Update arguments to decode_options.
905         * c-common.h (c_common_init_options_struct): Declare.
906         * c-opts.c (c_common_init_options_struct): New.  Split out from
907         c_common_init_options.
909 2010-10-06  Nicola Pero  <nicola.pero@meta-innovation.com>
911         Implemented fast enumeration for Objective-C.
912         * c-common.h (objc_finish_foreach_loop): New.
913         * stub-objc.c (objc_finish_foreach_loop): New.
915 2010-10-05  Joseph Myers  <joseph@codesourcery.com>
917         * c-common.h (struct diagnostic_context): Don't declare here.
918         (c_common_initialize_diagnostics): Declare using
919         diagnostic_context typedef.
920         * c-opts.c (c_common_handle_option): Pass global_dc to
921         handle_generated_option.
923 2010-10-04  Joseph Myers  <joseph@codesourcery.com>
925         * c-opts.c (c_common_handle_option): Pass &global_options_set to
926         handle_generated_option.
928 2010-10-03  Ian Lance Taylor  <iant@google.com>
930         * c.opt (-fplan9-extensions): New option.
932 2010-10-03  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
934         * c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision):
935         Remove.
936         (c_cpp_builtins): Call functions from cppbuiltin.c instead
937         of duplicating code.
939 2010-09-30  Iain Sandoe  <iains@gcc.gnu.org>
941         * c-common.c: Add two new entries for @optional
942         and @required keywords.
944         merge from FSF 'apple/trunk' branch.
945         2006-01-30  Fariborz Jahanian <fjahanian@apple.com>
947         Radar 4386773
948         * c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new
949         objective-c keywords.
950         (objc_set_method_opt): New declaration.
951         * stub-objc.c (objc_set_method_opt): New stub.
952         
953 2010-09-30  Joseph Myers  <joseph@codesourcery.com>
955         * c-common.c (handle_optimize_attribute): Pass &global_options to
956         cl_optimization_save and cl_optimization_restore.
957         * c-opts.c (c_common_handle_option): Pass &global_options to
958         handle_generated_option.
959         * c-pragma.c (handle_pragma_diagnostic): Use option_flag_var.
960         (handle_pragma_pop_options, handle_pragma_reset_options): Pass
961         &global_options to cl_optimization_restore.
963 2010-09-30  Nicola Pero  <nicola.pero@meta-innovation.com>
965         * c-lex.c (c_lex_with_flags): Updated comments for CPP_AT_NAME
966         Objective-C/Objective-C++ keywords.
968 2010-09-29  Nicola Pero  <nicola.pero@meta-innovation.com>
970         Merge from 'apple/trunk' branch on FSF servers. 
971         
972         2005-10-04  Fariborz Jahanian <fjahanian@apple.com>
974         Radar 4281748
975         * c-common.h (objc_check_global_decl): New declaration.
976         * stub-objc.c (objc_check_global_decl): New stub.
978 2010-09-29  Joseph Myers  <joseph@codesourcery.com>
980         * c.opt: Don't use VarExists.
982 2010-09-29  Joseph Myers  <joseph@codesourcery.com>
984         * c-common.c (c_cpp_error): Update names of diagnostic_context
985         members.
986         * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of
987         cl_optimization members.
988         * c-opts.c (warning_as_error_callback, c_common_handle_option,
989         sanitize_cpp_opts, finish_options): Update names of cpp_options
990         members.
992 2010-09-29  Nicola Pero  <nicola.pero@meta-innovation.com>
994         * c-common.h (OBJC_IS_CXX_KEYWORD): New macro.  Updated comments.
995         (objc_is_reserved_word): Removed.
996         * c-common.c: Updated comments.
997         * c-lex.c (c_lex_with_flags): Use OBJC_IS_CXX_KEYWORD instead of
998         objc_is_reserved_word.
999         * stub-objc.c (objc_is_reserved_word): Removed.
1001 2010-09-28  Iain Sandoe  <iains@gcc.gnu.org>
1003         * c-common.h (objc_add_method_declaration): Adjust prototype to 
1004         include attributes.
1005         (objc_start_method_definition): Likewise.
1006         (objc_build_keyword_decl): Likewise.
1007         * stub-objc.c:(objc_add_method_declaration): Handle attributes.
1008         (objc_start_method_definition): Likewise.
1009         (objc_build_keyword_decl): Likewise.
1011 2010-09-28  Iain Sandoe  <iains@gcc.gnu.org>
1013         * c-common.h (objc_start_class_interface): Adjust prototype.
1014         (objc_start_category_interface): Likewise.
1015         (objc_start_protocol): Likewise.
1016         * stub-objc.c (objc_start_protocol): Adjust for extra argument.
1017         (objc_start_class_interface): Likewise.
1018         (objc_start_category_interface): Likewise.
1020 2010-09-27  Ian Lance Taylor  <iant@google.com>
1022         * c-common.c (c_common_attribute_table): Add no_split_stack.
1023         (handle_no_split_stack_attribute): New static function.
1025 2010-09-27  Nicola Pero  <nicola.pero@meta-innovation.com>
1027         Merge from 'apple/trunk' branch on FSF servers. 
1029         2005-12-15  Fariborz Jahanian <fjahanian@apple.com>
1031         Radar 4229905   
1032         * c-common.h (objc_have_common_type): New declaration.
1033         * stub-objc.c (objc_have_common_type): New stub.
1035         2005-06-22  Ziemowit Laski  <zlaski@apple.com>
1037         Radar 4154928
1038         * c-common.h (objc_common_type): New prototype.
1039         * stub-objc.c (objc_common_type): New stub.     
1041 2010-09-24  Jan Hubicka  <jh@suse.cz>
1043         * c-common.c (handle_leaf_attribute): New function.
1044         (struct attribute_spec c_common_att): Add leaf.
1046 2010-09-22  Joseph Myers  <joseph@codesourcery.com>
1048         * c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
1049         -comments-in-macros, -define-macro, -define-macro=, -dependencies,
1050         -dump, -dump=, -imacros, -imacros=, -include, -include=,
1051         -include-barrier, -include-directory, -include-directory=,
1052         -include-directory-after, -include-directory-after=,
1053         -include-prefix, -include-prefix=, -include-with-prefix,
1054         -include-with-prefix=, -include-with-prefix-after,
1055         -include-with-prefix-after=, -include-with-prefix-before,
1056         -include-with-prefix-before=, -no-integrated-cpp,
1057         -no-line-commands, -no-standard-includes, -no-warnings, -output,
1058         -output=, -pedantic, -pedantic-errors, -preprocess,
1059         -print-missing-file-dependencies, -trace-includes, -traditional,
1060         -traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
1061         -user-dependencies, -verbose, -write-dependencies,
1062         -write-user-dependencies, no-integrated-cpp, traditional): New.
1064 2010-09-21  Nicola Pero  <nicola.pero@meta-innovation.com>
1066         PR objc/23710
1067         * c-common.h (objc_start_method_definition): Return bool instead
1068         of void.
1069         * stub-objc.c (objc_start_method_definition): Return bool instead
1070         of void.
1072 2010-09-21  Nicola Pero  <nicola.pero@meta-innovation.com>
1074         PR objc/25965
1075         * c-common.h (objc_get_interface_ivars): New declaration.
1076         * stub-objc.c (objc_get_interface_ivars): New stub.
1078 2010-09-15  Ian Lance Taylor  <iant@google.com>
1080         * c-common.c (parse_optimize_options): Do not capitalize warning
1081         messages.  Remove period at end of warning message.
1083 2010-09-09  Nathan Sidwell  <nathan@codesourcery.com>
1085         * c-common.c (handle_alias_ifunc_attribute): New, broken out of ...
1086         (handle_alias_attribute): ... here.
1087         (handle_ifunc_attribute): New.
1089 2010-09-06  Mark Mitchell  <mark@codesourcery.com>
1091         * c-common.h (do_warn_double_promotion): Declare.
1092         * c-common.c (do_warn_double_promotion): Define.
1094 2010-09-05  Mark Mitchell  <mark@codesourcery.com>
1096         * c.opt (Wdouble-promotion): New.
1098 2010-09-02  Joseph Myers  <joseph@codesourcery.com>
1100         * c.opt (falt-external-templates, fhuge-objects, fvtable-gc,
1101         fvtable-thunks, fxref): Mark no longer supported in help text.
1103 2010-09-02  Joseph Myers  <joseph@codesourcery.com>
1105         * c.opt (Wimport, fall-virtual, falt-external-templates,
1106         fdefault-inline, fenum-int-equiv, fexternal-templates,
1107         fguiding-decls, fhonor-std, fhuge-objects, flabels-ok,
1108         fname-mangling-version-, fnew-abi, fnonnull-objects,
1109         foptional-diags, fsquangle, fstrict-prototype, fthis-is-variable,
1110         fvtable-gc, fvtable-thunks, fxref): Mark with Ignore and Warn as
1111         applicable.
1112         (fhandle-exceptions): Mark with Alias and Warn.
1113         * c-opts.c (c_common_handle_option): Don't handle options marked
1114         as ignored.
1116 2010-09-02  Joseph Myers  <joseph@codesourcery.com>
1118         * c.opt (Wcomments, Werror-implicit-function-declaration,
1119         ftemplate-depth-, std=c89, std=c9x, std=gnu89, std=gnu9x,
1120         std=iso9899:1990, std=iso9899:1999, std=iso9899:199x): Mark as
1121         aliases.
1122         * c-common.c (option_codes): Use OPT_Wcomment instead of
1123         OPT_Wcomments.
1124         * c-opts.c (warning_as_error_callback, c_common_handle_option):
1125         Don't handle options marked as aliases.
1127 2010-08-25  Richard Guenther  <rguenther@suse.de>
1129         * c-common.c (c_common_get_alias_set): Remove special
1130         handling for pointers.
1132 2010-08-20  Nathan Froyd  <froydnj@codesourcery.com>
1134         * c-common.c: Use FOR_EACH_VEC_ELT.
1135         * c-gimplify.c: Likewise.
1136         * c-pragma.c: Likewise.
1138 2010-08-16  Joseph Myers  <joseph@codesourcery.com>
1140         * c.opt (MDX): Change back to MD.  Mark NoDriverArg instead of
1141         RejectDriver.
1142         (MMDX): Change back to MMD.  Mark NoDriverArg instead of
1143         RejectDriver.
1144         * c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
1145         instead of OPT_MDX and OPT_MMDX.
1147 2010-08-16  Joseph Myers  <joseph@codesourcery.com>
1149         * c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.
1151 2010-08-12  Joseph Myers  <joseph@codesourcery.com>
1153         * c.opt (MD, MMD): Change to MDX and MMDX.
1154         * c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX.
1156 2010-08-11  Joseph Myers  <joseph@codesourcery.com>
1158         * c-opts.c (c_common_handle_option): Call handle_generated_option
1159         instead of handle_option.
1161 2010-08-08  Nathan Froyd  <froydnj@codesourcery.com>
1163         * c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
1164         (maybe_apply_renaming_pragma): Delete unneeded declarations.
1166 2010-08-08  Nathan Froyd  <froydnj@codesourcery.com>
1168         * c-pragma.c (pending_redefinition): Declare.  Declare a VEC of it.
1169         (pending_redefine_extname): Change type to a VEC.
1170         (add_to_renaming_pragma_list): Update for new type of
1171         pending_redefine_extname.
1172         (maybe_apply_renaming_pragma): Likewise.
1174 2010-08-04  Arnaud Charlet  <charlet@adacore.com>
1176         * c-ada-spec.c (dump_ada_template): Mark underlying instance type as
1177         visited.
1178         (dump_generic_ada_node): Code clean up. Use TREE_VISITED flag to
1179         decide whether a type has already been declared/seen.
1180         Do not go to the original type.
1181         (dump_nested_types): New parameter forward.
1182         Generate forward declaration if needed and mark type as visited.
1183         (print_ada_declaration): Call dump_nested_types if not already done.
1184         Mark types as visited.
1186 2010-08-03  Joseph Myers  <joseph@codesourcery.com>
1188         * c.opt (-print-pch-checksum): Remove option.
1189         * c-opts.c (c_common_handle_option): Don't handle
1190         OPT_print_pch_checksum.
1192 2010-07-27  Joseph Myers  <joseph@codesourcery.com>
1194         * c-common.h (c_common_handle_option): Update prototype and return
1195         value type.
1196         * c-opts.c (c_common_handle_option): Update prototype and return
1197         value type.  Update calls to handle_option and
1198         enable_warning_as_error.
1200 2010-07-27  Jakub Jelinek  <jakub@redhat.com>
1202         PR c/45079
1203         * c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
1205 2010-07-27  Joseph Myers  <joseph@codesourcery.com>
1207         * c-common.h (c_common_missing_argument): Remove.
1208         * c-opts.c (c_common_missing_argument): Remove.
1209         * c.opt (A, D, F, I, MD, MMD, MQ, MT, U, fconstant-string-class=,
1210         idirafter, imacros, include, isysroot, isystem, iquote): Add
1211         MissingArgError.
1212         * c-objc-common.h (LANG_HOOKS_MISSING_ARGUMENT): Remove.
1214 2010-07-27  Joseph Myers  <joseph@codesourcery.com>
1216         * c-common.h (c_common_option_lang_mask,
1217         c_common_initialize_diagnostics, c_common_complain_wrong_lang_p):
1218         New.
1219         (c_common_init_options): Update prototype.
1220         * c-opts.c (c_common_option_lang_mask): New.
1221         (c_common_initialize_diagnostics): Split out of
1222         c_common_init_options.
1223         (accept_all_c_family_options, c_common_complain_wrong_lang_p):
1224         New.
1225         (c_common_init_options): Update prototype.  Use decoded options in
1226         search for -lang-asm.
1228 2010-07-15  Nathan Froyd  <froydnj@codesourcery.com>
1230         * c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
1231         * c-format.c: Likewise.
1233 2010-07-08  Manuel López-Ibáñez  <manu@gcc.gnu.org>
1235         * c-common.h: Include diagnostic-core.h. Error if already
1236         included.
1237         * c-semantics.c: Do not define GCC_DIAG_STYLE here.
1239 2010-07-03  Manuel López-Ibáñez  <manu@gcc.gnu.org>
1241         * c-family/c-common.c (IN_GCC_FRONTEND): Do not undef.
1242         Do not include expr.h
1243         (vector_mode_valid_p): Move here.
1245 2010-06-21  DJ Delorie  <dj@redhat.com>
1247         * c-pragma.c (handle_pragma_diagnostic): Add push/pop,
1248         allow these pragmas anywhere.
1250 2010-06-14  Jakub Jelinek  <jakub@redhat.com>
1252         PR bootstrap/44509
1253         * c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
1254         (lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
1255         (lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
1256         ggc_strdup instead of xstrdup.
1258 2010-06-10  Jakub Jelinek  <jakub@redhat.com>
1260         * c-cppbuiltin.c: Include cpp-id-data.h.
1261         (lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
1262         (lazy_hex_fp_value): New function.
1263         (builtin_define_with_hex_fp_value): Provide definitions lazily.
1265 2010-06-30  Manuel López-Ibáñez  <manu@gcc.gnu.org>
1267         * c-gimplify.c: Do not include tree-flow.h
1269 2010-06-29  Joern Rennecke  <joern.rennecke@embecosm.com>
1271         PR other/44034
1272         * c-common.c: Rename targetm member:
1273         targetm.enum_va_list -> targetm.enum_va_list_p
1275 2010-06-28  Anatoly Sokolov  <aesok@post.ru>
1277         * c-common.c (shorten_compare): Adjust call to force_fit_type_double.
1279 2010-06-28  Steven Bosscher  <steven@gcc.gnu.org>
1281         * c-cppbuiltin.c: Do not include except.h.
1283 2010-06-24  Andi Kleen  <ak@linux.intel.com>
1285         * c-common.c (warn_for_omitted_condop): New.
1286         * c-common.h (warn_for_omitted_condop): Add prototype.
1288 2010-06-21  Joseph Myers  <joseph@codesourcery.com>
1290         * c.opt (lang-objc): Remove.
1291         * c-opts.c (c_common_handle_option): Don't handle OPT_lang_objc.
1293 2010-06-21  Joern Rennecke  <joern.rennecke@embecosm.com>
1295         * c-opts.c: Include "tm_p.h".
1297 2010-06-20  Joseph Myers  <joseph@codesourcery.com>
1299         * c-common.c (parse_optimize_options): Update call to
1300         decode_options.
1302 2010-06-18  Nathan Froyd  <froydnj@codesourcery.com>
1304         * c-common.c (record_types_used_by_current_var_decl): Adjust for
1305         new type of types_used_by_cur_var_decl.
1307 2010-06-17  Joern Rennecke  <joern.rennecke@embecosm.com>
1309         PR bootstrap/44512
1310         * c-cppbuiltin.c (builtin_define_with_hex_fp_value): Add cast
1311         for C++ standard compliance.
1313 2010-06-16  Jason Merrill  <jason@redhat.com>
1315         * c.opt: Add -Wnoexcept.
1317 2010-06-16  Richard Guenther  <rguenther@suse.de>
1319         PR c/44555
1320         * c-common.c (c_common_truthvalue_conversion): Remove
1321         premature and wrong optimization concering ADDR_EXPRs.
1323 2010-06-15  Arnaud Charlet  <charlet@adacore.com>
1325         * c-ada-spec.c (dump_sloc): Remove column info.
1326         (is_simple_enum): New function.
1327         (dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada
1328         enum types when relevant.
1330 2010-06-11  Manuel López-Ibáñez  <manu@gcc.gnu.org>
1332         * c-common.c (conversion_warning): Warn at expression
1333         location.
1335 2010-06-10  Joseph Myers  <joseph@codesourcery.com>
1337         * c-opts.c (c_common_handle_option): Don't handle
1338         OPT_fshow_column.
1340 2010-06-08  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
1342         * c-pragma.c (push_alignment): Use typed GC allocation.
1343         (handle_pragma_push_options): Likewise.
1345         * c-common.c (parse_optimize_options): Likewise.
1347         * c-common.h (struct sorted_fields_type): Add variable_size GTY
1348         option.
1350 2010-06-07  Joseph Myers  <joseph@codesourcery.com>
1352         * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
1353         flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
1354         flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
1355         flag_signed_bitfields, warn_strict_null_sentinel,
1356         flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
1357         flag_gen_declaration, flag_no_gnu_keywords,
1358         flag_implement_inlines, flag_implicit_templates,
1359         flag_implicit_inline_templates, flag_optional_diags,
1360         flag_elide_constructors, flag_default_inline, flag_rtti,
1361         flag_conserve_space, flag_access_control, flag_check_new,
1362         flag_new_for_scope, flag_weak, flag_working_directory,
1363         flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
1364         flag_enforce_eh_specs, flag_threadsafe_statics,
1365         flag_pretty_templates): Remove.
1366         * c-common.h (flag_preprocess_only, flag_nil_receivers,
1367         flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
1368         flag_replace_objc_classes, flag_undef, flag_no_builtin,
1369         flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
1370         flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
1371         flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
1372         flag_no_gnu_keywords, flag_implement_inlines,
1373         flag_implicit_templates, flag_implicit_inline_templates,
1374         flag_optional_diags, flag_elide_constructors, flag_default_inline,
1375         flag_rtti, flag_conserve_space, flag_access_control,
1376         flag_check_new, flag_new_for_scope, flag_weak,
1377         flag_working_directory, flag_use_cxa_atexit,
1378         flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
1379         flag_threadsafe_statics, flag_pretty_templates,
1380         warn_strict_null_sentinel): Remove.
1381         * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
1382         fbuiltin, fcheck-new, fconserve-space, felide-constructors,
1383         fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
1384         fimplicit-inline-templates, fimplicit-templates,
1385         flax-vector-conversions, fms-extensions, fnil-receivers,
1386         fnonansi-builtins, fpretty-templates, freplace-objc-classes,
1387         frtti, fshort-double, fshort-enums, fshort-wchar,
1388         fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
1389         funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
1390         fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
1391         gen-decls, undef): Use Var.
1392         (fdefault-inline, foptional-diags): Document as doing nothing.
1393         * c-opts.c (c_common_handle_option): Remove cases for options now
1394         using Var.  Mark ignored options as such.
1396 2010-06-05  Steven Bosscher  <steven@gcc.gnu.org>
1398         * c-common.c: Moved to here from parent directory. 
1399         * c-common.def: Likewise.
1400         * c-common.h: Likewise.
1401         * c-cppbuiltin.c: Likewise.
1402         * c-dump.c: Likewise.
1403         * c-format.c: Likewise.
1404         * c-format.h : Likewise.
1405         * c-gimplify.c: Likewise.
1406         * c-lex.c: Likewise.
1407         * c-omp.c: Likewise.
1408         * c.opt: Likewise.
1409         * c-opts.c: Likewise.
1410         * c-pch.c: Likewise.
1411         * c-ppoutput.c: Likewise.
1412         * c-pragma.c: Likewise.
1413         * c-pragma.h: Likewise.
1414         * c-pretty-print.c: Likewise.
1415         * c-pretty-print.h: Likewise.
1416         * c-semantics.c: Likewise.
1417         * stub-objc.c: Likewise.
1419         * c-common.c: Include gt-c-family-c-common.h.
1420         * c-pragma.c: Include gt-c-family-c-pragma.h.
1422 Copyright (C) 2010, 2011 Free Software Foundation, Inc.
1424 Copying and distribution of this file, with or without modification,
1425 are permitted in any medium without royalty provided the copyright
1426 notice and this notice are preserved.