OSDN Git Service

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