]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/c-family/ChangeLog
2012-07-16 Dehao Chen <dehao@google.com>
[thirdparty/gcc.git] / gcc / c-family / ChangeLog
CommitLineData
c2a65b90 12012-07-14 Steven Bosscher <steven@gcc.gnu.org>
2
3 * c-pch.c (CHECK_NO_ASM_OUT_DURING_PCH): Do not define.
4 Remove code conditional on it.
5
88c5a1d1 62012-07-11 Steven Bosscher <steven@gcc.gnu.org>
7
8 * c-gimplify.c: Do not include basic-block.h.
9 * c-common.c: Do not include linfuncs.h.
10
4a020a8c 112012-07-08 Steven Bosscher <steven@gcc.gnu.org>
12
13 * c-common.h: Include tree.h.
14
c28ddc97 152012-07-02 Jason Merrill <jason@redhat.com>
16
17 PR c++/53524
18 * c-common.c (get_priority): Call default_conversion.
19
405ed67f 202012-07-01 Uros Bizjak <ubizjak@gmail.com>
21
22 * c-pch.c (c_common_write_pch): Remove unused variables.
23
e53d55e7 242012-06-29 Steven Bosscher <steven@gcc.gnu.org>
25
26 * cppspec.c: Moved from gcc/ to here.
27
3d9c25ec 282012-06-27 Kai Tietz <ktietz@redhat.com>
29
30 PR preprocessor/37215
31 * c-ppoutput.c (preprocess_file): Check for nonempty buffer.
32
3169c57a 332012-06-21 Steven Bosscher <steven@gcc.gnu.org>
34
35 * c-common.h (c_common_print_pch_checksum): Remove.
36 * c-pch.c: Do not include output.h.
37 (CHECK_NO_ASM_OUT_DURING_PCH): Define and add FIXME.
38 (asm_out_file): Define iff CHECK_NO_ASM_OUT_DURING_PCH isdefined.
39 (asm_file_startpos): Define iff CHECK_NO_ASM_OUT_DURING_PCH is defined.
40 (struct c_pch_header): Remove.
41 (get_ident): Update gpch version.
42 (pch_init): Do not print executable_checksum to asm_out_file.
43 Do not fail if there is no asm_out_file to read back from. Set
44 asm_file_startpos only if CHECK_NO_ASM_OUT_DURING_PCH is defined.
45 (c_common_write_pch): Verify that nothing was written to asm_out_file
46 since pch_init was called. Do not write a c_pch_header, and do not
47 copy from asm_out_file to the PCH.
48 (c_common_read_pch): Do not read a c_pch_header, and do not restore
49 the content of asm_out_file from the PCH.
50 (c_common_print_pch_checksum): Remove.
51 * c-opts.c (c_common_init): Print out executable_checksum directly.
52
ff6624bc 532012-06-19 Steven Bosscher <steven@gcc.gnu.org>
54
55 * c-target.def (objc_declare_unresolved_class_reference,
56 objc_declare_class_definition): Add new hooks.
57
367b1459 582012-06-19 Steven Bosscher <steven@gcc.gnu.org>
59
60 * c-lex.c: Do not include output.h.
61 (cb_ident): Try to put out .ident with targetm.asm_out.output_ident.
62 Remove uses of ASM_OUTPUT_IDENT.
63
bf0cb017 642012-06-15 Marc Glisse <marc.glisse@inria.fr>
65
66 PR c++/51033
67 * c-common.h (c_build_vec_perm_expr): Move decl here.
68 * c-common.c (c_build_vec_perm_expr): Move definition
69 here.
70
b37a3600 712012-06-06 Steven Bosscher <steven@gcc.gnu.org>
72
73 * c.opt (fconserve-space): Turn into a no-op.
74
19931eea 752012-06-04 Sterling Augustine <saugustine@google.com>
5f9e7dd5 76
77 * c-pretty-print.h (pp_c_flag_gnu_v3): New enumerator.
78 * c-pretty-print.c (pp_c_specifier_qualifier_list): Check it at
79 both the start and end of the function.
80
dff12c10 812012-06-04 Steven Bosscher <steven@gcc.gnu.org>
82
83 * c-common.c: Do not include output.h.
84 * c-pragma.c: Likewise.
85
5f9e7dd5 862012-06-04 Steven Bosscher <steven@gcc.gnu.org>
87
88 * error.c (dump_decl): Check pp_c_flag_gnu_v3.
89 (decl_as_dwarf_string, lang_decl_dwarf_name): New functions.
90 (lang_decl_name): Handle namespace decls.
91
b5369b7d 922012-05-31 Steven Bosscher <steven@gcc.gnu.org>
93
94 * c-ada-spec.c: Do not include output.h.
95 * c-semantics.c: Likewise.
96
8032877c 972012-05-29 Joseph Myers <joseph@codesourcery.com>
98
99 * c-common.c: Fix typo.
100
7843e4bc 1012012-05-29 Michael Matz <matz@suse.de>
102
103 * c-common.h (c_expand_decl): Remove prototype.
104
8cf857d4 1052012-05-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
106
107 * c.opt (Wmissing-braces): Use LangEnabledBy(C ObjC,Wall).
108 * c-opts.c (c_common_handle_option): Remove code handling
109 warn_missing_braces.
110
8b64dc3c 1112012-05-28 Paolo Carlini <paolo.carlini@oracle.com>
112
113 PR c++/25137
114 * c-opts.c (c_common_handle_option): For C++ -Wall doesn't enable
115 -Wmissing_braces.
116
43cbde16 1172012-05-22 Dodji Seketeli <dodji@redhat.com>
118
119 PR c++/53322
120 * c.opt (Wunused-local-typedefs): Use EnabledBy(Wunused).
121
db490cb6 1222012-05-17 Manuel López-Ibáñez <manu@gcc.gnu.org>
123
124 * c.opt (--pedantic-errors,-pedantic-errors): Do not handle here.
125 * c-opts.c (c_common_handle_option): Do not handle explicitly
126 Wreturn-type, Wwrite-strings, warn_ecpp, and -pedantic-errors.
127
a60f3e81 1282012-05-16 Dodji Seketeli <dodji@redhat.com>
129
130 PR preprocessor/7263
131 * c-lex.c (c_lex_with_flags): Pass a virtual location to the call
132 to cpp_classify_number. For diagnostics, use the precise location
133 instead of the global input_location.
134
82e6ef7c 1352012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
136
cd4797ff 137 PR c++/11856
82e6ef7c 138 * c-common.c (shorten_compare): Check c_inhibit_evaluation_warnings.
139
258a168d 1402012-05-14 Bernd Schmidt <bernds@codesourcery.com>
141
82e6ef7c 142 * c-common.c (DEF_ATTR_STRING): Define and undefine as necessary.
258a168d 143
d3b7ee7c 1442012-05-14 Manuel López-Ibáñez <manu@gcc.gnu.org>
145
146 PR 53063
147 * c.opt (Wc++0X-compat,Wdelete-non-virtual-dtor,Wjump-misses-init,
148 Wreorder): Use LangEnabledBy.
149 * c-opts.c (c_common_handle_option): Do not enable them
150 explicitly. Call lang-specific generated functions.
151 (c_common_post_options): Do not set them here.
152
70059cea 1532012-05-13 Manuel López-Ibáñez <manu@gcc.gnu.org>
154
155 * c.opt (Wclobbered,Wempty-body,Wignored-qualifiers,
156 Wmissing-field-initializers,Wmissing-parameter-type,
157 Wold-style-declaration,Woverride-init): Use EnabledBy.
158 * c-opts.c (c_common_post_options): Do not set here explicitly.
159
fbb6fbd8 1602012-05-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
161
162 PR 53063
163 * c-opts.c (c_common_handle_option): Use handle_generated_option
164 to enable sub-options.
165
61f69bc9 1662012-05-10 Paolo Carlini <paolo.carlini@oracle.com>
167
168 PR c++/53158
169 * c-common.c (warnings_for_convert_and_check): Use warning_at.
170
5a1fe2db 1712012-05-10 Richard Guenther <rguenther@suse.de>
172
173 * c-common.c (c_sizeof_or_alignof_type): Remove assert and
174 adjust commentary about TYPE_IS_SIZETYPE types.
175
d42e7c5a 1762012-05-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
177
178 PR c++/53261
179 * c-common.c (warn_logical_operator): Check that argument of
180 integer_zerop is not NULL.
181
686369e8 1822012-05-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
183
184 PR c/43772
185 * c-common.c (warn_logical_operator): Do not warn if either side
186 is already true or false.
187
03fe1dc2 1882012-05-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
189
190 PR c/51712
191 * c-common.c (expr_original_type): New.
192 (shorten_compare): Do not warn for enumeration types.
193
bba5a206 1942012-05-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
195
196 * c.opt (fpermissive): Add Var(flag_permissive).
197
7059d45d 1982012-04-30 Marc Glisse <marc.glisse@inria.fr>
199
200 PR c++/51033
201 * c-common.c (convert_vector_to_pointer_for_subscript): New function.
202 * c-common.h (convert_vector_to_pointer_for_subscript): Declare it.
203
7edb1062 2042012-04-30 Dodji Seketeli <dodji@redhat.com>
205
206 Add -Wvarargs option
207 * c.opt (Wvarargs): Define new option.
208
068bea1e 2092012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
210
211 * c-common.c (check_function_arguments): Replace
212 Wmissing-format-attribute with Wsuggest-attribute=format.
213
b86527d8 2142012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
215
216 * c.opt (Wsuggest-attribute=format): New. Alias of
217 Wmissing-format-attribute.
218 * c-format.c (decode_format_type): Replace
219 Wmissing-format-attribute with Wsuggest-attribute=format.
220 (check_function_format): Likewise.
221
19931eea 2222012-04-27 Ollie Wild <aaw@google.com>
76d340ac 223
224 * c-common.c: Add CPP_W_LITERAL_SUFFIX mapping.
225 * c-opts.c (c_common_handle_option): Handle OPT_Wliteral_suffix.
226 * c.opt: Add Wliteral-suffix.
227
29438999 2282012-04-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
229
230 PR c/44774
231 * c.opt (Wpedantic): New.
232 (pedantic): Alias Wpedantic.
233 * c-opts.c (c_common_handle_option): Replace -pedantic with -Wpedantic.
234 (c_common_post_options): Likewise.
235 (sanitize_cpp_opts): Likewise.
236 * c-lex.c (interpret_float): Likewise.
237 * c-format.c (check_format_types): Likewise.
238 * c-common.c (pointer_int_sum): Likewise.
239 (c_sizeof_or_alignof_type): Likewise.
240 (c_add_case_label): Likewise.
241 (c_do_switch_warnings): Likewise.
242 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
243
4f9d6b8b 2442012-04-15 Jason Merrill <jason@redhat.com>
245
246 PR c++/52818
247 * c-format.c (CPLUSPLUS_STD_VER): C++11 inherits from C99.
248 (C_STD_NAME): Distinguish between C++98 and C++11.
249
74bdbe96 2502012-04-11 Eric Botcazou <ebotcazou@adacore.com>
251
252 PR target/52624
253 * c-common.h (uint16_type_node): Rename into...
254 (c_uint16_type_node): ...this.
255 * c-common.c (c_common_nodes_and_builtins): Adjust for above renaming.
256 * c-cppbuiltin.c (builtin_define_stdint_macros): Likewise.
257
3d177e8c 2582012-04-10 Manuel López-Ibáñez <manu@gcc.gnu.org>
259
260 * c-common.c (warn_if_unused_value): Move definition to here.
261 * c-common.h (warn_if_unused_value): Move declaration to here.
262
6a9a958f 2632012-03-23 William Bader <williambader@hotmail.com>
264
265 * c-lex.c (c_lex_with_flags): Avoid declarations after stmts.
266
543efdbe 2672012-03-20 Jason Merrill <jason@redhat.com>
268
269 * c-common.h (enum cxx_dialect): Add cxx1y.
270 * c-common.c (c_common_nodes_and_builtins): Use >= for cxx_dialect
271 test.
272 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
273 * c-opts.c (c_common_post_options): Likewise.
274 (set_std_cxx1y): New.
275 (c_common_handle_option): Call it.
276 * c.opt (-std=c++1y, -std=gnu++1y): New flags.
277
62206d34 2782012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
279
280 PR c++/14710
281 * c.opt ([Wuseless-cast]): Add.
282
fadf62f4 2832012-03-16 Richard Guenther <rguenther@suse.de>
284
285 * c-pretty-print.c (pp_c_initializer_list): Adjust.
286
249faa35 2872012-03-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
288
289 PR c++/44783
290 * c.opt (ftemplate-backtrace-limit) Add.
291
126b6848 2922012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
293
294 * c-cppbuiltin.c (c_cpp_builtins): Remove #pragma extern_prefix
295 handling.
296 * c-pragma.c (handle_pragma_extern_prefix): Remove.
297 (init_pragma): Don't register extern_prefix.
298
a51edb4c 2992012-03-12 Richard Guenther <rguenther@suse.de>
300
301 * c-common.c (c_common_get_narrower): Use c_common_type_for_size.
302 (builtin_type_for_size): Likewise.
303
0f6a7cb7 3042012-02-13 Jakub Jelinek <jakub@redhat.com>
305
306 PR c++/52215
307 * c-common.c (sync_resolve_params): Don't decide whether to convert
308 or not based on TYPE_SIZE comparison, convert whenever arg_type
309 is unsigned INTEGER_TYPE.
310
0779e32c 3112012-02-06 Paolo Carlini <paolo.carlini@oracle.com>
312
313 PR c/52118
314 * c.opt ([Wunused-local-typedefs]): Fix description.
315
baec58e1 3162012-01-24 Mike Stump <mikestump@comcast.net>
317
318 * c-common.c (c_common_type_for_mode): Match signed/unsigned types
319 exactly.
320
c779d8cc 3212012-01-18 Richard Guenther <rguenther@suse.de>
322
323 * c-opts.c (c_common_post_options): Reset LTO flags if
324 we are about to generate a PCH.
325
ee917d24 3262012-01-17 Paolo Carlini <paolo.carlini@oracle.com>
327
328 PR c++/51777
329 * c-pretty-print.c (pp_c_integer_constant): For unsigned constants
330 use pp_unsigned_wide_integer.
331
90e2341f 3322012-01-10 Richard Guenther <rguenther@suse.de>
333
334 PR middle-end/51806
335 * c-opts.c (c_common_handle_option): Move -Werror handling
336 to language independent code.
337
9ea022ce 3382012-01-05 Richard Guenther <rguenther@suse.de>
339
340 PR middle-end/51764
341 * c.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move here
342 from common.opt.
343
3df19e1b 3442011-12-30 Paolo Carlini <paolo.carlini@oracle.com>
345
346 PR c++/51316
347 * c-common.c (c_sizeof_or_alignof_type): In C++ allow for alignof
348 of array types with an unknown bound.
349
32074525 3502011-12-20 Joseph Myers <joseph@codesourcery.com>
351
352 * c-common.c (flag_isoc99): Update comment to refer to C11.
353 (flag_isoc1x): Change to flag_isoc11.
354 * c-common.h (flag_isoc99): Update comment to refer to C11.
355 (flag_isoc1x): Change to flag_isoc11.
356 * c-cppbuiltin.c (cpp_atomic_builtins): Change comment to refer to
357 C11.
358 * c-opts.c (set_std_c1x): Change to set_std_c11.
359 (c_common_handle_option): Handle OPT_std_c11 and OPT_std_gnu11.
360 Call set_std_c11.
361 (set_std_c89, set_std_c99, set_std_c11): Use flag_isoc11.
362 (set_std_c1): Use CLK_STDC11 and CLK_GNUC11.
363 * c.opt (std=c1x): Change to std=c11. Document as non-draft
364 standard.
365 (std=c1x, std=iso9899:2011): Add as aliases of std=c11.
366 (std=gnu1x): Change to std=gnu11. Refer to non-draft standard.
367 (std=gnu1x): Make alias of std=gnu11.
368
fca86134 3692011-12-19 Jason Merrill <jason@redhat.com>
370
371 PR c++/51228
372 * c-common.c (handle_transparent_union_attribute): Check the first
373 field if the type is complete.
374
aa4313eb 3752011-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
376
377 PR libstdc++/51365
378 * c-common.c (RID_IS_FINAL): Add.
379 * c-common.h (RID_IS_FINAL): Add.
380
3f3d5ad4 3812011-11-30 Iain Sandoe <iains@gcc.gnu.org>
382
383 * c.opt (fgnu-runtime): Provide full description.
384 (fnext-runtime): Likewise.
385 * c-opts.c (OPT_fgnu_runtime, OPT_fnext_runtime) Remove.
386
c4606d19 3872011-11-28 Andrew MacLeod <amacleod@redhat.com>
388
389 * c-cpp-builtin.c (cpp_atomic_builtins):New. Emit all atomic
390 predefines in one place. Add LOCK_FREE predefines.
391 (c_cpp_builtins): Move Legacy HAVE_SYNC predefines to
392 new func.
393
1d581089 3942011-11-24 Andrew MacLeod <amacleod@redhat.com>
395
396 PR c/51256
19931eea 397 * c-common.c (get_atomic_generic_size): Check for various error
1d581089 398 conditions
19931eea 399 (resolve_overloaded_atomic_exchange,
400 resolve_overloaded_atomic_compare_exchange,
1d581089 401 resolve_overloaded_atomic_load, resolve_overloaded_atomic_store): Return
402 error_mark_node for error conditions.
19931eea 403
6aa221fa 4042011-11-08 Richard Guenther <rguenther@suse.de>
405
406 PR middle-end/51010
407 c-family/
408
4c0315d0 4092011-11-07 Richard Henderson <rth@redhat.com>
410 Aldy Hernandez <aldyh@redhat.com>
411 Torvald Riegel <triegel@redhat.com>
412
413 Merged from transactional-memory.
414
415 * c-common.c (handle_tm_wrap_attribute,
416 handle_tm_attribute, ignore_attribute, parse_tm_stmt_attr): New.
417 (struct c_common_reswords): Added __transaction* keywords.
418 (struct c_common_attribute_table): Added transaction* and tm_regparm
419 attributes.
420 * c-common.h: Added RID_TRANSACTION*. Added TM_ATTR* and TM_STMT*
421 masks.
422 (parse_tm_stmt_attr, tm_attr_to_mask, tm_mask_to_attr,
423 find_tm_attribute): Declare.
424
920f5a70 4252011-11-07 Jason Merrill <jason@redhat.com>
426
427 PR c++/35688
428 * c-common.c, c-common.h: Revert yesterday's changes.
429
b4f861b4 4302011-11-06 Jason Merrill <jason@redhat.com>
431
432 PR c++/35688
433 * c-common.c (decl_has_visibility_attr): Split out from...
434 (c_determine_visibility): ...here.
435 * c-common.h: Declare it.
436
83e25171 4372011-11-06 Joseph Myers <joseph@codesourcery.com>
438
439 * c-common.c (c_common_reswords): Add _Alignas and _Alignof.
440 (c_sizeof_or_alignof_type): Diagnose alignof applied to a function
441 type.
442 (check_user_alignment): New. Split out of
443 handle_aligned_attribute. Disallow integer constants with
444 noninteger types. Conditionally allow zero.
445 (handle_aligned_attribute): Use check_user_alignment.
446 * c-common.h (RID_ALIGNAS, check_user_alignment): New.
447
1cd6e20d 4482011-11-06 Andrew MacLeod <amacleod@redhat.com>
449 Richard Henderson <rth@redhat.com>
450
451 Merged from cxx-mem-model.
452
453 * c-cppbuiltin.c (c_cpp_builtins): Test both atomic and sync patterns.
19931eea 454 * c-common.c (sync_resolve_params, sync_resolve_return): Only tweak
1cd6e20d 455 parameters that are the same type size.
456 (get_atomic_generic_size): New. Find size of generic
457 atomic function parameters and do typechecking.
458 (add_atomic_size_parameter): New. Insert size into parameter list.
459 (resolve_overloaded_atomic_exchange): Restructure __atomic_exchange to
460 either __atomic_exchange_n or external library call.
19931eea 461 (resolve_overloaded_atomic_compare_exchange): Restructure
1cd6e20d 462 __atomic_compare_exchange to either _n variant or external library call.
19931eea 463 (resolve_overloaded_atomic_load): Restructure __atomic_load to either
1cd6e20d 464 __atomic_load_n or an external library call.
465 (resolve_overloaded_atomic_store): Restructure __atomic_store to either
466 __atomic_store_n or an external library call.
467 (resolve_overloaded_builtin): Handle new __atomic builtins.
468
7549df0d 4692011-11-04 Eric Botcazou <ebotcazou@adacore.com>
470
471 PR c++/50608
472 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1.
473 (fold_offsetof_1): Make global. Remove STOP_REF argument and adjust.
474 <INDIRECT_REF>: Return the argument.
475 <ARRAY_REF>: Remove special code for negative offset.
476 Call fold_build_pointer_plus instead of size_binop.
477 (fold_offsetof): Remove STOP_REF argument and adjust.
478 * c-common.h (fold_offsetof_1): Declare.
479 (fold_offsetof): Remove STOP_REF argument.
480
7e783eb3 4812011-11-02 Paolo Carlini <paolo.carlini@oracle.com>
482
483 PR c++/50810
484 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
485 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
486 Wnarrowing for C++0x and C++98.
487 * c.opt ([Wnarrowing]): Update.
488
8fe701f5 4892011-11-01 Paolo Carlini <paolo.carlini@oracle.com>
490
491 PR c++/44277
492 * c.opt: Add Wzero-as-null-pointer-constant.
493
0d84dc2d 4942011-10-31 Jason Merrill <jason@redhat.com>
495
67031f52 496 * c.opt (-fdeduce-init-list): Off by default.
497
0d84dc2d 498 PR c++/50920
499 * c-common.h (cxx_dialect): Add cxx11 and cxx03.
500 * c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03,
501 and -Wc++11-compat.
502 * c-opts.c (set_std_cxx11): Rename from set_std_cxx0x.
503
66f24c41 5042011-10-27 Roberto Agostino Vitillo <ravitillo@lbl.gov>
505
506 PR c++/30066
507 * c.opt (fvisibility-inlines-hidden): Description change.
508
244db24d 5092011-10-26 Ed Smith-Rowland <3dw4rd@verizon.net>
510
511 Implement C++11 user-defined literals.
512 * c-common.c (build_userdef_literal): New.
513 * c-common.def: New tree code.
514 * c-common.h (tree_userdef_literal): New tree struct and accessors.
515 * c-lex.c (interpret_float): Add suffix parm.
516 (c_lex_with_flags): Build literal tokens.
517
235be70f 5182011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
519
520 PR c++/50841
521 Revert:
522 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
523
524 PR c++/50810
525 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
526 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
527 Wnarrowing for C++0x and C++98.
528 * c.opt ([Wnarrowing]): Update.
529
4fe0fb1c 5302011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
531
532 PR c++/50810
533 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
534 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
535 Wnarrowing for C++0x and C++98.
536 * c.opt ([Wnarrowing]): Update.
537
5f7504f9 5382011-10-21 Paolo Carlini <paolo.carlini@oracle.com>
539
540 PR c++/45385
541 * c-common.c (conversion_warning): Remove code looking for
542 artificial operands.
543
2a688977 5442011-10-18 Dodji Seketeli <dodji@redhat.com>
545
546 PR bootstrap/50760
547 * c-lex.c (fe_file_change): Use LINEMAP_SYSP when
19931eea 548 !NO_IMPLICIT_EXTERN_C.
2a688977 549
326e3391 5502011-10-17 Michael Spertus <mike_spertus@symantec.com>
551
552 * c-common.c (c_common_reswords): Add __bases,
553 __direct_bases.
554 * c-common.h: Add RID_BASES and RID_DIRECT_BASES.
555
5562011-10-17 Paolo Carlini <paolo.carlini@oracle.com>
557
558 PR c++/50757
559 * c.opt ([Wnonnull]): Add C++ and Objective-C++.
560
62db153a 5612011-10-15 Tom Tromey <tromey@redhat.com>
562 Dodji Seketeli <dodji@redhat.com>
563
564 * c.opt (fdebug-cpp): New option.
565 * c-opts.c (c_common_handle_option): Handle the option.
566 * c-ppoutput.c (maybe_print_line_1): New static function. Takes an
567 output stream in parameter. Factorized from ...
568 (maybe_print_line): ... this. Dump location debug information when
569 -fdebug-cpp is in effect.
570 (print_line_1): New static function. Takes an output stream in
571 parameter. Factorized from ...
572 (print_line): ... here. Dump location information when -fdebug-cpp
573 is in effect.
574 (scan_translation_unit): Dump location information when
575 -fdebug-cpp is in effect.
576
ce70f433 5772011-10-15 Tom Tromey <tromey@redhat.com>
578 Dodji Seketeli <dodji@redhat.com>
579
580 * c.opt (ftrack-macro-expansion): New option. Handle it with and
581 without argument.
582 * c-opts.c (c_common_handle_option)<case
583 OPT_ftrack_macro_expansion_, case OPT_ftrack_macro_expansion>: New
584 cases. Handle -ftrack-macro-expansion with and without argument.
585
97bfb9ef 5862011-10-15 Tom Tromey <tromey@redhat.com>
587 Dodji Seketeli <dodji@redhat.com>
588
589 * c-ppoutput.c (scan_translation_unit, maybe_print_line)
590 (print_line, cb_define, do_line_change): Adjust to avoid touching
591 the internals of struct line_map. Use the public API instead.
592 * c-pch.c (c_common_read_pch): Likewise.
593 * c-lex.c (fe_file_change): Likewise.
594
326e3391 5952011-10-14 Paolo Carlini <paolo.carlini@oracle.com>
596
597 PR c++/17212
598 * c.opt ([Wformat-zero-length]): Add C++ and Objective-C++.
599
6002011-10-11 Paolo Carlini <paolo.carlini@oracle.com>
601
602 PR c++/33067
603 * c-pretty-print.c (pp_c_floating_constant): Output
604 max_digits10 (in the ISO C++ WG N1822 sense) decimal digits.
605
b9a16870 6062011-10-11 Michael Meissner <meissner@linux.vnet.ibm.com>
607
608 * c-common.c (def_builtin_1): Delete old interface with two
609 parallel arrays to hold standard builtin declarations, and replace
610 it with a function based interface that can support creating
611 builtins on the fly in the future. Change all uses, and poison
612 the old names. Make sure 0 is not a legitimate builtin index.
613 * c-omp.c (c_finish_omp_barrier): Ditto.
614 (c_finish_omp_taskwait): Ditto.
615 (c_finish_omp_flush): Ditto.
616
c7964868 6172011-10-11 Tristan Gingold <gingold@adacore.com>
618
619 * c.opt: (fallow-parameterless-variadic-functions): New.
620
a4e3ffad 6212011-09-08 Dodji Seketeli <dodji@redhat.com>
622
623 PR c++/33255 - Support -Wunused-local-typedefs warning
624 * c-common.h (struct c_language_function::local_typedefs): New
625 field.
19931eea 626 (record_locally_defined_typedef, maybe_record_typedef_use)
627 (maybe_warn_unused_local_typedefs): Declare new functions.
a4e3ffad 628 * c-common.c (record_locally_defined_typedef)
19931eea 629 (maybe_record_typedef_use)
630 (maybe_warn_unused_local_typedefs): Define new functions.
a4e3ffad 631 * c.opt: Declare new -Wunused-local-typedefs flag.
632
737a23cc 6332011-09-06 Eric Botcazou <ebotcazou@adacore.com>
634
635 PR middle-end/50266
636 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Fold offsetof-like
637 computations.
638
7542c3b4 6392011-09-05 Richard Guenther <rguenther@suse.de>
640
641 * c-common.c (complete_array_type): Use ssize_int (-1) instead
642 of integer_minus_one_node for empty array upper bounds.
643
1dc92c59 6442011-08-28 Dodji Seketeli <dodji@redhat.com>
645
646 * c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as
647 it's the first time it's being called on this main TU.
648
2bdf2b6e 6492011-08-24 Richard Guenther <rguenther@suse.de>
650
651 PR c/49396
652 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional.
653
6542011-08-22 Gabriel Charette <gchare@google.com>
6ea2c7a3 655
656 * c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens
657 defined in cpp_init_builtins and c_cpp_builtins.
658
bff4ad11 6592011-08-19 Joseph Myers <joseph@codesourcery.com>
660
661 * c-common.c (c_common_reswords): Add __builtin_complex.
662 * c-common.h (RID_BUILTIN_COMPLEX): New.
663
985c6e3a 6642011-08-18 Joseph Myers <joseph@codesourcery.com>
665
666 * c-common.c (c_common_reswords): Add _Noreturn.
667 (keyword_is_function_specifier): Handle RID_NORETURN.
668 * c-common.h (RID_NORETURN): New.
669
7dfa155b 6702011-08-10 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
671
672 * c-common.c (unsafe_conversion_p): New function. Check if it is
673 unsafe to convert an expression to the type.
674 (conversion_warning): Adjust, use unsafe_conversion_p.
675 * c-common.h (unsafe_conversion_p): New function declaration.
676
2169f33b 6772011-08-02 Jakub Jelinek <jakub@redhat.com>
678
679 * c-common.h (c_finish_omp_atomic): Adjust prototype.
680 (c_finish_omp_taskyield): New prototype.
681 * c-omp.c (c_finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1
682 arguments. Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and
683 OMP_ATOMIC_CAPTURE_NEW in addition to OMP_ATOMIC. If LHS1
684 or RHS1 have side-effects, evaluate those too in the right spot,
685 if it is a decl and LHS is also a decl, error out if they
686 aren't the same.
687 (c_finish_omp_taskyield): New function.
688 * c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP to 201107.
689 * c-pragma.c (omp_pragmas): Add taskyield.
690 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKYIELD.
691 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FINAL and
692 PRAGMA_OMP_CLAUSE_MERGEABLE.
693
ab77850e 6942011-07-25 Dodji Seketeli <dodji@redhat.com>
695
696 * c-common.h (set_underlying_type): Remove parm name from
697 declaration.
698
6ee97920 6992011-07-25 Romain Geissler <romain.geissler@gmail.com>
700
701 * c-pretty-print.h: Search c-common.h in c-family.
19931eea 702
dc251364 7032011-07-22 Jason Merrill <jason@redhat.com>
704
1a2a35f0 705 PR c++/49793
706 * c.opt (Wnarrowing): New.
707
27282252 708 PR c++/30112
709 * c-common.h: Declare c_linkage_bindings.
710 * c-pragma.c (handle_pragma_redefine_extname): Use it.
711
dc251364 712 PR c++/49813
713 * c-opts.c (set_std_cxx0x): Set flag_isoc94 and flag_isoc99.
714 * c-pretty-print.c (pp_c_cv_qualifiers): Check c_dialect_cxx as well
715 as flag_isoc99 for 'restrict'.
716 (pp_c_specifier_qualifier_list): Likewise for _Complex.
717
fc501191 7182011-07-21 Ian Lance Taylor <iant@google.com>
719
720 PR middle-end/49705
721 * c-common.c (c_disable_warnings): New static function.
722 (c_enable_warnings): New static function.
723 (c_fully_fold_internal): Change local unused_p to bool. Call
724 c_disable_warnings and c_enable_warnings rather than change
725 c_inhibit_evaluation_warnings.
726
07b8f133 7272011-07-20 Jason Merrill <jason@redhat.com>
728
729 PR c++/6709 (DR 743)
730 PR c++/42603 (DR 950)
731 * c-common.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move from cp/parser.h.
732 (CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise.
733 (CPP_DECLTYPE): New.
734 * c-common.c (c_parse_error): Handle CPP_DECLTYPE.
735
2cc66f2a 7362011-07-19 Richard Guenther <rguenther@suse.de>
737
738 * c-common.c (pointer_int_sum): Use fold_build_pointer_plus.
739 * c-omp.c (c_finish_omp_for): Likewise.
740
3c802a1e 7412011-07-12 Eric Botcazou <ebotcazou@adacore.com>
742
743 * c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop
744 body on the next line.
745
98a33d9f 7462011-07-08 Jason Merrill <jason@redhat.com>
747
3115bda0 748 PR c++/45437
749 * c-omp.c (check_omp_for_incr_expr): Handle preevaluation.
750
98a33d9f 751 PR c++/49673
752 * c-common.c (c_apply_type_quals_to_decl): Don't check
753 TYPE_NEEDS_CONSTRUCTING.
754
c38a75b7 7552011-07-06 Richard Guenther <rguenther@suse.de>
756
757 * c-common.c (c_common_nodes_and_builtins):
758 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
759
e593356b 7602011-07-05 Richard Guenther <rguenther@suse.de>
761
762 * c-common.c (c_common_nodes_and_builtins): Build all common
763 tree nodes first.
764
fca0886c 7652011-06-27 Jakub Jelinek <jakub@redhat.com>
766
a68f7a8d 767 * c-common.h (c_tree_chain_next): New static inline function.
768
fca0886c 769 * c-common.c (check_builtin_function_arguments): Handle
770 BUILT_IN_ASSUME_ALIGNED.
771
2797f13a 7722011-06-21 Andrew MacLeod <amacleod@redhat.com>
773
774 * c-common.c: Add sync_ or SYNC__ to builtin names.
775 * c-omp.c: Add sync_ or SYNC__ to builtin names.
9cad95b7 776
7772011-06-20 Pierre Vittet <piervit@pvittet.com>
778
779 * c-pragma.h (pragma_handler_1arg, pragma_handler_2arg): New
780 handler.
781 (gen_pragma_handler): New union.
782 (internal_pragma_handler): New type.
783 (c_register_pragma_with_data)
784 (c_register_pragma_with_expansion_and_data): New functions.
785
786 * c-pragma.c (registered_pragmas, c_register_pragma_1)
787 (c_register_pragma, c_register_pragma_with_expansion)
788 (c_invoke_pragma_handler): Changed to work with
789 internal_pragma_handler.
790 (c_register_pragma_with_data)
791 (c_register_pragma_with_expansion_and_data): New functions.
792
218e3e4e 7932011-06-14 Joseph Myers <joseph@codesourcery.com>
794
795 * c-common.c: Include common/common-target.h.
796 (handle_section_attribute): Use
797 targetm_common.have_named_sections.
798 * c-cppbuiltin.c: Include common/common-target.h.
799 (c_cpp_builtins): Use targetm_common.except_unwind_info.
800
41e53ed2 8012011-06-10 Richard Guenther <rguenther@suse.de>
802
803 * c-pretty-print.c (pp_c_type_specifier): Use pp_c_identifier
804 to print a IDENTIFIER_NODE.
805
a6f06169 8062011-06-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
807 Joseph Myers <joseph@codesourcery.com>
808
809 * c.opt (fbuilding-libgcc): New option.
810 * c-cppbuiltin.c (c_cpp_builtins): Define
811 __LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc.
812
1ea9269b 8132011-06-07 Jason Merrill <jason@redhat.com>
814
8ce59854 815 * c-common.c (max_tinst_depth): Lower default to 900.
816
1ea9269b 817 * c-format.c (gcc_cxxdiag_char_table): Add 'S' format.
818
1af0124d 8192011-06-07 Richard Guenther <rguenther@suse.de>
820
821 * c-common.c (c_common_nodes_and_builtins): Do not set
822 size_type_node or call set_sizetype.
823
0e9a4c01 8242011-06-07 Dodji Seketeli <dodji@redhat.com>
825
826 PR debug/49130
827 * c-pretty-print.c (pp_c_integer_constant): Consider the canonical
19931eea 828 type when using pointer comparison to compare types.
0e9a4c01 829
90b40725 8302011-06-02 Jonathan Wakely <jwakely.gcc@gmail.com>
831
832 * c.opt: Add -Wdelete-non-virtual-dtor.
833 * c-opts.c (c_common_handle_option): Include it in -Wall.
834
fc9c9e87 8352011-05-30 Nathan Froyd <froydnj@gcc.gnu.org>
836
837 PR bootstrap/49190
838
839 Revert:
840 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
841
842 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
843 not tree_common.
844
d0389adc 8452011-05-27 Jakub Jelinek <jakub@redhat.com>
846
847 PR c++/49165
848 * c-common.c (c_common_truthvalue_conversion) <case COND_EXPR>: For
849 C++ don't call c_common_truthvalue_conversion on void type arms.
850
cacfdc02 8512011-05-27 Nathan Froyd <froydnj@codesourcery.com>
852
853 * c-common.h (struct stmt_tree_s) [x_cur_stmt_list]: Change to a VEC.
854 (stmt_list_stack): Define.
855 (cur_stmt_list): Adjust for new type of x_cur_stmt_list.
856 * c-semantics.c (push_stmt_list, pop_stmt_list): Likewise.
857
027fc6ef 8582011-05-26 Nathan Froyd <froydnj@codesourcery.com>
859
860 * c-common.c (warning_candidate_p): Check for BLOCKs.
861
f21317a1 8622011-05-26 Nathan Froyd <froydnj@codesourcery.com>
863
864 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
865 not tree_common.
866
789e953d 8672011-05-25 Jakub Jelinek <jakub@redhat.com>
868
869 * c-common.c (def_fn_type): Remove extra va_end.
870
7f506bca 8712011-05-23 Jason Merrill <jason@redhat.com>
872
873 PR c++/48106
874 * c-common.c (c_common_get_narrower): New.
875 (shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.
876
774e9d58 8772011-05-23 Nathan Froyd <froydnj@codesourcery.com>
878
879 * c-common.h (check_function_arguments): Tweak prototype of
880 check_function_arguments.
881 * c-common.c (check_function_arguments): Likewise. Adjust
882 calls to check_function_nonnull, check_function_format, and
883 check_function_sentinel.
884 (check_function_sentinel): Take a FUNCTION_TYPE rather than
885 separate attributes and typelist arguments. Use
886 FOREACH_FUNCTION_ARGS to iterate over argument types.
887
23407dc9 8882011-05-15 Paolo Carlini <paolo.carlini@oracle.com>
889
890 * c-common.c (c_common_reswords): Reorder.
891 * c-common.h (rid): Likewise.
892
3a939d12 8932011-05-10 Nathan Froyd <froydnj@codesourcery.com>
894
895 * c-common.c (def_fn_type): Don't call build_function_type, call
896 build_function_type_array or build_varargs_function_type_array
897 instead.
898 (c_common_nodes_and_builtins): Likewise.
899
b6e3dd65 9002011-05-05 Nathan Froyd <froydnj@codesourcery.com>
901
902 * c-common.c (c_add_case_label): Omit the loc argument to
903 build_case_label.
904 * c-common.h (build_case_label): Remove.
905 * c-semantics.c (build_case_label): Remove.
906
4232a958 9072011-05-05 Joseph Myers <joseph@codesourcery.com>
908
909 * c-objc.h (objc_start_method_definition): Update prototype.
910 * stub-objc.c (objc_start_method_definition): Add extra parameter.
911
d0af78c5 9122011-05-04 Nathan Froyd <froydnj@codesourcery.com>
913
914 * c-common.c (check_main_parameter_types): Reindent. Don't use
915 TYPE_ARG_TYPES directly.
916 (handle_nonnull_attribute): Likewise.
917 (sync_resolve_params): Likewise.
918 * c-format.c (handle_format_arg_attribute): Likewise. Adjust call
919 to check_format_string.
920 (handle_format_attribute): Likewise.
921 (check_format_string): Take a function type to examine instead of
922 a type list. Use a function_arg_iterator to step through argument
923 types.
924
ceb7b692 9252011-05-04 Richard Guenther <rguenther@suse.de>
926
927 * c-common.c (fix_string_type): Use size_int for index type bounds.
928 (start_fname_decls): Do not pass NULL to build_int_cst.
929 (c_init_attributes): Likewise.
930 * c-lex.c (c_lex_with_flags): Likewise.
931
c66c81be 9322011-04-27 Jason Merrill <jason@redhat.com>
933
934 * c-common.c (make_tree_vector_from_list): New.
935 * c-common.h: Declare it.
936
16930c72 9372011-04-26 Richard Guenther <rguenther@suse.de>
938
939 PR preprocessor/48248
940 * c-ppoutput.c (maybe_print_line): Always optimize newlines
941 for output size with -P.
942
23407dc9 9432011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
944
945 * c-common.c (struct c_common_resword): Add __underlying_type.
946 * c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
947
dd045aee 9482011-04-20 Jim Meyering <meyering@redhat.com>
949
950 * c-format.c (init_dollar_format_checking): Remove useless
951 if-before-free.
952
394dd737 9532011-04-15 Nicola Pero <nicola.pero@meta-innovation.com>
954
955 * c-objc.h (objc_get_interface_ivars): Removed.
23407dc9 956 (objc_detect_field_duplicates): New.
394dd737 957 * stub-objc.c: Likewise.
23407dc9 958
a758bf7d 9592011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
960
961 * stub-objc.c (objc_declare_protocols): Renamed to
962 objc_declare_protocol.
963 * c-objc.h: Likewise.
23407dc9 964
29d7200d 9652011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
966
967 * stub-objc.c (objc_declare_class): Updated argument name.
968
9b88d08d 9692011-04-12 Nathan Froyd <froydnj@codesourcery.com>
970
971 * c-common.h (c_common_init_ts): Declare.
972 * c-common.c (c_common_init_ts): Define.
973
4185cf58 9742011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
975
976 * c-objc.h (objc_build_message_expr): Updated prototype.
977 * stub-objc.c (objc_build_message_expr): Likewise.
19931eea 978
5a90471f 9792011-04-12 Martin Jambor <mjambor@suse.cz>
980
981 * c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
982 of cgraph_node.
983
783bb57e 9842011-04-11 Richard Guenther <rguenther@suse.de>
985
986 * c-common.c (complete_array_type): Build a range type of
987 proper type.
988
c33080b9 9892011-04-08 Nathan Froyd <froydnj@codesourcery.com>
990
991 * c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
992 (handle_type_generic_attribute): Likewise.
993
f8913d47 9942011-04-07 Jason Merrill <jason@redhat.com>
995
996 PR c++/48450
997 * c-common.c (c_common_truthvalue_conversion): Don't ignore
998 conversion from C++0x scoped enum.
999
c94b1d0e 10002011-04-06 Joseph Myers <joseph@codesourcery.com>
1001
1002 * c-target-def.h: New file.
1003 * c-target.def: New file.
1004 * c-target.h: New file.
1005 * c-common.c (targetcm): Don't define here.
1006 * c-common.h (default_handle_c_option): Declare.
1007 * c-format.c: Include c-target.h instead of target.h.
1008 * c-opts.c: Include c-target.h instead of target.h. Explicitly
1009 include tm.h.
1010 (default_handle_c_option): Move from targhooks.c.
1011
acb10f41 10122011-03-29 Jakub Jelinek <jakub@redhat.com>
1013
1014 PR preprocessor/48248
1015 * c-ppoutput.c (print): Add src_file field.
1016 (init_pp_output): Initialize it.
1017 (maybe_print_line): Don't optimize by adding up to 8 newlines
1018 if map->to_file and print.src_file are different file.
1019 (print_line): Update print.src_file.
1020
82715bcd 10212011-03-25 Kai Tietz <ktietz@redhat.com>
1022
1023 * c-ada-spec.c (compare_comment): Use filename_cmp
1024 instead of strcmp for filename.
1025
451c8e2f 10262011-03-25 Jeff Law <law@redhat.com>
1027
1028 * c-family/c-common.c (def_fn_type): Add missing va_end.
1029
3c47771c 10302011-03-25 Jason Merrill <jason@redhat.com>
1031
1032 * c.opt: Add -std=c++03.
1033
97e6200f 10342011-03-22 Eric Botcazou <ebotcazou@adacore.com>
1035
1036 * c-ada-spec.c (dump_ada_template): Skip non-class instances.
1037
ac86af5d 10382011-03-17 Kai Tietz
1039
1040 PR target/12171
ee212425 1041 * c-pretty-print.c (pp_c_specifier_qualifier_list):
1042 Display allowed attributes for function pointer types.
1043 (pp_c_attributes_display): New function to display
1044 attributes having affects_type_identity flag set to true.
1045 * c-pretty-print.h (pp_c_attributes_display): New prototype.
1046
ac86af5d 1047 * c-common.c (c_common_attribute_table):
1048 Add new element.
1049 (c_common_format_attribute_table): Likewise.
1050
914d1151 10512011-03-18 Jason Merrill <jason@redhat.com>
1052
69788bdf 1053 * c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
1054 * c-common.h: Don't declare it here.
1055 * c-common.c: Or define it here.
1056 * c-opts.c (c_common_handle_option): Or set it here.
1057
914d1151 1058 PR c++/35315
1059 * c-common.c (handle_transparent_union_attribute): Don't
1060 make a duplicate type in C++.
1061
54cf6eed 10622011-03-15 Jason Merrill <jason@redhat.com>
1063
1064 * c-common.c (max_constexpr_depth): New.
1065 * c-common.h: Declare it.
1066 * c-opts.c (c_common_handle_option): Set it.
1067 * c.opt (fconstexpr-depth): New option.
1068
02cb1060 10692011-03-11 Jason Merrill <jason@redhat.com>
1070
9bf1c74e 1071 * c-common.c (attribute_takes_identifier_p): Add missing const.
1072
02cb1060 1073 PR c++/46803
1074 * c-common.c (attribute_takes_identifier_p): Assume that an
1075 unknown attribute takes an identifier.
1076
ecf2703d 10772011-03-07 Nathan Froyd <froydnj@codesourcery.com>
1078
1079 PR c/47786
1080 * c-common.c (c_type_hash): Call list_length instead of iterating
1081 through DECL_CHAIN. Rename 'i' to 'n_elements'.
1082
2b19dfe4 10832011-02-19 Jakub Jelinek <jakub@redhat.com>
1084
1085 PR c/47809
1086 * c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
1087
29cf2335 10882011-02-17 Iain Sandoe <iains@gcc.gnu.org>
1089
1090 * c.opt (fobjc-abi-version=) New.
1091 (fobjc-nilcheck): New.
1092
fad3f658 10932011-02-03 Nathan Froyd <froydnj@codesourcery.com>
1094
1095 PR c++/46890
1096 * c-common.h (keyword_is_decl_specifier): Declare.
1097 * c-common.c (keyword_is_decl_specifier): Define.
1098 (keyword_is_function_specifier): New function.
1099
a12319b3 11002011-01-26 Jakub Jelinek <jakub@redhat.com>
1101
1102 PR c/47473
1103 * c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
1104 EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
1105 REAL_TYPE.
1106
5c128dc8 11072011-01-26 Arnaud Charlet <charlet@adacore.com>
1108
1109 * c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type.
1110
8d67b0c7 11112011-01-26 Jakub Jelinek <jakub@redhat.com>
1112
1113 PR pch/47430
1114 * c-opts.c (c_common_post_options): Call c_common_no_more_pch
1115 after init_c_lex if pch_file is set.
1116
0675168d 11172011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
1118
e8911163 1119 PR c++/43601
0675168d 1120 * c.opt (-fkeep-inline-dllexport): New switch.
1121
0725e25c 11222011-01-12 Richard Guenther <rguenther@suse.de>
1123
1124 PR middle-end/32511
1125 * c-common.c (handle_weak_attribute): Warn instead of error
1126 on declaring an inline function weak.
1127
fdd84b77 11282011-01-05 Tom Tromey <tromey@redhat.com>
1129
1130 * c-common.h (lvalue_error): Update.
1131 * c-common.c (lvalue_error): Add 'loc' argument. Call error_at,
1132 not error.
1133
e6e73d14 11342010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
19931eea 1135
d67e8485 1136 PR objc/47075
1137 * c-objc.h (objc_finish_message_expr): Added argument to
1138 prototype.
1139
a36cf284 11402010-12-22 Nathan Froyd <froydnj@codesourcery.com>
1141
1142 * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute):
1143 Use prototype_p.
1144
33b3681f 11452010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
1146
1147 * c-objc.h (objc_maybe_warn_exceptions): New.
19931eea 1148 * stub-objc.c (objc_maybe_warn_exceptions): New.
33b3681f 1149
a1f90215 11502010-12-10 Nathan Froyd <froydnj@codesourcery.com>
1151
1152 * c-common.h (readonly_error): Declare.
1153 * c-common.c (readonly_error): Define.
1154
b1bbc8e5 11552010-12-09 Nathan Froyd <froydnj@codesourcery.com>
1156
1157 * c-common.h (invalid_indirection_error): Declare.
1158 * c-common.c (invalid_indirection_error): Define.
1159
b0d55af9 11602010-12-03 Richard Guenther <rguenther@suse.de>
1161
1162 PR c/46745
1163 * c-pretty-print.c (pp_c_postfix_expression): Handle MEM_REF.
1164 (pp_c_unary_expression): Likewise.
1165 (pp_c_expression): Likewise.
1166
d7489d8d 11672010-11-30 Nicola Pero <nicola.pero@meta-innovation.com>
1168
1169 * c-common.h (objc_finish_function): New.
1170 (objc_non_volatilized_type): Removed.
1171 (objc_type_quals_match): Removed.
1172 * stub-objc.c (objc_finish_function): New.
1173 (objc_non_volatilized_type): Removed.
1174 (objc_type_quals_match): Removed.
19931eea 1175
92468061 11762010-11-30 Joseph Myers <joseph@codesourcery.com>
1177
1178 * c-common.h (parse_optimize_options): Declare.
1179 * c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c,
1180 c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h.
1181
967958e4 11822010-11-29 Joseph Myers <joseph@codesourcery.com>
1183
1184 * c-opts.c (check_deps_environment_vars): Use getenv instead of
1185 GET_ENVIRONMENT.
1186 * c-pch.c (O_BINARY): Don't define here.
1187 * c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
1188
b213bf24 11892010-11-25 Joseph Myers <joseph@codesourcery.com>
1190
1191 * c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
1192 targetm.except_unwind_info.
1193
9faf44d6 11942010-11-23 Joseph Myers <joseph@codesourcery.com>
1195
1196 * c-opts.c (c_common_handle_option): Pass location to
1197 set_struct_debug_option.
1198
79396169 11992010-11-23 Joseph Myers <joseph@codesourcery.com>
1200
1201 * c-common.c (visibility_options): Move from ../opts.c.
1202 * c-common.h (struct visibility_flags, visibility_options):
1203 Declare here.
1204 * c-opts.c (finish_options): Rename to c_finish_options.
1205 (c_common_init): Update call to finish_options.
1206
b4aa4123 12072010-11-22 Nicola Pero <nicola.pero@meta-innovation.com>
1208
1209 PR objc/34033
1210 * c-lex.c (lex_string): Check that each string in an Objective-C
1211 string concat sequence starts with either one or zero '@', and
1212 that there are no spurious '@' signs at the end.
1213
3e0e49f2 12142010-11-20 Joseph Myers <joseph@codesourcery.com>
1215
1216 * c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
1217 HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
1218 HANDLE_PRAGMA_VISIBILITY.
1219 * c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
1220 HANDLE_PRAGMA_VISIBILITY): Don't define.
1221 (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.
1222
a9ffdd35 12232010-11-20 Nathan Froyd <froydnj@codesourcery.com>
1224
1225 PR c++/16189
1226 PR c++/36888
1227 PR c++/45331
1228 * c-common.h (keyword_begins_type_specifier): Declare.
1229 (keyword_is_storage_class_specifier): Declare.
1230 (keyword_is_type_qualifier): Declare.
1231 * c-common.c (keyword_begins_type_specifier): New function.
1232 (keyword_is_storage_class_specifier): New function.
1233 (keyword_is_type_qualifier): Declare.
1234
93be21c0 12352010-11-19 Joseph Myers <joseph@codesourcery.com>
1236
1237 PR c/46547
1238 * c-common.c (in_late_binary_op): Define.
1239 (c_common_truthvalue_conversion): Check in_late_binary_op before
1240 calling c_save_expr.
1241 * c-common.h (in_late_binary_op): Declare.
1242
d7175aef 12432010-11-19 Joseph Myers <joseph@codesourcery.com>
1244
1245 * c-opts.c (c_common_handle_option): Update calls to
1246 set_struct_debug_option.
1247
c213e196 12482010-11-19 Nicola Pero <nicola.pero@meta-innovation.com>
1249
1250 * c-common.h (objc_declare_protocols): Added additional argument.
1251 * stub-objc.c (objc_declare_protocol): Same change.
19931eea 1252
0b5fc5d6 12532010-11-18 Nathan Froyd <froydnj@codesourcery.com>
1254
1255 PR c/33193
1256 * c-common.h (build_real_imag_expr): Declare.
1257 * c-semantics.c (build_real_imag_expr): Define.
1258
b8ba44e7 12592010-11-17 Joseph Myers <joseph@codesourcery.com>
1260
1261 * c-opts.c (c_common_parse_file): Take no arguments.
1262 * c-common.h (c_common_parse_file): Update prototype.
1263
6ef8d12f 12642010-11-16 Jakub Jelinek <jakub@redhat.com>
1265
1266 PR c++/46401
1267 * c-common.c (warning_candidate_p): Don't track non-const calls
1268 or STRING_CSTs.
1269
929d2a90 12702010-11-15 Ian Lance Taylor <iant@google.com>
1271
1272 * c-lex.c (init_c_lex): Set macro debug callbacks if
1273 flag_dump_go_spec is set.
1274
e4a7640a 12752010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
1276
1277 * c-common.h (objc_build_incr_expr_for_property_ref): New.
1278 * stub-objc.c (objc_build_incr_expr_for_property_ref): New.
1279
597d2d81 12802010-11-15 Nathan Froyd <froydnj@codesourcery.com>
1281
1282 PR preprocessor/45038
1283 * c-cppbuiltin.c (c_cpp_builtins): Use different format for C++
1284 dialects.
1285
c123f04d 12862010-11-12 Joseph Myers <joseph@codesourcery.com>
1287
1288 * c-common.h (c_family_lang_mask): Declare.
1289 * c-opts.c (c_family_lang_mask): Make extern.
1290 * c-pragma.c (handle_pragma_diagnostic): Use
1291 control_warning_option.
1292
3c6c0e40 12932010-11-12 Joseph Myers <joseph@codesourcery.com>
1294
1295 * c-common.c (parse_optimize_options): Update call to
1296 decode_options.
1297 * c-common.h (c_common_handle_option): Update prototype.
1298 * c-opts.c (c_common_handle_option): Take location_t parameter and
1299 pass it to other functions.
1300
19ec5c9e 13012010-11-11 Joseph Myers <joseph@codesourcery.com>
1302
1303 * c-opts.c (warning_as_error_callback): Remove.
1304 (c_common_initialize_diagnostics): Don't call
1305 register_warning_as_error_callback.
1306 (c_common_handle_option): Handle -Werror=normalized= here.
1307
bf776685 13082010-11-10 Joseph Myers <joseph@codesourcery.com>
1309
1310 * c-common.c (handle_mode_attribute): Use %' and word "signedness"
1311 in diagnostic.
1312 * c-opts.c (c_common_parse_file): Start diagnostics with lowercase
1313 letter.
1314 * c-pragma.c (handle_pragma_target, handle_pragma_optimize):
1315 Remove trailing '.' from diagnostics.
1316 * c.opt (Wwrite-strings_: Avoid '`' in help text.
1317
6bd9d862 13182010-11-10 Joseph Myers <joseph@codesourcery.com>
1319
1320 * c-common.c (parse_optimize_options): Pass global_dc to
1321 decode_options.
1322 * c-opts.c (c_common_handle_option): Pass &global_options to
1323 set_Wstrict_aliasing.
1324 * c.opt (v): Don't mark Common or document here.
1325
1f6616ee 13262010-11-06 Iain Sandoe <iains@gcc.gnu.org>
1327
1328 PR target/44981
1329 * c-format.c (format_type): New type gcc_objc_string_format_type.
1330 (valid_stringptr_type_p): New.
1331 (handle_format_arg_attribute): Use valid_stringptr_type_p ().
19931eea 1332 (check_format_string): Pass expected type, use
1f6616ee 1333 valid_stringptr_type_p (), check that the format string types are
1334 consistent with the format specification.
1335 (decode_format_attr): Warn if NSString is used outside objective-c.
1336 (format_types_orig): Add NSString.
1337 (format_name): New.
1338 (format_flags): New.
1339 (check_format_arg): Handle format strings requiring an external parser.
1340 first_target_format_type: New variable.
1341 (handle_format_attribute): Set up first_target_format_type, pass the
1342 expected format arg string type to check_format_string().
1343 * c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL): New flag.
1344 * stub-objc.c (objc_string_ref_type_p): New.
1345 (objc_check_format_arg): New.
1346
b0d0931f 13472010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
1348
19931eea 1349 Fixed using the Objective-C 2.0 dot-syntax with class names.
b0d0931f 1350 * c-common.h (objc_build_class_component_ref): New.
1351 * stub-objc.c (objc_build_class_component_ref): New.
1352
f26877d5 13532010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
1354
1355 * c.opt (Wproperty-assign-default): New option.
1356
1ef143b6 13572010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
1358
1359 Implemented -fobjc-std=objc1 flag.
1360 * c.opt (fobjc-std=objc1): New option.
1361
8c582e4f 13622010-11-01 Nicola Pero <nicola.pero@meta-innovation.com>
1363
1364 Implemented format and noreturn attributes for Objective-C methods.
1365 * c-common.c (handle_noreturn_attribute): Recognize 'noreturn'
1366 attribute for Objective-C methods.
1367
8637f1db 13682010-10-31 Jason Merrill <jason@redhat.com>
1369
1370 * c-common.c (conversion_warning, warn_for_collisions_1): Use
1371 EXPR_LOC_OR_HERE.
1372
9d9f5bb3 13732010-10-30 Nicola Pero <nicola.pero@meta-innovation.com>
1374
1375 Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
1376 * c-common.h (enum rid): Removed RID_COPIES and RID_IVAR.
1377 (objc_add_property_declaration): Removed arguments for copies and
1378 ivar.
1379 (objc_build_getter_call): Renamed to
1380 objc_maybe_build_component_ref.
1381 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
1382 (objc_is_property_ref): New.
1383 * c-common.c (c_common_reswords): Removed copies and ivar.
1384 * stub-objc.c (objc_add_property_declaration): Removed arguments
1385 for copies and ivar.
1386 (objc_build_getter_call): Renamed to
1387 objc_maybe_build_component_ref.
1388 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
1389 (objc_is_property_ref): New.
19931eea 1390
56f907a0 13912010-10-29 Arnaud Charlet <charlet@adacore.com>
1392 Matthew Gingell <gingell@adacore.com>
1393
1394 * c-ada-spec.c (separate_class_package): New function.
1395 (pp_ada_tree_identifier): Prefix references to C++ classes with the
1396 name of their enclosing package.
1397 (print_ada_declaration): Use separate_class_package.
1398
b5fa273e 13992010-10-27 Jason Merrill <jason@redhat.com>
1400
5290e253 1401 * c-common.c (c_common_reswords): Add __is_literal_type.
1402 * c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
1403
b5fa273e 1404 * c-common.c (check_case_value): Remove special C++ code.
1405
7590f0e5 14062010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
1407
1408 * c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN,
1409 RID_RETAIN, RID_COPY and RID_NONATOMIC. Updated RID_FIRST_PATTR
1410 and RID_LAST_PATTR.
1411 (objc_add_property_declaration): Added additional arguments.
1412 (objc_property_attribute_kind): Removed.
1413 (objc_set_property_attr): Removed.
1414 * c-common.c (c_common_reswords): Added readwrite, assign, retain,
1415 copy and nonatomic.
1416 * stub-objc.c (objc_add_property_declaration): Added additional
1417 arguments.
1418 (objc_set_property_attr): Removed.
19931eea 1419
1d894bcf 14202010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
1421
1422 * c-common.h (objc_add_property_variable): Renamed to
1423 objc_add_property_declaration. Added location argument.
1424 * stub-objc.c (objc_add_property_variable): Same change.
1425
e23bf1fb 14262010-10-23 Nicola Pero <nicola.pero@meta-innovation.com>
1427
1428 * c-common.h (objc_maybe_printable_name): New.
1429 * stub-objc.c (objc_maybe_printable_name): New.
1430
93426222 14312010-10-22 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
1432 Andrew Pinski <pinskia@gmail.com>
1433
1434 * c-common.h (c_common_mark_addressable_vec): Declare.
1435 * c-common.c (c_common_mark_addressable_vec): New function.
1436
45b2b110 14372010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
1438
1439 * c-common.h (objc_set_method_type): Removed.
1440 (objc_add_method_declaration): Added boolean argument.
1441 (objc_start_method_definition): Same change.
1442 (objc_build_method_signature): Same change.
1443 * stub-objc.c (objc_set_method_type): Removed.
1444 (objc_add_method_declaration): Added boolean argument.
1445 (objc_start_method_definition): Same change.
1446 (objc_build_method_signature): Same change.
1447
64cd9619 14482010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
1449
1450 * c-common.h (finish_file): Removed.
1451 (objc_write_global_declarations): New.
1452 * c-opts.c (c_common_parse_file): Do not call finish_file.
1453 * stub-objc.c (objc_write_global_declarations): New.
19931eea 1454
e1f293c0 14552010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
1456
1457 Implemented parsing @synthesize and @dynamic for
1458 Objective-C/Objective-C++.
1459 * c-common.h (enum rid): Add RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
1460 (objc_add_synthesize_declaration): New.
1461 (objc_add_dynamic_declaration): New.
1462 * c-common.c (c_common_reswords): Add synthesize and dynamic.
1463 * stub-objc.c (objc_add_synthesize_declaration): New.
1464 (objc_add_dynamic_declaration): New.
19931eea 1465
ef97a312 14662010-10-18 Michael Meissner <meissner@linux.vnet.ibm.com>
1467
1468 PR target/46041
1469 * c-cppbuiltin.c (mode_has_fma): Move function here from
1470 builtins.c. Don't use the fma optab, instead just use the
1471 HAVE_fma* macros, so that __FP_FAST_FMA* will be defined when
1472 using -save-temps.
1473
69b07042 14742010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
1475
1476 Merge from 'apple/trunk' branch on FSF servers.
ef97a312 1477
69b07042 1478 2005-11-08 Fariborz Jahanian <fjahanian@apple.com>
1479
19931eea 1480 Radar 4330422
69b07042 1481 * c-common.h (objc_non_volatilized_type): New declaration
1482 * stub-objc.c (objc_non_volatilized_type): New stub.
1483
f15f2e56 14842010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
1485
69b07042 1486 Merge from 'apple/trunk' branch on FSF servers.
f15f2e56 1487
1488 2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
1489
19931eea 1490 Radar 4133425
f15f2e56 1491 * c-common.h (objc_diagnose_private_ivar): New decl.
ef97a312 1492 * stub-objc.c (objc_diagnose_private_ivar): New stub.
f15f2e56 1493
4a8875ed 14942010-10-17 Iain Sandoe <iains@gcc.gnu.org>
1495
1496 * c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
1497 * c-common.h (enum rid): Add RID_AT_PACKAGE.
1498 (objc_ivar_visibility_kind): New enum.
1499 (objc_set_visibility): Adjust prototype to use visibility enum.
ef97a312 1500 * stub-objc.c (objc_set_visibility): Adjust stub to use
4a8875ed 1501 visibility enum.
1502
7e0713b1 15032010-10-14 Michael Meissner <meissner@linux.vnet.ibm.com>
1504
1505 * c-cppbuiltin.c (builtin_define_float_constants): Emit
1506 __FP_FAST_FMA, __FP_FAST_FMAF, and __FP_FAST_FMAL if the machine
1507 has the appropriate fma builtins.
1508 (c_cpp_builtins): Adjust call to builtin_define_float_constants.
1509
86c110ac 15102010-10-14 Iain Sandoe <iains@gcc.gnu.org>
1511
7e0713b1 1512 merge from FSF apple 'trunk' branch.
86c110ac 1513 2006 Fariborz Jahanian <fjahanian@apple.com>
7e0713b1 1514
86c110ac 1515 Radars 4436866, 4505126, 4506903, 4517826
1516 * c-common.c (c_common_resword): Define @property and its attributes.
1517 * c-common.h: Define property attribute enum entries.
1518 (OBJC_IS_PATTR_KEYWORD): New.
1519 (objc_property_attribute_kind): New enum.
1520 Declare objc_set_property_attr (), objc_add_property_variable (),
1521 objc_build_getter_call () and objc_build_setter_call ().
1522 * stub-objc.c (objc_set_property_attr): New stub.
1523 (objc_add_property_variable): Likewise.
1524 (objc_build_getter_call): Likewise.
1525 (objc_build_setter_call) Likewise.
7e0713b1 1526
40c8d1dd 15272010-10-13 Iain Sandoe <iains@gcc.gnu.org>
1528
7e0713b1 1529 merge from FSF apple 'trunk' branch.
40c8d1dd 1530 2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
1531
1532 Radar 3803157 (method attributes)
1533 * c-common.c (handle_deprecated_attribute): Recognize
1534 objc methods as valid declarations.
1535 * c-common.h: Declare objc_method_decl ().
7e0713b1 1536 * stub-objc.c (objc_method_decl): New stub.
40c8d1dd 1537
f3f006ad 15382010-10-08 Joseph Myers <joseph@codesourcery.com>
1539
1540 * c-common.c (parse_optimize_options): Call
1541 decode_cmdline_options_to_array_default_mask before
1542 decode_options. Update arguments to decode_options.
1543 * c-common.h (c_common_init_options_struct): Declare.
1544 * c-opts.c (c_common_init_options_struct): New. Split out from
1545 c_common_init_options.
1546
0a65c3bb 15472010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
1548
1549 Implemented fast enumeration for Objective-C.
1550 * c-common.h (objc_finish_foreach_loop): New.
1551 * stub-objc.c (objc_finish_foreach_loop): New.
1552
24ca3b4e 15532010-10-05 Joseph Myers <joseph@codesourcery.com>
1554
1555 * c-common.h (struct diagnostic_context): Don't declare here.
1556 (c_common_initialize_diagnostics): Declare using
1557 diagnostic_context typedef.
1558 * c-opts.c (c_common_handle_option): Pass global_dc to
1559 handle_generated_option.
1560
f83b64ca 15612010-10-04 Joseph Myers <joseph@codesourcery.com>
1562
1563 * c-opts.c (c_common_handle_option): Pass &global_options_set to
1564 handle_generated_option.
1565
2fdec027 15662010-10-03 Ian Lance Taylor <iant@google.com>
1567
1568 * c.opt (-fplan9-extensions): New option.
1569
41acdfa4 15702010-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1571
1572 * c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision):
1573 Remove.
1574 (c_cpp_builtins): Call functions from cppbuiltin.c instead
1575 of duplicating code.
1576
069761fb 15772010-09-30 Iain Sandoe <iains@gcc.gnu.org>
1578
1579 * c-common.c: Add two new entries for @optional
1580 and @required keywords.
1581
1582 merge from FSF 'apple/trunk' branch.
1583 2006-01-30 Fariborz Jahanian <fjahanian@apple.com>
1584
1585 Radar 4386773
1586 * c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new
1587 objective-c keywords.
1588 (objc_set_method_opt): New declaration.
1589 * stub-objc.c (objc_set_method_opt): New stub.
19931eea 1590
2c5d2e39 15912010-09-30 Joseph Myers <joseph@codesourcery.com>
1592
1593 * c-common.c (handle_optimize_attribute): Pass &global_options to
1594 cl_optimization_save and cl_optimization_restore.
1595 * c-opts.c (c_common_handle_option): Pass &global_options to
1596 handle_generated_option.
1597 * c-pragma.c (handle_pragma_diagnostic): Use option_flag_var.
1598 (handle_pragma_pop_options, handle_pragma_reset_options): Pass
1599 &global_options to cl_optimization_restore.
1600
e5c75ac3 16012010-09-30 Nicola Pero <nicola.pero@meta-innovation.com>
1602
1603 * c-lex.c (c_lex_with_flags): Updated comments for CPP_AT_NAME
1604 Objective-C/Objective-C++ keywords.
1605
3511333e 16062010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
e147d6aa 1607
19931eea 1608 Merge from 'apple/trunk' branch on FSF servers.
1609
e147d6aa 1610 2005-10-04 Fariborz Jahanian <fjahanian@apple.com>
1611
1612 Radar 4281748
1613 * c-common.h (objc_check_global_decl): New declaration.
1614 * stub-objc.c (objc_check_global_decl): New stub.
1615
5461e683 16162010-09-29 Joseph Myers <joseph@codesourcery.com>
1617
1618 * c.opt: Don't use VarExists.
1619
5ae82d58 16202010-09-29 Joseph Myers <joseph@codesourcery.com>
1621
1622 * c-common.c (c_cpp_error): Update names of diagnostic_context
1623 members.
1624 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of
1625 cl_optimization members.
1626 * c-opts.c (warning_as_error_callback, c_common_handle_option,
1627 sanitize_cpp_opts, finish_options): Update names of cpp_options
1628 members.
1629
b27e241e 16302010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
1631
1632 * c-common.h (OBJC_IS_CXX_KEYWORD): New macro. Updated comments.
1633 (objc_is_reserved_word): Removed.
1634 * c-common.c: Updated comments.
1635 * c-lex.c (c_lex_with_flags): Use OBJC_IS_CXX_KEYWORD instead of
1636 objc_is_reserved_word.
1637 * stub-objc.c (objc_is_reserved_word): Removed.
1638
03fc2271 16392010-09-28 Iain Sandoe <iains@gcc.gnu.org>
1640
19931eea 1641 * c-common.h (objc_add_method_declaration): Adjust prototype to
03fc2271 1642 include attributes.
1643 (objc_start_method_definition): Likewise.
1644 (objc_build_keyword_decl): Likewise.
1645 * stub-objc.c:(objc_add_method_declaration): Handle attributes.
1646 (objc_start_method_definition): Likewise.
1647 (objc_build_keyword_decl): Likewise.
1648
a336eb4b 16492010-09-28 Iain Sandoe <iains@gcc.gnu.org>
1650
1651 * c-common.h (objc_start_class_interface): Adjust prototype.
1652 (objc_start_category_interface): Likewise.
1653 (objc_start_protocol): Likewise.
1654 * stub-objc.c (objc_start_protocol): Adjust for extra argument.
1655 (objc_start_class_interface): Likewise.
1656 (objc_start_category_interface): Likewise.
1657
48b14f50 16582010-09-27 Ian Lance Taylor <iant@google.com>
1659
1660 * c-common.c (c_common_attribute_table): Add no_split_stack.
1661 (handle_no_split_stack_attribute): New static function.
1662
4abfc532 16632010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
1664
19931eea 1665 Merge from 'apple/trunk' branch on FSF servers.
4abfc532 1666
1667 2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
1668
19931eea 1669 Radar 4229905
4abfc532 1670 * c-common.h (objc_have_common_type): New declaration.
1671 * stub-objc.c (objc_have_common_type): New stub.
1672
1673 2005-06-22 Ziemowit Laski <zlaski@apple.com>
1674
1675 Radar 4154928
1676 * c-common.h (objc_common_type): New prototype.
19931eea 1677 * stub-objc.c (objc_common_type): New stub.
4abfc532 1678
7bd95dfd 16792010-09-24 Jan Hubicka <jh@suse.cz>
1680
1681 * c-common.c (handle_leaf_attribute): New function.
1682 (struct attribute_spec c_common_att): Add leaf.
1683
5789e05b 16842010-09-22 Joseph Myers <joseph@codesourcery.com>
1685
1686 * c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
1687 -comments-in-macros, -define-macro, -define-macro=, -dependencies,
1688 -dump, -dump=, -imacros, -imacros=, -include, -include=,
1689 -include-barrier, -include-directory, -include-directory=,
1690 -include-directory-after, -include-directory-after=,
1691 -include-prefix, -include-prefix=, -include-with-prefix,
1692 -include-with-prefix=, -include-with-prefix-after,
1693 -include-with-prefix-after=, -include-with-prefix-before,
1694 -include-with-prefix-before=, -no-integrated-cpp,
1695 -no-line-commands, -no-standard-includes, -no-warnings, -output,
1696 -output=, -pedantic, -pedantic-errors, -preprocess,
1697 -print-missing-file-dependencies, -trace-includes, -traditional,
1698 -traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
1699 -user-dependencies, -verbose, -write-dependencies,
1700 -write-user-dependencies, no-integrated-cpp, traditional): New.
1701
e6fb54ba 17022010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
1703
1704 PR objc/23710
9b60f3b0 1705 * c-common.h (objc_start_method_definition): Return bool instead
1706 of void.
1707 * stub-objc.c (objc_start_method_definition): Return bool instead
1708 of void.
1709
17102010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
1711
1712 PR objc/25965
1713 * c-common.h (objc_get_interface_ivars): New declaration.
1714 * stub-objc.c (objc_get_interface_ivars): New stub.
e6fb54ba 1715
e44b0a1f 17162010-09-15 Ian Lance Taylor <iant@google.com>
1717
1718 * c-common.c (parse_optimize_options): Do not capitalize warning
ebd7c4c1 1719 messages. Remove period at end of warning message.
e44b0a1f 1720
85c0a25c 17212010-09-09 Nathan Sidwell <nathan@codesourcery.com>
1722
1723 * c-common.c (handle_alias_ifunc_attribute): New, broken out of ...
1724 (handle_alias_attribute): ... here.
1725 (handle_ifunc_attribute): New.
1726
5ba33bf4 17272010-09-06 Mark Mitchell <mark@codesourcery.com>
1728
1729 * c-common.h (do_warn_double_promotion): Declare.
1730 * c-common.c (do_warn_double_promotion): Define.
1731
c920faa3 17322010-09-05 Mark Mitchell <mark@codesourcery.com>
1733
1734 * c.opt (Wdouble-promotion): New.
1735
9604e070 17362010-09-02 Joseph Myers <joseph@codesourcery.com>
1737
1738 * c.opt (falt-external-templates, fhuge-objects, fvtable-gc,
1739 fvtable-thunks, fxref): Mark no longer supported in help text.
1740
3b0273a1 17412010-09-02 Joseph Myers <joseph@codesourcery.com>
1742
1743 * c.opt (Wimport, fall-virtual, falt-external-templates,
1744 fdefault-inline, fenum-int-equiv, fexternal-templates,
1745 fguiding-decls, fhonor-std, fhuge-objects, flabels-ok,
1746 fname-mangling-version-, fnew-abi, fnonnull-objects,
1747 foptional-diags, fsquangle, fstrict-prototype, fthis-is-variable,
1748 fvtable-gc, fvtable-thunks, fxref): Mark with Ignore and Warn as
1749 applicable.
1750 (fhandle-exceptions): Mark with Alias and Warn.
1751 * c-opts.c (c_common_handle_option): Don't handle options marked
1752 as ignored.
1753
67089c6b 17542010-09-02 Joseph Myers <joseph@codesourcery.com>
1755
1756 * c.opt (Wcomments, Werror-implicit-function-declaration,
1757 ftemplate-depth-, std=c89, std=c9x, std=gnu89, std=gnu9x,
1758 std=iso9899:1990, std=iso9899:1999, std=iso9899:199x): Mark as
1759 aliases.
1760 * c-common.c (option_codes): Use OPT_Wcomment instead of
1761 OPT_Wcomments.
1762 * c-opts.c (warning_as_error_callback, c_common_handle_option):
1763 Don't handle options marked as aliases.
1764
2af087f2 17652010-08-25 Richard Guenther <rguenther@suse.de>
1766
1767 * c-common.c (c_common_get_alias_set): Remove special
1768 handling for pointers.
1769
48148244 17702010-08-20 Nathan Froyd <froydnj@codesourcery.com>
1771
1772 * c-common.c: Use FOR_EACH_VEC_ELT.
1773 * c-gimplify.c: Likewise.
1774 * c-pragma.c: Likewise.
1775
89c69892 17762010-08-16 Joseph Myers <joseph@codesourcery.com>
1777
1778 * c.opt (MDX): Change back to MD. Mark NoDriverArg instead of
1779 RejectDriver.
1780 (MMDX): Change back to MMD. Mark NoDriverArg instead of
1781 RejectDriver.
1782 * c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
1783 instead of OPT_MDX and OPT_MMDX.
1784
e28aa114 17852010-08-16 Joseph Myers <joseph@codesourcery.com>
1786
1787 * c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.
1788
99b66d21 17892010-08-12 Joseph Myers <joseph@codesourcery.com>
1790
1791 * c.opt (MD, MMD): Change to MDX and MMDX.
1792 * c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX.
1793
666f4bf0 17942010-08-11 Joseph Myers <joseph@codesourcery.com>
1795
1796 * c-opts.c (c_common_handle_option): Call handle_generated_option
1797 instead of handle_option.
1798
5ec815f6 17992010-08-08 Nathan Froyd <froydnj@codesourcery.com>
1800
1801 * c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
1802 (maybe_apply_renaming_pragma): Delete unneeded declarations.
1803
d13143cf 18042010-08-08 Nathan Froyd <froydnj@codesourcery.com>
1805
1806 * c-pragma.c (pending_redefinition): Declare. Declare a VEC of it.
1807 (pending_redefine_extname): Change type to a VEC.
1808 (add_to_renaming_pragma_list): Update for new type of
1809 pending_redefine_extname.
5ec815f6 1810 (maybe_apply_renaming_pragma): Likewise.
d13143cf 1811
2008c983 18122010-08-04 Arnaud Charlet <charlet@adacore.com>
1813
1814 * c-ada-spec.c (dump_ada_template): Mark underlying instance type as
1815 visited.
1816 (dump_generic_ada_node): Code clean up. Use TREE_VISITED flag to
1817 decide whether a type has already been declared/seen.
1818 Do not go to the original type.
1819 (dump_nested_types): New parameter forward.
1820 Generate forward declaration if needed and mark type as visited.
1821 (print_ada_declaration): Call dump_nested_types if not already done.
1822 Mark types as visited.
1823
9b091a73 18242010-08-03 Joseph Myers <joseph@codesourcery.com>
1825
1826 * c.opt (-print-pch-checksum): Remove option.
1827 * c-opts.c (c_common_handle_option): Don't handle
1828 OPT_print_pch_checksum.
1829
b78351e5 18302010-07-27 Joseph Myers <joseph@codesourcery.com>
1831
1832 * c-common.h (c_common_handle_option): Update prototype and return
1833 value type.
1834 * c-opts.c (c_common_handle_option): Update prototype and return
1835 value type. Update calls to handle_option and
1836 enable_warning_as_error.
1837
34416a90 18382010-07-27 Jakub Jelinek <jakub@redhat.com>
1839
1840 PR c/45079
1841 * c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
1842
fecf9011 18432010-07-27 Joseph Myers <joseph@codesourcery.com>
1844
1845 * c-common.h (c_common_missing_argument): Remove.
1846 * c-opts.c (c_common_missing_argument): Remove.
1847 * c.opt (A, D, F, I, MD, MMD, MQ, MT, U, fconstant-string-class=,
1848 idirafter, imacros, include, isysroot, isystem, iquote): Add
1849 MissingArgError.
1850 * c-objc-common.h (LANG_HOOKS_MISSING_ARGUMENT): Remove.
1851
e88d34f6 18522010-07-27 Joseph Myers <joseph@codesourcery.com>
1853
1854 * c-common.h (c_common_option_lang_mask,
1855 c_common_initialize_diagnostics, c_common_complain_wrong_lang_p):
1856 New.
1857 (c_common_init_options): Update prototype.
1858 * c-opts.c (c_common_option_lang_mask): New.
1859 (c_common_initialize_diagnostics): Split out of
1860 c_common_init_options.
1861 (accept_all_c_family_options, c_common_complain_wrong_lang_p):
1862 New.
1863 (c_common_init_options): Update prototype. Use decoded options in
1864 search for -lang-asm.
1865
1767a056 18662010-07-15 Nathan Froyd <froydnj@codesourcery.com>
1867
1868 * c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
1869 * c-format.c: Likewise.
1870
0b205f4c 18712010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
1872
1873 * c-common.h: Include diagnostic-core.h. Error if already
1874 included.
1875 * c-semantics.c: Do not define GCC_DIAG_STYLE here.
1876
1c58e3f1 18772010-07-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
1878
1879 * c-family/c-common.c (IN_GCC_FRONTEND): Do not undef.
1880 Do not include expr.h
1881 (vector_mode_valid_p): Move here.
1882
33cc157c 18832010-06-21 DJ Delorie <dj@redhat.com>
1884
1885 * c-pragma.c (handle_pragma_diagnostic): Add push/pop,
1886 allow these pragmas anywhere.
1887
18882010-06-14 Jakub Jelinek <jakub@redhat.com>
1889
1890 PR bootstrap/44509
1891 * c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
1892 (lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
1893 (lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
1894 ggc_strdup instead of xstrdup.
1895
18962010-06-10 Jakub Jelinek <jakub@redhat.com>
1897
1898 * c-cppbuiltin.c: Include cpp-id-data.h.
1899 (lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
1900 (lazy_hex_fp_value): New function.
1901 (builtin_define_with_hex_fp_value): Provide definitions lazily.
1902
9b40bfbf 19032010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
1904
1905 * c-gimplify.c: Do not include tree-flow.h
1906
202d6e5f 19072010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
1908
1909 PR other/44034
1910 * c-common.c: Rename targetm member:
1911 targetm.enum_va_list -> targetm.enum_va_list_p
1912
d3237426 19132010-06-28 Anatoly Sokolov <aesok@post.ru>
1914
1915 * c-common.c (shorten_compare): Adjust call to force_fit_type_double.
1916
596981c8 19172010-06-28 Steven Bosscher <steven@gcc.gnu.org>
1918
1919 * c-cppbuiltin.c: Do not include except.h.
1920
b9bdfa0b 19212010-06-24 Andi Kleen <ak@linux.intel.com>
1922
19931eea 1923 * c-common.c (warn_for_omitted_condop): New.
1924 * c-common.h (warn_for_omitted_condop): Add prototype.
b9bdfa0b 1925
55ad092d 19262010-06-21 Joseph Myers <joseph@codesourcery.com>
1927
1928 * c.opt (lang-objc): Remove.
1929 * c-opts.c (c_common_handle_option): Don't handle OPT_lang_objc.
1930
9e7c2572 19312010-06-21 Joern Rennecke <joern.rennecke@embecosm.com>
1932
1933 * c-opts.c: Include "tm_p.h".
1934
615ef0bb 19352010-06-20 Joseph Myers <joseph@codesourcery.com>
1936
1937 * c-common.c (parse_optimize_options): Update call to
1938 decode_options.
1939
aef48c9a 19402010-06-18 Nathan Froyd <froydnj@codesourcery.com>
1941
1942 * c-common.c (record_types_used_by_current_var_decl): Adjust for
1943 new type of types_used_by_cur_var_decl.
1944
d74003b4 19452010-06-17 Joern Rennecke <joern.rennecke@embecosm.com>
1946
1947 PR bootstrap/44512
1948 * c-cppbuiltin.c (builtin_define_with_hex_fp_value): Add cast
1949 for C++ standard compliance.
1950
1194d077 19512010-06-16 Jason Merrill <jason@redhat.com>
1952
1953 * c.opt: Add -Wnoexcept.
1954
d473d901 19552010-06-16 Richard Guenther <rguenther@suse.de>
1956
1957 PR c/44555
1958 * c-common.c (c_common_truthvalue_conversion): Remove
1959 premature and wrong optimization concering ADDR_EXPRs.
1960
b62dbfd3 19612010-06-15 Arnaud Charlet <charlet@adacore.com>
1962
1963 * c-ada-spec.c (dump_sloc): Remove column info.
1964 (is_simple_enum): New function.
1965 (dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada
1966 enum types when relevant.
1967
200dd99c 19682010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
1969
19931eea 1970 * c-common.c (conversion_warning): Warn at expression
200dd99c 1971 location.
1972
abf6a617 19732010-06-10 Joseph Myers <joseph@codesourcery.com>
1974
1975 * c-opts.c (c_common_handle_option): Don't handle
1976 OPT_fshow_column.
1977
ba72912a 19782010-06-08 Laurynas Biveinis <laurynas.biveinis@gmail.com>
1979
1980 * c-pragma.c (push_alignment): Use typed GC allocation.
1981 (handle_pragma_push_options): Likewise.
1982
1983 * c-common.c (parse_optimize_options): Likewise.
1984
1985 * c-common.h (struct sorted_fields_type): Add variable_size GTY
1986 option.
1987
4aafe913 19882010-06-07 Joseph Myers <joseph@codesourcery.com>
1989
1990 * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
1991 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
1992 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
1993 flag_signed_bitfields, warn_strict_null_sentinel,
1994 flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
1995 flag_gen_declaration, flag_no_gnu_keywords,
1996 flag_implement_inlines, flag_implicit_templates,
1997 flag_implicit_inline_templates, flag_optional_diags,
1998 flag_elide_constructors, flag_default_inline, flag_rtti,
1999 flag_conserve_space, flag_access_control, flag_check_new,
2000 flag_new_for_scope, flag_weak, flag_working_directory,
2001 flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
2002 flag_enforce_eh_specs, flag_threadsafe_statics,
2003 flag_pretty_templates): Remove.
2004 * c-common.h (flag_preprocess_only, flag_nil_receivers,
2005 flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
2006 flag_replace_objc_classes, flag_undef, flag_no_builtin,
2007 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
2008 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
2009 flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
2010 flag_no_gnu_keywords, flag_implement_inlines,
2011 flag_implicit_templates, flag_implicit_inline_templates,
2012 flag_optional_diags, flag_elide_constructors, flag_default_inline,
2013 flag_rtti, flag_conserve_space, flag_access_control,
2014 flag_check_new, flag_new_for_scope, flag_weak,
2015 flag_working_directory, flag_use_cxa_atexit,
2016 flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
2017 flag_threadsafe_statics, flag_pretty_templates,
2018 warn_strict_null_sentinel): Remove.
2019 * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
2020 fbuiltin, fcheck-new, fconserve-space, felide-constructors,
2021 fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
2022 fimplicit-inline-templates, fimplicit-templates,
2023 flax-vector-conversions, fms-extensions, fnil-receivers,
2024 fnonansi-builtins, fpretty-templates, freplace-objc-classes,
2025 frtti, fshort-double, fshort-enums, fshort-wchar,
2026 fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
2027 funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
2028 fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
2029 gen-decls, undef): Use Var.
2030 (fdefault-inline, foptional-diags): Document as doing nothing.
2031 * c-opts.c (c_common_handle_option): Remove cases for options now
2032 using Var. Mark ignored options as such.
2033
7bedc3a0 20342010-06-05 Steven Bosscher <steven@gcc.gnu.org>
2035
19931eea 2036 * c-common.c: Moved to here from parent directory.
7bedc3a0 2037 * c-common.def: Likewise.
2038 * c-common.h: Likewise.
2039 * c-cppbuiltin.c: Likewise.
2040 * c-dump.c: Likewise.
2041 * c-format.c: Likewise.
2042 * c-format.h : Likewise.
2043 * c-gimplify.c: Likewise.
2044 * c-lex.c: Likewise.
2045 * c-omp.c: Likewise.
2046 * c.opt: Likewise.
2047 * c-opts.c: Likewise.
2048 * c-pch.c: Likewise.
2049 * c-ppoutput.c: Likewise.
2050 * c-pragma.c: Likewise.
2051 * c-pragma.h: Likewise.
2052 * c-pretty-print.c: Likewise.
2053 * c-pretty-print.h: Likewise.
2054 * c-semantics.c: Likewise.
2055 * stub-objc.c: Likewise.
2056
2057 * c-common.c: Include gt-c-family-c-common.h.
2058 * c-pragma.c: Include gt-c-family-c-pragma.h.
2059\f
dd045aee 2060Copyright (C) 2010, 2011 Free Software Foundation, Inc.
7bedc3a0 2061
2062Copying and distribution of this file, with or without modification,
2063are permitted in any medium without royalty provided the copyright
2064notice and this notice are preserved.