1 2011-11-08 Richard Guenther <rguenther@suse.de>
6 2011-11-07 Richard Henderson <rth@redhat.com>
7 Aldy Hernandez <aldyh@redhat.com>
8 Torvald Riegel <triegel@redhat.com>
10 Merged from transactional-memory.
12 * c-common.c (handle_tm_wrap_attribute,
13 handle_tm_attribute, ignore_attribute, parse_tm_stmt_attr): New.
14 (struct c_common_reswords): Added __transaction* keywords.
15 (struct c_common_attribute_table): Added transaction* and tm_regparm
17 * c-common.h: Added RID_TRANSACTION*. Added TM_ATTR* and TM_STMT*
19 (parse_tm_stmt_attr, tm_attr_to_mask, tm_mask_to_attr,
20 find_tm_attribute): Declare.
22 2011-11-07 Jason Merrill <jason@redhat.com>
25 * c-common.c, c-common.h: Revert yesterday's changes.
27 2011-11-06 Jason Merrill <jason@redhat.com>
30 * c-common.c (decl_has_visibility_attr): Split out from...
31 (c_determine_visibility): ...here.
32 * c-common.h: Declare it.
34 2011-11-06 Joseph Myers <joseph@codesourcery.com>
36 * c-common.c (c_common_reswords): Add _Alignas and _Alignof.
37 (c_sizeof_or_alignof_type): Diagnose alignof applied to a function
39 (check_user_alignment): New. Split out of
40 handle_aligned_attribute. Disallow integer constants with
41 noninteger types. Conditionally allow zero.
42 (handle_aligned_attribute): Use check_user_alignment.
43 * c-common.h (RID_ALIGNAS, check_user_alignment): New.
45 2011-11-06 Andrew MacLeod <amacleod@redhat.com>
46 Richard Henderson <rth@redhat.com>
48 Merged from cxx-mem-model.
50 * c-cppbuiltin.c (c_cpp_builtins): Test both atomic and sync patterns.
51 * c-common.c (sync_resolve_params, sync_resolve_return): Only tweak
52 parameters that are the same type size.
53 (get_atomic_generic_size): New. Find size of generic
54 atomic function parameters and do typechecking.
55 (add_atomic_size_parameter): New. Insert size into parameter list.
56 (resolve_overloaded_atomic_exchange): Restructure __atomic_exchange to
57 either __atomic_exchange_n or external library call.
58 (resolve_overloaded_atomic_compare_exchange): Restructure
59 __atomic_compare_exchange to either _n variant or external library call.
60 (resolve_overloaded_atomic_load): Restructure __atomic_load to either
61 __atomic_load_n or an external library call.
62 (resolve_overloaded_atomic_store): Restructure __atomic_store to either
63 __atomic_store_n or an external library call.
64 (resolve_overloaded_builtin): Handle new __atomic builtins.
66 2011-11-04 Eric Botcazou <ebotcazou@adacore.com>
69 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1.
70 (fold_offsetof_1): Make global. Remove STOP_REF argument and adjust.
71 <INDIRECT_REF>: Return the argument.
72 <ARRAY_REF>: Remove special code for negative offset.
73 Call fold_build_pointer_plus instead of size_binop.
74 (fold_offsetof): Remove STOP_REF argument and adjust.
75 * c-common.h (fold_offsetof_1): Declare.
76 (fold_offsetof): Remove STOP_REF argument.
78 2011-11-02 Paolo Carlini <paolo.carlini@oracle.com>
81 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
82 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
83 Wnarrowing for C++0x and C++98.
84 * c.opt ([Wnarrowing]): Update.
86 2011-11-01 Paolo Carlini <paolo.carlini@oracle.com>
89 * c.opt: Add Wzero-as-null-pointer-constant.
91 2011-10-31 Jason Merrill <jason@redhat.com>
93 * c.opt (-fdeduce-init-list): Off by default.
96 * c-common.h (cxx_dialect): Add cxx11 and cxx03.
97 * c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03,
99 * c-opts.c (set_std_cxx11): Rename from set_std_cxx0x.
101 2011-10-27 Roberto Agostino Vitillo <ravitillo@lbl.gov>
104 * c.opt (fvisibility-inlines-hidden): Description change.
106 2011-10-26 Ed Smith-Rowland <3dw4rd@verizon.net>
108 Implement C++11 user-defined literals.
109 * c-common.c (build_userdef_literal): New.
110 * c-common.def: New tree code.
111 * c-common.h (tree_userdef_literal): New tree struct and accessors.
112 * c-lex.c (interpret_float): Add suffix parm.
113 (c_lex_with_flags): Build literal tokens.
115 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
119 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
122 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
123 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
124 Wnarrowing for C++0x and C++98.
125 * c.opt ([Wnarrowing]): Update.
127 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
130 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
131 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
132 Wnarrowing for C++0x and C++98.
133 * c.opt ([Wnarrowing]): Update.
135 2011-10-21 Paolo Carlini <paolo.carlini@oracle.com>
138 * c-common.c (conversion_warning): Remove code looking for
141 2011-10-18 Dodji Seketeli <dodji@redhat.com>
144 * c-lex.c (fe_file_change): Use LINEMAP_SYSP when
145 !NO_IMPLICIT_EXTERN_C.
147 2011-10-17 Michael Spertus <mike_spertus@symantec.com>
149 * c-common.c (c_common_reswords): Add __bases,
151 * c-common.h: Add RID_BASES and RID_DIRECT_BASES.
153 2011-10-17 Paolo Carlini <paolo.carlini@oracle.com>
156 * c.opt ([Wnonnull]): Add C++ and Objective-C++.
158 2011-10-15 Tom Tromey <tromey@redhat.com>
159 Dodji Seketeli <dodji@redhat.com>
161 * c.opt (fdebug-cpp): New option.
162 * c-opts.c (c_common_handle_option): Handle the option.
163 * c-ppoutput.c (maybe_print_line_1): New static function. Takes an
164 output stream in parameter. Factorized from ...
165 (maybe_print_line): ... this. Dump location debug information when
166 -fdebug-cpp is in effect.
167 (print_line_1): New static function. Takes an output stream in
168 parameter. Factorized from ...
169 (print_line): ... here. Dump location information when -fdebug-cpp
171 (scan_translation_unit): Dump location information when
172 -fdebug-cpp is in effect.
174 2011-10-15 Tom Tromey <tromey@redhat.com>
175 Dodji Seketeli <dodji@redhat.com>
177 * c.opt (ftrack-macro-expansion): New option. Handle it with and
179 * c-opts.c (c_common_handle_option)<case
180 OPT_ftrack_macro_expansion_, case OPT_ftrack_macro_expansion>: New
181 cases. Handle -ftrack-macro-expansion with and without argument.
183 2011-10-15 Tom Tromey <tromey@redhat.com>
184 Dodji Seketeli <dodji@redhat.com>
186 * c-ppoutput.c (scan_translation_unit, maybe_print_line)
187 (print_line, cb_define, do_line_change): Adjust to avoid touching
188 the internals of struct line_map. Use the public API instead.
189 * c-pch.c (c_common_read_pch): Likewise.
190 * c-lex.c (fe_file_change): Likewise.
192 2011-10-14 Paolo Carlini <paolo.carlini@oracle.com>
195 * c.opt ([Wformat-zero-length]): Add C++ and Objective-C++.
197 2011-10-11 Paolo Carlini <paolo.carlini@oracle.com>
200 * c-pretty-print.c (pp_c_floating_constant): Output
201 max_digits10 (in the ISO C++ WG N1822 sense) decimal digits.
203 2011-10-11 Michael Meissner <meissner@linux.vnet.ibm.com>
205 * c-common.c (def_builtin_1): Delete old interface with two
206 parallel arrays to hold standard builtin declarations, and replace
207 it with a function based interface that can support creating
208 builtins on the fly in the future. Change all uses, and poison
209 the old names. Make sure 0 is not a legitimate builtin index.
210 * c-omp.c (c_finish_omp_barrier): Ditto.
211 (c_finish_omp_taskwait): Ditto.
212 (c_finish_omp_flush): Ditto.
214 2011-10-11 Tristan Gingold <gingold@adacore.com>
216 * c.opt: (fallow-parameterless-variadic-functions): New.
218 2011-09-08 Dodji Seketeli <dodji@redhat.com>
220 PR c++/33255 - Support -Wunused-local-typedefs warning
221 * c-common.h (struct c_language_function::local_typedefs): New
223 (record_locally_defined_typedef, maybe_record_typedef_use)
224 (maybe_warn_unused_local_typedefs): Declare new functions.
225 * c-common.c (record_locally_defined_typedef)
226 (maybe_record_typedef_use)
227 (maybe_warn_unused_local_typedefs): Define new functions.
228 * c.opt: Declare new -Wunused-local-typedefs flag.
230 2011-09-06 Eric Botcazou <ebotcazou@adacore.com>
233 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Fold offsetof-like
236 2011-09-05 Richard Guenther <rguenther@suse.de>
238 * c-common.c (complete_array_type): Use ssize_int (-1) instead
239 of integer_minus_one_node for empty array upper bounds.
241 2011-08-28 Dodji Seketeli <dodji@redhat.com>
243 * c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as
244 it's the first time it's being called on this main TU.
246 2011-08-24 Richard Guenther <rguenther@suse.de>
249 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional.
251 2011-08-22 Gabriel Charette <gchare@google.com>
253 * c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens
254 defined in cpp_init_builtins and c_cpp_builtins.
256 2011-08-19 Joseph Myers <joseph@codesourcery.com>
258 * c-common.c (c_common_reswords): Add __builtin_complex.
259 * c-common.h (RID_BUILTIN_COMPLEX): New.
261 2011-08-18 Joseph Myers <joseph@codesourcery.com>
263 * c-common.c (c_common_reswords): Add _Noreturn.
264 (keyword_is_function_specifier): Handle RID_NORETURN.
265 * c-common.h (RID_NORETURN): New.
267 2011-08-10 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
269 * c-common.c (unsafe_conversion_p): New function. Check if it is
270 unsafe to convert an expression to the type.
271 (conversion_warning): Adjust, use unsafe_conversion_p.
272 * c-common.h (unsafe_conversion_p): New function declaration.
274 2011-08-02 Jakub Jelinek <jakub@redhat.com>
276 * c-common.h (c_finish_omp_atomic): Adjust prototype.
277 (c_finish_omp_taskyield): New prototype.
278 * c-omp.c (c_finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1
279 arguments. Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and
280 OMP_ATOMIC_CAPTURE_NEW in addition to OMP_ATOMIC. If LHS1
281 or RHS1 have side-effects, evaluate those too in the right spot,
282 if it is a decl and LHS is also a decl, error out if they
284 (c_finish_omp_taskyield): New function.
285 * c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP to 201107.
286 * c-pragma.c (omp_pragmas): Add taskyield.
287 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKYIELD.
288 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FINAL and
289 PRAGMA_OMP_CLAUSE_MERGEABLE.
291 2011-07-25 Dodji Seketeli <dodji@redhat.com>
293 * c-common.h (set_underlying_type): Remove parm name from
296 2011-07-25 Romain Geissler <romain.geissler@gmail.com>
298 * c-pretty-print.h: Search c-common.h in c-family.
300 2011-07-22 Jason Merrill <jason@redhat.com>
303 * c.opt (Wnarrowing): New.
306 * c-common.h: Declare c_linkage_bindings.
307 * c-pragma.c (handle_pragma_redefine_extname): Use it.
310 * c-opts.c (set_std_cxx0x): Set flag_isoc94 and flag_isoc99.
311 * c-pretty-print.c (pp_c_cv_qualifiers): Check c_dialect_cxx as well
312 as flag_isoc99 for 'restrict'.
313 (pp_c_specifier_qualifier_list): Likewise for _Complex.
315 2011-07-21 Ian Lance Taylor <iant@google.com>
318 * c-common.c (c_disable_warnings): New static function.
319 (c_enable_warnings): New static function.
320 (c_fully_fold_internal): Change local unused_p to bool. Call
321 c_disable_warnings and c_enable_warnings rather than change
322 c_inhibit_evaluation_warnings.
324 2011-07-20 Jason Merrill <jason@redhat.com>
327 PR c++/42603 (DR 950)
328 * c-common.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move from cp/parser.h.
329 (CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise.
331 * c-common.c (c_parse_error): Handle CPP_DECLTYPE.
333 2011-07-19 Richard Guenther <rguenther@suse.de>
335 * c-common.c (pointer_int_sum): Use fold_build_pointer_plus.
336 * c-omp.c (c_finish_omp_for): Likewise.
338 2011-07-12 Eric Botcazou <ebotcazou@adacore.com>
340 * c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop
341 body on the next line.
343 2011-07-08 Jason Merrill <jason@redhat.com>
346 * c-omp.c (check_omp_for_incr_expr): Handle preevaluation.
349 * c-common.c (c_apply_type_quals_to_decl): Don't check
350 TYPE_NEEDS_CONSTRUCTING.
352 2011-07-06 Richard Guenther <rguenther@suse.de>
354 * c-common.c (c_common_nodes_and_builtins):
355 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
357 2011-07-05 Richard Guenther <rguenther@suse.de>
359 * c-common.c (c_common_nodes_and_builtins): Build all common
362 2011-06-27 Jakub Jelinek <jakub@redhat.com>
364 * c-common.h (c_tree_chain_next): New static inline function.
366 * c-common.c (check_builtin_function_arguments): Handle
367 BUILT_IN_ASSUME_ALIGNED.
369 2011-06-21 Andrew MacLeod <amacleod@redhat.com>
371 * c-common.c: Add sync_ or SYNC__ to builtin names.
372 * c-omp.c: Add sync_ or SYNC__ to builtin names.
374 2011-06-20 Pierre Vittet <piervit@pvittet.com>
376 * c-pragma.h (pragma_handler_1arg, pragma_handler_2arg): New
378 (gen_pragma_handler): New union.
379 (internal_pragma_handler): New type.
380 (c_register_pragma_with_data)
381 (c_register_pragma_with_expansion_and_data): New functions.
383 * c-pragma.c (registered_pragmas, c_register_pragma_1)
384 (c_register_pragma, c_register_pragma_with_expansion)
385 (c_invoke_pragma_handler): Changed to work with
386 internal_pragma_handler.
387 (c_register_pragma_with_data)
388 (c_register_pragma_with_expansion_and_data): New functions.
390 2011-06-14 Joseph Myers <joseph@codesourcery.com>
392 * c-common.c: Include common/common-target.h.
393 (handle_section_attribute): Use
394 targetm_common.have_named_sections.
395 * c-cppbuiltin.c: Include common/common-target.h.
396 (c_cpp_builtins): Use targetm_common.except_unwind_info.
398 2011-06-10 Richard Guenther <rguenther@suse.de>
400 * c-pretty-print.c (pp_c_type_specifier): Use pp_c_identifier
401 to print a IDENTIFIER_NODE.
403 2011-06-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
404 Joseph Myers <joseph@codesourcery.com>
406 * c.opt (fbuilding-libgcc): New option.
407 * c-cppbuiltin.c (c_cpp_builtins): Define
408 __LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc.
410 2011-06-07 Jason Merrill <jason@redhat.com>
412 * c-common.c (max_tinst_depth): Lower default to 900.
414 * c-format.c (gcc_cxxdiag_char_table): Add 'S' format.
416 2011-06-07 Richard Guenther <rguenther@suse.de>
418 * c-common.c (c_common_nodes_and_builtins): Do not set
419 size_type_node or call set_sizetype.
421 2011-06-07 Dodji Seketeli <dodji@redhat.com>
424 * c-pretty-print.c (pp_c_integer_constant): Consider the canonical
425 type when using pointer comparison to compare types.
427 2011-06-02 Jonathan Wakely <jwakely.gcc@gmail.com>
429 * c.opt: Add -Wdelete-non-virtual-dtor.
430 * c-opts.c (c_common_handle_option): Include it in -Wall.
432 2011-05-30 Nathan Froyd <froydnj@gcc.gnu.org>
437 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
439 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
442 2011-05-27 Jakub Jelinek <jakub@redhat.com>
445 * c-common.c (c_common_truthvalue_conversion) <case COND_EXPR>: For
446 C++ don't call c_common_truthvalue_conversion on void type arms.
448 2011-05-27 Nathan Froyd <froydnj@codesourcery.com>
450 * c-common.h (struct stmt_tree_s) [x_cur_stmt_list]: Change to a VEC.
451 (stmt_list_stack): Define.
452 (cur_stmt_list): Adjust for new type of x_cur_stmt_list.
453 * c-semantics.c (push_stmt_list, pop_stmt_list): Likewise.
455 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
457 * c-common.c (warning_candidate_p): Check for BLOCKs.
459 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
461 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
464 2011-05-25 Jakub Jelinek <jakub@redhat.com>
466 * c-common.c (def_fn_type): Remove extra va_end.
468 2011-05-23 Jason Merrill <jason@redhat.com>
471 * c-common.c (c_common_get_narrower): New.
472 (shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.
474 2011-05-23 Nathan Froyd <froydnj@codesourcery.com>
476 * c-common.h (check_function_arguments): Tweak prototype of
477 check_function_arguments.
478 * c-common.c (check_function_arguments): Likewise. Adjust
479 calls to check_function_nonnull, check_function_format, and
480 check_function_sentinel.
481 (check_function_sentinel): Take a FUNCTION_TYPE rather than
482 separate attributes and typelist arguments. Use
483 FOREACH_FUNCTION_ARGS to iterate over argument types.
485 2011-05-15 Paolo Carlini <paolo.carlini@oracle.com>
487 * c-common.c (c_common_reswords): Reorder.
488 * c-common.h (rid): Likewise.
490 2011-05-10 Nathan Froyd <froydnj@codesourcery.com>
492 * c-common.c (def_fn_type): Don't call build_function_type, call
493 build_function_type_array or build_varargs_function_type_array
495 (c_common_nodes_and_builtins): Likewise.
497 2011-05-05 Nathan Froyd <froydnj@codesourcery.com>
499 * c-common.c (c_add_case_label): Omit the loc argument to
501 * c-common.h (build_case_label): Remove.
502 * c-semantics.c (build_case_label): Remove.
504 2011-05-05 Joseph Myers <joseph@codesourcery.com>
506 * c-objc.h (objc_start_method_definition): Update prototype.
507 * stub-objc.c (objc_start_method_definition): Add extra parameter.
509 2011-05-04 Nathan Froyd <froydnj@codesourcery.com>
511 * c-common.c (check_main_parameter_types): Reindent. Don't use
512 TYPE_ARG_TYPES directly.
513 (handle_nonnull_attribute): Likewise.
514 (sync_resolve_params): Likewise.
515 * c-format.c (handle_format_arg_attribute): Likewise. Adjust call
516 to check_format_string.
517 (handle_format_attribute): Likewise.
518 (check_format_string): Take a function type to examine instead of
519 a type list. Use a function_arg_iterator to step through argument
522 2011-05-04 Richard Guenther <rguenther@suse.de>
524 * c-common.c (fix_string_type): Use size_int for index type bounds.
525 (start_fname_decls): Do not pass NULL to build_int_cst.
526 (c_init_attributes): Likewise.
527 * c-lex.c (c_lex_with_flags): Likewise.
529 2011-04-27 Jason Merrill <jason@redhat.com>
531 * c-common.c (make_tree_vector_from_list): New.
532 * c-common.h: Declare it.
534 2011-04-26 Richard Guenther <rguenther@suse.de>
536 PR preprocessor/48248
537 * c-ppoutput.c (maybe_print_line): Always optimize newlines
538 for output size with -P.
540 2011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
542 * c-common.c (struct c_common_resword): Add __underlying_type.
543 * c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
545 2011-04-20 Jim Meyering <meyering@redhat.com>
547 * c-format.c (init_dollar_format_checking): Remove useless
550 2011-04-15 Nicola Pero <nicola.pero@meta-innovation.com>
552 * c-objc.h (objc_get_interface_ivars): Removed.
553 (objc_detect_field_duplicates): New.
554 * stub-objc.c: Likewise.
556 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
558 * stub-objc.c (objc_declare_protocols): Renamed to
559 objc_declare_protocol.
560 * c-objc.h: Likewise.
562 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
564 * stub-objc.c (objc_declare_class): Updated argument name.
566 2011-04-12 Nathan Froyd <froydnj@codesourcery.com>
568 * c-common.h (c_common_init_ts): Declare.
569 * c-common.c (c_common_init_ts): Define.
571 2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
573 * c-objc.h (objc_build_message_expr): Updated prototype.
574 * stub-objc.c (objc_build_message_expr): Likewise.
576 2011-04-12 Martin Jambor <mjambor@suse.cz>
578 * c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
581 2011-04-11 Richard Guenther <rguenther@suse.de>
583 * c-common.c (complete_array_type): Build a range type of
586 2011-04-08 Nathan Froyd <froydnj@codesourcery.com>
588 * c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
589 (handle_type_generic_attribute): Likewise.
591 2011-04-07 Jason Merrill <jason@redhat.com>
594 * c-common.c (c_common_truthvalue_conversion): Don't ignore
595 conversion from C++0x scoped enum.
597 2011-04-06 Joseph Myers <joseph@codesourcery.com>
599 * c-target-def.h: New file.
600 * c-target.def: New file.
601 * c-target.h: New file.
602 * c-common.c (targetcm): Don't define here.
603 * c-common.h (default_handle_c_option): Declare.
604 * c-format.c: Include c-target.h instead of target.h.
605 * c-opts.c: Include c-target.h instead of target.h. Explicitly
607 (default_handle_c_option): Move from targhooks.c.
609 2011-03-29 Jakub Jelinek <jakub@redhat.com>
611 PR preprocessor/48248
612 * c-ppoutput.c (print): Add src_file field.
613 (init_pp_output): Initialize it.
614 (maybe_print_line): Don't optimize by adding up to 8 newlines
615 if map->to_file and print.src_file are different file.
616 (print_line): Update print.src_file.
618 2011-03-25 Kai Tietz <ktietz@redhat.com>
620 * c-ada-spec.c (compare_comment): Use filename_cmp
621 instead of strcmp for filename.
623 2011-03-25 Jeff Law <law@redhat.com>
625 * c-family/c-common.c (def_fn_type): Add missing va_end.
627 2011-03-25 Jason Merrill <jason@redhat.com>
629 * c.opt: Add -std=c++03.
631 2011-03-22 Eric Botcazou <ebotcazou@adacore.com>
633 * c-ada-spec.c (dump_ada_template): Skip non-class instances.
638 * c-pretty-print.c (pp_c_specifier_qualifier_list):
639 Display allowed attributes for function pointer types.
640 (pp_c_attributes_display): New function to display
641 attributes having affects_type_identity flag set to true.
642 * c-pretty-print.h (pp_c_attributes_display): New prototype.
644 * c-common.c (c_common_attribute_table):
646 (c_common_format_attribute_table): Likewise.
648 2011-03-18 Jason Merrill <jason@redhat.com>
650 * c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
651 * c-common.h: Don't declare it here.
652 * c-common.c: Or define it here.
653 * c-opts.c (c_common_handle_option): Or set it here.
656 * c-common.c (handle_transparent_union_attribute): Don't
657 make a duplicate type in C++.
659 2011-03-15 Jason Merrill <jason@redhat.com>
661 * c-common.c (max_constexpr_depth): New.
662 * c-common.h: Declare it.
663 * c-opts.c (c_common_handle_option): Set it.
664 * c.opt (fconstexpr-depth): New option.
666 2011-03-11 Jason Merrill <jason@redhat.com>
668 * c-common.c (attribute_takes_identifier_p): Add missing const.
671 * c-common.c (attribute_takes_identifier_p): Assume that an
672 unknown attribute takes an identifier.
674 2011-03-07 Nathan Froyd <froydnj@codesourcery.com>
677 * c-common.c (c_type_hash): Call list_length instead of iterating
678 through DECL_CHAIN. Rename 'i' to 'n_elements'.
680 2011-02-19 Jakub Jelinek <jakub@redhat.com>
683 * c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
685 2011-02-17 Iain Sandoe <iains@gcc.gnu.org>
687 * c.opt (fobjc-abi-version=) New.
688 (fobjc-nilcheck): New.
690 2011-02-03 Nathan Froyd <froydnj@codesourcery.com>
693 * c-common.h (keyword_is_decl_specifier): Declare.
694 * c-common.c (keyword_is_decl_specifier): Define.
695 (keyword_is_function_specifier): New function.
697 2011-01-26 Jakub Jelinek <jakub@redhat.com>
700 * c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
701 EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
704 2011-01-26 Arnaud Charlet <charlet@adacore.com>
706 * c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type.
708 2011-01-26 Jakub Jelinek <jakub@redhat.com>
711 * c-opts.c (c_common_post_options): Call c_common_no_more_pch
712 after init_c_lex if pch_file is set.
714 2011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
717 * c.opt (-fkeep-inline-dllexport): New switch.
719 2011-01-12 Richard Guenther <rguenther@suse.de>
722 * c-common.c (handle_weak_attribute): Warn instead of error
723 on declaring an inline function weak.
725 2011-01-05 Tom Tromey <tromey@redhat.com>
727 * c-common.h (lvalue_error): Update.
728 * c-common.c (lvalue_error): Add 'loc' argument. Call error_at,
731 2010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
734 * c-objc.h (objc_finish_message_expr): Added argument to
737 2010-12-22 Nathan Froyd <froydnj@codesourcery.com>
739 * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute):
742 2010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
744 * c-objc.h (objc_maybe_warn_exceptions): New.
745 * stub-objc.c (objc_maybe_warn_exceptions): New.
747 2010-12-10 Nathan Froyd <froydnj@codesourcery.com>
749 * c-common.h (readonly_error): Declare.
750 * c-common.c (readonly_error): Define.
752 2010-12-09 Nathan Froyd <froydnj@codesourcery.com>
754 * c-common.h (invalid_indirection_error): Declare.
755 * c-common.c (invalid_indirection_error): Define.
757 2010-12-03 Richard Guenther <rguenther@suse.de>
760 * c-pretty-print.c (pp_c_postfix_expression): Handle MEM_REF.
761 (pp_c_unary_expression): Likewise.
762 (pp_c_expression): Likewise.
764 2010-11-30 Nicola Pero <nicola.pero@meta-innovation.com>
766 * c-common.h (objc_finish_function): New.
767 (objc_non_volatilized_type): Removed.
768 (objc_type_quals_match): Removed.
769 * stub-objc.c (objc_finish_function): New.
770 (objc_non_volatilized_type): Removed.
771 (objc_type_quals_match): Removed.
773 2010-11-30 Joseph Myers <joseph@codesourcery.com>
775 * c-common.h (parse_optimize_options): Declare.
776 * c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c,
777 c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h.
779 2010-11-29 Joseph Myers <joseph@codesourcery.com>
781 * c-opts.c (check_deps_environment_vars): Use getenv instead of
783 * c-pch.c (O_BINARY): Don't define here.
784 * c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
786 2010-11-25 Joseph Myers <joseph@codesourcery.com>
788 * c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
789 targetm.except_unwind_info.
791 2010-11-23 Joseph Myers <joseph@codesourcery.com>
793 * c-opts.c (c_common_handle_option): Pass location to
794 set_struct_debug_option.
796 2010-11-23 Joseph Myers <joseph@codesourcery.com>
798 * c-common.c (visibility_options): Move from ../opts.c.
799 * c-common.h (struct visibility_flags, visibility_options):
801 * c-opts.c (finish_options): Rename to c_finish_options.
802 (c_common_init): Update call to finish_options.
804 2010-11-22 Nicola Pero <nicola.pero@meta-innovation.com>
807 * c-lex.c (lex_string): Check that each string in an Objective-C
808 string concat sequence starts with either one or zero '@', and
809 that there are no spurious '@' signs at the end.
811 2010-11-20 Joseph Myers <joseph@codesourcery.com>
813 * c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
814 HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
815 HANDLE_PRAGMA_VISIBILITY.
816 * c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
817 HANDLE_PRAGMA_VISIBILITY): Don't define.
818 (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.
820 2010-11-20 Nathan Froyd <froydnj@codesourcery.com>
825 * c-common.h (keyword_begins_type_specifier): Declare.
826 (keyword_is_storage_class_specifier): Declare.
827 (keyword_is_type_qualifier): Declare.
828 * c-common.c (keyword_begins_type_specifier): New function.
829 (keyword_is_storage_class_specifier): New function.
830 (keyword_is_type_qualifier): Declare.
832 2010-11-19 Joseph Myers <joseph@codesourcery.com>
835 * c-common.c (in_late_binary_op): Define.
836 (c_common_truthvalue_conversion): Check in_late_binary_op before
838 * c-common.h (in_late_binary_op): Declare.
840 2010-11-19 Joseph Myers <joseph@codesourcery.com>
842 * c-opts.c (c_common_handle_option): Update calls to
843 set_struct_debug_option.
845 2010-11-19 Nicola Pero <nicola.pero@meta-innovation.com>
847 * c-common.h (objc_declare_protocols): Added additional argument.
848 * stub-objc.c (objc_declare_protocol): Same change.
850 2010-11-18 Nathan Froyd <froydnj@codesourcery.com>
853 * c-common.h (build_real_imag_expr): Declare.
854 * c-semantics.c (build_real_imag_expr): Define.
856 2010-11-17 Joseph Myers <joseph@codesourcery.com>
858 * c-opts.c (c_common_parse_file): Take no arguments.
859 * c-common.h (c_common_parse_file): Update prototype.
861 2010-11-16 Jakub Jelinek <jakub@redhat.com>
864 * c-common.c (warning_candidate_p): Don't track non-const calls
867 2010-11-15 Ian Lance Taylor <iant@google.com>
869 * c-lex.c (init_c_lex): Set macro debug callbacks if
870 flag_dump_go_spec is set.
872 2010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
874 * c-common.h (objc_build_incr_expr_for_property_ref): New.
875 * stub-objc.c (objc_build_incr_expr_for_property_ref): New.
877 2010-11-15 Nathan Froyd <froydnj@codesourcery.com>
879 PR preprocessor/45038
880 * c-cppbuiltin.c (c_cpp_builtins): Use different format for C++
883 2010-11-12 Joseph Myers <joseph@codesourcery.com>
885 * c-common.h (c_family_lang_mask): Declare.
886 * c-opts.c (c_family_lang_mask): Make extern.
887 * c-pragma.c (handle_pragma_diagnostic): Use
888 control_warning_option.
890 2010-11-12 Joseph Myers <joseph@codesourcery.com>
892 * c-common.c (parse_optimize_options): Update call to
894 * c-common.h (c_common_handle_option): Update prototype.
895 * c-opts.c (c_common_handle_option): Take location_t parameter and
896 pass it to other functions.
898 2010-11-11 Joseph Myers <joseph@codesourcery.com>
900 * c-opts.c (warning_as_error_callback): Remove.
901 (c_common_initialize_diagnostics): Don't call
902 register_warning_as_error_callback.
903 (c_common_handle_option): Handle -Werror=normalized= here.
905 2010-11-10 Joseph Myers <joseph@codesourcery.com>
907 * c-common.c (handle_mode_attribute): Use %' and word "signedness"
909 * c-opts.c (c_common_parse_file): Start diagnostics with lowercase
911 * c-pragma.c (handle_pragma_target, handle_pragma_optimize):
912 Remove trailing '.' from diagnostics.
913 * c.opt (Wwrite-strings_: Avoid '`' in help text.
915 2010-11-10 Joseph Myers <joseph@codesourcery.com>
917 * c-common.c (parse_optimize_options): Pass global_dc to
919 * c-opts.c (c_common_handle_option): Pass &global_options to
920 set_Wstrict_aliasing.
921 * c.opt (v): Don't mark Common or document here.
923 2010-11-06 Iain Sandoe <iains@gcc.gnu.org>
926 * c-format.c (format_type): New type gcc_objc_string_format_type.
927 (valid_stringptr_type_p): New.
928 (handle_format_arg_attribute): Use valid_stringptr_type_p ().
929 (check_format_string): Pass expected type, use
930 valid_stringptr_type_p (), check that the format string types are
931 consistent with the format specification.
932 (decode_format_attr): Warn if NSString is used outside objective-c.
933 (format_types_orig): Add NSString.
936 (check_format_arg): Handle format strings requiring an external parser.
937 first_target_format_type: New variable.
938 (handle_format_attribute): Set up first_target_format_type, pass the
939 expected format arg string type to check_format_string().
940 * c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL): New flag.
941 * stub-objc.c (objc_string_ref_type_p): New.
942 (objc_check_format_arg): New.
944 2010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
946 Fixed using the Objective-C 2.0 dot-syntax with class names.
947 * c-common.h (objc_build_class_component_ref): New.
948 * stub-objc.c (objc_build_class_component_ref): New.
950 2010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
952 * c.opt (Wproperty-assign-default): New option.
954 2010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
956 Implemented -fobjc-std=objc1 flag.
957 * c.opt (fobjc-std=objc1): New option.
959 2010-11-01 Nicola Pero <nicola.pero@meta-innovation.com>
961 Implemented format and noreturn attributes for Objective-C methods.
962 * c-common.c (handle_noreturn_attribute): Recognize 'noreturn'
963 attribute for Objective-C methods.
965 2010-10-31 Jason Merrill <jason@redhat.com>
967 * c-common.c (conversion_warning, warn_for_collisions_1): Use
970 2010-10-30 Nicola Pero <nicola.pero@meta-innovation.com>
972 Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
973 * c-common.h (enum rid): Removed RID_COPIES and RID_IVAR.
974 (objc_add_property_declaration): Removed arguments for copies and
976 (objc_build_getter_call): Renamed to
977 objc_maybe_build_component_ref.
978 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
979 (objc_is_property_ref): New.
980 * c-common.c (c_common_reswords): Removed copies and ivar.
981 * stub-objc.c (objc_add_property_declaration): Removed arguments
983 (objc_build_getter_call): Renamed to
984 objc_maybe_build_component_ref.
985 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
986 (objc_is_property_ref): New.
988 2010-10-29 Arnaud Charlet <charlet@adacore.com>
989 Matthew Gingell <gingell@adacore.com>
991 * c-ada-spec.c (separate_class_package): New function.
992 (pp_ada_tree_identifier): Prefix references to C++ classes with the
993 name of their enclosing package.
994 (print_ada_declaration): Use separate_class_package.
996 2010-10-27 Jason Merrill <jason@redhat.com>
998 * c-common.c (c_common_reswords): Add __is_literal_type.
999 * c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
1001 * c-common.c (check_case_value): Remove special C++ code.
1003 2010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
1005 * c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN,
1006 RID_RETAIN, RID_COPY and RID_NONATOMIC. Updated RID_FIRST_PATTR
1008 (objc_add_property_declaration): Added additional arguments.
1009 (objc_property_attribute_kind): Removed.
1010 (objc_set_property_attr): Removed.
1011 * c-common.c (c_common_reswords): Added readwrite, assign, retain,
1013 * stub-objc.c (objc_add_property_declaration): Added additional
1015 (objc_set_property_attr): Removed.
1017 2010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
1019 * c-common.h (objc_add_property_variable): Renamed to
1020 objc_add_property_declaration. Added location argument.
1021 * stub-objc.c (objc_add_property_variable): Same change.
1023 2010-10-23 Nicola Pero <nicola.pero@meta-innovation.com>
1025 * c-common.h (objc_maybe_printable_name): New.
1026 * stub-objc.c (objc_maybe_printable_name): New.
1028 2010-10-22 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
1029 Andrew Pinski <pinskia@gmail.com>
1031 * c-common.h (c_common_mark_addressable_vec): Declare.
1032 * c-common.c (c_common_mark_addressable_vec): New function.
1034 2010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
1036 * c-common.h (objc_set_method_type): Removed.
1037 (objc_add_method_declaration): Added boolean argument.
1038 (objc_start_method_definition): Same change.
1039 (objc_build_method_signature): Same change.
1040 * stub-objc.c (objc_set_method_type): Removed.
1041 (objc_add_method_declaration): Added boolean argument.
1042 (objc_start_method_definition): Same change.
1043 (objc_build_method_signature): Same change.
1045 2010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
1047 * c-common.h (finish_file): Removed.
1048 (objc_write_global_declarations): New.
1049 * c-opts.c (c_common_parse_file): Do not call finish_file.
1050 * stub-objc.c (objc_write_global_declarations): New.
1052 2010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
1054 Implemented parsing @synthesize and @dynamic for
1055 Objective-C/Objective-C++.
1056 * c-common.h (enum rid): Add RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
1057 (objc_add_synthesize_declaration): New.
1058 (objc_add_dynamic_declaration): New.
1059 * c-common.c (c_common_reswords): Add synthesize and dynamic.
1060 * stub-objc.c (objc_add_synthesize_declaration): New.
1061 (objc_add_dynamic_declaration): New.
1063 2010-10-18 Michael Meissner <meissner@linux.vnet.ibm.com>
1066 * c-cppbuiltin.c (mode_has_fma): Move function here from
1067 builtins.c. Don't use the fma optab, instead just use the
1068 HAVE_fma* macros, so that __FP_FAST_FMA* will be defined when
1071 2010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
1073 Merge from 'apple/trunk' branch on FSF servers.
1075 2005-11-08 Fariborz Jahanian <fjahanian@apple.com>
1078 * c-common.h (objc_non_volatilized_type): New declaration
1079 * stub-objc.c (objc_non_volatilized_type): New stub.
1081 2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
1083 Merge from 'apple/trunk' branch on FSF servers.
1085 2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
1088 * c-common.h (objc_diagnose_private_ivar): New decl.
1089 * stub-objc.c (objc_diagnose_private_ivar): New stub.
1091 2010-10-17 Iain Sandoe <iains@gcc.gnu.org>
1093 * c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
1094 * c-common.h (enum rid): Add RID_AT_PACKAGE.
1095 (objc_ivar_visibility_kind): New enum.
1096 (objc_set_visibility): Adjust prototype to use visibility enum.
1097 * stub-objc.c (objc_set_visibility): Adjust stub to use
1100 2010-10-14 Michael Meissner <meissner@linux.vnet.ibm.com>
1102 * c-cppbuiltin.c (builtin_define_float_constants): Emit
1103 __FP_FAST_FMA, __FP_FAST_FMAF, and __FP_FAST_FMAL if the machine
1104 has the appropriate fma builtins.
1105 (c_cpp_builtins): Adjust call to builtin_define_float_constants.
1107 2010-10-14 Iain Sandoe <iains@gcc.gnu.org>
1109 merge from FSF apple 'trunk' branch.
1110 2006 Fariborz Jahanian <fjahanian@apple.com>
1112 Radars 4436866, 4505126, 4506903, 4517826
1113 * c-common.c (c_common_resword): Define @property and its attributes.
1114 * c-common.h: Define property attribute enum entries.
1115 (OBJC_IS_PATTR_KEYWORD): New.
1116 (objc_property_attribute_kind): New enum.
1117 Declare objc_set_property_attr (), objc_add_property_variable (),
1118 objc_build_getter_call () and objc_build_setter_call ().
1119 * stub-objc.c (objc_set_property_attr): New stub.
1120 (objc_add_property_variable): Likewise.
1121 (objc_build_getter_call): Likewise.
1122 (objc_build_setter_call) Likewise.
1124 2010-10-13 Iain Sandoe <iains@gcc.gnu.org>
1126 merge from FSF apple 'trunk' branch.
1127 2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
1129 Radar 3803157 (method attributes)
1130 * c-common.c (handle_deprecated_attribute): Recognize
1131 objc methods as valid declarations.
1132 * c-common.h: Declare objc_method_decl ().
1133 * stub-objc.c (objc_method_decl): New stub.
1135 2010-10-08 Joseph Myers <joseph@codesourcery.com>
1137 * c-common.c (parse_optimize_options): Call
1138 decode_cmdline_options_to_array_default_mask before
1139 decode_options. Update arguments to decode_options.
1140 * c-common.h (c_common_init_options_struct): Declare.
1141 * c-opts.c (c_common_init_options_struct): New. Split out from
1142 c_common_init_options.
1144 2010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
1146 Implemented fast enumeration for Objective-C.
1147 * c-common.h (objc_finish_foreach_loop): New.
1148 * stub-objc.c (objc_finish_foreach_loop): New.
1150 2010-10-05 Joseph Myers <joseph@codesourcery.com>
1152 * c-common.h (struct diagnostic_context): Don't declare here.
1153 (c_common_initialize_diagnostics): Declare using
1154 diagnostic_context typedef.
1155 * c-opts.c (c_common_handle_option): Pass global_dc to
1156 handle_generated_option.
1158 2010-10-04 Joseph Myers <joseph@codesourcery.com>
1160 * c-opts.c (c_common_handle_option): Pass &global_options_set to
1161 handle_generated_option.
1163 2010-10-03 Ian Lance Taylor <iant@google.com>
1165 * c.opt (-fplan9-extensions): New option.
1167 2010-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1169 * c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision):
1171 (c_cpp_builtins): Call functions from cppbuiltin.c instead
1172 of duplicating code.
1174 2010-09-30 Iain Sandoe <iains@gcc.gnu.org>
1176 * c-common.c: Add two new entries for @optional
1177 and @required keywords.
1179 merge from FSF 'apple/trunk' branch.
1180 2006-01-30 Fariborz Jahanian <fjahanian@apple.com>
1183 * c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new
1184 objective-c keywords.
1185 (objc_set_method_opt): New declaration.
1186 * stub-objc.c (objc_set_method_opt): New stub.
1188 2010-09-30 Joseph Myers <joseph@codesourcery.com>
1190 * c-common.c (handle_optimize_attribute): Pass &global_options to
1191 cl_optimization_save and cl_optimization_restore.
1192 * c-opts.c (c_common_handle_option): Pass &global_options to
1193 handle_generated_option.
1194 * c-pragma.c (handle_pragma_diagnostic): Use option_flag_var.
1195 (handle_pragma_pop_options, handle_pragma_reset_options): Pass
1196 &global_options to cl_optimization_restore.
1198 2010-09-30 Nicola Pero <nicola.pero@meta-innovation.com>
1200 * c-lex.c (c_lex_with_flags): Updated comments for CPP_AT_NAME
1201 Objective-C/Objective-C++ keywords.
1203 2010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
1205 Merge from 'apple/trunk' branch on FSF servers.
1207 2005-10-04 Fariborz Jahanian <fjahanian@apple.com>
1210 * c-common.h (objc_check_global_decl): New declaration.
1211 * stub-objc.c (objc_check_global_decl): New stub.
1213 2010-09-29 Joseph Myers <joseph@codesourcery.com>
1215 * c.opt: Don't use VarExists.
1217 2010-09-29 Joseph Myers <joseph@codesourcery.com>
1219 * c-common.c (c_cpp_error): Update names of diagnostic_context
1221 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of
1222 cl_optimization members.
1223 * c-opts.c (warning_as_error_callback, c_common_handle_option,
1224 sanitize_cpp_opts, finish_options): Update names of cpp_options
1227 2010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
1229 * c-common.h (OBJC_IS_CXX_KEYWORD): New macro. Updated comments.
1230 (objc_is_reserved_word): Removed.
1231 * c-common.c: Updated comments.
1232 * c-lex.c (c_lex_with_flags): Use OBJC_IS_CXX_KEYWORD instead of
1233 objc_is_reserved_word.
1234 * stub-objc.c (objc_is_reserved_word): Removed.
1236 2010-09-28 Iain Sandoe <iains@gcc.gnu.org>
1238 * c-common.h (objc_add_method_declaration): Adjust prototype to
1240 (objc_start_method_definition): Likewise.
1241 (objc_build_keyword_decl): Likewise.
1242 * stub-objc.c:(objc_add_method_declaration): Handle attributes.
1243 (objc_start_method_definition): Likewise.
1244 (objc_build_keyword_decl): Likewise.
1246 2010-09-28 Iain Sandoe <iains@gcc.gnu.org>
1248 * c-common.h (objc_start_class_interface): Adjust prototype.
1249 (objc_start_category_interface): Likewise.
1250 (objc_start_protocol): Likewise.
1251 * stub-objc.c (objc_start_protocol): Adjust for extra argument.
1252 (objc_start_class_interface): Likewise.
1253 (objc_start_category_interface): Likewise.
1255 2010-09-27 Ian Lance Taylor <iant@google.com>
1257 * c-common.c (c_common_attribute_table): Add no_split_stack.
1258 (handle_no_split_stack_attribute): New static function.
1260 2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
1262 Merge from 'apple/trunk' branch on FSF servers.
1264 2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
1267 * c-common.h (objc_have_common_type): New declaration.
1268 * stub-objc.c (objc_have_common_type): New stub.
1270 2005-06-22 Ziemowit Laski <zlaski@apple.com>
1273 * c-common.h (objc_common_type): New prototype.
1274 * stub-objc.c (objc_common_type): New stub.
1276 2010-09-24 Jan Hubicka <jh@suse.cz>
1278 * c-common.c (handle_leaf_attribute): New function.
1279 (struct attribute_spec c_common_att): Add leaf.
1281 2010-09-22 Joseph Myers <joseph@codesourcery.com>
1283 * c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
1284 -comments-in-macros, -define-macro, -define-macro=, -dependencies,
1285 -dump, -dump=, -imacros, -imacros=, -include, -include=,
1286 -include-barrier, -include-directory, -include-directory=,
1287 -include-directory-after, -include-directory-after=,
1288 -include-prefix, -include-prefix=, -include-with-prefix,
1289 -include-with-prefix=, -include-with-prefix-after,
1290 -include-with-prefix-after=, -include-with-prefix-before,
1291 -include-with-prefix-before=, -no-integrated-cpp,
1292 -no-line-commands, -no-standard-includes, -no-warnings, -output,
1293 -output=, -pedantic, -pedantic-errors, -preprocess,
1294 -print-missing-file-dependencies, -trace-includes, -traditional,
1295 -traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
1296 -user-dependencies, -verbose, -write-dependencies,
1297 -write-user-dependencies, no-integrated-cpp, traditional): New.
1299 2010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
1302 * c-common.h (objc_start_method_definition): Return bool instead
1304 * stub-objc.c (objc_start_method_definition): Return bool instead
1307 2010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
1310 * c-common.h (objc_get_interface_ivars): New declaration.
1311 * stub-objc.c (objc_get_interface_ivars): New stub.
1313 2010-09-15 Ian Lance Taylor <iant@google.com>
1315 * c-common.c (parse_optimize_options): Do not capitalize warning
1316 messages. Remove period at end of warning message.
1318 2010-09-09 Nathan Sidwell <nathan@codesourcery.com>
1320 * c-common.c (handle_alias_ifunc_attribute): New, broken out of ...
1321 (handle_alias_attribute): ... here.
1322 (handle_ifunc_attribute): New.
1324 2010-09-06 Mark Mitchell <mark@codesourcery.com>
1326 * c-common.h (do_warn_double_promotion): Declare.
1327 * c-common.c (do_warn_double_promotion): Define.
1329 2010-09-05 Mark Mitchell <mark@codesourcery.com>
1331 * c.opt (Wdouble-promotion): New.
1333 2010-09-02 Joseph Myers <joseph@codesourcery.com>
1335 * c.opt (falt-external-templates, fhuge-objects, fvtable-gc,
1336 fvtable-thunks, fxref): Mark no longer supported in help text.
1338 2010-09-02 Joseph Myers <joseph@codesourcery.com>
1340 * c.opt (Wimport, fall-virtual, falt-external-templates,
1341 fdefault-inline, fenum-int-equiv, fexternal-templates,
1342 fguiding-decls, fhonor-std, fhuge-objects, flabels-ok,
1343 fname-mangling-version-, fnew-abi, fnonnull-objects,
1344 foptional-diags, fsquangle, fstrict-prototype, fthis-is-variable,
1345 fvtable-gc, fvtable-thunks, fxref): Mark with Ignore and Warn as
1347 (fhandle-exceptions): Mark with Alias and Warn.
1348 * c-opts.c (c_common_handle_option): Don't handle options marked
1351 2010-09-02 Joseph Myers <joseph@codesourcery.com>
1353 * c.opt (Wcomments, Werror-implicit-function-declaration,
1354 ftemplate-depth-, std=c89, std=c9x, std=gnu89, std=gnu9x,
1355 std=iso9899:1990, std=iso9899:1999, std=iso9899:199x): Mark as
1357 * c-common.c (option_codes): Use OPT_Wcomment instead of
1359 * c-opts.c (warning_as_error_callback, c_common_handle_option):
1360 Don't handle options marked as aliases.
1362 2010-08-25 Richard Guenther <rguenther@suse.de>
1364 * c-common.c (c_common_get_alias_set): Remove special
1365 handling for pointers.
1367 2010-08-20 Nathan Froyd <froydnj@codesourcery.com>
1369 * c-common.c: Use FOR_EACH_VEC_ELT.
1370 * c-gimplify.c: Likewise.
1371 * c-pragma.c: Likewise.
1373 2010-08-16 Joseph Myers <joseph@codesourcery.com>
1375 * c.opt (MDX): Change back to MD. Mark NoDriverArg instead of
1377 (MMDX): Change back to MMD. Mark NoDriverArg instead of
1379 * c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
1380 instead of OPT_MDX and OPT_MMDX.
1382 2010-08-16 Joseph Myers <joseph@codesourcery.com>
1384 * c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.
1386 2010-08-12 Joseph Myers <joseph@codesourcery.com>
1388 * c.opt (MD, MMD): Change to MDX and MMDX.
1389 * c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX.
1391 2010-08-11 Joseph Myers <joseph@codesourcery.com>
1393 * c-opts.c (c_common_handle_option): Call handle_generated_option
1394 instead of handle_option.
1396 2010-08-08 Nathan Froyd <froydnj@codesourcery.com>
1398 * c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
1399 (maybe_apply_renaming_pragma): Delete unneeded declarations.
1401 2010-08-08 Nathan Froyd <froydnj@codesourcery.com>
1403 * c-pragma.c (pending_redefinition): Declare. Declare a VEC of it.
1404 (pending_redefine_extname): Change type to a VEC.
1405 (add_to_renaming_pragma_list): Update for new type of
1406 pending_redefine_extname.
1407 (maybe_apply_renaming_pragma): Likewise.
1409 2010-08-04 Arnaud Charlet <charlet@adacore.com>
1411 * c-ada-spec.c (dump_ada_template): Mark underlying instance type as
1413 (dump_generic_ada_node): Code clean up. Use TREE_VISITED flag to
1414 decide whether a type has already been declared/seen.
1415 Do not go to the original type.
1416 (dump_nested_types): New parameter forward.
1417 Generate forward declaration if needed and mark type as visited.
1418 (print_ada_declaration): Call dump_nested_types if not already done.
1419 Mark types as visited.
1421 2010-08-03 Joseph Myers <joseph@codesourcery.com>
1423 * c.opt (-print-pch-checksum): Remove option.
1424 * c-opts.c (c_common_handle_option): Don't handle
1425 OPT_print_pch_checksum.
1427 2010-07-27 Joseph Myers <joseph@codesourcery.com>
1429 * c-common.h (c_common_handle_option): Update prototype and return
1431 * c-opts.c (c_common_handle_option): Update prototype and return
1432 value type. Update calls to handle_option and
1433 enable_warning_as_error.
1435 2010-07-27 Jakub Jelinek <jakub@redhat.com>
1438 * c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
1440 2010-07-27 Joseph Myers <joseph@codesourcery.com>
1442 * c-common.h (c_common_missing_argument): Remove.
1443 * c-opts.c (c_common_missing_argument): Remove.
1444 * c.opt (A, D, F, I, MD, MMD, MQ, MT, U, fconstant-string-class=,
1445 idirafter, imacros, include, isysroot, isystem, iquote): Add
1447 * c-objc-common.h (LANG_HOOKS_MISSING_ARGUMENT): Remove.
1449 2010-07-27 Joseph Myers <joseph@codesourcery.com>
1451 * c-common.h (c_common_option_lang_mask,
1452 c_common_initialize_diagnostics, c_common_complain_wrong_lang_p):
1454 (c_common_init_options): Update prototype.
1455 * c-opts.c (c_common_option_lang_mask): New.
1456 (c_common_initialize_diagnostics): Split out of
1457 c_common_init_options.
1458 (accept_all_c_family_options, c_common_complain_wrong_lang_p):
1460 (c_common_init_options): Update prototype. Use decoded options in
1461 search for -lang-asm.
1463 2010-07-15 Nathan Froyd <froydnj@codesourcery.com>
1465 * c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
1466 * c-format.c: Likewise.
1468 2010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
1470 * c-common.h: Include diagnostic-core.h. Error if already
1472 * c-semantics.c: Do not define GCC_DIAG_STYLE here.
1474 2010-07-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
1476 * c-family/c-common.c (IN_GCC_FRONTEND): Do not undef.
1477 Do not include expr.h
1478 (vector_mode_valid_p): Move here.
1480 2010-06-21 DJ Delorie <dj@redhat.com>
1482 * c-pragma.c (handle_pragma_diagnostic): Add push/pop,
1483 allow these pragmas anywhere.
1485 2010-06-14 Jakub Jelinek <jakub@redhat.com>
1488 * c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
1489 (lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
1490 (lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
1491 ggc_strdup instead of xstrdup.
1493 2010-06-10 Jakub Jelinek <jakub@redhat.com>
1495 * c-cppbuiltin.c: Include cpp-id-data.h.
1496 (lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
1497 (lazy_hex_fp_value): New function.
1498 (builtin_define_with_hex_fp_value): Provide definitions lazily.
1500 2010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
1502 * c-gimplify.c: Do not include tree-flow.h
1504 2010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
1507 * c-common.c: Rename targetm member:
1508 targetm.enum_va_list -> targetm.enum_va_list_p
1510 2010-06-28 Anatoly Sokolov <aesok@post.ru>
1512 * c-common.c (shorten_compare): Adjust call to force_fit_type_double.
1514 2010-06-28 Steven Bosscher <steven@gcc.gnu.org>
1516 * c-cppbuiltin.c: Do not include except.h.
1518 2010-06-24 Andi Kleen <ak@linux.intel.com>
1520 * c-common.c (warn_for_omitted_condop): New.
1521 * c-common.h (warn_for_omitted_condop): Add prototype.
1523 2010-06-21 Joseph Myers <joseph@codesourcery.com>
1525 * c.opt (lang-objc): Remove.
1526 * c-opts.c (c_common_handle_option): Don't handle OPT_lang_objc.
1528 2010-06-21 Joern Rennecke <joern.rennecke@embecosm.com>
1530 * c-opts.c: Include "tm_p.h".
1532 2010-06-20 Joseph Myers <joseph@codesourcery.com>
1534 * c-common.c (parse_optimize_options): Update call to
1537 2010-06-18 Nathan Froyd <froydnj@codesourcery.com>
1539 * c-common.c (record_types_used_by_current_var_decl): Adjust for
1540 new type of types_used_by_cur_var_decl.
1542 2010-06-17 Joern Rennecke <joern.rennecke@embecosm.com>
1545 * c-cppbuiltin.c (builtin_define_with_hex_fp_value): Add cast
1546 for C++ standard compliance.
1548 2010-06-16 Jason Merrill <jason@redhat.com>
1550 * c.opt: Add -Wnoexcept.
1552 2010-06-16 Richard Guenther <rguenther@suse.de>
1555 * c-common.c (c_common_truthvalue_conversion): Remove
1556 premature and wrong optimization concering ADDR_EXPRs.
1558 2010-06-15 Arnaud Charlet <charlet@adacore.com>
1560 * c-ada-spec.c (dump_sloc): Remove column info.
1561 (is_simple_enum): New function.
1562 (dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada
1563 enum types when relevant.
1565 2010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
1567 * c-common.c (conversion_warning): Warn at expression
1570 2010-06-10 Joseph Myers <joseph@codesourcery.com>
1572 * c-opts.c (c_common_handle_option): Don't handle
1575 2010-06-08 Laurynas Biveinis <laurynas.biveinis@gmail.com>
1577 * c-pragma.c (push_alignment): Use typed GC allocation.
1578 (handle_pragma_push_options): Likewise.
1580 * c-common.c (parse_optimize_options): Likewise.
1582 * c-common.h (struct sorted_fields_type): Add variable_size GTY
1585 2010-06-07 Joseph Myers <joseph@codesourcery.com>
1587 * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
1588 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
1589 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
1590 flag_signed_bitfields, warn_strict_null_sentinel,
1591 flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
1592 flag_gen_declaration, flag_no_gnu_keywords,
1593 flag_implement_inlines, flag_implicit_templates,
1594 flag_implicit_inline_templates, flag_optional_diags,
1595 flag_elide_constructors, flag_default_inline, flag_rtti,
1596 flag_conserve_space, flag_access_control, flag_check_new,
1597 flag_new_for_scope, flag_weak, flag_working_directory,
1598 flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
1599 flag_enforce_eh_specs, flag_threadsafe_statics,
1600 flag_pretty_templates): Remove.
1601 * c-common.h (flag_preprocess_only, flag_nil_receivers,
1602 flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
1603 flag_replace_objc_classes, flag_undef, flag_no_builtin,
1604 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
1605 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
1606 flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
1607 flag_no_gnu_keywords, flag_implement_inlines,
1608 flag_implicit_templates, flag_implicit_inline_templates,
1609 flag_optional_diags, flag_elide_constructors, flag_default_inline,
1610 flag_rtti, flag_conserve_space, flag_access_control,
1611 flag_check_new, flag_new_for_scope, flag_weak,
1612 flag_working_directory, flag_use_cxa_atexit,
1613 flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
1614 flag_threadsafe_statics, flag_pretty_templates,
1615 warn_strict_null_sentinel): Remove.
1616 * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
1617 fbuiltin, fcheck-new, fconserve-space, felide-constructors,
1618 fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
1619 fimplicit-inline-templates, fimplicit-templates,
1620 flax-vector-conversions, fms-extensions, fnil-receivers,
1621 fnonansi-builtins, fpretty-templates, freplace-objc-classes,
1622 frtti, fshort-double, fshort-enums, fshort-wchar,
1623 fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
1624 funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
1625 fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
1626 gen-decls, undef): Use Var.
1627 (fdefault-inline, foptional-diags): Document as doing nothing.
1628 * c-opts.c (c_common_handle_option): Remove cases for options now
1629 using Var. Mark ignored options as such.
1631 2010-06-05 Steven Bosscher <steven@gcc.gnu.org>
1633 * c-common.c: Moved to here from parent directory.
1634 * c-common.def: Likewise.
1635 * c-common.h: Likewise.
1636 * c-cppbuiltin.c: Likewise.
1637 * c-dump.c: Likewise.
1638 * c-format.c: Likewise.
1639 * c-format.h : Likewise.
1640 * c-gimplify.c: Likewise.
1641 * c-lex.c: Likewise.
1642 * c-omp.c: Likewise.
1644 * c-opts.c: Likewise.
1645 * c-pch.c: Likewise.
1646 * c-ppoutput.c: Likewise.
1647 * c-pragma.c: Likewise.
1648 * c-pragma.h: Likewise.
1649 * c-pretty-print.c: Likewise.
1650 * c-pretty-print.h: Likewise.
1651 * c-semantics.c: Likewise.
1652 * stub-objc.c: Likewise.
1654 * c-common.c: Include gt-c-family-c-common.h.
1655 * c-pragma.c: Include gt-c-family-c-pragma.h.
1657 Copyright (C) 2010, 2011 Free Software Foundation, Inc.
1659 Copying and distribution of this file, with or without modification,
1660 are permitted in any medium without royalty provided the copyright
1661 notice and this notice are preserved.