OSDN Git Service

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