1 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
3 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
6 2011-05-25 Jakub Jelinek <jakub@redhat.com>
8 * c-common.c (def_fn_type): Remove extra va_end.
10 2011-05-23 Jason Merrill <jason@redhat.com>
13 * c-common.c (c_common_get_narrower): New.
14 (shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.
16 2011-05-23 Nathan Froyd <froydnj@codesourcery.com>
18 * c-common.h (check_function_arguments): Tweak prototype of
19 check_function_arguments.
20 * c-common.c (check_function_arguments): Likewise. Adjust
21 calls to check_function_nonnull, check_function_format, and
22 check_function_sentinel.
23 (check_function_sentinel): Take a FUNCTION_TYPE rather than
24 separate attributes and typelist arguments. Use
25 FOREACH_FUNCTION_ARGS to iterate over argument types.
27 2011-05-15 Paolo Carlini <paolo.carlini@oracle.com>
29 * c-common.c (c_common_reswords): Reorder.
30 * c-common.h (rid): Likewise.
32 2011-05-10 Nathan Froyd <froydnj@codesourcery.com>
34 * c-common.c (def_fn_type): Don't call build_function_type, call
35 build_function_type_array or build_varargs_function_type_array
37 (c_common_nodes_and_builtins): Likewise.
39 2011-05-05 Nathan Froyd <froydnj@codesourcery.com>
41 * c-common.c (c_add_case_label): Omit the loc argument to
43 * c-common.h (build_case_label): Remove.
44 * c-semantics.c (build_case_label): Remove.
46 2011-05-05 Joseph Myers <joseph@codesourcery.com>
48 * c-objc.h (objc_start_method_definition): Update prototype.
49 * stub-objc.c (objc_start_method_definition): Add extra parameter.
51 2011-05-04 Nathan Froyd <froydnj@codesourcery.com>
53 * c-common.c (check_main_parameter_types): Reindent. Don't use
54 TYPE_ARG_TYPES directly.
55 (handle_nonnull_attribute): Likewise.
56 (sync_resolve_params): Likewise.
57 * c-format.c (handle_format_arg_attribute): Likewise. Adjust call
58 to check_format_string.
59 (handle_format_attribute): Likewise.
60 (check_format_string): Take a function type to examine instead of
61 a type list. Use a function_arg_iterator to step through argument
64 2011-05-04 Richard Guenther <rguenther@suse.de>
66 * c-common.c (fix_string_type): Use size_int for index type bounds.
67 (start_fname_decls): Do not pass NULL to build_int_cst.
68 (c_init_attributes): Likewise.
69 * c-lex.c (c_lex_with_flags): Likewise.
71 2011-04-27 Jason Merrill <jason@redhat.com>
73 * c-common.c (make_tree_vector_from_list): New.
74 * c-common.h: Declare it.
76 2011-04-26 Richard Guenther <rguenther@suse.de>
79 * c-ppoutput.c (maybe_print_line): Always optimize newlines
80 for output size with -P.
82 2011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
84 * c-common.c (struct c_common_resword): Add __underlying_type.
85 * c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
87 2011-04-20 Jim Meyering <meyering@redhat.com>
89 * c-format.c (init_dollar_format_checking): Remove useless
92 2011-04-15 Nicola Pero <nicola.pero@meta-innovation.com>
94 * c-objc.h (objc_get_interface_ivars): Removed.
95 (objc_detect_field_duplicates): New.
96 * stub-objc.c: Likewise.
98 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
100 * stub-objc.c (objc_declare_protocols): Renamed to
101 objc_declare_protocol.
102 * c-objc.h: Likewise.
104 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
106 * stub-objc.c (objc_declare_class): Updated argument name.
108 2011-04-12 Nathan Froyd <froydnj@codesourcery.com>
110 * c-common.h (c_common_init_ts): Declare.
111 * c-common.c (c_common_init_ts): Define.
113 2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
115 * c-objc.h (objc_build_message_expr): Updated prototype.
116 * stub-objc.c (objc_build_message_expr): Likewise.
118 2011-04-12 Martin Jambor <mjambor@suse.cz>
120 * c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
123 2011-04-11 Richard Guenther <rguenther@suse.de>
125 * c-common.c (complete_array_type): Build a range type of
128 2011-04-08 Nathan Froyd <froydnj@codesourcery.com>
130 * c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
131 (handle_type_generic_attribute): Likewise.
133 2011-04-07 Jason Merrill <jason@redhat.com>
136 * c-common.c (c_common_truthvalue_conversion): Don't ignore
137 conversion from C++0x scoped enum.
139 2011-04-06 Joseph Myers <joseph@codesourcery.com>
141 * c-target-def.h: New file.
142 * c-target.def: New file.
143 * c-target.h: New file.
144 * c-common.c (targetcm): Don't define here.
145 * c-common.h (default_handle_c_option): Declare.
146 * c-format.c: Include c-target.h instead of target.h.
147 * c-opts.c: Include c-target.h instead of target.h. Explicitly
149 (default_handle_c_option): Move from targhooks.c.
151 2011-03-29 Jakub Jelinek <jakub@redhat.com>
153 PR preprocessor/48248
154 * c-ppoutput.c (print): Add src_file field.
155 (init_pp_output): Initialize it.
156 (maybe_print_line): Don't optimize by adding up to 8 newlines
157 if map->to_file and print.src_file are different file.
158 (print_line): Update print.src_file.
160 2011-03-25 Kai Tietz <ktietz@redhat.com>
162 * c-ada-spec.c (compare_comment): Use filename_cmp
163 instead of strcmp for filename.
165 2011-03-25 Jeff Law <law@redhat.com>
167 * c-family/c-common.c (def_fn_type): Add missing va_end.
169 2011-03-25 Jason Merrill <jason@redhat.com>
171 * c.opt: Add -std=c++03.
173 2011-03-22 Eric Botcazou <ebotcazou@adacore.com>
175 * c-ada-spec.c (dump_ada_template): Skip non-class instances.
180 * c-pretty-print.c (pp_c_specifier_qualifier_list):
181 Display allowed attributes for function pointer types.
182 (pp_c_attributes_display): New function to display
183 attributes having affects_type_identity flag set to true.
184 * c-pretty-print.h (pp_c_attributes_display): New prototype.
186 * c-common.c (c_common_attribute_table):
188 (c_common_format_attribute_table): Likewise.
190 2011-03-18 Jason Merrill <jason@redhat.com>
192 * c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
193 * c-common.h: Don't declare it here.
194 * c-common.c: Or define it here.
195 * c-opts.c (c_common_handle_option): Or set it here.
198 * c-common.c (handle_transparent_union_attribute): Don't
199 make a duplicate type in C++.
201 2011-03-15 Jason Merrill <jason@redhat.com>
203 * c-common.c (max_constexpr_depth): New.
204 * c-common.h: Declare it.
205 * c-opts.c (c_common_handle_option): Set it.
206 * c.opt (fconstexpr-depth): New option.
208 2011-03-11 Jason Merrill <jason@redhat.com>
210 * c-common.c (attribute_takes_identifier_p): Add missing const.
213 * c-common.c (attribute_takes_identifier_p): Assume that an
214 unknown attribute takes an identifier.
216 2011-03-07 Nathan Froyd <froydnj@codesourcery.com>
219 * c-common.c (c_type_hash): Call list_length instead of iterating
220 through DECL_CHAIN. Rename 'i' to 'n_elements'.
222 2011-02-19 Jakub Jelinek <jakub@redhat.com>
225 * c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
227 2011-02-17 Iain Sandoe <iains@gcc.gnu.org>
229 * c.opt (fobjc-abi-version=) New.
230 (fobjc-nilcheck): New.
232 2011-02-03 Nathan Froyd <froydnj@codesourcery.com>
235 * c-common.h (keyword_is_decl_specifier): Declare.
236 * c-common.c (keyword_is_decl_specifier): Define.
237 (keyword_is_function_specifier): New function.
239 2011-01-26 Jakub Jelinek <jakub@redhat.com>
242 * c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
243 EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
246 2011-01-26 Arnaud Charlet <charlet@adacore.com>
248 * c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type.
250 2011-01-26 Jakub Jelinek <jakub@redhat.com>
253 * c-opts.c (c_common_post_options): Call c_common_no_more_pch
254 after init_c_lex if pch_file is set.
256 2011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
259 * c.opt (-fkeep-inline-dllexport): New switch.
261 2011-01-12 Richard Guenther <rguenther@suse.de>
264 * c-common.c (handle_weak_attribute): Warn instead of error
265 on declaring an inline function weak.
267 2011-01-05 Tom Tromey <tromey@redhat.com>
269 * c-common.h (lvalue_error): Update.
270 * c-common.c (lvalue_error): Add 'loc' argument. Call error_at,
273 2010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
276 * c-objc.h (objc_finish_message_expr): Added argument to
279 2010-12-22 Nathan Froyd <froydnj@codesourcery.com>
281 * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute):
284 2010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
286 * c-objc.h (objc_maybe_warn_exceptions): New.
287 * stub-objc.c (objc_maybe_warn_exceptions): New.
289 2010-12-10 Nathan Froyd <froydnj@codesourcery.com>
291 * c-common.h (readonly_error): Declare.
292 * c-common.c (readonly_error): Define.
294 2010-12-09 Nathan Froyd <froydnj@codesourcery.com>
296 * c-common.h (invalid_indirection_error): Declare.
297 * c-common.c (invalid_indirection_error): Define.
299 2010-12-03 Richard Guenther <rguenther@suse.de>
302 * c-pretty-print.c (pp_c_postfix_expression): Handle MEM_REF.
303 (pp_c_unary_expression): Likewise.
304 (pp_c_expression): Likewise.
306 2010-11-30 Nicola Pero <nicola.pero@meta-innovation.com>
308 * c-common.h (objc_finish_function): New.
309 (objc_non_volatilized_type): Removed.
310 (objc_type_quals_match): Removed.
311 * stub-objc.c (objc_finish_function): New.
312 (objc_non_volatilized_type): Removed.
313 (objc_type_quals_match): Removed.
315 2010-11-30 Joseph Myers <joseph@codesourcery.com>
317 * c-common.h (parse_optimize_options): Declare.
318 * c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c,
319 c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h.
321 2010-11-29 Joseph Myers <joseph@codesourcery.com>
323 * c-opts.c (check_deps_environment_vars): Use getenv instead of
325 * c-pch.c (O_BINARY): Don't define here.
326 * c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
328 2010-11-25 Joseph Myers <joseph@codesourcery.com>
330 * c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
331 targetm.except_unwind_info.
333 2010-11-23 Joseph Myers <joseph@codesourcery.com>
335 * c-opts.c (c_common_handle_option): Pass location to
336 set_struct_debug_option.
338 2010-11-23 Joseph Myers <joseph@codesourcery.com>
340 * c-common.c (visibility_options): Move from ../opts.c.
341 * c-common.h (struct visibility_flags, visibility_options):
343 * c-opts.c (finish_options): Rename to c_finish_options.
344 (c_common_init): Update call to finish_options.
346 2010-11-22 Nicola Pero <nicola.pero@meta-innovation.com>
349 * c-lex.c (lex_string): Check that each string in an Objective-C
350 string concat sequence starts with either one or zero '@', and
351 that there are no spurious '@' signs at the end.
353 2010-11-20 Joseph Myers <joseph@codesourcery.com>
355 * c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
356 HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
357 HANDLE_PRAGMA_VISIBILITY.
358 * c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
359 HANDLE_PRAGMA_VISIBILITY): Don't define.
360 (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.
362 2010-11-20 Nathan Froyd <froydnj@codesourcery.com>
367 * c-common.h (keyword_begins_type_specifier): Declare.
368 (keyword_is_storage_class_specifier): Declare.
369 (keyword_is_type_qualifier): Declare.
370 * c-common.c (keyword_begins_type_specifier): New function.
371 (keyword_is_storage_class_specifier): New function.
372 (keyword_is_type_qualifier): Declare.
374 2010-11-19 Joseph Myers <joseph@codesourcery.com>
377 * c-common.c (in_late_binary_op): Define.
378 (c_common_truthvalue_conversion): Check in_late_binary_op before
380 * c-common.h (in_late_binary_op): Declare.
382 2010-11-19 Joseph Myers <joseph@codesourcery.com>
384 * c-opts.c (c_common_handle_option): Update calls to
385 set_struct_debug_option.
387 2010-11-19 Nicola Pero <nicola.pero@meta-innovation.com>
389 * c-common.h (objc_declare_protocols): Added additional argument.
390 * stub-objc.c (objc_declare_protocol): Same change.
392 2010-11-18 Nathan Froyd <froydnj@codesourcery.com>
395 * c-common.h (build_real_imag_expr): Declare.
396 * c-semantics.c (build_real_imag_expr): Define.
398 2010-11-17 Joseph Myers <joseph@codesourcery.com>
400 * c-opts.c (c_common_parse_file): Take no arguments.
401 * c-common.h (c_common_parse_file): Update prototype.
403 2010-11-16 Jakub Jelinek <jakub@redhat.com>
406 * c-common.c (warning_candidate_p): Don't track non-const calls
409 2010-11-15 Ian Lance Taylor <iant@google.com>
411 * c-lex.c (init_c_lex): Set macro debug callbacks if
412 flag_dump_go_spec is set.
414 2010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
416 * c-common.h (objc_build_incr_expr_for_property_ref): New.
417 * stub-objc.c (objc_build_incr_expr_for_property_ref): New.
419 2010-11-15 Nathan Froyd <froydnj@codesourcery.com>
421 PR preprocessor/45038
422 * c-cppbuiltin.c (c_cpp_builtins): Use different format for C++
425 2010-11-12 Joseph Myers <joseph@codesourcery.com>
427 * c-common.h (c_family_lang_mask): Declare.
428 * c-opts.c (c_family_lang_mask): Make extern.
429 * c-pragma.c (handle_pragma_diagnostic): Use
430 control_warning_option.
432 2010-11-12 Joseph Myers <joseph@codesourcery.com>
434 * c-common.c (parse_optimize_options): Update call to
436 * c-common.h (c_common_handle_option): Update prototype.
437 * c-opts.c (c_common_handle_option): Take location_t parameter and
438 pass it to other functions.
440 2010-11-11 Joseph Myers <joseph@codesourcery.com>
442 * c-opts.c (warning_as_error_callback): Remove.
443 (c_common_initialize_diagnostics): Don't call
444 register_warning_as_error_callback.
445 (c_common_handle_option): Handle -Werror=normalized= here.
447 2010-11-10 Joseph Myers <joseph@codesourcery.com>
449 * c-common.c (handle_mode_attribute): Use %' and word "signedness"
451 * c-opts.c (c_common_parse_file): Start diagnostics with lowercase
453 * c-pragma.c (handle_pragma_target, handle_pragma_optimize):
454 Remove trailing '.' from diagnostics.
455 * c.opt (Wwrite-strings_: Avoid '`' in help text.
457 2010-11-10 Joseph Myers <joseph@codesourcery.com>
459 * c-common.c (parse_optimize_options): Pass global_dc to
461 * c-opts.c (c_common_handle_option): Pass &global_options to
462 set_Wstrict_aliasing.
463 * c.opt (v): Don't mark Common or document here.
465 2010-11-06 Iain Sandoe <iains@gcc.gnu.org>
468 * c-format.c (format_type): New type gcc_objc_string_format_type.
469 (valid_stringptr_type_p): New.
470 (handle_format_arg_attribute): Use valid_stringptr_type_p ().
471 (check_format_string): Pass expected type, use
472 valid_stringptr_type_p (), check that the format string types are
473 consistent with the format specification.
474 (decode_format_attr): Warn if NSString is used outside objective-c.
475 (format_types_orig): Add NSString.
478 (check_format_arg): Handle format strings requiring an external parser.
479 first_target_format_type: New variable.
480 (handle_format_attribute): Set up first_target_format_type, pass the
481 expected format arg string type to check_format_string().
482 * c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL): New flag.
483 * stub-objc.c (objc_string_ref_type_p): New.
484 (objc_check_format_arg): New.
486 2010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
488 Fixed using the Objective-C 2.0 dot-syntax with class names.
489 * c-common.h (objc_build_class_component_ref): New.
490 * stub-objc.c (objc_build_class_component_ref): New.
492 2010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
494 * c.opt (Wproperty-assign-default): New option.
496 2010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
498 Implemented -fobjc-std=objc1 flag.
499 * c.opt (fobjc-std=objc1): New option.
501 2010-11-01 Nicola Pero <nicola.pero@meta-innovation.com>
503 Implemented format and noreturn attributes for Objective-C methods.
504 * c-common.c (handle_noreturn_attribute): Recognize 'noreturn'
505 attribute for Objective-C methods.
507 2010-10-31 Jason Merrill <jason@redhat.com>
509 * c-common.c (conversion_warning, warn_for_collisions_1): Use
512 2010-10-30 Nicola Pero <nicola.pero@meta-innovation.com>
514 Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
515 * c-common.h (enum rid): Removed RID_COPIES and RID_IVAR.
516 (objc_add_property_declaration): Removed arguments for copies and
518 (objc_build_getter_call): Renamed to
519 objc_maybe_build_component_ref.
520 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
521 (objc_is_property_ref): New.
522 * c-common.c (c_common_reswords): Removed copies and ivar.
523 * stub-objc.c (objc_add_property_declaration): Removed arguments
525 (objc_build_getter_call): Renamed to
526 objc_maybe_build_component_ref.
527 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
528 (objc_is_property_ref): New.
530 2010-10-29 Arnaud Charlet <charlet@adacore.com>
531 Matthew Gingell <gingell@adacore.com>
533 * c-ada-spec.c (separate_class_package): New function.
534 (pp_ada_tree_identifier): Prefix references to C++ classes with the
535 name of their enclosing package.
536 (print_ada_declaration): Use separate_class_package.
538 2010-10-27 Jason Merrill <jason@redhat.com>
540 * c-common.c (c_common_reswords): Add __is_literal_type.
541 * c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
543 * c-common.c (check_case_value): Remove special C++ code.
545 2010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
547 * c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN,
548 RID_RETAIN, RID_COPY and RID_NONATOMIC. Updated RID_FIRST_PATTR
550 (objc_add_property_declaration): Added additional arguments.
551 (objc_property_attribute_kind): Removed.
552 (objc_set_property_attr): Removed.
553 * c-common.c (c_common_reswords): Added readwrite, assign, retain,
555 * stub-objc.c (objc_add_property_declaration): Added additional
557 (objc_set_property_attr): Removed.
559 2010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
561 * c-common.h (objc_add_property_variable): Renamed to
562 objc_add_property_declaration. Added location argument.
563 * stub-objc.c (objc_add_property_variable): Same change.
565 2010-10-23 Nicola Pero <nicola.pero@meta-innovation.com>
567 * c-common.h (objc_maybe_printable_name): New.
568 * stub-objc.c (objc_maybe_printable_name): New.
570 2010-10-22 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
571 Andrew Pinski <pinskia@gmail.com>
573 * c-common.h (c_common_mark_addressable_vec): Declare.
574 * c-common.c (c_common_mark_addressable_vec): New function.
576 2010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
578 * c-common.h (objc_set_method_type): Removed.
579 (objc_add_method_declaration): Added boolean argument.
580 (objc_start_method_definition): Same change.
581 (objc_build_method_signature): Same change.
582 * stub-objc.c (objc_set_method_type): Removed.
583 (objc_add_method_declaration): Added boolean argument.
584 (objc_start_method_definition): Same change.
585 (objc_build_method_signature): Same change.
587 2010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
589 * c-common.h (finish_file): Removed.
590 (objc_write_global_declarations): New.
591 * c-opts.c (c_common_parse_file): Do not call finish_file.
592 * stub-objc.c (objc_write_global_declarations): New.
594 2010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
596 Implemented parsing @synthesize and @dynamic for
597 Objective-C/Objective-C++.
598 * c-common.h (enum rid): Add RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
599 (objc_add_synthesize_declaration): New.
600 (objc_add_dynamic_declaration): New.
601 * c-common.c (c_common_reswords): Add synthesize and dynamic.
602 * stub-objc.c (objc_add_synthesize_declaration): New.
603 (objc_add_dynamic_declaration): New.
605 2010-10-18 Michael Meissner <meissner@linux.vnet.ibm.com>
608 * c-cppbuiltin.c (mode_has_fma): Move function here from
609 builtins.c. Don't use the fma optab, instead just use the
610 HAVE_fma* macros, so that __FP_FAST_FMA* will be defined when
613 2010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
615 Merge from 'apple/trunk' branch on FSF servers.
617 2005-11-08 Fariborz Jahanian <fjahanian@apple.com>
620 * c-common.h (objc_non_volatilized_type): New declaration
621 * stub-objc.c (objc_non_volatilized_type): New stub.
623 2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
625 Merge from 'apple/trunk' branch on FSF servers.
627 2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
630 * c-common.h (objc_diagnose_private_ivar): New decl.
631 * stub-objc.c (objc_diagnose_private_ivar): New stub.
633 2010-10-17 Iain Sandoe <iains@gcc.gnu.org>
635 * c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
636 * c-common.h (enum rid): Add RID_AT_PACKAGE.
637 (objc_ivar_visibility_kind): New enum.
638 (objc_set_visibility): Adjust prototype to use visibility enum.
639 * stub-objc.c (objc_set_visibility): Adjust stub to use
642 2010-10-14 Michael Meissner <meissner@linux.vnet.ibm.com>
644 * c-cppbuiltin.c (builtin_define_float_constants): Emit
645 __FP_FAST_FMA, __FP_FAST_FMAF, and __FP_FAST_FMAL if the machine
646 has the appropriate fma builtins.
647 (c_cpp_builtins): Adjust call to builtin_define_float_constants.
649 2010-10-14 Iain Sandoe <iains@gcc.gnu.org>
651 merge from FSF apple 'trunk' branch.
652 2006 Fariborz Jahanian <fjahanian@apple.com>
654 Radars 4436866, 4505126, 4506903, 4517826
655 * c-common.c (c_common_resword): Define @property and its attributes.
656 * c-common.h: Define property attribute enum entries.
657 (OBJC_IS_PATTR_KEYWORD): New.
658 (objc_property_attribute_kind): New enum.
659 Declare objc_set_property_attr (), objc_add_property_variable (),
660 objc_build_getter_call () and objc_build_setter_call ().
661 * stub-objc.c (objc_set_property_attr): New stub.
662 (objc_add_property_variable): Likewise.
663 (objc_build_getter_call): Likewise.
664 (objc_build_setter_call) Likewise.
666 2010-10-13 Iain Sandoe <iains@gcc.gnu.org>
668 merge from FSF apple 'trunk' branch.
669 2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
671 Radar 3803157 (method attributes)
672 * c-common.c (handle_deprecated_attribute): Recognize
673 objc methods as valid declarations.
674 * c-common.h: Declare objc_method_decl ().
675 * stub-objc.c (objc_method_decl): New stub.
677 2010-10-08 Joseph Myers <joseph@codesourcery.com>
679 * c-common.c (parse_optimize_options): Call
680 decode_cmdline_options_to_array_default_mask before
681 decode_options. Update arguments to decode_options.
682 * c-common.h (c_common_init_options_struct): Declare.
683 * c-opts.c (c_common_init_options_struct): New. Split out from
684 c_common_init_options.
686 2010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
688 Implemented fast enumeration for Objective-C.
689 * c-common.h (objc_finish_foreach_loop): New.
690 * stub-objc.c (objc_finish_foreach_loop): New.
692 2010-10-05 Joseph Myers <joseph@codesourcery.com>
694 * c-common.h (struct diagnostic_context): Don't declare here.
695 (c_common_initialize_diagnostics): Declare using
696 diagnostic_context typedef.
697 * c-opts.c (c_common_handle_option): Pass global_dc to
698 handle_generated_option.
700 2010-10-04 Joseph Myers <joseph@codesourcery.com>
702 * c-opts.c (c_common_handle_option): Pass &global_options_set to
703 handle_generated_option.
705 2010-10-03 Ian Lance Taylor <iant@google.com>
707 * c.opt (-fplan9-extensions): New option.
709 2010-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
711 * c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision):
713 (c_cpp_builtins): Call functions from cppbuiltin.c instead
716 2010-09-30 Iain Sandoe <iains@gcc.gnu.org>
718 * c-common.c: Add two new entries for @optional
719 and @required keywords.
721 merge from FSF 'apple/trunk' branch.
722 2006-01-30 Fariborz Jahanian <fjahanian@apple.com>
725 * c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new
726 objective-c keywords.
727 (objc_set_method_opt): New declaration.
728 * stub-objc.c (objc_set_method_opt): New stub.
730 2010-09-30 Joseph Myers <joseph@codesourcery.com>
732 * c-common.c (handle_optimize_attribute): Pass &global_options to
733 cl_optimization_save and cl_optimization_restore.
734 * c-opts.c (c_common_handle_option): Pass &global_options to
735 handle_generated_option.
736 * c-pragma.c (handle_pragma_diagnostic): Use option_flag_var.
737 (handle_pragma_pop_options, handle_pragma_reset_options): Pass
738 &global_options to cl_optimization_restore.
740 2010-09-30 Nicola Pero <nicola.pero@meta-innovation.com>
742 * c-lex.c (c_lex_with_flags): Updated comments for CPP_AT_NAME
743 Objective-C/Objective-C++ keywords.
745 2010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
747 Merge from 'apple/trunk' branch on FSF servers.
749 2005-10-04 Fariborz Jahanian <fjahanian@apple.com>
752 * c-common.h (objc_check_global_decl): New declaration.
753 * stub-objc.c (objc_check_global_decl): New stub.
755 2010-09-29 Joseph Myers <joseph@codesourcery.com>
757 * c.opt: Don't use VarExists.
759 2010-09-29 Joseph Myers <joseph@codesourcery.com>
761 * c-common.c (c_cpp_error): Update names of diagnostic_context
763 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of
764 cl_optimization members.
765 * c-opts.c (warning_as_error_callback, c_common_handle_option,
766 sanitize_cpp_opts, finish_options): Update names of cpp_options
769 2010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
771 * c-common.h (OBJC_IS_CXX_KEYWORD): New macro. Updated comments.
772 (objc_is_reserved_word): Removed.
773 * c-common.c: Updated comments.
774 * c-lex.c (c_lex_with_flags): Use OBJC_IS_CXX_KEYWORD instead of
775 objc_is_reserved_word.
776 * stub-objc.c (objc_is_reserved_word): Removed.
778 2010-09-28 Iain Sandoe <iains@gcc.gnu.org>
780 * c-common.h (objc_add_method_declaration): Adjust prototype to
782 (objc_start_method_definition): Likewise.
783 (objc_build_keyword_decl): Likewise.
784 * stub-objc.c:(objc_add_method_declaration): Handle attributes.
785 (objc_start_method_definition): Likewise.
786 (objc_build_keyword_decl): Likewise.
788 2010-09-28 Iain Sandoe <iains@gcc.gnu.org>
790 * c-common.h (objc_start_class_interface): Adjust prototype.
791 (objc_start_category_interface): Likewise.
792 (objc_start_protocol): Likewise.
793 * stub-objc.c (objc_start_protocol): Adjust for extra argument.
794 (objc_start_class_interface): Likewise.
795 (objc_start_category_interface): Likewise.
797 2010-09-27 Ian Lance Taylor <iant@google.com>
799 * c-common.c (c_common_attribute_table): Add no_split_stack.
800 (handle_no_split_stack_attribute): New static function.
802 2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
804 Merge from 'apple/trunk' branch on FSF servers.
806 2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
809 * c-common.h (objc_have_common_type): New declaration.
810 * stub-objc.c (objc_have_common_type): New stub.
812 2005-06-22 Ziemowit Laski <zlaski@apple.com>
815 * c-common.h (objc_common_type): New prototype.
816 * stub-objc.c (objc_common_type): New stub.
818 2010-09-24 Jan Hubicka <jh@suse.cz>
820 * c-common.c (handle_leaf_attribute): New function.
821 (struct attribute_spec c_common_att): Add leaf.
823 2010-09-22 Joseph Myers <joseph@codesourcery.com>
825 * c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
826 -comments-in-macros, -define-macro, -define-macro=, -dependencies,
827 -dump, -dump=, -imacros, -imacros=, -include, -include=,
828 -include-barrier, -include-directory, -include-directory=,
829 -include-directory-after, -include-directory-after=,
830 -include-prefix, -include-prefix=, -include-with-prefix,
831 -include-with-prefix=, -include-with-prefix-after,
832 -include-with-prefix-after=, -include-with-prefix-before,
833 -include-with-prefix-before=, -no-integrated-cpp,
834 -no-line-commands, -no-standard-includes, -no-warnings, -output,
835 -output=, -pedantic, -pedantic-errors, -preprocess,
836 -print-missing-file-dependencies, -trace-includes, -traditional,
837 -traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
838 -user-dependencies, -verbose, -write-dependencies,
839 -write-user-dependencies, no-integrated-cpp, traditional): New.
841 2010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
844 * c-common.h (objc_start_method_definition): Return bool instead
846 * stub-objc.c (objc_start_method_definition): Return bool instead
849 2010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
852 * c-common.h (objc_get_interface_ivars): New declaration.
853 * stub-objc.c (objc_get_interface_ivars): New stub.
855 2010-09-15 Ian Lance Taylor <iant@google.com>
857 * c-common.c (parse_optimize_options): Do not capitalize warning
858 messages. Remove period at end of warning message.
860 2010-09-09 Nathan Sidwell <nathan@codesourcery.com>
862 * c-common.c (handle_alias_ifunc_attribute): New, broken out of ...
863 (handle_alias_attribute): ... here.
864 (handle_ifunc_attribute): New.
866 2010-09-06 Mark Mitchell <mark@codesourcery.com>
868 * c-common.h (do_warn_double_promotion): Declare.
869 * c-common.c (do_warn_double_promotion): Define.
871 2010-09-05 Mark Mitchell <mark@codesourcery.com>
873 * c.opt (Wdouble-promotion): New.
875 2010-09-02 Joseph Myers <joseph@codesourcery.com>
877 * c.opt (falt-external-templates, fhuge-objects, fvtable-gc,
878 fvtable-thunks, fxref): Mark no longer supported in help text.
880 2010-09-02 Joseph Myers <joseph@codesourcery.com>
882 * c.opt (Wimport, fall-virtual, falt-external-templates,
883 fdefault-inline, fenum-int-equiv, fexternal-templates,
884 fguiding-decls, fhonor-std, fhuge-objects, flabels-ok,
885 fname-mangling-version-, fnew-abi, fnonnull-objects,
886 foptional-diags, fsquangle, fstrict-prototype, fthis-is-variable,
887 fvtable-gc, fvtable-thunks, fxref): Mark with Ignore and Warn as
889 (fhandle-exceptions): Mark with Alias and Warn.
890 * c-opts.c (c_common_handle_option): Don't handle options marked
893 2010-09-02 Joseph Myers <joseph@codesourcery.com>
895 * c.opt (Wcomments, Werror-implicit-function-declaration,
896 ftemplate-depth-, std=c89, std=c9x, std=gnu89, std=gnu9x,
897 std=iso9899:1990, std=iso9899:1999, std=iso9899:199x): Mark as
899 * c-common.c (option_codes): Use OPT_Wcomment instead of
901 * c-opts.c (warning_as_error_callback, c_common_handle_option):
902 Don't handle options marked as aliases.
904 2010-08-25 Richard Guenther <rguenther@suse.de>
906 * c-common.c (c_common_get_alias_set): Remove special
907 handling for pointers.
909 2010-08-20 Nathan Froyd <froydnj@codesourcery.com>
911 * c-common.c: Use FOR_EACH_VEC_ELT.
912 * c-gimplify.c: Likewise.
913 * c-pragma.c: Likewise.
915 2010-08-16 Joseph Myers <joseph@codesourcery.com>
917 * c.opt (MDX): Change back to MD. Mark NoDriverArg instead of
919 (MMDX): Change back to MMD. Mark NoDriverArg instead of
921 * c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
922 instead of OPT_MDX and OPT_MMDX.
924 2010-08-16 Joseph Myers <joseph@codesourcery.com>
926 * c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.
928 2010-08-12 Joseph Myers <joseph@codesourcery.com>
930 * c.opt (MD, MMD): Change to MDX and MMDX.
931 * c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX.
933 2010-08-11 Joseph Myers <joseph@codesourcery.com>
935 * c-opts.c (c_common_handle_option): Call handle_generated_option
936 instead of handle_option.
938 2010-08-08 Nathan Froyd <froydnj@codesourcery.com>
940 * c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
941 (maybe_apply_renaming_pragma): Delete unneeded declarations.
943 2010-08-08 Nathan Froyd <froydnj@codesourcery.com>
945 * c-pragma.c (pending_redefinition): Declare. Declare a VEC of it.
946 (pending_redefine_extname): Change type to a VEC.
947 (add_to_renaming_pragma_list): Update for new type of
948 pending_redefine_extname.
949 (maybe_apply_renaming_pragma): Likewise.
951 2010-08-04 Arnaud Charlet <charlet@adacore.com>
953 * c-ada-spec.c (dump_ada_template): Mark underlying instance type as
955 (dump_generic_ada_node): Code clean up. Use TREE_VISITED flag to
956 decide whether a type has already been declared/seen.
957 Do not go to the original type.
958 (dump_nested_types): New parameter forward.
959 Generate forward declaration if needed and mark type as visited.
960 (print_ada_declaration): Call dump_nested_types if not already done.
961 Mark types as visited.
963 2010-08-03 Joseph Myers <joseph@codesourcery.com>
965 * c.opt (-print-pch-checksum): Remove option.
966 * c-opts.c (c_common_handle_option): Don't handle
967 OPT_print_pch_checksum.
969 2010-07-27 Joseph Myers <joseph@codesourcery.com>
971 * c-common.h (c_common_handle_option): Update prototype and return
973 * c-opts.c (c_common_handle_option): Update prototype and return
974 value type. Update calls to handle_option and
975 enable_warning_as_error.
977 2010-07-27 Jakub Jelinek <jakub@redhat.com>
980 * c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
982 2010-07-27 Joseph Myers <joseph@codesourcery.com>
984 * c-common.h (c_common_missing_argument): Remove.
985 * c-opts.c (c_common_missing_argument): Remove.
986 * c.opt (A, D, F, I, MD, MMD, MQ, MT, U, fconstant-string-class=,
987 idirafter, imacros, include, isysroot, isystem, iquote): Add
989 * c-objc-common.h (LANG_HOOKS_MISSING_ARGUMENT): Remove.
991 2010-07-27 Joseph Myers <joseph@codesourcery.com>
993 * c-common.h (c_common_option_lang_mask,
994 c_common_initialize_diagnostics, c_common_complain_wrong_lang_p):
996 (c_common_init_options): Update prototype.
997 * c-opts.c (c_common_option_lang_mask): New.
998 (c_common_initialize_diagnostics): Split out of
999 c_common_init_options.
1000 (accept_all_c_family_options, c_common_complain_wrong_lang_p):
1002 (c_common_init_options): Update prototype. Use decoded options in
1003 search for -lang-asm.
1005 2010-07-15 Nathan Froyd <froydnj@codesourcery.com>
1007 * c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
1008 * c-format.c: Likewise.
1010 2010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
1012 * c-common.h: Include diagnostic-core.h. Error if already
1014 * c-semantics.c: Do not define GCC_DIAG_STYLE here.
1016 2010-07-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
1018 * c-family/c-common.c (IN_GCC_FRONTEND): Do not undef.
1019 Do not include expr.h
1020 (vector_mode_valid_p): Move here.
1022 2010-06-21 DJ Delorie <dj@redhat.com>
1024 * c-pragma.c (handle_pragma_diagnostic): Add push/pop,
1025 allow these pragmas anywhere.
1027 2010-06-14 Jakub Jelinek <jakub@redhat.com>
1030 * c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
1031 (lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
1032 (lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
1033 ggc_strdup instead of xstrdup.
1035 2010-06-10 Jakub Jelinek <jakub@redhat.com>
1037 * c-cppbuiltin.c: Include cpp-id-data.h.
1038 (lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
1039 (lazy_hex_fp_value): New function.
1040 (builtin_define_with_hex_fp_value): Provide definitions lazily.
1042 2010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
1044 * c-gimplify.c: Do not include tree-flow.h
1046 2010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
1049 * c-common.c: Rename targetm member:
1050 targetm.enum_va_list -> targetm.enum_va_list_p
1052 2010-06-28 Anatoly Sokolov <aesok@post.ru>
1054 * c-common.c (shorten_compare): Adjust call to force_fit_type_double.
1056 2010-06-28 Steven Bosscher <steven@gcc.gnu.org>
1058 * c-cppbuiltin.c: Do not include except.h.
1060 2010-06-24 Andi Kleen <ak@linux.intel.com>
1062 * c-common.c (warn_for_omitted_condop): New.
1063 * c-common.h (warn_for_omitted_condop): Add prototype.
1065 2010-06-21 Joseph Myers <joseph@codesourcery.com>
1067 * c.opt (lang-objc): Remove.
1068 * c-opts.c (c_common_handle_option): Don't handle OPT_lang_objc.
1070 2010-06-21 Joern Rennecke <joern.rennecke@embecosm.com>
1072 * c-opts.c: Include "tm_p.h".
1074 2010-06-20 Joseph Myers <joseph@codesourcery.com>
1076 * c-common.c (parse_optimize_options): Update call to
1079 2010-06-18 Nathan Froyd <froydnj@codesourcery.com>
1081 * c-common.c (record_types_used_by_current_var_decl): Adjust for
1082 new type of types_used_by_cur_var_decl.
1084 2010-06-17 Joern Rennecke <joern.rennecke@embecosm.com>
1087 * c-cppbuiltin.c (builtin_define_with_hex_fp_value): Add cast
1088 for C++ standard compliance.
1090 2010-06-16 Jason Merrill <jason@redhat.com>
1092 * c.opt: Add -Wnoexcept.
1094 2010-06-16 Richard Guenther <rguenther@suse.de>
1097 * c-common.c (c_common_truthvalue_conversion): Remove
1098 premature and wrong optimization concering ADDR_EXPRs.
1100 2010-06-15 Arnaud Charlet <charlet@adacore.com>
1102 * c-ada-spec.c (dump_sloc): Remove column info.
1103 (is_simple_enum): New function.
1104 (dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada
1105 enum types when relevant.
1107 2010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
1109 * c-common.c (conversion_warning): Warn at expression
1112 2010-06-10 Joseph Myers <joseph@codesourcery.com>
1114 * c-opts.c (c_common_handle_option): Don't handle
1117 2010-06-08 Laurynas Biveinis <laurynas.biveinis@gmail.com>
1119 * c-pragma.c (push_alignment): Use typed GC allocation.
1120 (handle_pragma_push_options): Likewise.
1122 * c-common.c (parse_optimize_options): Likewise.
1124 * c-common.h (struct sorted_fields_type): Add variable_size GTY
1127 2010-06-07 Joseph Myers <joseph@codesourcery.com>
1129 * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
1130 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
1131 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
1132 flag_signed_bitfields, warn_strict_null_sentinel,
1133 flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
1134 flag_gen_declaration, flag_no_gnu_keywords,
1135 flag_implement_inlines, flag_implicit_templates,
1136 flag_implicit_inline_templates, flag_optional_diags,
1137 flag_elide_constructors, flag_default_inline, flag_rtti,
1138 flag_conserve_space, flag_access_control, flag_check_new,
1139 flag_new_for_scope, flag_weak, flag_working_directory,
1140 flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
1141 flag_enforce_eh_specs, flag_threadsafe_statics,
1142 flag_pretty_templates): Remove.
1143 * c-common.h (flag_preprocess_only, flag_nil_receivers,
1144 flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
1145 flag_replace_objc_classes, flag_undef, flag_no_builtin,
1146 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
1147 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
1148 flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
1149 flag_no_gnu_keywords, flag_implement_inlines,
1150 flag_implicit_templates, flag_implicit_inline_templates,
1151 flag_optional_diags, flag_elide_constructors, flag_default_inline,
1152 flag_rtti, flag_conserve_space, flag_access_control,
1153 flag_check_new, flag_new_for_scope, flag_weak,
1154 flag_working_directory, flag_use_cxa_atexit,
1155 flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
1156 flag_threadsafe_statics, flag_pretty_templates,
1157 warn_strict_null_sentinel): Remove.
1158 * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
1159 fbuiltin, fcheck-new, fconserve-space, felide-constructors,
1160 fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
1161 fimplicit-inline-templates, fimplicit-templates,
1162 flax-vector-conversions, fms-extensions, fnil-receivers,
1163 fnonansi-builtins, fpretty-templates, freplace-objc-classes,
1164 frtti, fshort-double, fshort-enums, fshort-wchar,
1165 fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
1166 funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
1167 fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
1168 gen-decls, undef): Use Var.
1169 (fdefault-inline, foptional-diags): Document as doing nothing.
1170 * c-opts.c (c_common_handle_option): Remove cases for options now
1171 using Var. Mark ignored options as such.
1173 2010-06-05 Steven Bosscher <steven@gcc.gnu.org>
1175 * c-common.c: Moved to here from parent directory.
1176 * c-common.def: Likewise.
1177 * c-common.h: Likewise.
1178 * c-cppbuiltin.c: Likewise.
1179 * c-dump.c: Likewise.
1180 * c-format.c: Likewise.
1181 * c-format.h : Likewise.
1182 * c-gimplify.c: Likewise.
1183 * c-lex.c: Likewise.
1184 * c-omp.c: Likewise.
1186 * c-opts.c: Likewise.
1187 * c-pch.c: Likewise.
1188 * c-ppoutput.c: Likewise.
1189 * c-pragma.c: Likewise.
1190 * c-pragma.h: Likewise.
1191 * c-pretty-print.c: Likewise.
1192 * c-pretty-print.h: Likewise.
1193 * c-semantics.c: Likewise.
1194 * stub-objc.c: Likewise.
1196 * c-common.c: Include gt-c-family-c-common.h.
1197 * c-pragma.c: Include gt-c-family-c-pragma.h.
1199 Copyright (C) 2010, 2011 Free Software Foundation, Inc.
1201 Copying and distribution of this file, with or without modification,
1202 are permitted in any medium without royalty provided the copyright
1203 notice and this notice are preserved.