OSDN Git Service

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