]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/c-family/ChangeLog
Daily bump.
[thirdparty/gcc.git] / gcc / c-family / ChangeLog
CommitLineData
76d340ac 12012-04-27 Ollie Wild <aaw@google.com>
2
3 * c-common.c: Add CPP_W_LITERAL_SUFFIX mapping.
4 * c-opts.c (c_common_handle_option): Handle OPT_Wliteral_suffix.
5 * c.opt: Add Wliteral-suffix.
6
29438999 72012-04-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
8
9 PR c/44774
10 * c.opt (Wpedantic): New.
11 (pedantic): Alias Wpedantic.
12 * c-opts.c (c_common_handle_option): Replace -pedantic with -Wpedantic.
13 (c_common_post_options): Likewise.
14 (sanitize_cpp_opts): Likewise.
15 * c-lex.c (interpret_float): Likewise.
16 * c-format.c (check_format_types): Likewise.
17 * c-common.c (pointer_int_sum): Likewise.
18 (c_sizeof_or_alignof_type): Likewise.
19 (c_add_case_label): Likewise.
20 (c_do_switch_warnings): Likewise.
21 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
22
4f9d6b8b 232012-04-15 Jason Merrill <jason@redhat.com>
24
25 PR c++/52818
26 * c-format.c (CPLUSPLUS_STD_VER): C++11 inherits from C99.
27 (C_STD_NAME): Distinguish between C++98 and C++11.
28
74bdbe96 292012-04-11 Eric Botcazou <ebotcazou@adacore.com>
30
31 PR target/52624
32 * c-common.h (uint16_type_node): Rename into...
33 (c_uint16_type_node): ...this.
34 * c-common.c (c_common_nodes_and_builtins): Adjust for above renaming.
35 * c-cppbuiltin.c (builtin_define_stdint_macros): Likewise.
36
3d177e8c 372012-04-10 Manuel López-Ibáñez <manu@gcc.gnu.org>
38
39 * c-common.c (warn_if_unused_value): Move definition to here.
40 * c-common.h (warn_if_unused_value): Move declaration to here.
41
6a9a958f 422012-03-23 William Bader <williambader@hotmail.com>
43
44 * c-lex.c (c_lex_with_flags): Avoid declarations after stmts.
45
543efdbe 462012-03-20 Jason Merrill <jason@redhat.com>
47
48 * c-common.h (enum cxx_dialect): Add cxx1y.
49 * c-common.c (c_common_nodes_and_builtins): Use >= for cxx_dialect
50 test.
51 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
52 * c-opts.c (c_common_post_options): Likewise.
53 (set_std_cxx1y): New.
54 (c_common_handle_option): Call it.
55 * c.opt (-std=c++1y, -std=gnu++1y): New flags.
56
62206d34 572012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
58
59 PR c++/14710
60 * c.opt ([Wuseless-cast]): Add.
61
fadf62f4 622012-03-16 Richard Guenther <rguenther@suse.de>
63
64 * c-pretty-print.c (pp_c_initializer_list): Adjust.
65
249faa35 662012-03-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
67
68 PR c++/44783
69 * c.opt (ftemplate-backtrace-limit) Add.
70
126b6848 712012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
72
73 * c-cppbuiltin.c (c_cpp_builtins): Remove #pragma extern_prefix
74 handling.
75 * c-pragma.c (handle_pragma_extern_prefix): Remove.
76 (init_pragma): Don't register extern_prefix.
77
a51edb4c 782012-03-12 Richard Guenther <rguenther@suse.de>
79
80 * c-common.c (c_common_get_narrower): Use c_common_type_for_size.
81 (builtin_type_for_size): Likewise.
82
0f6a7cb7 832012-02-13 Jakub Jelinek <jakub@redhat.com>
84
85 PR c++/52215
86 * c-common.c (sync_resolve_params): Don't decide whether to convert
87 or not based on TYPE_SIZE comparison, convert whenever arg_type
88 is unsigned INTEGER_TYPE.
89
0779e32c 902012-02-06 Paolo Carlini <paolo.carlini@oracle.com>
91
92 PR c/52118
93 * c.opt ([Wunused-local-typedefs]): Fix description.
94
baec58e1 952012-01-24 Mike Stump <mikestump@comcast.net>
96
97 * c-common.c (c_common_type_for_mode): Match signed/unsigned types
98 exactly.
99
c779d8cc 1002012-01-18 Richard Guenther <rguenther@suse.de>
101
102 * c-opts.c (c_common_post_options): Reset LTO flags if
103 we are about to generate a PCH.
104
ee917d24 1052012-01-17 Paolo Carlini <paolo.carlini@oracle.com>
106
107 PR c++/51777
108 * c-pretty-print.c (pp_c_integer_constant): For unsigned constants
109 use pp_unsigned_wide_integer.
110
90e2341f 1112012-01-10 Richard Guenther <rguenther@suse.de>
112
113 PR middle-end/51806
114 * c-opts.c (c_common_handle_option): Move -Werror handling
115 to language independent code.
116
9ea022ce 1172012-01-05 Richard Guenther <rguenther@suse.de>
118
119 PR middle-end/51764
120 * c.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move here
121 from common.opt.
122
3df19e1b 1232011-12-30 Paolo Carlini <paolo.carlini@oracle.com>
124
125 PR c++/51316
126 * c-common.c (c_sizeof_or_alignof_type): In C++ allow for alignof
127 of array types with an unknown bound.
128
32074525 1292011-12-20 Joseph Myers <joseph@codesourcery.com>
130
131 * c-common.c (flag_isoc99): Update comment to refer to C11.
132 (flag_isoc1x): Change to flag_isoc11.
133 * c-common.h (flag_isoc99): Update comment to refer to C11.
134 (flag_isoc1x): Change to flag_isoc11.
135 * c-cppbuiltin.c (cpp_atomic_builtins): Change comment to refer to
136 C11.
137 * c-opts.c (set_std_c1x): Change to set_std_c11.
138 (c_common_handle_option): Handle OPT_std_c11 and OPT_std_gnu11.
139 Call set_std_c11.
140 (set_std_c89, set_std_c99, set_std_c11): Use flag_isoc11.
141 (set_std_c1): Use CLK_STDC11 and CLK_GNUC11.
142 * c.opt (std=c1x): Change to std=c11. Document as non-draft
143 standard.
144 (std=c1x, std=iso9899:2011): Add as aliases of std=c11.
145 (std=gnu1x): Change to std=gnu11. Refer to non-draft standard.
146 (std=gnu1x): Make alias of std=gnu11.
147
fca86134 1482011-12-19 Jason Merrill <jason@redhat.com>
149
150 PR c++/51228
151 * c-common.c (handle_transparent_union_attribute): Check the first
152 field if the type is complete.
153
aa4313eb 1542011-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
155
156 PR libstdc++/51365
157 * c-common.c (RID_IS_FINAL): Add.
158 * c-common.h (RID_IS_FINAL): Add.
159
3f3d5ad4 1602011-11-30 Iain Sandoe <iains@gcc.gnu.org>
161
162 * c.opt (fgnu-runtime): Provide full description.
163 (fnext-runtime): Likewise.
164 * c-opts.c (OPT_fgnu_runtime, OPT_fnext_runtime) Remove.
165
c4606d19 1662011-11-28 Andrew MacLeod <amacleod@redhat.com>
167
168 * c-cpp-builtin.c (cpp_atomic_builtins):New. Emit all atomic
169 predefines in one place. Add LOCK_FREE predefines.
170 (c_cpp_builtins): Move Legacy HAVE_SYNC predefines to
171 new func.
172
1d581089 1732011-11-24 Andrew MacLeod <amacleod@redhat.com>
174
175 PR c/51256
176 * c-common.c (get_atomic_generic_size): Check for various error
177 conditions
178 (resolve_overloaded_atomic_exchange,
179 resolve_overloaded_atomic_compare_exchange,
180 resolve_overloaded_atomic_load, resolve_overloaded_atomic_store): Return
181 error_mark_node for error conditions.
182
6aa221fa 1832011-11-08 Richard Guenther <rguenther@suse.de>
184
185 PR middle-end/51010
186 c-family/
187
4c0315d0 1882011-11-07 Richard Henderson <rth@redhat.com>
189 Aldy Hernandez <aldyh@redhat.com>
190 Torvald Riegel <triegel@redhat.com>
191
192 Merged from transactional-memory.
193
194 * c-common.c (handle_tm_wrap_attribute,
195 handle_tm_attribute, ignore_attribute, parse_tm_stmt_attr): New.
196 (struct c_common_reswords): Added __transaction* keywords.
197 (struct c_common_attribute_table): Added transaction* and tm_regparm
198 attributes.
199 * c-common.h: Added RID_TRANSACTION*. Added TM_ATTR* and TM_STMT*
200 masks.
201 (parse_tm_stmt_attr, tm_attr_to_mask, tm_mask_to_attr,
202 find_tm_attribute): Declare.
203
920f5a70 2042011-11-07 Jason Merrill <jason@redhat.com>
205
206 PR c++/35688
207 * c-common.c, c-common.h: Revert yesterday's changes.
208
b4f861b4 2092011-11-06 Jason Merrill <jason@redhat.com>
210
211 PR c++/35688
212 * c-common.c (decl_has_visibility_attr): Split out from...
213 (c_determine_visibility): ...here.
214 * c-common.h: Declare it.
215
83e25171 2162011-11-06 Joseph Myers <joseph@codesourcery.com>
217
218 * c-common.c (c_common_reswords): Add _Alignas and _Alignof.
219 (c_sizeof_or_alignof_type): Diagnose alignof applied to a function
220 type.
221 (check_user_alignment): New. Split out of
222 handle_aligned_attribute. Disallow integer constants with
223 noninteger types. Conditionally allow zero.
224 (handle_aligned_attribute): Use check_user_alignment.
225 * c-common.h (RID_ALIGNAS, check_user_alignment): New.
226
1cd6e20d 2272011-11-06 Andrew MacLeod <amacleod@redhat.com>
228 Richard Henderson <rth@redhat.com>
229
230 Merged from cxx-mem-model.
231
232 * c-cppbuiltin.c (c_cpp_builtins): Test both atomic and sync patterns.
233 * c-common.c (sync_resolve_params, sync_resolve_return): Only tweak
234 parameters that are the same type size.
235 (get_atomic_generic_size): New. Find size of generic
236 atomic function parameters and do typechecking.
237 (add_atomic_size_parameter): New. Insert size into parameter list.
238 (resolve_overloaded_atomic_exchange): Restructure __atomic_exchange to
239 either __atomic_exchange_n or external library call.
240 (resolve_overloaded_atomic_compare_exchange): Restructure
241 __atomic_compare_exchange to either _n variant or external library call.
242 (resolve_overloaded_atomic_load): Restructure __atomic_load to either
243 __atomic_load_n or an external library call.
244 (resolve_overloaded_atomic_store): Restructure __atomic_store to either
245 __atomic_store_n or an external library call.
246 (resolve_overloaded_builtin): Handle new __atomic builtins.
247
7549df0d 2482011-11-04 Eric Botcazou <ebotcazou@adacore.com>
249
250 PR c++/50608
251 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1.
252 (fold_offsetof_1): Make global. Remove STOP_REF argument and adjust.
253 <INDIRECT_REF>: Return the argument.
254 <ARRAY_REF>: Remove special code for negative offset.
255 Call fold_build_pointer_plus instead of size_binop.
256 (fold_offsetof): Remove STOP_REF argument and adjust.
257 * c-common.h (fold_offsetof_1): Declare.
258 (fold_offsetof): Remove STOP_REF argument.
259
7e783eb3 2602011-11-02 Paolo Carlini <paolo.carlini@oracle.com>
261
262 PR c++/50810
263 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
264 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
265 Wnarrowing for C++0x and C++98.
266 * c.opt ([Wnarrowing]): Update.
267
8fe701f5 2682011-11-01 Paolo Carlini <paolo.carlini@oracle.com>
269
270 PR c++/44277
271 * c.opt: Add Wzero-as-null-pointer-constant.
272
0d84dc2d 2732011-10-31 Jason Merrill <jason@redhat.com>
274
67031f52 275 * c.opt (-fdeduce-init-list): Off by default.
276
0d84dc2d 277 PR c++/50920
278 * c-common.h (cxx_dialect): Add cxx11 and cxx03.
279 * c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03,
280 and -Wc++11-compat.
281 * c-opts.c (set_std_cxx11): Rename from set_std_cxx0x.
282
66f24c41 2832011-10-27 Roberto Agostino Vitillo <ravitillo@lbl.gov>
284
285 PR c++/30066
286 * c.opt (fvisibility-inlines-hidden): Description change.
287
244db24d 2882011-10-26 Ed Smith-Rowland <3dw4rd@verizon.net>
289
290 Implement C++11 user-defined literals.
291 * c-common.c (build_userdef_literal): New.
292 * c-common.def: New tree code.
293 * c-common.h (tree_userdef_literal): New tree struct and accessors.
294 * c-lex.c (interpret_float): Add suffix parm.
295 (c_lex_with_flags): Build literal tokens.
296
235be70f 2972011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
298
299 PR c++/50841
300 Revert:
301 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
302
303 PR c++/50810
304 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
305 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
306 Wnarrowing for C++0x and C++98.
307 * c.opt ([Wnarrowing]): Update.
308
4fe0fb1c 3092011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
310
311 PR c++/50810
312 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
313 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
314 Wnarrowing for C++0x and C++98.
315 * c.opt ([Wnarrowing]): Update.
316
5f7504f9 3172011-10-21 Paolo Carlini <paolo.carlini@oracle.com>
318
319 PR c++/45385
320 * c-common.c (conversion_warning): Remove code looking for
321 artificial operands.
322
2a688977 3232011-10-18 Dodji Seketeli <dodji@redhat.com>
324
325 PR bootstrap/50760
326 * c-lex.c (fe_file_change): Use LINEMAP_SYSP when
327 !NO_IMPLICIT_EXTERN_C.
328
326e3391 3292011-10-17 Michael Spertus <mike_spertus@symantec.com>
330
331 * c-common.c (c_common_reswords): Add __bases,
332 __direct_bases.
333 * c-common.h: Add RID_BASES and RID_DIRECT_BASES.
334
3352011-10-17 Paolo Carlini <paolo.carlini@oracle.com>
336
337 PR c++/50757
338 * c.opt ([Wnonnull]): Add C++ and Objective-C++.
339
62db153a 3402011-10-15 Tom Tromey <tromey@redhat.com>
341 Dodji Seketeli <dodji@redhat.com>
342
343 * c.opt (fdebug-cpp): New option.
344 * c-opts.c (c_common_handle_option): Handle the option.
345 * c-ppoutput.c (maybe_print_line_1): New static function. Takes an
346 output stream in parameter. Factorized from ...
347 (maybe_print_line): ... this. Dump location debug information when
348 -fdebug-cpp is in effect.
349 (print_line_1): New static function. Takes an output stream in
350 parameter. Factorized from ...
351 (print_line): ... here. Dump location information when -fdebug-cpp
352 is in effect.
353 (scan_translation_unit): Dump location information when
354 -fdebug-cpp is in effect.
355
ce70f433 3562011-10-15 Tom Tromey <tromey@redhat.com>
357 Dodji Seketeli <dodji@redhat.com>
358
359 * c.opt (ftrack-macro-expansion): New option. Handle it with and
360 without argument.
361 * c-opts.c (c_common_handle_option)<case
362 OPT_ftrack_macro_expansion_, case OPT_ftrack_macro_expansion>: New
363 cases. Handle -ftrack-macro-expansion with and without argument.
364
97bfb9ef 3652011-10-15 Tom Tromey <tromey@redhat.com>
366 Dodji Seketeli <dodji@redhat.com>
367
368 * c-ppoutput.c (scan_translation_unit, maybe_print_line)
369 (print_line, cb_define, do_line_change): Adjust to avoid touching
370 the internals of struct line_map. Use the public API instead.
371 * c-pch.c (c_common_read_pch): Likewise.
372 * c-lex.c (fe_file_change): Likewise.
373
326e3391 3742011-10-14 Paolo Carlini <paolo.carlini@oracle.com>
375
376 PR c++/17212
377 * c.opt ([Wformat-zero-length]): Add C++ and Objective-C++.
378
3792011-10-11 Paolo Carlini <paolo.carlini@oracle.com>
380
381 PR c++/33067
382 * c-pretty-print.c (pp_c_floating_constant): Output
383 max_digits10 (in the ISO C++ WG N1822 sense) decimal digits.
384
b9a16870 3852011-10-11 Michael Meissner <meissner@linux.vnet.ibm.com>
386
387 * c-common.c (def_builtin_1): Delete old interface with two
388 parallel arrays to hold standard builtin declarations, and replace
389 it with a function based interface that can support creating
390 builtins on the fly in the future. Change all uses, and poison
391 the old names. Make sure 0 is not a legitimate builtin index.
392 * c-omp.c (c_finish_omp_barrier): Ditto.
393 (c_finish_omp_taskwait): Ditto.
394 (c_finish_omp_flush): Ditto.
395
c7964868 3962011-10-11 Tristan Gingold <gingold@adacore.com>
397
398 * c.opt: (fallow-parameterless-variadic-functions): New.
399
a4e3ffad 4002011-09-08 Dodji Seketeli <dodji@redhat.com>
401
402 PR c++/33255 - Support -Wunused-local-typedefs warning
403 * c-common.h (struct c_language_function::local_typedefs): New
404 field.
405 (record_locally_defined_typedef, maybe_record_typedef_use)
406 (maybe_warn_unused_local_typedefs): Declare new functions.
407 * c-common.c (record_locally_defined_typedef)
408 (maybe_record_typedef_use)
409 (maybe_warn_unused_local_typedefs): Define new functions.
410 * c.opt: Declare new -Wunused-local-typedefs flag.
411
737a23cc 4122011-09-06 Eric Botcazou <ebotcazou@adacore.com>
413
414 PR middle-end/50266
415 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Fold offsetof-like
416 computations.
417
7542c3b4 4182011-09-05 Richard Guenther <rguenther@suse.de>
419
420 * c-common.c (complete_array_type): Use ssize_int (-1) instead
421 of integer_minus_one_node for empty array upper bounds.
422
1dc92c59 4232011-08-28 Dodji Seketeli <dodji@redhat.com>
424
425 * c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as
426 it's the first time it's being called on this main TU.
427
2bdf2b6e 4282011-08-24 Richard Guenther <rguenther@suse.de>
429
430 PR c/49396
431 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional.
432
4332011-08-22 Gabriel Charette <gchare@google.com>
6ea2c7a3 434
435 * c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens
436 defined in cpp_init_builtins and c_cpp_builtins.
437
bff4ad11 4382011-08-19 Joseph Myers <joseph@codesourcery.com>
439
440 * c-common.c (c_common_reswords): Add __builtin_complex.
441 * c-common.h (RID_BUILTIN_COMPLEX): New.
442
985c6e3a 4432011-08-18 Joseph Myers <joseph@codesourcery.com>
444
445 * c-common.c (c_common_reswords): Add _Noreturn.
446 (keyword_is_function_specifier): Handle RID_NORETURN.
447 * c-common.h (RID_NORETURN): New.
448
7dfa155b 4492011-08-10 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
450
451 * c-common.c (unsafe_conversion_p): New function. Check if it is
452 unsafe to convert an expression to the type.
453 (conversion_warning): Adjust, use unsafe_conversion_p.
454 * c-common.h (unsafe_conversion_p): New function declaration.
455
2169f33b 4562011-08-02 Jakub Jelinek <jakub@redhat.com>
457
458 * c-common.h (c_finish_omp_atomic): Adjust prototype.
459 (c_finish_omp_taskyield): New prototype.
460 * c-omp.c (c_finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1
461 arguments. Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and
462 OMP_ATOMIC_CAPTURE_NEW in addition to OMP_ATOMIC. If LHS1
463 or RHS1 have side-effects, evaluate those too in the right spot,
464 if it is a decl and LHS is also a decl, error out if they
465 aren't the same.
466 (c_finish_omp_taskyield): New function.
467 * c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP to 201107.
468 * c-pragma.c (omp_pragmas): Add taskyield.
469 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKYIELD.
470 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FINAL and
471 PRAGMA_OMP_CLAUSE_MERGEABLE.
472
ab77850e 4732011-07-25 Dodji Seketeli <dodji@redhat.com>
474
475 * c-common.h (set_underlying_type): Remove parm name from
476 declaration.
477
6ee97920 4782011-07-25 Romain Geissler <romain.geissler@gmail.com>
479
480 * c-pretty-print.h: Search c-common.h in c-family.
481
dc251364 4822011-07-22 Jason Merrill <jason@redhat.com>
483
1a2a35f0 484 PR c++/49793
485 * c.opt (Wnarrowing): New.
486
27282252 487 PR c++/30112
488 * c-common.h: Declare c_linkage_bindings.
489 * c-pragma.c (handle_pragma_redefine_extname): Use it.
490
dc251364 491 PR c++/49813
492 * c-opts.c (set_std_cxx0x): Set flag_isoc94 and flag_isoc99.
493 * c-pretty-print.c (pp_c_cv_qualifiers): Check c_dialect_cxx as well
494 as flag_isoc99 for 'restrict'.
495 (pp_c_specifier_qualifier_list): Likewise for _Complex.
496
fc501191 4972011-07-21 Ian Lance Taylor <iant@google.com>
498
499 PR middle-end/49705
500 * c-common.c (c_disable_warnings): New static function.
501 (c_enable_warnings): New static function.
502 (c_fully_fold_internal): Change local unused_p to bool. Call
503 c_disable_warnings and c_enable_warnings rather than change
504 c_inhibit_evaluation_warnings.
505
07b8f133 5062011-07-20 Jason Merrill <jason@redhat.com>
507
508 PR c++/6709 (DR 743)
509 PR c++/42603 (DR 950)
510 * c-common.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move from cp/parser.h.
511 (CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise.
512 (CPP_DECLTYPE): New.
513 * c-common.c (c_parse_error): Handle CPP_DECLTYPE.
514
2cc66f2a 5152011-07-19 Richard Guenther <rguenther@suse.de>
516
517 * c-common.c (pointer_int_sum): Use fold_build_pointer_plus.
518 * c-omp.c (c_finish_omp_for): Likewise.
519
3c802a1e 5202011-07-12 Eric Botcazou <ebotcazou@adacore.com>
521
522 * c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop
523 body on the next line.
524
98a33d9f 5252011-07-08 Jason Merrill <jason@redhat.com>
526
3115bda0 527 PR c++/45437
528 * c-omp.c (check_omp_for_incr_expr): Handle preevaluation.
529
98a33d9f 530 PR c++/49673
531 * c-common.c (c_apply_type_quals_to_decl): Don't check
532 TYPE_NEEDS_CONSTRUCTING.
533
c38a75b7 5342011-07-06 Richard Guenther <rguenther@suse.de>
535
536 * c-common.c (c_common_nodes_and_builtins):
537 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
538
e593356b 5392011-07-05 Richard Guenther <rguenther@suse.de>
540
541 * c-common.c (c_common_nodes_and_builtins): Build all common
542 tree nodes first.
543
fca0886c 5442011-06-27 Jakub Jelinek <jakub@redhat.com>
545
a68f7a8d 546 * c-common.h (c_tree_chain_next): New static inline function.
547
fca0886c 548 * c-common.c (check_builtin_function_arguments): Handle
549 BUILT_IN_ASSUME_ALIGNED.
550
2797f13a 5512011-06-21 Andrew MacLeod <amacleod@redhat.com>
552
553 * c-common.c: Add sync_ or SYNC__ to builtin names.
554 * c-omp.c: Add sync_ or SYNC__ to builtin names.
9cad95b7 555
5562011-06-20 Pierre Vittet <piervit@pvittet.com>
557
558 * c-pragma.h (pragma_handler_1arg, pragma_handler_2arg): New
559 handler.
560 (gen_pragma_handler): New union.
561 (internal_pragma_handler): New type.
562 (c_register_pragma_with_data)
563 (c_register_pragma_with_expansion_and_data): New functions.
564
565 * c-pragma.c (registered_pragmas, c_register_pragma_1)
566 (c_register_pragma, c_register_pragma_with_expansion)
567 (c_invoke_pragma_handler): Changed to work with
568 internal_pragma_handler.
569 (c_register_pragma_with_data)
570 (c_register_pragma_with_expansion_and_data): New functions.
571
218e3e4e 5722011-06-14 Joseph Myers <joseph@codesourcery.com>
573
574 * c-common.c: Include common/common-target.h.
575 (handle_section_attribute): Use
576 targetm_common.have_named_sections.
577 * c-cppbuiltin.c: Include common/common-target.h.
578 (c_cpp_builtins): Use targetm_common.except_unwind_info.
579
41e53ed2 5802011-06-10 Richard Guenther <rguenther@suse.de>
581
582 * c-pretty-print.c (pp_c_type_specifier): Use pp_c_identifier
583 to print a IDENTIFIER_NODE.
584
a6f06169 5852011-06-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
586 Joseph Myers <joseph@codesourcery.com>
587
588 * c.opt (fbuilding-libgcc): New option.
589 * c-cppbuiltin.c (c_cpp_builtins): Define
590 __LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc.
591
1ea9269b 5922011-06-07 Jason Merrill <jason@redhat.com>
593
8ce59854 594 * c-common.c (max_tinst_depth): Lower default to 900.
595
1ea9269b 596 * c-format.c (gcc_cxxdiag_char_table): Add 'S' format.
597
1af0124d 5982011-06-07 Richard Guenther <rguenther@suse.de>
599
600 * c-common.c (c_common_nodes_and_builtins): Do not set
601 size_type_node or call set_sizetype.
602
0e9a4c01 6032011-06-07 Dodji Seketeli <dodji@redhat.com>
604
605 PR debug/49130
606 * c-pretty-print.c (pp_c_integer_constant): Consider the canonical
607 type when using pointer comparison to compare types.
608
90b40725 6092011-06-02 Jonathan Wakely <jwakely.gcc@gmail.com>
610
611 * c.opt: Add -Wdelete-non-virtual-dtor.
612 * c-opts.c (c_common_handle_option): Include it in -Wall.
613
fc9c9e87 6142011-05-30 Nathan Froyd <froydnj@gcc.gnu.org>
615
616 PR bootstrap/49190
617
618 Revert:
619 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
620
621 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
622 not tree_common.
623
d0389adc 6242011-05-27 Jakub Jelinek <jakub@redhat.com>
625
626 PR c++/49165
627 * c-common.c (c_common_truthvalue_conversion) <case COND_EXPR>: For
628 C++ don't call c_common_truthvalue_conversion on void type arms.
629
cacfdc02 6302011-05-27 Nathan Froyd <froydnj@codesourcery.com>
631
632 * c-common.h (struct stmt_tree_s) [x_cur_stmt_list]: Change to a VEC.
633 (stmt_list_stack): Define.
634 (cur_stmt_list): Adjust for new type of x_cur_stmt_list.
635 * c-semantics.c (push_stmt_list, pop_stmt_list): Likewise.
636
027fc6ef 6372011-05-26 Nathan Froyd <froydnj@codesourcery.com>
638
639 * c-common.c (warning_candidate_p): Check for BLOCKs.
640
f21317a1 6412011-05-26 Nathan Froyd <froydnj@codesourcery.com>
642
643 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
644 not tree_common.
645
789e953d 6462011-05-25 Jakub Jelinek <jakub@redhat.com>
647
648 * c-common.c (def_fn_type): Remove extra va_end.
649
7f506bca 6502011-05-23 Jason Merrill <jason@redhat.com>
651
652 PR c++/48106
653 * c-common.c (c_common_get_narrower): New.
654 (shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.
655
774e9d58 6562011-05-23 Nathan Froyd <froydnj@codesourcery.com>
657
658 * c-common.h (check_function_arguments): Tweak prototype of
659 check_function_arguments.
660 * c-common.c (check_function_arguments): Likewise. Adjust
661 calls to check_function_nonnull, check_function_format, and
662 check_function_sentinel.
663 (check_function_sentinel): Take a FUNCTION_TYPE rather than
664 separate attributes and typelist arguments. Use
665 FOREACH_FUNCTION_ARGS to iterate over argument types.
666
23407dc9 6672011-05-15 Paolo Carlini <paolo.carlini@oracle.com>
668
669 * c-common.c (c_common_reswords): Reorder.
670 * c-common.h (rid): Likewise.
671
3a939d12 6722011-05-10 Nathan Froyd <froydnj@codesourcery.com>
673
674 * c-common.c (def_fn_type): Don't call build_function_type, call
675 build_function_type_array or build_varargs_function_type_array
676 instead.
677 (c_common_nodes_and_builtins): Likewise.
678
b6e3dd65 6792011-05-05 Nathan Froyd <froydnj@codesourcery.com>
680
681 * c-common.c (c_add_case_label): Omit the loc argument to
682 build_case_label.
683 * c-common.h (build_case_label): Remove.
684 * c-semantics.c (build_case_label): Remove.
685
4232a958 6862011-05-05 Joseph Myers <joseph@codesourcery.com>
687
688 * c-objc.h (objc_start_method_definition): Update prototype.
689 * stub-objc.c (objc_start_method_definition): Add extra parameter.
690
d0af78c5 6912011-05-04 Nathan Froyd <froydnj@codesourcery.com>
692
693 * c-common.c (check_main_parameter_types): Reindent. Don't use
694 TYPE_ARG_TYPES directly.
695 (handle_nonnull_attribute): Likewise.
696 (sync_resolve_params): Likewise.
697 * c-format.c (handle_format_arg_attribute): Likewise. Adjust call
698 to check_format_string.
699 (handle_format_attribute): Likewise.
700 (check_format_string): Take a function type to examine instead of
701 a type list. Use a function_arg_iterator to step through argument
702 types.
703
ceb7b692 7042011-05-04 Richard Guenther <rguenther@suse.de>
705
706 * c-common.c (fix_string_type): Use size_int for index type bounds.
707 (start_fname_decls): Do not pass NULL to build_int_cst.
708 (c_init_attributes): Likewise.
709 * c-lex.c (c_lex_with_flags): Likewise.
710
c66c81be 7112011-04-27 Jason Merrill <jason@redhat.com>
712
713 * c-common.c (make_tree_vector_from_list): New.
714 * c-common.h: Declare it.
715
16930c72 7162011-04-26 Richard Guenther <rguenther@suse.de>
717
718 PR preprocessor/48248
719 * c-ppoutput.c (maybe_print_line): Always optimize newlines
720 for output size with -P.
721
23407dc9 7222011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
723
724 * c-common.c (struct c_common_resword): Add __underlying_type.
725 * c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
726
dd045aee 7272011-04-20 Jim Meyering <meyering@redhat.com>
728
729 * c-format.c (init_dollar_format_checking): Remove useless
730 if-before-free.
731
394dd737 7322011-04-15 Nicola Pero <nicola.pero@meta-innovation.com>
733
734 * c-objc.h (objc_get_interface_ivars): Removed.
23407dc9 735 (objc_detect_field_duplicates): New.
394dd737 736 * stub-objc.c: Likewise.
23407dc9 737
a758bf7d 7382011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
739
740 * stub-objc.c (objc_declare_protocols): Renamed to
741 objc_declare_protocol.
742 * c-objc.h: Likewise.
23407dc9 743
29d7200d 7442011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
745
746 * stub-objc.c (objc_declare_class): Updated argument name.
747
9b88d08d 7482011-04-12 Nathan Froyd <froydnj@codesourcery.com>
749
750 * c-common.h (c_common_init_ts): Declare.
751 * c-common.c (c_common_init_ts): Define.
752
4185cf58 7532011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
754
755 * c-objc.h (objc_build_message_expr): Updated prototype.
756 * stub-objc.c (objc_build_message_expr): Likewise.
757
5a90471f 7582011-04-12 Martin Jambor <mjambor@suse.cz>
759
760 * c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
761 of cgraph_node.
762
783bb57e 7632011-04-11 Richard Guenther <rguenther@suse.de>
764
765 * c-common.c (complete_array_type): Build a range type of
766 proper type.
767
c33080b9 7682011-04-08 Nathan Froyd <froydnj@codesourcery.com>
769
770 * c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
771 (handle_type_generic_attribute): Likewise.
772
f8913d47 7732011-04-07 Jason Merrill <jason@redhat.com>
774
775 PR c++/48450
776 * c-common.c (c_common_truthvalue_conversion): Don't ignore
777 conversion from C++0x scoped enum.
778
c94b1d0e 7792011-04-06 Joseph Myers <joseph@codesourcery.com>
780
781 * c-target-def.h: New file.
782 * c-target.def: New file.
783 * c-target.h: New file.
784 * c-common.c (targetcm): Don't define here.
785 * c-common.h (default_handle_c_option): Declare.
786 * c-format.c: Include c-target.h instead of target.h.
787 * c-opts.c: Include c-target.h instead of target.h. Explicitly
788 include tm.h.
789 (default_handle_c_option): Move from targhooks.c.
790
acb10f41 7912011-03-29 Jakub Jelinek <jakub@redhat.com>
792
793 PR preprocessor/48248
794 * c-ppoutput.c (print): Add src_file field.
795 (init_pp_output): Initialize it.
796 (maybe_print_line): Don't optimize by adding up to 8 newlines
797 if map->to_file and print.src_file are different file.
798 (print_line): Update print.src_file.
799
82715bcd 8002011-03-25 Kai Tietz <ktietz@redhat.com>
801
802 * c-ada-spec.c (compare_comment): Use filename_cmp
803 instead of strcmp for filename.
804
451c8e2f 8052011-03-25 Jeff Law <law@redhat.com>
806
807 * c-family/c-common.c (def_fn_type): Add missing va_end.
808
3c47771c 8092011-03-25 Jason Merrill <jason@redhat.com>
810
811 * c.opt: Add -std=c++03.
812
97e6200f 8132011-03-22 Eric Botcazou <ebotcazou@adacore.com>
814
815 * c-ada-spec.c (dump_ada_template): Skip non-class instances.
816
ac86af5d 8172011-03-17 Kai Tietz
818
819 PR target/12171
ee212425 820 * c-pretty-print.c (pp_c_specifier_qualifier_list):
821 Display allowed attributes for function pointer types.
822 (pp_c_attributes_display): New function to display
823 attributes having affects_type_identity flag set to true.
824 * c-pretty-print.h (pp_c_attributes_display): New prototype.
825
ac86af5d 826 * c-common.c (c_common_attribute_table):
827 Add new element.
828 (c_common_format_attribute_table): Likewise.
829
914d1151 8302011-03-18 Jason Merrill <jason@redhat.com>
831
69788bdf 832 * c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
833 * c-common.h: Don't declare it here.
834 * c-common.c: Or define it here.
835 * c-opts.c (c_common_handle_option): Or set it here.
836
914d1151 837 PR c++/35315
838 * c-common.c (handle_transparent_union_attribute): Don't
839 make a duplicate type in C++.
840
54cf6eed 8412011-03-15 Jason Merrill <jason@redhat.com>
842
843 * c-common.c (max_constexpr_depth): New.
844 * c-common.h: Declare it.
845 * c-opts.c (c_common_handle_option): Set it.
846 * c.opt (fconstexpr-depth): New option.
847
02cb1060 8482011-03-11 Jason Merrill <jason@redhat.com>
849
9bf1c74e 850 * c-common.c (attribute_takes_identifier_p): Add missing const.
851
02cb1060 852 PR c++/46803
853 * c-common.c (attribute_takes_identifier_p): Assume that an
854 unknown attribute takes an identifier.
855
ecf2703d 8562011-03-07 Nathan Froyd <froydnj@codesourcery.com>
857
858 PR c/47786
859 * c-common.c (c_type_hash): Call list_length instead of iterating
860 through DECL_CHAIN. Rename 'i' to 'n_elements'.
861
2b19dfe4 8622011-02-19 Jakub Jelinek <jakub@redhat.com>
863
864 PR c/47809
865 * c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
866
29cf2335 8672011-02-17 Iain Sandoe <iains@gcc.gnu.org>
868
869 * c.opt (fobjc-abi-version=) New.
870 (fobjc-nilcheck): New.
871
fad3f658 8722011-02-03 Nathan Froyd <froydnj@codesourcery.com>
873
874 PR c++/46890
875 * c-common.h (keyword_is_decl_specifier): Declare.
876 * c-common.c (keyword_is_decl_specifier): Define.
877 (keyword_is_function_specifier): New function.
878
a12319b3 8792011-01-26 Jakub Jelinek <jakub@redhat.com>
880
881 PR c/47473
882 * c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
883 EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
884 REAL_TYPE.
885
5c128dc8 8862011-01-26 Arnaud Charlet <charlet@adacore.com>
887
888 * c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type.
889
8d67b0c7 8902011-01-26 Jakub Jelinek <jakub@redhat.com>
891
892 PR pch/47430
893 * c-opts.c (c_common_post_options): Call c_common_no_more_pch
894 after init_c_lex if pch_file is set.
895
0675168d 8962011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
897
e8911163 898 PR c++/43601
0675168d 899 * c.opt (-fkeep-inline-dllexport): New switch.
900
0725e25c 9012011-01-12 Richard Guenther <rguenther@suse.de>
902
903 PR middle-end/32511
904 * c-common.c (handle_weak_attribute): Warn instead of error
905 on declaring an inline function weak.
906
fdd84b77 9072011-01-05 Tom Tromey <tromey@redhat.com>
908
909 * c-common.h (lvalue_error): Update.
910 * c-common.c (lvalue_error): Add 'loc' argument. Call error_at,
911 not error.
912
e6e73d14 9132010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
914
d67e8485 915 PR objc/47075
916 * c-objc.h (objc_finish_message_expr): Added argument to
917 prototype.
918
a36cf284 9192010-12-22 Nathan Froyd <froydnj@codesourcery.com>
920
921 * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute):
922 Use prototype_p.
923
33b3681f 9242010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
925
926 * c-objc.h (objc_maybe_warn_exceptions): New.
927 * stub-objc.c (objc_maybe_warn_exceptions): New.
928
a1f90215 9292010-12-10 Nathan Froyd <froydnj@codesourcery.com>
930
931 * c-common.h (readonly_error): Declare.
932 * c-common.c (readonly_error): Define.
933
b1bbc8e5 9342010-12-09 Nathan Froyd <froydnj@codesourcery.com>
935
936 * c-common.h (invalid_indirection_error): Declare.
937 * c-common.c (invalid_indirection_error): Define.
938
b0d55af9 9392010-12-03 Richard Guenther <rguenther@suse.de>
940
941 PR c/46745
942 * c-pretty-print.c (pp_c_postfix_expression): Handle MEM_REF.
943 (pp_c_unary_expression): Likewise.
944 (pp_c_expression): Likewise.
945
d7489d8d 9462010-11-30 Nicola Pero <nicola.pero@meta-innovation.com>
947
948 * c-common.h (objc_finish_function): New.
949 (objc_non_volatilized_type): Removed.
950 (objc_type_quals_match): Removed.
951 * stub-objc.c (objc_finish_function): New.
952 (objc_non_volatilized_type): Removed.
953 (objc_type_quals_match): Removed.
954
92468061 9552010-11-30 Joseph Myers <joseph@codesourcery.com>
956
957 * c-common.h (parse_optimize_options): Declare.
958 * c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c,
959 c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h.
960
967958e4 9612010-11-29 Joseph Myers <joseph@codesourcery.com>
962
963 * c-opts.c (check_deps_environment_vars): Use getenv instead of
964 GET_ENVIRONMENT.
965 * c-pch.c (O_BINARY): Don't define here.
966 * c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
967
b213bf24 9682010-11-25 Joseph Myers <joseph@codesourcery.com>
969
970 * c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
971 targetm.except_unwind_info.
972
9faf44d6 9732010-11-23 Joseph Myers <joseph@codesourcery.com>
974
975 * c-opts.c (c_common_handle_option): Pass location to
976 set_struct_debug_option.
977
79396169 9782010-11-23 Joseph Myers <joseph@codesourcery.com>
979
980 * c-common.c (visibility_options): Move from ../opts.c.
981 * c-common.h (struct visibility_flags, visibility_options):
982 Declare here.
983 * c-opts.c (finish_options): Rename to c_finish_options.
984 (c_common_init): Update call to finish_options.
985
b4aa4123 9862010-11-22 Nicola Pero <nicola.pero@meta-innovation.com>
987
988 PR objc/34033
989 * c-lex.c (lex_string): Check that each string in an Objective-C
990 string concat sequence starts with either one or zero '@', and
991 that there are no spurious '@' signs at the end.
992
3e0e49f2 9932010-11-20 Joseph Myers <joseph@codesourcery.com>
994
995 * c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
996 HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
997 HANDLE_PRAGMA_VISIBILITY.
998 * c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
999 HANDLE_PRAGMA_VISIBILITY): Don't define.
1000 (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.
1001
a9ffdd35 10022010-11-20 Nathan Froyd <froydnj@codesourcery.com>
1003
1004 PR c++/16189
1005 PR c++/36888
1006 PR c++/45331
1007 * c-common.h (keyword_begins_type_specifier): Declare.
1008 (keyword_is_storage_class_specifier): Declare.
1009 (keyword_is_type_qualifier): Declare.
1010 * c-common.c (keyword_begins_type_specifier): New function.
1011 (keyword_is_storage_class_specifier): New function.
1012 (keyword_is_type_qualifier): Declare.
1013
93be21c0 10142010-11-19 Joseph Myers <joseph@codesourcery.com>
1015
1016 PR c/46547
1017 * c-common.c (in_late_binary_op): Define.
1018 (c_common_truthvalue_conversion): Check in_late_binary_op before
1019 calling c_save_expr.
1020 * c-common.h (in_late_binary_op): Declare.
1021
d7175aef 10222010-11-19 Joseph Myers <joseph@codesourcery.com>
1023
1024 * c-opts.c (c_common_handle_option): Update calls to
1025 set_struct_debug_option.
1026
c213e196 10272010-11-19 Nicola Pero <nicola.pero@meta-innovation.com>
1028
1029 * c-common.h (objc_declare_protocols): Added additional argument.
1030 * stub-objc.c (objc_declare_protocol): Same change.
1031
0b5fc5d6 10322010-11-18 Nathan Froyd <froydnj@codesourcery.com>
1033
1034 PR c/33193
1035 * c-common.h (build_real_imag_expr): Declare.
1036 * c-semantics.c (build_real_imag_expr): Define.
1037
b8ba44e7 10382010-11-17 Joseph Myers <joseph@codesourcery.com>
1039
1040 * c-opts.c (c_common_parse_file): Take no arguments.
1041 * c-common.h (c_common_parse_file): Update prototype.
1042
6ef8d12f 10432010-11-16 Jakub Jelinek <jakub@redhat.com>
1044
1045 PR c++/46401
1046 * c-common.c (warning_candidate_p): Don't track non-const calls
1047 or STRING_CSTs.
1048
929d2a90 10492010-11-15 Ian Lance Taylor <iant@google.com>
1050
1051 * c-lex.c (init_c_lex): Set macro debug callbacks if
1052 flag_dump_go_spec is set.
1053
e4a7640a 10542010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
1055
1056 * c-common.h (objc_build_incr_expr_for_property_ref): New.
1057 * stub-objc.c (objc_build_incr_expr_for_property_ref): New.
1058
597d2d81 10592010-11-15 Nathan Froyd <froydnj@codesourcery.com>
1060
1061 PR preprocessor/45038
1062 * c-cppbuiltin.c (c_cpp_builtins): Use different format for C++
1063 dialects.
1064
c123f04d 10652010-11-12 Joseph Myers <joseph@codesourcery.com>
1066
1067 * c-common.h (c_family_lang_mask): Declare.
1068 * c-opts.c (c_family_lang_mask): Make extern.
1069 * c-pragma.c (handle_pragma_diagnostic): Use
1070 control_warning_option.
1071
3c6c0e40 10722010-11-12 Joseph Myers <joseph@codesourcery.com>
1073
1074 * c-common.c (parse_optimize_options): Update call to
1075 decode_options.
1076 * c-common.h (c_common_handle_option): Update prototype.
1077 * c-opts.c (c_common_handle_option): Take location_t parameter and
1078 pass it to other functions.
1079
19ec5c9e 10802010-11-11 Joseph Myers <joseph@codesourcery.com>
1081
1082 * c-opts.c (warning_as_error_callback): Remove.
1083 (c_common_initialize_diagnostics): Don't call
1084 register_warning_as_error_callback.
1085 (c_common_handle_option): Handle -Werror=normalized= here.
1086
bf776685 10872010-11-10 Joseph Myers <joseph@codesourcery.com>
1088
1089 * c-common.c (handle_mode_attribute): Use %' and word "signedness"
1090 in diagnostic.
1091 * c-opts.c (c_common_parse_file): Start diagnostics with lowercase
1092 letter.
1093 * c-pragma.c (handle_pragma_target, handle_pragma_optimize):
1094 Remove trailing '.' from diagnostics.
1095 * c.opt (Wwrite-strings_: Avoid '`' in help text.
1096
6bd9d862 10972010-11-10 Joseph Myers <joseph@codesourcery.com>
1098
1099 * c-common.c (parse_optimize_options): Pass global_dc to
1100 decode_options.
1101 * c-opts.c (c_common_handle_option): Pass &global_options to
1102 set_Wstrict_aliasing.
1103 * c.opt (v): Don't mark Common or document here.
1104
1f6616ee 11052010-11-06 Iain Sandoe <iains@gcc.gnu.org>
1106
1107 PR target/44981
1108 * c-format.c (format_type): New type gcc_objc_string_format_type.
1109 (valid_stringptr_type_p): New.
1110 (handle_format_arg_attribute): Use valid_stringptr_type_p ().
1111 (check_format_string): Pass expected type, use
1112 valid_stringptr_type_p (), check that the format string types are
1113 consistent with the format specification.
1114 (decode_format_attr): Warn if NSString is used outside objective-c.
1115 (format_types_orig): Add NSString.
1116 (format_name): New.
1117 (format_flags): New.
1118 (check_format_arg): Handle format strings requiring an external parser.
1119 first_target_format_type: New variable.
1120 (handle_format_attribute): Set up first_target_format_type, pass the
1121 expected format arg string type to check_format_string().
1122 * c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL): New flag.
1123 * stub-objc.c (objc_string_ref_type_p): New.
1124 (objc_check_format_arg): New.
1125
b0d0931f 11262010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
1127
1128 Fixed using the Objective-C 2.0 dot-syntax with class names.
1129 * c-common.h (objc_build_class_component_ref): New.
1130 * stub-objc.c (objc_build_class_component_ref): New.
1131
f26877d5 11322010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
1133
1134 * c.opt (Wproperty-assign-default): New option.
1135
1ef143b6 11362010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
1137
1138 Implemented -fobjc-std=objc1 flag.
1139 * c.opt (fobjc-std=objc1): New option.
1140
8c582e4f 11412010-11-01 Nicola Pero <nicola.pero@meta-innovation.com>
1142
1143 Implemented format and noreturn attributes for Objective-C methods.
1144 * c-common.c (handle_noreturn_attribute): Recognize 'noreturn'
1145 attribute for Objective-C methods.
1146
8637f1db 11472010-10-31 Jason Merrill <jason@redhat.com>
1148
1149 * c-common.c (conversion_warning, warn_for_collisions_1): Use
1150 EXPR_LOC_OR_HERE.
1151
9d9f5bb3 11522010-10-30 Nicola Pero <nicola.pero@meta-innovation.com>
1153
1154 Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
1155 * c-common.h (enum rid): Removed RID_COPIES and RID_IVAR.
1156 (objc_add_property_declaration): Removed arguments for copies and
1157 ivar.
1158 (objc_build_getter_call): Renamed to
1159 objc_maybe_build_component_ref.
1160 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
1161 (objc_is_property_ref): New.
1162 * c-common.c (c_common_reswords): Removed copies and ivar.
1163 * stub-objc.c (objc_add_property_declaration): Removed arguments
1164 for copies and ivar.
1165 (objc_build_getter_call): Renamed to
1166 objc_maybe_build_component_ref.
1167 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
1168 (objc_is_property_ref): New.
1169
56f907a0 11702010-10-29 Arnaud Charlet <charlet@adacore.com>
1171 Matthew Gingell <gingell@adacore.com>
1172
1173 * c-ada-spec.c (separate_class_package): New function.
1174 (pp_ada_tree_identifier): Prefix references to C++ classes with the
1175 name of their enclosing package.
1176 (print_ada_declaration): Use separate_class_package.
1177
b5fa273e 11782010-10-27 Jason Merrill <jason@redhat.com>
1179
5290e253 1180 * c-common.c (c_common_reswords): Add __is_literal_type.
1181 * c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
1182
b5fa273e 1183 * c-common.c (check_case_value): Remove special C++ code.
1184
7590f0e5 11852010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
1186
1187 * c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN,
1188 RID_RETAIN, RID_COPY and RID_NONATOMIC. Updated RID_FIRST_PATTR
1189 and RID_LAST_PATTR.
1190 (objc_add_property_declaration): Added additional arguments.
1191 (objc_property_attribute_kind): Removed.
1192 (objc_set_property_attr): Removed.
1193 * c-common.c (c_common_reswords): Added readwrite, assign, retain,
1194 copy and nonatomic.
1195 * stub-objc.c (objc_add_property_declaration): Added additional
1196 arguments.
1197 (objc_set_property_attr): Removed.
1198
1d894bcf 11992010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
1200
1201 * c-common.h (objc_add_property_variable): Renamed to
1202 objc_add_property_declaration. Added location argument.
1203 * stub-objc.c (objc_add_property_variable): Same change.
1204
e23bf1fb 12052010-10-23 Nicola Pero <nicola.pero@meta-innovation.com>
1206
1207 * c-common.h (objc_maybe_printable_name): New.
1208 * stub-objc.c (objc_maybe_printable_name): New.
1209
93426222 12102010-10-22 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
1211 Andrew Pinski <pinskia@gmail.com>
1212
1213 * c-common.h (c_common_mark_addressable_vec): Declare.
1214 * c-common.c (c_common_mark_addressable_vec): New function.
1215
45b2b110 12162010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
1217
1218 * c-common.h (objc_set_method_type): Removed.
1219 (objc_add_method_declaration): Added boolean argument.
1220 (objc_start_method_definition): Same change.
1221 (objc_build_method_signature): Same change.
1222 * stub-objc.c (objc_set_method_type): Removed.
1223 (objc_add_method_declaration): Added boolean argument.
1224 (objc_start_method_definition): Same change.
1225 (objc_build_method_signature): Same change.
1226
64cd9619 12272010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
1228
1229 * c-common.h (finish_file): Removed.
1230 (objc_write_global_declarations): New.
1231 * c-opts.c (c_common_parse_file): Do not call finish_file.
1232 * stub-objc.c (objc_write_global_declarations): New.
1233
e1f293c0 12342010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
1235
1236 Implemented parsing @synthesize and @dynamic for
1237 Objective-C/Objective-C++.
1238 * c-common.h (enum rid): Add RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
1239 (objc_add_synthesize_declaration): New.
1240 (objc_add_dynamic_declaration): New.
1241 * c-common.c (c_common_reswords): Add synthesize and dynamic.
1242 * stub-objc.c (objc_add_synthesize_declaration): New.
1243 (objc_add_dynamic_declaration): New.
1244
ef97a312 12452010-10-18 Michael Meissner <meissner@linux.vnet.ibm.com>
1246
1247 PR target/46041
1248 * c-cppbuiltin.c (mode_has_fma): Move function here from
1249 builtins.c. Don't use the fma optab, instead just use the
1250 HAVE_fma* macros, so that __FP_FAST_FMA* will be defined when
1251 using -save-temps.
1252
69b07042 12532010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
1254
1255 Merge from 'apple/trunk' branch on FSF servers.
ef97a312 1256
69b07042 1257 2005-11-08 Fariborz Jahanian <fjahanian@apple.com>
1258
1259 Radar 4330422
1260 * c-common.h (objc_non_volatilized_type): New declaration
1261 * stub-objc.c (objc_non_volatilized_type): New stub.
1262
f15f2e56 12632010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
1264
69b07042 1265 Merge from 'apple/trunk' branch on FSF servers.
f15f2e56 1266
1267 2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
1268
1269 Radar 4133425
1270 * c-common.h (objc_diagnose_private_ivar): New decl.
ef97a312 1271 * stub-objc.c (objc_diagnose_private_ivar): New stub.
f15f2e56 1272
4a8875ed 12732010-10-17 Iain Sandoe <iains@gcc.gnu.org>
1274
1275 * c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
1276 * c-common.h (enum rid): Add RID_AT_PACKAGE.
1277 (objc_ivar_visibility_kind): New enum.
1278 (objc_set_visibility): Adjust prototype to use visibility enum.
ef97a312 1279 * stub-objc.c (objc_set_visibility): Adjust stub to use
4a8875ed 1280 visibility enum.
1281
7e0713b1 12822010-10-14 Michael Meissner <meissner@linux.vnet.ibm.com>
1283
1284 * c-cppbuiltin.c (builtin_define_float_constants): Emit
1285 __FP_FAST_FMA, __FP_FAST_FMAF, and __FP_FAST_FMAL if the machine
1286 has the appropriate fma builtins.
1287 (c_cpp_builtins): Adjust call to builtin_define_float_constants.
1288
86c110ac 12892010-10-14 Iain Sandoe <iains@gcc.gnu.org>
1290
7e0713b1 1291 merge from FSF apple 'trunk' branch.
86c110ac 1292 2006 Fariborz Jahanian <fjahanian@apple.com>
7e0713b1 1293
86c110ac 1294 Radars 4436866, 4505126, 4506903, 4517826
1295 * c-common.c (c_common_resword): Define @property and its attributes.
1296 * c-common.h: Define property attribute enum entries.
1297 (OBJC_IS_PATTR_KEYWORD): New.
1298 (objc_property_attribute_kind): New enum.
1299 Declare objc_set_property_attr (), objc_add_property_variable (),
1300 objc_build_getter_call () and objc_build_setter_call ().
1301 * stub-objc.c (objc_set_property_attr): New stub.
1302 (objc_add_property_variable): Likewise.
1303 (objc_build_getter_call): Likewise.
1304 (objc_build_setter_call) Likewise.
7e0713b1 1305
40c8d1dd 13062010-10-13 Iain Sandoe <iains@gcc.gnu.org>
1307
7e0713b1 1308 merge from FSF apple 'trunk' branch.
40c8d1dd 1309 2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
1310
1311 Radar 3803157 (method attributes)
1312 * c-common.c (handle_deprecated_attribute): Recognize
1313 objc methods as valid declarations.
1314 * c-common.h: Declare objc_method_decl ().
7e0713b1 1315 * stub-objc.c (objc_method_decl): New stub.
40c8d1dd 1316
f3f006ad 13172010-10-08 Joseph Myers <joseph@codesourcery.com>
1318
1319 * c-common.c (parse_optimize_options): Call
1320 decode_cmdline_options_to_array_default_mask before
1321 decode_options. Update arguments to decode_options.
1322 * c-common.h (c_common_init_options_struct): Declare.
1323 * c-opts.c (c_common_init_options_struct): New. Split out from
1324 c_common_init_options.
1325
0a65c3bb 13262010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
1327
1328 Implemented fast enumeration for Objective-C.
1329 * c-common.h (objc_finish_foreach_loop): New.
1330 * stub-objc.c (objc_finish_foreach_loop): New.
1331
24ca3b4e 13322010-10-05 Joseph Myers <joseph@codesourcery.com>
1333
1334 * c-common.h (struct diagnostic_context): Don't declare here.
1335 (c_common_initialize_diagnostics): Declare using
1336 diagnostic_context typedef.
1337 * c-opts.c (c_common_handle_option): Pass global_dc to
1338 handle_generated_option.
1339
f83b64ca 13402010-10-04 Joseph Myers <joseph@codesourcery.com>
1341
1342 * c-opts.c (c_common_handle_option): Pass &global_options_set to
1343 handle_generated_option.
1344
2fdec027 13452010-10-03 Ian Lance Taylor <iant@google.com>
1346
1347 * c.opt (-fplan9-extensions): New option.
1348
41acdfa4 13492010-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1350
1351 * c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision):
1352 Remove.
1353 (c_cpp_builtins): Call functions from cppbuiltin.c instead
1354 of duplicating code.
1355
069761fb 13562010-09-30 Iain Sandoe <iains@gcc.gnu.org>
1357
1358 * c-common.c: Add two new entries for @optional
1359 and @required keywords.
1360
1361 merge from FSF 'apple/trunk' branch.
1362 2006-01-30 Fariborz Jahanian <fjahanian@apple.com>
1363
1364 Radar 4386773
1365 * c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new
1366 objective-c keywords.
1367 (objc_set_method_opt): New declaration.
1368 * stub-objc.c (objc_set_method_opt): New stub.
1369
2c5d2e39 13702010-09-30 Joseph Myers <joseph@codesourcery.com>
1371
1372 * c-common.c (handle_optimize_attribute): Pass &global_options to
1373 cl_optimization_save and cl_optimization_restore.
1374 * c-opts.c (c_common_handle_option): Pass &global_options to
1375 handle_generated_option.
1376 * c-pragma.c (handle_pragma_diagnostic): Use option_flag_var.
1377 (handle_pragma_pop_options, handle_pragma_reset_options): Pass
1378 &global_options to cl_optimization_restore.
1379
e5c75ac3 13802010-09-30 Nicola Pero <nicola.pero@meta-innovation.com>
1381
1382 * c-lex.c (c_lex_with_flags): Updated comments for CPP_AT_NAME
1383 Objective-C/Objective-C++ keywords.
1384
3511333e 13852010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
e147d6aa 1386
1387 Merge from 'apple/trunk' branch on FSF servers.
1388
1389 2005-10-04 Fariborz Jahanian <fjahanian@apple.com>
1390
1391 Radar 4281748
1392 * c-common.h (objc_check_global_decl): New declaration.
1393 * stub-objc.c (objc_check_global_decl): New stub.
1394
5461e683 13952010-09-29 Joseph Myers <joseph@codesourcery.com>
1396
1397 * c.opt: Don't use VarExists.
1398
5ae82d58 13992010-09-29 Joseph Myers <joseph@codesourcery.com>
1400
1401 * c-common.c (c_cpp_error): Update names of diagnostic_context
1402 members.
1403 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of
1404 cl_optimization members.
1405 * c-opts.c (warning_as_error_callback, c_common_handle_option,
1406 sanitize_cpp_opts, finish_options): Update names of cpp_options
1407 members.
1408
b27e241e 14092010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
1410
1411 * c-common.h (OBJC_IS_CXX_KEYWORD): New macro. Updated comments.
1412 (objc_is_reserved_word): Removed.
1413 * c-common.c: Updated comments.
1414 * c-lex.c (c_lex_with_flags): Use OBJC_IS_CXX_KEYWORD instead of
1415 objc_is_reserved_word.
1416 * stub-objc.c (objc_is_reserved_word): Removed.
1417
03fc2271 14182010-09-28 Iain Sandoe <iains@gcc.gnu.org>
1419
1420 * c-common.h (objc_add_method_declaration): Adjust prototype to
1421 include attributes.
1422 (objc_start_method_definition): Likewise.
1423 (objc_build_keyword_decl): Likewise.
1424 * stub-objc.c:(objc_add_method_declaration): Handle attributes.
1425 (objc_start_method_definition): Likewise.
1426 (objc_build_keyword_decl): Likewise.
1427
a336eb4b 14282010-09-28 Iain Sandoe <iains@gcc.gnu.org>
1429
1430 * c-common.h (objc_start_class_interface): Adjust prototype.
1431 (objc_start_category_interface): Likewise.
1432 (objc_start_protocol): Likewise.
1433 * stub-objc.c (objc_start_protocol): Adjust for extra argument.
1434 (objc_start_class_interface): Likewise.
1435 (objc_start_category_interface): Likewise.
1436
48b14f50 14372010-09-27 Ian Lance Taylor <iant@google.com>
1438
1439 * c-common.c (c_common_attribute_table): Add no_split_stack.
1440 (handle_no_split_stack_attribute): New static function.
1441
4abfc532 14422010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
1443
1444 Merge from 'apple/trunk' branch on FSF servers.
1445
1446 2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
1447
1448 Radar 4229905
1449 * c-common.h (objc_have_common_type): New declaration.
1450 * stub-objc.c (objc_have_common_type): New stub.
1451
1452 2005-06-22 Ziemowit Laski <zlaski@apple.com>
1453
1454 Radar 4154928
1455 * c-common.h (objc_common_type): New prototype.
1456 * stub-objc.c (objc_common_type): New stub.
1457
7bd95dfd 14582010-09-24 Jan Hubicka <jh@suse.cz>
1459
1460 * c-common.c (handle_leaf_attribute): New function.
1461 (struct attribute_spec c_common_att): Add leaf.
1462
5789e05b 14632010-09-22 Joseph Myers <joseph@codesourcery.com>
1464
1465 * c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
1466 -comments-in-macros, -define-macro, -define-macro=, -dependencies,
1467 -dump, -dump=, -imacros, -imacros=, -include, -include=,
1468 -include-barrier, -include-directory, -include-directory=,
1469 -include-directory-after, -include-directory-after=,
1470 -include-prefix, -include-prefix=, -include-with-prefix,
1471 -include-with-prefix=, -include-with-prefix-after,
1472 -include-with-prefix-after=, -include-with-prefix-before,
1473 -include-with-prefix-before=, -no-integrated-cpp,
1474 -no-line-commands, -no-standard-includes, -no-warnings, -output,
1475 -output=, -pedantic, -pedantic-errors, -preprocess,
1476 -print-missing-file-dependencies, -trace-includes, -traditional,
1477 -traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
1478 -user-dependencies, -verbose, -write-dependencies,
1479 -write-user-dependencies, no-integrated-cpp, traditional): New.
1480
e6fb54ba 14812010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
1482
1483 PR objc/23710
9b60f3b0 1484 * c-common.h (objc_start_method_definition): Return bool instead
1485 of void.
1486 * stub-objc.c (objc_start_method_definition): Return bool instead
1487 of void.
1488
14892010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
1490
1491 PR objc/25965
1492 * c-common.h (objc_get_interface_ivars): New declaration.
1493 * stub-objc.c (objc_get_interface_ivars): New stub.
e6fb54ba 1494
e44b0a1f 14952010-09-15 Ian Lance Taylor <iant@google.com>
1496
1497 * c-common.c (parse_optimize_options): Do not capitalize warning
ebd7c4c1 1498 messages. Remove period at end of warning message.
e44b0a1f 1499
85c0a25c 15002010-09-09 Nathan Sidwell <nathan@codesourcery.com>
1501
1502 * c-common.c (handle_alias_ifunc_attribute): New, broken out of ...
1503 (handle_alias_attribute): ... here.
1504 (handle_ifunc_attribute): New.
1505
5ba33bf4 15062010-09-06 Mark Mitchell <mark@codesourcery.com>
1507
1508 * c-common.h (do_warn_double_promotion): Declare.
1509 * c-common.c (do_warn_double_promotion): Define.
1510
c920faa3 15112010-09-05 Mark Mitchell <mark@codesourcery.com>
1512
1513 * c.opt (Wdouble-promotion): New.
1514
9604e070 15152010-09-02 Joseph Myers <joseph@codesourcery.com>
1516
1517 * c.opt (falt-external-templates, fhuge-objects, fvtable-gc,
1518 fvtable-thunks, fxref): Mark no longer supported in help text.
1519
3b0273a1 15202010-09-02 Joseph Myers <joseph@codesourcery.com>
1521
1522 * c.opt (Wimport, fall-virtual, falt-external-templates,
1523 fdefault-inline, fenum-int-equiv, fexternal-templates,
1524 fguiding-decls, fhonor-std, fhuge-objects, flabels-ok,
1525 fname-mangling-version-, fnew-abi, fnonnull-objects,
1526 foptional-diags, fsquangle, fstrict-prototype, fthis-is-variable,
1527 fvtable-gc, fvtable-thunks, fxref): Mark with Ignore and Warn as
1528 applicable.
1529 (fhandle-exceptions): Mark with Alias and Warn.
1530 * c-opts.c (c_common_handle_option): Don't handle options marked
1531 as ignored.
1532
67089c6b 15332010-09-02 Joseph Myers <joseph@codesourcery.com>
1534
1535 * c.opt (Wcomments, Werror-implicit-function-declaration,
1536 ftemplate-depth-, std=c89, std=c9x, std=gnu89, std=gnu9x,
1537 std=iso9899:1990, std=iso9899:1999, std=iso9899:199x): Mark as
1538 aliases.
1539 * c-common.c (option_codes): Use OPT_Wcomment instead of
1540 OPT_Wcomments.
1541 * c-opts.c (warning_as_error_callback, c_common_handle_option):
1542 Don't handle options marked as aliases.
1543
2af087f2 15442010-08-25 Richard Guenther <rguenther@suse.de>
1545
1546 * c-common.c (c_common_get_alias_set): Remove special
1547 handling for pointers.
1548
48148244 15492010-08-20 Nathan Froyd <froydnj@codesourcery.com>
1550
1551 * c-common.c: Use FOR_EACH_VEC_ELT.
1552 * c-gimplify.c: Likewise.
1553 * c-pragma.c: Likewise.
1554
89c69892 15552010-08-16 Joseph Myers <joseph@codesourcery.com>
1556
1557 * c.opt (MDX): Change back to MD. Mark NoDriverArg instead of
1558 RejectDriver.
1559 (MMDX): Change back to MMD. Mark NoDriverArg instead of
1560 RejectDriver.
1561 * c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
1562 instead of OPT_MDX and OPT_MMDX.
1563
e28aa114 15642010-08-16 Joseph Myers <joseph@codesourcery.com>
1565
1566 * c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.
1567
99b66d21 15682010-08-12 Joseph Myers <joseph@codesourcery.com>
1569
1570 * c.opt (MD, MMD): Change to MDX and MMDX.
1571 * c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX.
1572
666f4bf0 15732010-08-11 Joseph Myers <joseph@codesourcery.com>
1574
1575 * c-opts.c (c_common_handle_option): Call handle_generated_option
1576 instead of handle_option.
1577
5ec815f6 15782010-08-08 Nathan Froyd <froydnj@codesourcery.com>
1579
1580 * c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
1581 (maybe_apply_renaming_pragma): Delete unneeded declarations.
1582
d13143cf 15832010-08-08 Nathan Froyd <froydnj@codesourcery.com>
1584
1585 * c-pragma.c (pending_redefinition): Declare. Declare a VEC of it.
1586 (pending_redefine_extname): Change type to a VEC.
1587 (add_to_renaming_pragma_list): Update for new type of
1588 pending_redefine_extname.
5ec815f6 1589 (maybe_apply_renaming_pragma): Likewise.
d13143cf 1590
2008c983 15912010-08-04 Arnaud Charlet <charlet@adacore.com>
1592
1593 * c-ada-spec.c (dump_ada_template): Mark underlying instance type as
1594 visited.
1595 (dump_generic_ada_node): Code clean up. Use TREE_VISITED flag to
1596 decide whether a type has already been declared/seen.
1597 Do not go to the original type.
1598 (dump_nested_types): New parameter forward.
1599 Generate forward declaration if needed and mark type as visited.
1600 (print_ada_declaration): Call dump_nested_types if not already done.
1601 Mark types as visited.
1602
9b091a73 16032010-08-03 Joseph Myers <joseph@codesourcery.com>
1604
1605 * c.opt (-print-pch-checksum): Remove option.
1606 * c-opts.c (c_common_handle_option): Don't handle
1607 OPT_print_pch_checksum.
1608
b78351e5 16092010-07-27 Joseph Myers <joseph@codesourcery.com>
1610
1611 * c-common.h (c_common_handle_option): Update prototype and return
1612 value type.
1613 * c-opts.c (c_common_handle_option): Update prototype and return
1614 value type. Update calls to handle_option and
1615 enable_warning_as_error.
1616
34416a90 16172010-07-27 Jakub Jelinek <jakub@redhat.com>
1618
1619 PR c/45079
1620 * c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
1621
fecf9011 16222010-07-27 Joseph Myers <joseph@codesourcery.com>
1623
1624 * c-common.h (c_common_missing_argument): Remove.
1625 * c-opts.c (c_common_missing_argument): Remove.
1626 * c.opt (A, D, F, I, MD, MMD, MQ, MT, U, fconstant-string-class=,
1627 idirafter, imacros, include, isysroot, isystem, iquote): Add
1628 MissingArgError.
1629 * c-objc-common.h (LANG_HOOKS_MISSING_ARGUMENT): Remove.
1630
e88d34f6 16312010-07-27 Joseph Myers <joseph@codesourcery.com>
1632
1633 * c-common.h (c_common_option_lang_mask,
1634 c_common_initialize_diagnostics, c_common_complain_wrong_lang_p):
1635 New.
1636 (c_common_init_options): Update prototype.
1637 * c-opts.c (c_common_option_lang_mask): New.
1638 (c_common_initialize_diagnostics): Split out of
1639 c_common_init_options.
1640 (accept_all_c_family_options, c_common_complain_wrong_lang_p):
1641 New.
1642 (c_common_init_options): Update prototype. Use decoded options in
1643 search for -lang-asm.
1644
1767a056 16452010-07-15 Nathan Froyd <froydnj@codesourcery.com>
1646
1647 * c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
1648 * c-format.c: Likewise.
1649
0b205f4c 16502010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
1651
1652 * c-common.h: Include diagnostic-core.h. Error if already
1653 included.
1654 * c-semantics.c: Do not define GCC_DIAG_STYLE here.
1655
1c58e3f1 16562010-07-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
1657
1658 * c-family/c-common.c (IN_GCC_FRONTEND): Do not undef.
1659 Do not include expr.h
1660 (vector_mode_valid_p): Move here.
1661
33cc157c 16622010-06-21 DJ Delorie <dj@redhat.com>
1663
1664 * c-pragma.c (handle_pragma_diagnostic): Add push/pop,
1665 allow these pragmas anywhere.
1666
16672010-06-14 Jakub Jelinek <jakub@redhat.com>
1668
1669 PR bootstrap/44509
1670 * c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
1671 (lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
1672 (lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
1673 ggc_strdup instead of xstrdup.
1674
16752010-06-10 Jakub Jelinek <jakub@redhat.com>
1676
1677 * c-cppbuiltin.c: Include cpp-id-data.h.
1678 (lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
1679 (lazy_hex_fp_value): New function.
1680 (builtin_define_with_hex_fp_value): Provide definitions lazily.
1681
9b40bfbf 16822010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
1683
1684 * c-gimplify.c: Do not include tree-flow.h
1685
202d6e5f 16862010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
1687
1688 PR other/44034
1689 * c-common.c: Rename targetm member:
1690 targetm.enum_va_list -> targetm.enum_va_list_p
1691
d3237426 16922010-06-28 Anatoly Sokolov <aesok@post.ru>
1693
1694 * c-common.c (shorten_compare): Adjust call to force_fit_type_double.
1695
596981c8 16962010-06-28 Steven Bosscher <steven@gcc.gnu.org>
1697
1698 * c-cppbuiltin.c: Do not include except.h.
1699
b9bdfa0b 17002010-06-24 Andi Kleen <ak@linux.intel.com>
1701
1702 * c-common.c (warn_for_omitted_condop): New.
1703 * c-common.h (warn_for_omitted_condop): Add prototype.
1704
55ad092d 17052010-06-21 Joseph Myers <joseph@codesourcery.com>
1706
1707 * c.opt (lang-objc): Remove.
1708 * c-opts.c (c_common_handle_option): Don't handle OPT_lang_objc.
1709
9e7c2572 17102010-06-21 Joern Rennecke <joern.rennecke@embecosm.com>
1711
1712 * c-opts.c: Include "tm_p.h".
1713
615ef0bb 17142010-06-20 Joseph Myers <joseph@codesourcery.com>
1715
1716 * c-common.c (parse_optimize_options): Update call to
1717 decode_options.
1718
aef48c9a 17192010-06-18 Nathan Froyd <froydnj@codesourcery.com>
1720
1721 * c-common.c (record_types_used_by_current_var_decl): Adjust for
1722 new type of types_used_by_cur_var_decl.
1723
d74003b4 17242010-06-17 Joern Rennecke <joern.rennecke@embecosm.com>
1725
1726 PR bootstrap/44512
1727 * c-cppbuiltin.c (builtin_define_with_hex_fp_value): Add cast
1728 for C++ standard compliance.
1729
1194d077 17302010-06-16 Jason Merrill <jason@redhat.com>
1731
1732 * c.opt: Add -Wnoexcept.
1733
d473d901 17342010-06-16 Richard Guenther <rguenther@suse.de>
1735
1736 PR c/44555
1737 * c-common.c (c_common_truthvalue_conversion): Remove
1738 premature and wrong optimization concering ADDR_EXPRs.
1739
b62dbfd3 17402010-06-15 Arnaud Charlet <charlet@adacore.com>
1741
1742 * c-ada-spec.c (dump_sloc): Remove column info.
1743 (is_simple_enum): New function.
1744 (dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada
1745 enum types when relevant.
1746
200dd99c 17472010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
1748
1749 * c-common.c (conversion_warning): Warn at expression
1750 location.
1751
abf6a617 17522010-06-10 Joseph Myers <joseph@codesourcery.com>
1753
1754 * c-opts.c (c_common_handle_option): Don't handle
1755 OPT_fshow_column.
1756
ba72912a 17572010-06-08 Laurynas Biveinis <laurynas.biveinis@gmail.com>
1758
1759 * c-pragma.c (push_alignment): Use typed GC allocation.
1760 (handle_pragma_push_options): Likewise.
1761
1762 * c-common.c (parse_optimize_options): Likewise.
1763
1764 * c-common.h (struct sorted_fields_type): Add variable_size GTY
1765 option.
1766
4aafe913 17672010-06-07 Joseph Myers <joseph@codesourcery.com>
1768
1769 * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
1770 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
1771 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
1772 flag_signed_bitfields, warn_strict_null_sentinel,
1773 flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
1774 flag_gen_declaration, flag_no_gnu_keywords,
1775 flag_implement_inlines, flag_implicit_templates,
1776 flag_implicit_inline_templates, flag_optional_diags,
1777 flag_elide_constructors, flag_default_inline, flag_rtti,
1778 flag_conserve_space, flag_access_control, flag_check_new,
1779 flag_new_for_scope, flag_weak, flag_working_directory,
1780 flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
1781 flag_enforce_eh_specs, flag_threadsafe_statics,
1782 flag_pretty_templates): Remove.
1783 * c-common.h (flag_preprocess_only, flag_nil_receivers,
1784 flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
1785 flag_replace_objc_classes, flag_undef, flag_no_builtin,
1786 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
1787 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
1788 flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
1789 flag_no_gnu_keywords, flag_implement_inlines,
1790 flag_implicit_templates, flag_implicit_inline_templates,
1791 flag_optional_diags, flag_elide_constructors, flag_default_inline,
1792 flag_rtti, flag_conserve_space, flag_access_control,
1793 flag_check_new, flag_new_for_scope, flag_weak,
1794 flag_working_directory, flag_use_cxa_atexit,
1795 flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
1796 flag_threadsafe_statics, flag_pretty_templates,
1797 warn_strict_null_sentinel): Remove.
1798 * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
1799 fbuiltin, fcheck-new, fconserve-space, felide-constructors,
1800 fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
1801 fimplicit-inline-templates, fimplicit-templates,
1802 flax-vector-conversions, fms-extensions, fnil-receivers,
1803 fnonansi-builtins, fpretty-templates, freplace-objc-classes,
1804 frtti, fshort-double, fshort-enums, fshort-wchar,
1805 fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
1806 funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
1807 fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
1808 gen-decls, undef): Use Var.
1809 (fdefault-inline, foptional-diags): Document as doing nothing.
1810 * c-opts.c (c_common_handle_option): Remove cases for options now
1811 using Var. Mark ignored options as such.
1812
7bedc3a0 18132010-06-05 Steven Bosscher <steven@gcc.gnu.org>
1814
1815 * c-common.c: Moved to here from parent directory.
1816 * c-common.def: Likewise.
1817 * c-common.h: Likewise.
1818 * c-cppbuiltin.c: Likewise.
1819 * c-dump.c: Likewise.
1820 * c-format.c: Likewise.
1821 * c-format.h : Likewise.
1822 * c-gimplify.c: Likewise.
1823 * c-lex.c: Likewise.
1824 * c-omp.c: Likewise.
1825 * c.opt: Likewise.
1826 * c-opts.c: Likewise.
1827 * c-pch.c: Likewise.
1828 * c-ppoutput.c: Likewise.
1829 * c-pragma.c: Likewise.
1830 * c-pragma.h: Likewise.
1831 * c-pretty-print.c: Likewise.
1832 * c-pretty-print.h: Likewise.
1833 * c-semantics.c: Likewise.
1834 * stub-objc.c: Likewise.
1835
1836 * c-common.c: Include gt-c-family-c-common.h.
1837 * c-pragma.c: Include gt-c-family-c-pragma.h.
1838\f
dd045aee 1839Copyright (C) 2010, 2011 Free Software Foundation, Inc.
7bedc3a0 1840
1841Copying and distribution of this file, with or without modification,
1842are permitted in any medium without royalty provided the copyright
1843notice and this notice are preserved.