OSDN Git Service

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