]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/c-family/ChangeLog
re PR tree-optimization/52558 (write introduction incorrect wrt the C++11 memory...
[thirdparty/gcc.git] / gcc / c-family / ChangeLog
CommitLineData
65de6659
JM
12012-05-29 Joseph Myers <joseph@codesourcery.com>
2
3 * c-common.c: Fix typo.
4
ca5f4331
MM
52012-05-29 Michael Matz <matz@suse.de>
6
7 * c-common.h (c_expand_decl): Remove prototype.
8
4f7f7aca
MLI
92012-05-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
10
11 * c.opt (Wmissing-braces): Use LangEnabledBy(C ObjC,Wall).
12 * c-opts.c (c_common_handle_option): Remove code handling
13 warn_missing_braces.
14
4a792f9b
PC
152012-05-28 Paolo Carlini <paolo.carlini@oracle.com>
16
17 PR c++/25137
18 * c-opts.c (c_common_handle_option): For C++ -Wall doesn't enable
19 -Wmissing_braces.
20
650dc14a
DS
212012-05-22 Dodji Seketeli <dodji@redhat.com>
22
23 PR c++/53322
24 * c.opt (Wunused-local-typedefs): Use EnabledBy(Wunused).
25
9b095bf1
MLI
262012-05-17 Manuel López-Ibáñez <manu@gcc.gnu.org>
27
28 * c.opt (--pedantic-errors,-pedantic-errors): Do not handle here.
29 * c-opts.c (c_common_handle_option): Do not handle explicitly
30 Wreturn-type, Wwrite-strings, warn_ecpp, and -pedantic-errors.
31
0b2c4be5
DS
322012-05-16 Dodji Seketeli <dodji@redhat.com>
33
34 PR preprocessor/7263
35 * c-lex.c (c_lex_with_flags): Pass a virtual location to the call
36 to cpp_classify_number. For diagnostics, use the precise location
37 instead of the global input_location.
38
a1bde5af
PC
392012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
40
d02924ef 41 PR c++/11856
a1bde5af
PC
42 * c-common.c (shorten_compare): Check c_inhibit_evaluation_warnings.
43
d1ede5f4
BS
442012-05-14 Bernd Schmidt <bernds@codesourcery.com>
45
a1bde5af 46 * c-common.c (DEF_ATTR_STRING): Define and undefine as necessary.
d1ede5f4 47
f2bc201f
MLI
482012-05-14 Manuel López-Ibáñez <manu@gcc.gnu.org>
49
50 PR 53063
51 * c.opt (Wc++0X-compat,Wdelete-non-virtual-dtor,Wjump-misses-init,
52 Wreorder): Use LangEnabledBy.
53 * c-opts.c (c_common_handle_option): Do not enable them
54 explicitly. Call lang-specific generated functions.
55 (c_common_post_options): Do not set them here.
56
95744782
MLI
572012-05-13 Manuel López-Ibáñez <manu@gcc.gnu.org>
58
59 * c.opt (Wclobbered,Wempty-body,Wignored-qualifiers,
60 Wmissing-field-initializers,Wmissing-parameter-type,
61 Wold-style-declaration,Woverride-init): Use EnabledBy.
62 * c-opts.c (c_common_post_options): Do not set here explicitly.
63
7d5a5747
MLI
642012-05-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
65
66 PR 53063
67 * c-opts.c (c_common_handle_option): Use handle_generated_option
68 to enable sub-options.
69
5a3c9cf2
PC
702012-05-10 Paolo Carlini <paolo.carlini@oracle.com>
71
72 PR c++/53158
73 * c-common.c (warnings_for_convert_and_check): Use warning_at.
74
3ac8781c
RG
752012-05-10 Richard Guenther <rguenther@suse.de>
76
77 * c-common.c (c_sizeof_or_alignof_type): Remove assert and
78 adjust commentary about TYPE_IS_SIZETYPE types.
79
1e537948
MLI
802012-05-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
81
82 PR c++/53261
83 * c-common.c (warn_logical_operator): Check that argument of
84 integer_zerop is not NULL.
85
f2c4a785
MLI
862012-05-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
87
88 PR c/43772
89 * c-common.c (warn_logical_operator): Do not warn if either side
90 is already true or false.
91
50f305ca
MLI
922012-05-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
93
94 PR c/51712
95 * c-common.c (expr_original_type): New.
96 (shorten_compare): Do not warn for enumeration types.
97
0c3641b0
MLI
982012-05-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
99
100 * c.opt (fpermissive): Add Var(flag_permissive).
101
7edaa4d2
MG
1022012-04-30 Marc Glisse <marc.glisse@inria.fr>
103
104 PR c++/51033
105 * c-common.c (convert_vector_to_pointer_for_subscript): New function.
106 * c-common.h (convert_vector_to_pointer_for_subscript): Declare it.
107
b9c8da34
DS
1082012-04-30 Dodji Seketeli <dodji@redhat.com>
109
110 Add -Wvarargs option
111 * c.opt (Wvarargs): Define new option.
112
e6c69da0
MLI
1132012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
114
115 * c-common.c (check_function_arguments): Replace
116 Wmissing-format-attribute with Wsuggest-attribute=format.
117
90137d8f
MLI
1182012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
119
120 * c.opt (Wsuggest-attribute=format): New. Alias of
121 Wmissing-format-attribute.
122 * c-format.c (decode_format_type): Replace
123 Wmissing-format-attribute with Wsuggest-attribute=format.
124 (check_function_format): Likewise.
125
7f5f5f98
OW
1262012-04-27 Ollie Wild <aaw@google.com>
127
128 * c-common.c: Add CPP_W_LITERAL_SUFFIX mapping.
129 * c-opts.c (c_common_handle_option): Handle OPT_Wliteral_suffix.
130 * c.opt: Add Wliteral-suffix.
131
c1771a20
MLI
1322012-04-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
133
134 PR c/44774
135 * c.opt (Wpedantic): New.
136 (pedantic): Alias Wpedantic.
137 * c-opts.c (c_common_handle_option): Replace -pedantic with -Wpedantic.
138 (c_common_post_options): Likewise.
139 (sanitize_cpp_opts): Likewise.
140 * c-lex.c (interpret_float): Likewise.
141 * c-format.c (check_format_types): Likewise.
142 * c-common.c (pointer_int_sum): Likewise.
143 (c_sizeof_or_alignof_type): Likewise.
144 (c_add_case_label): Likewise.
145 (c_do_switch_warnings): Likewise.
146 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
147
04b391c1
JM
1482012-04-15 Jason Merrill <jason@redhat.com>
149
150 PR c++/52818
151 * c-format.c (CPLUSPLUS_STD_VER): C++11 inherits from C99.
152 (C_STD_NAME): Distinguish between C++98 and C++11.
153
ac868f29
EB
1542012-04-11 Eric Botcazou <ebotcazou@adacore.com>
155
156 PR target/52624
157 * c-common.h (uint16_type_node): Rename into...
158 (c_uint16_type_node): ...this.
159 * c-common.c (c_common_nodes_and_builtins): Adjust for above renaming.
160 * c-cppbuiltin.c (builtin_define_stdint_macros): Likewise.
161
fd4116f4
MLI
1622012-04-10 Manuel López-Ibáñez <manu@gcc.gnu.org>
163
164 * c-common.c (warn_if_unused_value): Move definition to here.
165 * c-common.h (warn_if_unused_value): Move declaration to here.
166
573ac65e
WB
1672012-03-23 William Bader <williambader@hotmail.com>
168
169 * c-lex.c (c_lex_with_flags): Avoid declarations after stmts.
170
552b8185
JM
1712012-03-20 Jason Merrill <jason@redhat.com>
172
173 * c-common.h (enum cxx_dialect): Add cxx1y.
174 * c-common.c (c_common_nodes_and_builtins): Use >= for cxx_dialect
175 test.
176 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
177 * c-opts.c (c_common_post_options): Likewise.
178 (set_std_cxx1y): New.
179 (c_common_handle_option): Call it.
180 * c.opt (-std=c++1y, -std=gnu++1y): New flags.
181
04398fa8
PC
1822012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
183
184 PR c++/14710
185 * c.opt ([Wuseless-cast]): Add.
186
d2a12ae7
RG
1872012-03-16 Richard Guenther <rguenther@suse.de>
188
189 * c-pretty-print.c (pp_c_initializer_list): Adjust.
190
a12bf402
MLI
1912012-03-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
192
193 PR c++/44783
194 * c.opt (ftemplate-backtrace-limit) Add.
195
5c30094f
RO
1962012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
197
198 * c-cppbuiltin.c (c_cpp_builtins): Remove #pragma extern_prefix
199 handling.
200 * c-pragma.c (handle_pragma_extern_prefix): Remove.
201 (init_pragma): Don't register extern_prefix.
202
21fa2faf
RG
2032012-03-12 Richard Guenther <rguenther@suse.de>
204
205 * c-common.c (c_common_get_narrower): Use c_common_type_for_size.
206 (builtin_type_for_size): Likewise.
207
e3793c6f
JJ
2082012-02-13 Jakub Jelinek <jakub@redhat.com>
209
210 PR c++/52215
211 * c-common.c (sync_resolve_params): Don't decide whether to convert
212 or not based on TYPE_SIZE comparison, convert whenever arg_type
213 is unsigned INTEGER_TYPE.
214
93286335
PC
2152012-02-06 Paolo Carlini <paolo.carlini@oracle.com>
216
217 PR c/52118
218 * c.opt ([Wunused-local-typedefs]): Fix description.
219
7a421706
MS
2202012-01-24 Mike Stump <mikestump@comcast.net>
221
222 * c-common.c (c_common_type_for_mode): Match signed/unsigned types
223 exactly.
224
ba9b1f11
RG
2252012-01-18 Richard Guenther <rguenther@suse.de>
226
227 * c-opts.c (c_common_post_options): Reset LTO flags if
228 we are about to generate a PCH.
229
465406be
PC
2302012-01-17 Paolo Carlini <paolo.carlini@oracle.com>
231
232 PR c++/51777
233 * c-pretty-print.c (pp_c_integer_constant): For unsigned constants
234 use pp_unsigned_wide_integer.
235
aee15221
RG
2362012-01-10 Richard Guenther <rguenther@suse.de>
237
238 PR middle-end/51806
239 * c-opts.c (c_common_handle_option): Move -Werror handling
240 to language independent code.
241
5720c0dc
RG
2422012-01-05 Richard Guenther <rguenther@suse.de>
243
244 PR middle-end/51764
245 * c.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move here
246 from common.opt.
247
73ac190a
PC
2482011-12-30 Paolo Carlini <paolo.carlini@oracle.com>
249
250 PR c++/51316
251 * c-common.c (c_sizeof_or_alignof_type): In C++ allow for alignof
252 of array types with an unknown bound.
253
48b0b196
JM
2542011-12-20 Joseph Myers <joseph@codesourcery.com>
255
256 * c-common.c (flag_isoc99): Update comment to refer to C11.
257 (flag_isoc1x): Change to flag_isoc11.
258 * c-common.h (flag_isoc99): Update comment to refer to C11.
259 (flag_isoc1x): Change to flag_isoc11.
260 * c-cppbuiltin.c (cpp_atomic_builtins): Change comment to refer to
261 C11.
262 * c-opts.c (set_std_c1x): Change to set_std_c11.
263 (c_common_handle_option): Handle OPT_std_c11 and OPT_std_gnu11.
264 Call set_std_c11.
265 (set_std_c89, set_std_c99, set_std_c11): Use flag_isoc11.
266 (set_std_c1): Use CLK_STDC11 and CLK_GNUC11.
267 * c.opt (std=c1x): Change to std=c11. Document as non-draft
268 standard.
269 (std=c1x, std=iso9899:2011): Add as aliases of std=c11.
270 (std=gnu1x): Change to std=gnu11. Refer to non-draft standard.
271 (std=gnu1x): Make alias of std=gnu11.
272
d58d6eb5
JM
2732011-12-19 Jason Merrill <jason@redhat.com>
274
275 PR c++/51228
276 * c-common.c (handle_transparent_union_attribute): Check the first
277 field if the type is complete.
278
b3908fcc
JW
2792011-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
280
281 PR libstdc++/51365
282 * c-common.c (RID_IS_FINAL): Add.
283 * c-common.h (RID_IS_FINAL): Add.
284
fea3ca91
IS
2852011-11-30 Iain Sandoe <iains@gcc.gnu.org>
286
287 * c.opt (fgnu-runtime): Provide full description.
288 (fnext-runtime): Likewise.
289 * c-opts.c (OPT_fgnu_runtime, OPT_fnext_runtime) Remove.
290
62bad7cd
AM
2912011-11-28 Andrew MacLeod <amacleod@redhat.com>
292
293 * c-cpp-builtin.c (cpp_atomic_builtins):New. Emit all atomic
294 predefines in one place. Add LOCK_FREE predefines.
295 (c_cpp_builtins): Move Legacy HAVE_SYNC predefines to
296 new func.
297
c466c4ff
AM
2982011-11-24 Andrew MacLeod <amacleod@redhat.com>
299
300 PR c/51256
301 * c-common.c (get_atomic_generic_size): Check for various error
302 conditions
303 (resolve_overloaded_atomic_exchange,
304 resolve_overloaded_atomic_compare_exchange,
305 resolve_overloaded_atomic_load, resolve_overloaded_atomic_store): Return
306 error_mark_node for error conditions.
307
a5952633
RG
3082011-11-08 Richard Guenther <rguenther@suse.de>
309
310 PR middle-end/51010
311 c-family/
312
0a35513e
AH
3132011-11-07 Richard Henderson <rth@redhat.com>
314 Aldy Hernandez <aldyh@redhat.com>
315 Torvald Riegel <triegel@redhat.com>
316
317 Merged from transactional-memory.
318
319 * c-common.c (handle_tm_wrap_attribute,
320 handle_tm_attribute, ignore_attribute, parse_tm_stmt_attr): New.
321 (struct c_common_reswords): Added __transaction* keywords.
322 (struct c_common_attribute_table): Added transaction* and tm_regparm
323 attributes.
324 * c-common.h: Added RID_TRANSACTION*. Added TM_ATTR* and TM_STMT*
325 masks.
326 (parse_tm_stmt_attr, tm_attr_to_mask, tm_mask_to_attr,
327 find_tm_attribute): Declare.
328
6d87092d
JM
3292011-11-07 Jason Merrill <jason@redhat.com>
330
331 PR c++/35688
332 * c-common.c, c-common.h: Revert yesterday's changes.
333
8e7860a1
JM
3342011-11-06 Jason Merrill <jason@redhat.com>
335
336 PR c++/35688
337 * c-common.c (decl_has_visibility_attr): Split out from...
338 (c_determine_visibility): ...here.
339 * c-common.h: Declare it.
340
d19fa6b5
JM
3412011-11-06 Joseph Myers <joseph@codesourcery.com>
342
343 * c-common.c (c_common_reswords): Add _Alignas and _Alignof.
344 (c_sizeof_or_alignof_type): Diagnose alignof applied to a function
345 type.
346 (check_user_alignment): New. Split out of
347 handle_aligned_attribute. Disallow integer constants with
348 noninteger types. Conditionally allow zero.
349 (handle_aligned_attribute): Use check_user_alignment.
350 * c-common.h (RID_ALIGNAS, check_user_alignment): New.
351
86951993
AM
3522011-11-06 Andrew MacLeod <amacleod@redhat.com>
353 Richard Henderson <rth@redhat.com>
354
355 Merged from cxx-mem-model.
356
357 * c-cppbuiltin.c (c_cpp_builtins): Test both atomic and sync patterns.
358 * c-common.c (sync_resolve_params, sync_resolve_return): Only tweak
359 parameters that are the same type size.
360 (get_atomic_generic_size): New. Find size of generic
361 atomic function parameters and do typechecking.
362 (add_atomic_size_parameter): New. Insert size into parameter list.
363 (resolve_overloaded_atomic_exchange): Restructure __atomic_exchange to
364 either __atomic_exchange_n or external library call.
365 (resolve_overloaded_atomic_compare_exchange): Restructure
366 __atomic_compare_exchange to either _n variant or external library call.
367 (resolve_overloaded_atomic_load): Restructure __atomic_load to either
368 __atomic_load_n or an external library call.
369 (resolve_overloaded_atomic_store): Restructure __atomic_store to either
370 __atomic_store_n or an external library call.
371 (resolve_overloaded_builtin): Handle new __atomic builtins.
372
cf9e9959
EB
3732011-11-04 Eric Botcazou <ebotcazou@adacore.com>
374
375 PR c++/50608
376 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1.
377 (fold_offsetof_1): Make global. Remove STOP_REF argument and adjust.
378 <INDIRECT_REF>: Return the argument.
379 <ARRAY_REF>: Remove special code for negative offset.
380 Call fold_build_pointer_plus instead of size_binop.
381 (fold_offsetof): Remove STOP_REF argument and adjust.
382 * c-common.h (fold_offsetof_1): Declare.
383 (fold_offsetof): Remove STOP_REF argument.
384
25339f10
JM
3852011-11-02 Paolo Carlini <paolo.carlini@oracle.com>
386
387 PR c++/50810
388 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
389 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
390 Wnarrowing for C++0x and C++98.
391 * c.opt ([Wnarrowing]): Update.
392
89401152
PC
3932011-11-01 Paolo Carlini <paolo.carlini@oracle.com>
394
395 PR c++/44277
396 * c.opt: Add Wzero-as-null-pointer-constant.
397
97e3ad20
JM
3982011-10-31 Jason Merrill <jason@redhat.com>
399
15694fdd
JM
400 * c.opt (-fdeduce-init-list): Off by default.
401
97e3ad20
JM
402 PR c++/50920
403 * c-common.h (cxx_dialect): Add cxx11 and cxx03.
404 * c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03,
405 and -Wc++11-compat.
406 * c-opts.c (set_std_cxx11): Rename from set_std_cxx0x.
407
fb9120e3
RAV
4082011-10-27 Roberto Agostino Vitillo <ravitillo@lbl.gov>
409
410 PR c++/30066
411 * c.opt (fvisibility-inlines-hidden): Description change.
412
3ce4f9e4
ESR
4132011-10-26 Ed Smith-Rowland <3dw4rd@verizon.net>
414
415 Implement C++11 user-defined literals.
416 * c-common.c (build_userdef_literal): New.
417 * c-common.def: New tree code.
418 * c-common.h (tree_userdef_literal): New tree struct and accessors.
419 * c-lex.c (interpret_float): Add suffix parm.
420 (c_lex_with_flags): Build literal tokens.
421
5f53c243
PC
4222011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
423
424 PR c++/50841
425 Revert:
426 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
427
428 PR c++/50810
429 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
430 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
431 Wnarrowing for C++0x and C++98.
432 * c.opt ([Wnarrowing]): Update.
433
263734e1
PC
4342011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
435
436 PR c++/50810
437 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
438 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
439 Wnarrowing for C++0x and C++98.
440 * c.opt ([Wnarrowing]): Update.
441
d2e312d7
PC
4422011-10-21 Paolo Carlini <paolo.carlini@oracle.com>
443
444 PR c++/45385
445 * c-common.c (conversion_warning): Remove code looking for
446 artificial operands.
447
d17687f6
DS
4482011-10-18 Dodji Seketeli <dodji@redhat.com>
449
450 PR bootstrap/50760
451 * c-lex.c (fe_file_change): Use LINEMAP_SYSP when
452 !NO_IMPLICIT_EXTERN_C.
453
fc8396e9
PC
4542011-10-17 Michael Spertus <mike_spertus@symantec.com>
455
456 * c-common.c (c_common_reswords): Add __bases,
457 __direct_bases.
458 * c-common.h: Add RID_BASES and RID_DIRECT_BASES.
459
4602011-10-17 Paolo Carlini <paolo.carlini@oracle.com>
461
462 PR c++/50757
463 * c.opt ([Wnonnull]): Add C++ and Objective-C++.
464
847e697a
TT
4652011-10-15 Tom Tromey <tromey@redhat.com>
466 Dodji Seketeli <dodji@redhat.com>
467
468 * c.opt (fdebug-cpp): New option.
469 * c-opts.c (c_common_handle_option): Handle the option.
470 * c-ppoutput.c (maybe_print_line_1): New static function. Takes an
471 output stream in parameter. Factorized from ...
472 (maybe_print_line): ... this. Dump location debug information when
473 -fdebug-cpp is in effect.
474 (print_line_1): New static function. Takes an output stream in
475 parameter. Factorized from ...
476 (print_line): ... here. Dump location information when -fdebug-cpp
477 is in effect.
478 (scan_translation_unit): Dump location information when
479 -fdebug-cpp is in effect.
480
92582b75
TT
4812011-10-15 Tom Tromey <tromey@redhat.com>
482 Dodji Seketeli <dodji@redhat.com>
483
484 * c.opt (ftrack-macro-expansion): New option. Handle it with and
485 without argument.
486 * c-opts.c (c_common_handle_option)<case
487 OPT_ftrack_macro_expansion_, case OPT_ftrack_macro_expansion>: New
488 cases. Handle -ftrack-macro-expansion with and without argument.
489
46427374
TT
4902011-10-15 Tom Tromey <tromey@redhat.com>
491 Dodji Seketeli <dodji@redhat.com>
492
493 * c-ppoutput.c (scan_translation_unit, maybe_print_line)
494 (print_line, cb_define, do_line_change): Adjust to avoid touching
495 the internals of struct line_map. Use the public API instead.
496 * c-pch.c (c_common_read_pch): Likewise.
497 * c-lex.c (fe_file_change): Likewise.
498
fc8396e9
PC
4992011-10-14 Paolo Carlini <paolo.carlini@oracle.com>
500
501 PR c++/17212
502 * c.opt ([Wformat-zero-length]): Add C++ and Objective-C++.
503
5042011-10-11 Paolo Carlini <paolo.carlini@oracle.com>
505
506 PR c++/33067
507 * c-pretty-print.c (pp_c_floating_constant): Output
508 max_digits10 (in the ISO C++ WG N1822 sense) decimal digits.
509
e79983f4
MM
5102011-10-11 Michael Meissner <meissner@linux.vnet.ibm.com>
511
512 * c-common.c (def_builtin_1): Delete old interface with two
513 parallel arrays to hold standard builtin declarations, and replace
514 it with a function based interface that can support creating
515 builtins on the fly in the future. Change all uses, and poison
516 the old names. Make sure 0 is not a legitimate builtin index.
517 * c-omp.c (c_finish_omp_barrier): Ditto.
518 (c_finish_omp_taskwait): Ditto.
519 (c_finish_omp_flush): Ditto.
520
6637388f
TG
5212011-10-11 Tristan Gingold <gingold@adacore.com>
522
523 * c.opt: (fallow-parameterless-variadic-functions): New.
524
3797cb21
DS
5252011-09-08 Dodji Seketeli <dodji@redhat.com>
526
527 PR c++/33255 - Support -Wunused-local-typedefs warning
528 * c-common.h (struct c_language_function::local_typedefs): New
529 field.
530 (record_locally_defined_typedef, maybe_record_typedef_use)
531 (maybe_warn_unused_local_typedefs): Declare new functions.
532 * c-common.c (record_locally_defined_typedef)
533 (maybe_record_typedef_use)
534 (maybe_warn_unused_local_typedefs): Define new functions.
535 * c.opt: Declare new -Wunused-local-typedefs flag.
536
693ddb1b
EB
5372011-09-06 Eric Botcazou <ebotcazou@adacore.com>
538
539 PR middle-end/50266
540 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Fold offsetof-like
541 computations.
542
830c740f
RG
5432011-09-05 Richard Guenther <rguenther@suse.de>
544
545 * c-common.c (complete_array_type): Use ssize_int (-1) instead
546 of integer_minus_one_node for empty array upper bounds.
547
892a371f
DS
5482011-08-28 Dodji Seketeli <dodji@redhat.com>
549
550 * c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as
551 it's the first time it's being called on this main TU.
552
0e3fdb48
RB
5532011-08-24 Richard Guenther <rguenther@suse.de>
554
555 PR c/49396
556 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional.
557
5582011-08-22 Gabriel Charette <gchare@google.com>
e3dfef44
GC
559
560 * c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens
561 defined in cpp_init_builtins and c_cpp_builtins.
562
d4a83c10
JM
5632011-08-19 Joseph Myers <joseph@codesourcery.com>
564
565 * c-common.c (c_common_reswords): Add __builtin_complex.
566 * c-common.h (RID_BUILTIN_COMPLEX): New.
567
bbceee64
JM
5682011-08-18 Joseph Myers <joseph@codesourcery.com>
569
570 * c-common.c (c_common_reswords): Add _Noreturn.
571 (keyword_is_function_specifier): Handle RID_NORETURN.
572 * c-common.h (RID_NORETURN): New.
573
0e3a99ae
AS
5742011-08-10 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
575
576 * c-common.c (unsafe_conversion_p): New function. Check if it is
577 unsafe to convert an expression to the type.
578 (conversion_warning): Adjust, use unsafe_conversion_p.
579 * c-common.h (unsafe_conversion_p): New function declaration.
580
20906c66
JJ
5812011-08-02 Jakub Jelinek <jakub@redhat.com>
582
583 * c-common.h (c_finish_omp_atomic): Adjust prototype.
584 (c_finish_omp_taskyield): New prototype.
585 * c-omp.c (c_finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1
586 arguments. Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and
587 OMP_ATOMIC_CAPTURE_NEW in addition to OMP_ATOMIC. If LHS1
588 or RHS1 have side-effects, evaluate those too in the right spot,
589 if it is a decl and LHS is also a decl, error out if they
590 aren't the same.
591 (c_finish_omp_taskyield): New function.
592 * c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP to 201107.
593 * c-pragma.c (omp_pragmas): Add taskyield.
594 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKYIELD.
595 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FINAL and
596 PRAGMA_OMP_CLAUSE_MERGEABLE.
597
770e5a2e
DS
5982011-07-25 Dodji Seketeli <dodji@redhat.com>
599
600 * c-common.h (set_underlying_type): Remove parm name from
601 declaration.
602
1baae426
RG
6032011-07-25 Romain Geissler <romain.geissler@gmail.com>
604
605 * c-pretty-print.h: Search c-common.h in c-family.
606
fcb21722
JM
6072011-07-22 Jason Merrill <jason@redhat.com>
608
76f86d00
JM
609 PR c++/49793
610 * c.opt (Wnarrowing): New.
611
3a636414
JM
612 PR c++/30112
613 * c-common.h: Declare c_linkage_bindings.
614 * c-pragma.c (handle_pragma_redefine_extname): Use it.
615
fcb21722
JM
616 PR c++/49813
617 * c-opts.c (set_std_cxx0x): Set flag_isoc94 and flag_isoc99.
618 * c-pretty-print.c (pp_c_cv_qualifiers): Check c_dialect_cxx as well
619 as flag_isoc99 for 'restrict'.
620 (pp_c_specifier_qualifier_list): Likewise for _Complex.
621
02614448
ILT
6222011-07-21 Ian Lance Taylor <iant@google.com>
623
624 PR middle-end/49705
625 * c-common.c (c_disable_warnings): New static function.
626 (c_enable_warnings): New static function.
627 (c_fully_fold_internal): Change local unused_p to bool. Call
628 c_disable_warnings and c_enable_warnings rather than change
629 c_inhibit_evaluation_warnings.
630
34429675
JM
6312011-07-20 Jason Merrill <jason@redhat.com>
632
633 PR c++/6709 (DR 743)
634 PR c++/42603 (DR 950)
635 * c-common.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move from cp/parser.h.
636 (CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise.
637 (CPP_DECLTYPE): New.
638 * c-common.c (c_parse_error): Handle CPP_DECLTYPE.
639
5d49b6a7
RG
6402011-07-19 Richard Guenther <rguenther@suse.de>
641
642 * c-common.c (pointer_int_sum): Use fold_build_pointer_plus.
643 * c-omp.c (c_finish_omp_for): Likewise.
644
e84a58ff
EB
6452011-07-12 Eric Botcazou <ebotcazou@adacore.com>
646
647 * c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop
648 body on the next line.
649
329af3c7
JM
6502011-07-08 Jason Merrill <jason@redhat.com>
651
4063e61b
JM
652 PR c++/45437
653 * c-omp.c (check_omp_for_incr_expr): Handle preevaluation.
654
329af3c7
JM
655 PR c++/49673
656 * c-common.c (c_apply_type_quals_to_decl): Don't check
657 TYPE_NEEDS_CONSTRUCTING.
658
1a072294
RG
6592011-07-06 Richard Guenther <rguenther@suse.de>
660
661 * c-common.c (c_common_nodes_and_builtins):
662 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
663
fce5dddd
RG
6642011-07-05 Richard Guenther <rguenther@suse.de>
665
666 * c-common.c (c_common_nodes_and_builtins): Build all common
667 tree nodes first.
668
45d439ac
JJ
6692011-06-27 Jakub Jelinek <jakub@redhat.com>
670
56300785
JJ
671 * c-common.h (c_tree_chain_next): New static inline function.
672
45d439ac
JJ
673 * c-common.c (check_builtin_function_arguments): Handle
674 BUILT_IN_ASSUME_ALIGNED.
675
e0a8ecf2
AM
6762011-06-21 Andrew MacLeod <amacleod@redhat.com>
677
678 * c-common.c: Add sync_ or SYNC__ to builtin names.
679 * c-omp.c: Add sync_ or SYNC__ to builtin names.
dfb43cd5
PV
680
6812011-06-20 Pierre Vittet <piervit@pvittet.com>
682
683 * c-pragma.h (pragma_handler_1arg, pragma_handler_2arg): New
684 handler.
685 (gen_pragma_handler): New union.
686 (internal_pragma_handler): New type.
687 (c_register_pragma_with_data)
688 (c_register_pragma_with_expansion_and_data): New functions.
689
690 * c-pragma.c (registered_pragmas, c_register_pragma_1)
691 (c_register_pragma, c_register_pragma_with_expansion)
692 (c_invoke_pragma_handler): Changed to work with
693 internal_pragma_handler.
694 (c_register_pragma_with_data)
695 (c_register_pragma_with_expansion_and_data): New functions.
696
677f3fa8
JM
6972011-06-14 Joseph Myers <joseph@codesourcery.com>
698
699 * c-common.c: Include common/common-target.h.
700 (handle_section_attribute): Use
701 targetm_common.have_named_sections.
702 * c-cppbuiltin.c: Include common/common-target.h.
703 (c_cpp_builtins): Use targetm_common.except_unwind_info.
704
d7fc8c14
RG
7052011-06-10 Richard Guenther <rguenther@suse.de>
706
707 * c-pretty-print.c (pp_c_type_specifier): Use pp_c_identifier
708 to print a IDENTIFIER_NODE.
709
10e48e39
RO
7102011-06-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
711 Joseph Myers <joseph@codesourcery.com>
712
713 * c.opt (fbuilding-libgcc): New option.
714 * c-cppbuiltin.c (c_cpp_builtins): Define
715 __LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc.
716
6976ae51
JM
7172011-06-07 Jason Merrill <jason@redhat.com>
718
3ff60975
JM
719 * c-common.c (max_tinst_depth): Lower default to 900.
720
6976ae51
JM
721 * c-format.c (gcc_cxxdiag_char_table): Add 'S' format.
722
009db074
RG
7232011-06-07 Richard Guenther <rguenther@suse.de>
724
725 * c-common.c (c_common_nodes_and_builtins): Do not set
726 size_type_node or call set_sizetype.
727
b4592b92
DS
7282011-06-07 Dodji Seketeli <dodji@redhat.com>
729
730 PR debug/49130
731 * c-pretty-print.c (pp_c_integer_constant): Consider the canonical
732 type when using pointer comparison to compare types.
733
014ab419
JW
7342011-06-02 Jonathan Wakely <jwakely.gcc@gmail.com>
735
736 * c.opt: Add -Wdelete-non-virtual-dtor.
737 * c-opts.c (c_common_handle_option): Include it in -Wall.
738
4f60111f
NF
7392011-05-30 Nathan Froyd <froydnj@gcc.gnu.org>
740
741 PR bootstrap/49190
742
743 Revert:
744 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
745
746 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
747 not tree_common.
748
4cc4f2f4
JJ
7492011-05-27 Jakub Jelinek <jakub@redhat.com>
750
751 PR c++/49165
752 * c-common.c (c_common_truthvalue_conversion) <case COND_EXPR>: For
753 C++ don't call c_common_truthvalue_conversion on void type arms.
754
38e01f9e
NF
7552011-05-27 Nathan Froyd <froydnj@codesourcery.com>
756
757 * c-common.h (struct stmt_tree_s) [x_cur_stmt_list]: Change to a VEC.
758 (stmt_list_stack): Define.
759 (cur_stmt_list): Adjust for new type of x_cur_stmt_list.
760 * c-semantics.c (push_stmt_list, pop_stmt_list): Likewise.
761
92e948a8
NF
7622011-05-26 Nathan Froyd <froydnj@codesourcery.com>
763
764 * c-common.c (warning_candidate_p): Check for BLOCKs.
765
a2fc3e63
NF
7662011-05-26 Nathan Froyd <froydnj@codesourcery.com>
767
768 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
769 not tree_common.
770
0957c029
JJ
7712011-05-25 Jakub Jelinek <jakub@redhat.com>
772
773 * c-common.c (def_fn_type): Remove extra va_end.
774
828fb3ba
JM
7752011-05-23 Jason Merrill <jason@redhat.com>
776
777 PR c++/48106
778 * c-common.c (c_common_get_narrower): New.
779 (shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.
780
dde05067
NF
7812011-05-23 Nathan Froyd <froydnj@codesourcery.com>
782
783 * c-common.h (check_function_arguments): Tweak prototype of
784 check_function_arguments.
785 * c-common.c (check_function_arguments): Likewise. Adjust
786 calls to check_function_nonnull, check_function_format, and
787 check_function_sentinel.
788 (check_function_sentinel): Take a FUNCTION_TYPE rather than
789 separate attributes and typelist arguments. Use
790 FOREACH_FUNCTION_ARGS to iterate over argument types.
791
3c0d13bf
PC
7922011-05-15 Paolo Carlini <paolo.carlini@oracle.com>
793
794 * c-common.c (c_common_reswords): Reorder.
795 * c-common.h (rid): Likewise.
796
8242dd04
NF
7972011-05-10 Nathan Froyd <froydnj@codesourcery.com>
798
799 * c-common.c (def_fn_type): Don't call build_function_type, call
800 build_function_type_array or build_varargs_function_type_array
801 instead.
802 (c_common_nodes_and_builtins): Likewise.
803
3d528853
NF
8042011-05-05 Nathan Froyd <froydnj@codesourcery.com>
805
806 * c-common.c (c_add_case_label): Omit the loc argument to
807 build_case_label.
808 * c-common.h (build_case_label): Remove.
809 * c-semantics.c (build_case_label): Remove.
810
a04a722b
JM
8112011-05-05 Joseph Myers <joseph@codesourcery.com>
812
813 * c-objc.h (objc_start_method_definition): Update prototype.
814 * stub-objc.c (objc_start_method_definition): Add extra parameter.
815
e19a18d4
NF
8162011-05-04 Nathan Froyd <froydnj@codesourcery.com>
817
818 * c-common.c (check_main_parameter_types): Reindent. Don't use
819 TYPE_ARG_TYPES directly.
820 (handle_nonnull_attribute): Likewise.
821 (sync_resolve_params): Likewise.
822 * c-format.c (handle_format_arg_attribute): Likewise. Adjust call
823 to check_format_string.
824 (handle_format_attribute): Likewise.
825 (check_format_string): Take a function type to examine instead of
826 a type list. Use a function_arg_iterator to step through argument
827 types.
828
c62c040f
RG
8292011-05-04 Richard Guenther <rguenther@suse.de>
830
831 * c-common.c (fix_string_type): Use size_int for index type bounds.
832 (start_fname_decls): Do not pass NULL to build_int_cst.
833 (c_init_attributes): Likewise.
834 * c-lex.c (c_lex_with_flags): Likewise.
835
c12ff9d8
JM
8362011-04-27 Jason Merrill <jason@redhat.com>
837
838 * c-common.c (make_tree_vector_from_list): New.
839 * c-common.h: Declare it.
840
304dfbe3
RG
8412011-04-26 Richard Guenther <rguenther@suse.de>
842
843 PR preprocessor/48248
844 * c-ppoutput.c (maybe_print_line): Always optimize newlines
845 for output size with -P.
846
3c0d13bf
PC
8472011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
848
849 * c-common.c (struct c_common_resword): Add __underlying_type.
850 * c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
851
04695783
JM
8522011-04-20 Jim Meyering <meyering@redhat.com>
853
854 * c-format.c (init_dollar_format_checking): Remove useless
855 if-before-free.
856
0dc33c3c
NP
8572011-04-15 Nicola Pero <nicola.pero@meta-innovation.com>
858
859 * c-objc.h (objc_get_interface_ivars): Removed.
3c0d13bf 860 (objc_detect_field_duplicates): New.
0dc33c3c 861 * stub-objc.c: Likewise.
3c0d13bf 862
c59633d9
NP
8632011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
864
865 * stub-objc.c (objc_declare_protocols): Renamed to
866 objc_declare_protocol.
867 * c-objc.h: Likewise.
3c0d13bf 868
32dabdaf
NP
8692011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
870
871 * stub-objc.c (objc_declare_class): Updated argument name.
872
81f653d6
NF
8732011-04-12 Nathan Froyd <froydnj@codesourcery.com>
874
875 * c-common.h (c_common_init_ts): Declare.
876 * c-common.c (c_common_init_ts): Define.
877
eb345401
NP
8782011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
879
880 * c-objc.h (objc_build_message_expr): Updated prototype.
881 * stub-objc.c (objc_build_message_expr): Likewise.
882
a358e188
MJ
8832011-04-12 Martin Jambor <mjambor@suse.cz>
884
885 * c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
886 of cgraph_node.
887
e6313a78
RG
8882011-04-11 Richard Guenther <rguenther@suse.de>
889
890 * c-common.c (complete_array_type): Build a range type of
891 proper type.
892
dcf0c47e
NF
8932011-04-08 Nathan Froyd <froydnj@codesourcery.com>
894
895 * c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
896 (handle_type_generic_attribute): Likewise.
897
1ee44b26
JM
8982011-04-07 Jason Merrill <jason@redhat.com>
899
900 PR c++/48450
901 * c-common.c (c_common_truthvalue_conversion): Don't ignore
902 conversion from C++0x scoped enum.
903
acce4e77
JM
9042011-04-06 Joseph Myers <joseph@codesourcery.com>
905
906 * c-target-def.h: New file.
907 * c-target.def: New file.
908 * c-target.h: New file.
909 * c-common.c (targetcm): Don't define here.
910 * c-common.h (default_handle_c_option): Declare.
911 * c-format.c: Include c-target.h instead of target.h.
912 * c-opts.c: Include c-target.h instead of target.h. Explicitly
913 include tm.h.
914 (default_handle_c_option): Move from targhooks.c.
915
e2eefb55
JJ
9162011-03-29 Jakub Jelinek <jakub@redhat.com>
917
918 PR preprocessor/48248
919 * c-ppoutput.c (print): Add src_file field.
920 (init_pp_output): Initialize it.
921 (maybe_print_line): Don't optimize by adding up to 8 newlines
922 if map->to_file and print.src_file are different file.
923 (print_line): Update print.src_file.
924
ba78087b
KT
9252011-03-25 Kai Tietz <ktietz@redhat.com>
926
927 * c-ada-spec.c (compare_comment): Use filename_cmp
928 instead of strcmp for filename.
929
0edf1bb2
JL
9302011-03-25 Jeff Law <law@redhat.com>
931
932 * c-family/c-common.c (def_fn_type): Add missing va_end.
933
c7dc8804
JM
9342011-03-25 Jason Merrill <jason@redhat.com>
935
936 * c.opt: Add -std=c++03.
937
d1d879b1
EB
9382011-03-22 Eric Botcazou <ebotcazou@adacore.com>
939
940 * c-ada-spec.c (dump_ada_template): Skip non-class instances.
941
62d784f7
KT
9422011-03-17 Kai Tietz
943
944 PR target/12171
5050afdf
KT
945 * c-pretty-print.c (pp_c_specifier_qualifier_list):
946 Display allowed attributes for function pointer types.
947 (pp_c_attributes_display): New function to display
948 attributes having affects_type_identity flag set to true.
949 * c-pretty-print.h (pp_c_attributes_display): New prototype.
950
62d784f7
KT
951 * c-common.c (c_common_attribute_table):
952 Add new element.
953 (c_common_format_attribute_table): Likewise.
954
82d37118
JM
9552011-03-18 Jason Merrill <jason@redhat.com>
956
49a000c3
JM
957 * c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
958 * c-common.h: Don't declare it here.
959 * c-common.c: Or define it here.
960 * c-opts.c (c_common_handle_option): Or set it here.
961
82d37118
JM
962 PR c++/35315
963 * c-common.c (handle_transparent_union_attribute): Don't
964 make a duplicate type in C++.
965
17bc631c
JM
9662011-03-15 Jason Merrill <jason@redhat.com>
967
968 * c-common.c (max_constexpr_depth): New.
969 * c-common.h: Declare it.
970 * c-opts.c (c_common_handle_option): Set it.
971 * c.opt (fconstexpr-depth): New option.
972
1b9b91a6
JM
9732011-03-11 Jason Merrill <jason@redhat.com>
974
f231b5ff
JM
975 * c-common.c (attribute_takes_identifier_p): Add missing const.
976
1b9b91a6
JM
977 PR c++/46803
978 * c-common.c (attribute_takes_identifier_p): Assume that an
979 unknown attribute takes an identifier.
980
a19e4d44
NF
9812011-03-07 Nathan Froyd <froydnj@codesourcery.com>
982
983 PR c/47786
984 * c-common.c (c_type_hash): Call list_length instead of iterating
985 through DECL_CHAIN. Rename 'i' to 'n_elements'.
986
982d62f6
JJ
9872011-02-19 Jakub Jelinek <jakub@redhat.com>
988
989 PR c/47809
990 * c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
991
0a256240
NP
9922011-02-17 Iain Sandoe <iains@gcc.gnu.org>
993
994 * c.opt (fobjc-abi-version=) New.
995 (fobjc-nilcheck): New.
996
ba9e6dd5
NF
9972011-02-03 Nathan Froyd <froydnj@codesourcery.com>
998
999 PR c++/46890
1000 * c-common.h (keyword_is_decl_specifier): Declare.
1001 * c-common.c (keyword_is_decl_specifier): Define.
1002 (keyword_is_function_specifier): New function.
1003
7273813a
JJ
10042011-01-26 Jakub Jelinek <jakub@redhat.com>
1005
1006 PR c/47473
1007 * c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
1008 EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
1009 REAL_TYPE.
1010
908ef79b
AC
10112011-01-26 Arnaud Charlet <charlet@adacore.com>
1012
1013 * c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type.
1014
237e9384
JJ
10152011-01-26 Jakub Jelinek <jakub@redhat.com>
1016
1017 PR pch/47430
1018 * c-opts.c (c_common_post_options): Call c_common_no_more_pch
1019 after init_c_lex if pch_file is set.
1020
47ea1edf
DK
10212011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
1022
d4dba752 1023 PR c++/43601
47ea1edf
DK
1024 * c.opt (-fkeep-inline-dllexport): New switch.
1025
2aa9c6ae
RG
10262011-01-12 Richard Guenther <rguenther@suse.de>
1027
1028 PR middle-end/32511
1029 * c-common.c (handle_weak_attribute): Warn instead of error
1030 on declaring an inline function weak.
1031
7bd11157
TT
10322011-01-05 Tom Tromey <tromey@redhat.com>
1033
1034 * c-common.h (lvalue_error): Update.
1035 * c-common.c (lvalue_error): Add 'loc' argument. Call error_at,
1036 not error.
1037
0e66e494
NP
10382010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
1039
b4f588c4
NP
1040 PR objc/47075
1041 * c-objc.h (objc_finish_message_expr): Added argument to
1042 prototype.
1043
f4da8dce
NF
10442010-12-22 Nathan Froyd <froydnj@codesourcery.com>
1045
1046 * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute):
1047 Use prototype_p.
1048
46270f14
NP
10492010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
1050
1051 * c-objc.h (objc_maybe_warn_exceptions): New.
1052 * stub-objc.c (objc_maybe_warn_exceptions): New.
1053
4816c593
NF
10542010-12-10 Nathan Froyd <froydnj@codesourcery.com>
1055
1056 * c-common.h (readonly_error): Declare.
1057 * c-common.c (readonly_error): Define.
1058
7a6daeb0
NF
10592010-12-09 Nathan Froyd <froydnj@codesourcery.com>
1060
1061 * c-common.h (invalid_indirection_error): Declare.
1062 * c-common.c (invalid_indirection_error): Define.
1063
892f6119
RG
10642010-12-03 Richard Guenther <rguenther@suse.de>
1065
1066 PR c/46745
1067 * c-pretty-print.c (pp_c_postfix_expression): Handle MEM_REF.
1068 (pp_c_unary_expression): Likewise.
1069 (pp_c_expression): Likewise.
1070
6c39e757
NP
10712010-11-30 Nicola Pero <nicola.pero@meta-innovation.com>
1072
1073 * c-common.h (objc_finish_function): New.
1074 (objc_non_volatilized_type): Removed.
1075 (objc_type_quals_match): Removed.
1076 * stub-objc.c (objc_finish_function): New.
1077 (objc_non_volatilized_type): Removed.
1078 (objc_type_quals_match): Removed.
1079
7c475d11
JM
10802010-11-30 Joseph Myers <joseph@codesourcery.com>
1081
1082 * c-common.h (parse_optimize_options): Declare.
1083 * c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c,
1084 c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h.
1085
71f3e391
JM
10862010-11-29 Joseph Myers <joseph@codesourcery.com>
1087
1088 * c-opts.c (check_deps_environment_vars): Use getenv instead of
1089 GET_ENVIRONMENT.
1090 * c-pch.c (O_BINARY): Don't define here.
1091 * c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
1092
d5fabb58
JM
10932010-11-25 Joseph Myers <joseph@codesourcery.com>
1094
1095 * c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
1096 targetm.except_unwind_info.
1097
299404a1
JM
10982010-11-23 Joseph Myers <joseph@codesourcery.com>
1099
1100 * c-opts.c (c_common_handle_option): Pass location to
1101 set_struct_debug_option.
1102
c98cd5bf
JM
11032010-11-23 Joseph Myers <joseph@codesourcery.com>
1104
1105 * c-common.c (visibility_options): Move from ../opts.c.
1106 * c-common.h (struct visibility_flags, visibility_options):
1107 Declare here.
1108 * c-opts.c (finish_options): Rename to c_finish_options.
1109 (c_common_init): Update call to finish_options.
1110
a9546771
NP
11112010-11-22 Nicola Pero <nicola.pero@meta-innovation.com>
1112
1113 PR objc/34033
1114 * c-lex.c (lex_string): Check that each string in an Objective-C
1115 string concat sequence starts with either one or zero '@', and
1116 that there are no spurious '@' signs at the end.
1117
24a57808
JM
11182010-11-20 Joseph Myers <joseph@codesourcery.com>
1119
1120 * c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
1121 HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
1122 HANDLE_PRAGMA_VISIBILITY.
1123 * c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
1124 HANDLE_PRAGMA_VISIBILITY): Don't define.
1125 (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.
1126
a9aa2c3a
NF
11272010-11-20 Nathan Froyd <froydnj@codesourcery.com>
1128
1129 PR c++/16189
1130 PR c++/36888
1131 PR c++/45331
1132 * c-common.h (keyword_begins_type_specifier): Declare.
1133 (keyword_is_storage_class_specifier): Declare.
1134 (keyword_is_type_qualifier): Declare.
1135 * c-common.c (keyword_begins_type_specifier): New function.
1136 (keyword_is_storage_class_specifier): New function.
1137 (keyword_is_type_qualifier): Declare.
1138
5386338c
JM
11392010-11-19 Joseph Myers <joseph@codesourcery.com>
1140
1141 PR c/46547
1142 * c-common.c (in_late_binary_op): Define.
1143 (c_common_truthvalue_conversion): Check in_late_binary_op before
1144 calling c_save_expr.
1145 * c-common.h (in_late_binary_op): Declare.
1146
69ccdddb
JM
11472010-11-19 Joseph Myers <joseph@codesourcery.com>
1148
1149 * c-opts.c (c_common_handle_option): Update calls to
1150 set_struct_debug_option.
1151
6b192a09
NP
11522010-11-19 Nicola Pero <nicola.pero@meta-innovation.com>
1153
1154 * c-common.h (objc_declare_protocols): Added additional argument.
1155 * stub-objc.c (objc_declare_protocol): Same change.
1156
fb52b50a
NF
11572010-11-18 Nathan Froyd <froydnj@codesourcery.com>
1158
1159 PR c/33193
1160 * c-common.h (build_real_imag_expr): Declare.
1161 * c-semantics.c (build_real_imag_expr): Define.
1162
b37421c6
JM
11632010-11-17 Joseph Myers <joseph@codesourcery.com>
1164
1165 * c-opts.c (c_common_parse_file): Take no arguments.
1166 * c-common.h (c_common_parse_file): Update prototype.
1167
07078664
JJ
11682010-11-16 Jakub Jelinek <jakub@redhat.com>
1169
1170 PR c++/46401
1171 * c-common.c (warning_candidate_p): Don't track non-const calls
1172 or STRING_CSTs.
1173
c6a13190
ILT
11742010-11-15 Ian Lance Taylor <iant@google.com>
1175
1176 * c-lex.c (init_c_lex): Set macro debug callbacks if
1177 flag_dump_go_spec is set.
1178
925e8657
NP
11792010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
1180
1181 * c-common.h (objc_build_incr_expr_for_property_ref): New.
1182 * stub-objc.c (objc_build_incr_expr_for_property_ref): New.
1183
bb0a9581
NF
11842010-11-15 Nathan Froyd <froydnj@codesourcery.com>
1185
1186 PR preprocessor/45038
1187 * c-cppbuiltin.c (c_cpp_builtins): Use different format for C++
1188 dialects.
1189
c5fa0890
JM
11902010-11-12 Joseph Myers <joseph@codesourcery.com>
1191
1192 * c-common.h (c_family_lang_mask): Declare.
1193 * c-opts.c (c_family_lang_mask): Make extern.
1194 * c-pragma.c (handle_pragma_diagnostic): Use
1195 control_warning_option.
1196
a4d8c676
JM
11972010-11-12 Joseph Myers <joseph@codesourcery.com>
1198
1199 * c-common.c (parse_optimize_options): Update call to
1200 decode_options.
1201 * c-common.h (c_common_handle_option): Update prototype.
1202 * c-opts.c (c_common_handle_option): Take location_t parameter and
1203 pass it to other functions.
1204
f954bd2c
JM
12052010-11-11 Joseph Myers <joseph@codesourcery.com>
1206
1207 * c-opts.c (warning_as_error_callback): Remove.
1208 (c_common_initialize_diagnostics): Don't call
1209 register_warning_as_error_callback.
1210 (c_common_handle_option): Handle -Werror=normalized= here.
1211
d8a07487
JM
12122010-11-10 Joseph Myers <joseph@codesourcery.com>
1213
1214 * c-common.c (handle_mode_attribute): Use %' and word "signedness"
1215 in diagnostic.
1216 * c-opts.c (c_common_parse_file): Start diagnostics with lowercase
1217 letter.
1218 * c-pragma.c (handle_pragma_target, handle_pragma_optimize):
1219 Remove trailing '.' from diagnostics.
1220 * c.opt (Wwrite-strings_: Avoid '`' in help text.
1221
d5478783
JM
12222010-11-10 Joseph Myers <joseph@codesourcery.com>
1223
1224 * c-common.c (parse_optimize_options): Pass global_dc to
1225 decode_options.
1226 * c-opts.c (c_common_handle_option): Pass &global_options to
1227 set_Wstrict_aliasing.
1228 * c.opt (v): Don't mark Common or document here.
1229
91ebb981
IS
12302010-11-06 Iain Sandoe <iains@gcc.gnu.org>
1231
1232 PR target/44981
1233 * c-format.c (format_type): New type gcc_objc_string_format_type.
1234 (valid_stringptr_type_p): New.
1235 (handle_format_arg_attribute): Use valid_stringptr_type_p ().
1236 (check_format_string): Pass expected type, use
1237 valid_stringptr_type_p (), check that the format string types are
1238 consistent with the format specification.
1239 (decode_format_attr): Warn if NSString is used outside objective-c.
1240 (format_types_orig): Add NSString.
1241 (format_name): New.
1242 (format_flags): New.
1243 (check_format_arg): Handle format strings requiring an external parser.
1244 first_target_format_type: New variable.
1245 (handle_format_attribute): Set up first_target_format_type, pass the
1246 expected format arg string type to check_format_string().
1247 * c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL): New flag.
1248 * stub-objc.c (objc_string_ref_type_p): New.
1249 (objc_check_format_arg): New.
1250
bede2adc
NP
12512010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
1252
1253 Fixed using the Objective-C 2.0 dot-syntax with class names.
1254 * c-common.h (objc_build_class_component_ref): New.
1255 * stub-objc.c (objc_build_class_component_ref): New.
1256
9a179d01
NP
12572010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
1258
1259 * c.opt (Wproperty-assign-default): New option.
1260
22d8d616
NP
12612010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
1262
1263 Implemented -fobjc-std=objc1 flag.
1264 * c.opt (fobjc-std=objc1): New option.
1265
2debdb4f
NP
12662010-11-01 Nicola Pero <nicola.pero@meta-innovation.com>
1267
1268 Implemented format and noreturn attributes for Objective-C methods.
1269 * c-common.c (handle_noreturn_attribute): Recognize 'noreturn'
1270 attribute for Objective-C methods.
1271
ec52b111
JM
12722010-10-31 Jason Merrill <jason@redhat.com>
1273
1274 * c-common.c (conversion_warning, warn_for_collisions_1): Use
1275 EXPR_LOC_OR_HERE.
1276
46a88c12
NP
12772010-10-30 Nicola Pero <nicola.pero@meta-innovation.com>
1278
1279 Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
1280 * c-common.h (enum rid): Removed RID_COPIES and RID_IVAR.
1281 (objc_add_property_declaration): Removed arguments for copies and
1282 ivar.
1283 (objc_build_getter_call): Renamed to
1284 objc_maybe_build_component_ref.
1285 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
1286 (objc_is_property_ref): New.
1287 * c-common.c (c_common_reswords): Removed copies and ivar.
1288 * stub-objc.c (objc_add_property_declaration): Removed arguments
1289 for copies and ivar.
1290 (objc_build_getter_call): Renamed to
1291 objc_maybe_build_component_ref.
1292 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
1293 (objc_is_property_ref): New.
1294
1e4bf85b
AC
12952010-10-29 Arnaud Charlet <charlet@adacore.com>
1296 Matthew Gingell <gingell@adacore.com>
1297
1298 * c-ada-spec.c (separate_class_package): New function.
1299 (pp_ada_tree_identifier): Prefix references to C++ classes with the
1300 name of their enclosing package.
1301 (print_ada_declaration): Use separate_class_package.
1302
81f0bab2
JM
13032010-10-27 Jason Merrill <jason@redhat.com>
1304
2b08f2c5
JM
1305 * c-common.c (c_common_reswords): Add __is_literal_type.
1306 * c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
1307
81f0bab2
JM
1308 * c-common.c (check_case_value): Remove special C++ code.
1309
200290f2
NP
13102010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
1311
1312 * c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN,
1313 RID_RETAIN, RID_COPY and RID_NONATOMIC. Updated RID_FIRST_PATTR
1314 and RID_LAST_PATTR.
1315 (objc_add_property_declaration): Added additional arguments.
1316 (objc_property_attribute_kind): Removed.
1317 (objc_set_property_attr): Removed.
1318 * c-common.c (c_common_reswords): Added readwrite, assign, retain,
1319 copy and nonatomic.
1320 * stub-objc.c (objc_add_property_declaration): Added additional
1321 arguments.
1322 (objc_set_property_attr): Removed.
1323
f614132b
NP
13242010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
1325
1326 * c-common.h (objc_add_property_variable): Renamed to
1327 objc_add_property_declaration. Added location argument.
1328 * stub-objc.c (objc_add_property_variable): Same change.
1329
b8a18805
NP
13302010-10-23 Nicola Pero <nicola.pero@meta-innovation.com>
1331
1332 * c-common.h (objc_maybe_printable_name): New.
1333 * stub-objc.c (objc_maybe_printable_name): New.
1334
30cd1c5d
AS
13352010-10-22 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
1336 Andrew Pinski <pinskia@gmail.com>
1337
1338 * c-common.h (c_common_mark_addressable_vec): Declare.
1339 * c-common.c (c_common_mark_addressable_vec): New function.
1340
249a82c4
NP
13412010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
1342
1343 * c-common.h (objc_set_method_type): Removed.
1344 (objc_add_method_declaration): Added boolean argument.
1345 (objc_start_method_definition): Same change.
1346 (objc_build_method_signature): Same change.
1347 * stub-objc.c (objc_set_method_type): Removed.
1348 (objc_add_method_declaration): Added boolean argument.
1349 (objc_start_method_definition): Same change.
1350 (objc_build_method_signature): Same change.
1351
977e30bc
NP
13522010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
1353
1354 * c-common.h (finish_file): Removed.
1355 (objc_write_global_declarations): New.
1356 * c-opts.c (c_common_parse_file): Do not call finish_file.
1357 * stub-objc.c (objc_write_global_declarations): New.
1358
da57d1b9
NP
13592010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
1360
1361 Implemented parsing @synthesize and @dynamic for
1362 Objective-C/Objective-C++.
1363 * c-common.h (enum rid): Add RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
1364 (objc_add_synthesize_declaration): New.
1365 (objc_add_dynamic_declaration): New.
1366 * c-common.c (c_common_reswords): Add synthesize and dynamic.
1367 * stub-objc.c (objc_add_synthesize_declaration): New.
1368 (objc_add_dynamic_declaration): New.
1369
0069111f
MM
13702010-10-18 Michael Meissner <meissner@linux.vnet.ibm.com>
1371
1372 PR target/46041
1373 * c-cppbuiltin.c (mode_has_fma): Move function here from
1374 builtins.c. Don't use the fma optab, instead just use the
1375 HAVE_fma* macros, so that __FP_FAST_FMA* will be defined when
1376 using -save-temps.
1377
e426b47b
NP
13782010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
1379
1380 Merge from 'apple/trunk' branch on FSF servers.
0069111f 1381
e426b47b
NP
1382 2005-11-08 Fariborz Jahanian <fjahanian@apple.com>
1383
1384 Radar 4330422
1385 * c-common.h (objc_non_volatilized_type): New declaration
1386 * stub-objc.c (objc_non_volatilized_type): New stub.
1387
90fbfdc3
NP
13882010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
1389
e426b47b 1390 Merge from 'apple/trunk' branch on FSF servers.
90fbfdc3
NP
1391
1392 2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
1393
1394 Radar 4133425
1395 * c-common.h (objc_diagnose_private_ivar): New decl.
0069111f 1396 * stub-objc.c (objc_diagnose_private_ivar): New stub.
90fbfdc3 1397
c37d8c30
IS
13982010-10-17 Iain Sandoe <iains@gcc.gnu.org>
1399
1400 * c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
1401 * c-common.h (enum rid): Add RID_AT_PACKAGE.
1402 (objc_ivar_visibility_kind): New enum.
1403 (objc_set_visibility): Adjust prototype to use visibility enum.
0069111f 1404 * stub-objc.c (objc_set_visibility): Adjust stub to use
c37d8c30
IS
1405 visibility enum.
1406
1b1562a5
MM
14072010-10-14 Michael Meissner <meissner@linux.vnet.ibm.com>
1408
1409 * c-cppbuiltin.c (builtin_define_float_constants): Emit
1410 __FP_FAST_FMA, __FP_FAST_FMAF, and __FP_FAST_FMAL if the machine
1411 has the appropriate fma builtins.
1412 (c_cpp_builtins): Adjust call to builtin_define_float_constants.
1413
668ea4b1
IS
14142010-10-14 Iain Sandoe <iains@gcc.gnu.org>
1415
1b1562a5 1416 merge from FSF apple 'trunk' branch.
668ea4b1 1417 2006 Fariborz Jahanian <fjahanian@apple.com>
1b1562a5 1418
668ea4b1
IS
1419 Radars 4436866, 4505126, 4506903, 4517826
1420 * c-common.c (c_common_resword): Define @property and its attributes.
1421 * c-common.h: Define property attribute enum entries.
1422 (OBJC_IS_PATTR_KEYWORD): New.
1423 (objc_property_attribute_kind): New enum.
1424 Declare objc_set_property_attr (), objc_add_property_variable (),
1425 objc_build_getter_call () and objc_build_setter_call ().
1426 * stub-objc.c (objc_set_property_attr): New stub.
1427 (objc_add_property_variable): Likewise.
1428 (objc_build_getter_call): Likewise.
1429 (objc_build_setter_call) Likewise.
1b1562a5 1430
a1178b30
IS
14312010-10-13 Iain Sandoe <iains@gcc.gnu.org>
1432
1b1562a5 1433 merge from FSF apple 'trunk' branch.
a1178b30
IS
1434 2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
1435
1436 Radar 3803157 (method attributes)
1437 * c-common.c (handle_deprecated_attribute): Recognize
1438 objc methods as valid declarations.
1439 * c-common.h: Declare objc_method_decl ().
1b1562a5 1440 * stub-objc.c (objc_method_decl): New stub.
a1178b30 1441
a75bfaa6
JM
14422010-10-08 Joseph Myers <joseph@codesourcery.com>
1443
1444 * c-common.c (parse_optimize_options): Call
1445 decode_cmdline_options_to_array_default_mask before
1446 decode_options. Update arguments to decode_options.
1447 * c-common.h (c_common_init_options_struct): Declare.
1448 * c-opts.c (c_common_init_options_struct): New. Split out from
1449 c_common_init_options.
1450
f05b9d93
NP
14512010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
1452
1453 Implemented fast enumeration for Objective-C.
1454 * c-common.h (objc_finish_foreach_loop): New.
1455 * stub-objc.c (objc_finish_foreach_loop): New.
1456
1ebe4b4f
JM
14572010-10-05 Joseph Myers <joseph@codesourcery.com>
1458
1459 * c-common.h (struct diagnostic_context): Don't declare here.
1460 (c_common_initialize_diagnostics): Declare using
1461 diagnostic_context typedef.
1462 * c-opts.c (c_common_handle_option): Pass global_dc to
1463 handle_generated_option.
1464
d4d24ba4
JM
14652010-10-04 Joseph Myers <joseph@codesourcery.com>
1466
1467 * c-opts.c (c_common_handle_option): Pass &global_options_set to
1468 handle_generated_option.
1469
478a1c5b
ILT
14702010-10-03 Ian Lance Taylor <iant@google.com>
1471
1472 * c.opt (-fplan9-extensions): New option.
1473
82a1c2fe
FXC
14742010-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1475
1476 * c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision):
1477 Remove.
1478 (c_cpp_builtins): Call functions from cppbuiltin.c instead
1479 of duplicating code.
1480
92902b1b
IS
14812010-09-30 Iain Sandoe <iains@gcc.gnu.org>
1482
1483 * c-common.c: Add two new entries for @optional
1484 and @required keywords.
1485
1486 merge from FSF 'apple/trunk' branch.
1487 2006-01-30 Fariborz Jahanian <fjahanian@apple.com>
1488
1489 Radar 4386773
1490 * c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new
1491 objective-c keywords.
1492 (objc_set_method_opt): New declaration.
1493 * stub-objc.c (objc_set_method_opt): New stub.
1494
46625112
JM
14952010-09-30 Joseph Myers <joseph@codesourcery.com>
1496
1497 * c-common.c (handle_optimize_attribute): Pass &global_options to
1498 cl_optimization_save and cl_optimization_restore.
1499 * c-opts.c (c_common_handle_option): Pass &global_options to
1500 handle_generated_option.
1501 * c-pragma.c (handle_pragma_diagnostic): Use option_flag_var.
1502 (handle_pragma_pop_options, handle_pragma_reset_options): Pass
1503 &global_options to cl_optimization_restore.
1504
49b91f05
NP
15052010-09-30 Nicola Pero <nicola.pero@meta-innovation.com>
1506
1507 * c-lex.c (c_lex_with_flags): Updated comments for CPP_AT_NAME
1508 Objective-C/Objective-C++ keywords.
1509
13ed556f 15102010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
a6341d57
NP
1511
1512 Merge from 'apple/trunk' branch on FSF servers.
1513
1514 2005-10-04 Fariborz Jahanian <fjahanian@apple.com>
1515
1516 Radar 4281748
1517 * c-common.h (objc_check_global_decl): New declaration.
1518 * stub-objc.c (objc_check_global_decl): New stub.
1519
f0036cca
JM
15202010-09-29 Joseph Myers <joseph@codesourcery.com>
1521
1522 * c.opt: Don't use VarExists.
1523
e3339d0f
JM
15242010-09-29 Joseph Myers <joseph@codesourcery.com>
1525
1526 * c-common.c (c_cpp_error): Update names of diagnostic_context
1527 members.
1528 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of
1529 cl_optimization members.
1530 * c-opts.c (warning_as_error_callback, c_common_handle_option,
1531 sanitize_cpp_opts, finish_options): Update names of cpp_options
1532 members.
1533
1973201f
NP
15342010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
1535
1536 * c-common.h (OBJC_IS_CXX_KEYWORD): New macro. Updated comments.
1537 (objc_is_reserved_word): Removed.
1538 * c-common.c: Updated comments.
1539 * c-lex.c (c_lex_with_flags): Use OBJC_IS_CXX_KEYWORD instead of
1540 objc_is_reserved_word.
1541 * stub-objc.c (objc_is_reserved_word): Removed.
1542
f7e71da5
IS
15432010-09-28 Iain Sandoe <iains@gcc.gnu.org>
1544
1545 * c-common.h (objc_add_method_declaration): Adjust prototype to
1546 include attributes.
1547 (objc_start_method_definition): Likewise.
1548 (objc_build_keyword_decl): Likewise.
1549 * stub-objc.c:(objc_add_method_declaration): Handle attributes.
1550 (objc_start_method_definition): Likewise.
1551 (objc_build_keyword_decl): Likewise.
1552
c165dca7
IS
15532010-09-28 Iain Sandoe <iains@gcc.gnu.org>
1554
1555 * c-common.h (objc_start_class_interface): Adjust prototype.
1556 (objc_start_category_interface): Likewise.
1557 (objc_start_protocol): Likewise.
1558 * stub-objc.c (objc_start_protocol): Adjust for extra argument.
1559 (objc_start_class_interface): Likewise.
1560 (objc_start_category_interface): Likewise.
1561
7458026b
ILT
15622010-09-27 Ian Lance Taylor <iant@google.com>
1563
1564 * c-common.c (c_common_attribute_table): Add no_split_stack.
1565 (handle_no_split_stack_attribute): New static function.
1566
b581b85b
NP
15672010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
1568
1569 Merge from 'apple/trunk' branch on FSF servers.
1570
1571 2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
1572
1573 Radar 4229905
1574 * c-common.h (objc_have_common_type): New declaration.
1575 * stub-objc.c (objc_have_common_type): New stub.
1576
1577 2005-06-22 Ziemowit Laski <zlaski@apple.com>
1578
1579 Radar 4154928
1580 * c-common.h (objc_common_type): New prototype.
1581 * stub-objc.c (objc_common_type): New stub.
1582
46a4da10
JH
15832010-09-24 Jan Hubicka <jh@suse.cz>
1584
1585 * c-common.c (handle_leaf_attribute): New function.
1586 (struct attribute_spec c_common_att): Add leaf.
1587
e200444e
JM
15882010-09-22 Joseph Myers <joseph@codesourcery.com>
1589
1590 * c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
1591 -comments-in-macros, -define-macro, -define-macro=, -dependencies,
1592 -dump, -dump=, -imacros, -imacros=, -include, -include=,
1593 -include-barrier, -include-directory, -include-directory=,
1594 -include-directory-after, -include-directory-after=,
1595 -include-prefix, -include-prefix=, -include-with-prefix,
1596 -include-with-prefix=, -include-with-prefix-after,
1597 -include-with-prefix-after=, -include-with-prefix-before,
1598 -include-with-prefix-before=, -no-integrated-cpp,
1599 -no-line-commands, -no-standard-includes, -no-warnings, -output,
1600 -output=, -pedantic, -pedantic-errors, -preprocess,
1601 -print-missing-file-dependencies, -trace-includes, -traditional,
1602 -traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
1603 -user-dependencies, -verbose, -write-dependencies,
1604 -write-user-dependencies, no-integrated-cpp, traditional): New.
1605
29a80ea6
NP
16062010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
1607
1608 PR objc/23710
ac1fc2fc
NP
1609 * c-common.h (objc_start_method_definition): Return bool instead
1610 of void.
1611 * stub-objc.c (objc_start_method_definition): Return bool instead
1612 of void.
1613
16142010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
1615
1616 PR objc/25965
1617 * c-common.h (objc_get_interface_ivars): New declaration.
1618 * stub-objc.c (objc_get_interface_ivars): New stub.
29a80ea6 1619
de621752
ILT
16202010-09-15 Ian Lance Taylor <iant@google.com>
1621
1622 * c-common.c (parse_optimize_options): Do not capitalize warning
06730c5d 1623 messages. Remove period at end of warning message.
de621752 1624
ba885ec5
NS
16252010-09-09 Nathan Sidwell <nathan@codesourcery.com>
1626
1627 * c-common.c (handle_alias_ifunc_attribute): New, broken out of ...
1628 (handle_alias_attribute): ... here.
1629 (handle_ifunc_attribute): New.
1630
c5ee1358
MM
16312010-09-06 Mark Mitchell <mark@codesourcery.com>
1632
1633 * c-common.h (do_warn_double_promotion): Declare.
1634 * c-common.c (do_warn_double_promotion): Define.
1635
0a0b3574
MM
16362010-09-05 Mark Mitchell <mark@codesourcery.com>
1637
1638 * c.opt (Wdouble-promotion): New.
1639
d1779886
JM
16402010-09-02 Joseph Myers <joseph@codesourcery.com>
1641
1642 * c.opt (falt-external-templates, fhuge-objects, fvtable-gc,
1643 fvtable-thunks, fxref): Mark no longer supported in help text.
1644
2d2bd949
JM
16452010-09-02 Joseph Myers <joseph@codesourcery.com>
1646
1647 * c.opt (Wimport, fall-virtual, falt-external-templates,
1648 fdefault-inline, fenum-int-equiv, fexternal-templates,
1649 fguiding-decls, fhonor-std, fhuge-objects, flabels-ok,
1650 fname-mangling-version-, fnew-abi, fnonnull-objects,
1651 foptional-diags, fsquangle, fstrict-prototype, fthis-is-variable,
1652 fvtable-gc, fvtable-thunks, fxref): Mark with Ignore and Warn as
1653 applicable.
1654 (fhandle-exceptions): Mark with Alias and Warn.
1655 * c-opts.c (c_common_handle_option): Don't handle options marked
1656 as ignored.
1657
5de8299c
JM
16582010-09-02 Joseph Myers <joseph@codesourcery.com>
1659
1660 * c.opt (Wcomments, Werror-implicit-function-declaration,
1661 ftemplate-depth-, std=c89, std=c9x, std=gnu89, std=gnu9x,
1662 std=iso9899:1990, std=iso9899:1999, std=iso9899:199x): Mark as
1663 aliases.
1664 * c-common.c (option_codes): Use OPT_Wcomment instead of
1665 OPT_Wcomments.
1666 * c-opts.c (warning_as_error_callback, c_common_handle_option):
1667 Don't handle options marked as aliases.
1668
0ceb0201
RG
16692010-08-25 Richard Guenther <rguenther@suse.de>
1670
1671 * c-common.c (c_common_get_alias_set): Remove special
1672 handling for pointers.
1673
ac47786e
NF
16742010-08-20 Nathan Froyd <froydnj@codesourcery.com>
1675
1676 * c-common.c: Use FOR_EACH_VEC_ELT.
1677 * c-gimplify.c: Likewise.
1678 * c-pragma.c: Likewise.
1679
c878765b
JM
16802010-08-16 Joseph Myers <joseph@codesourcery.com>
1681
1682 * c.opt (MDX): Change back to MD. Mark NoDriverArg instead of
1683 RejectDriver.
1684 (MMDX): Change back to MMD. Mark NoDriverArg instead of
1685 RejectDriver.
1686 * c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
1687 instead of OPT_MDX and OPT_MMDX.
1688
603349bf
JM
16892010-08-16 Joseph Myers <joseph@codesourcery.com>
1690
1691 * c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.
1692
644fa7ac
JM
16932010-08-12 Joseph Myers <joseph@codesourcery.com>
1694
1695 * c.opt (MD, MMD): Change to MDX and MMDX.
1696 * c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX.
1697
481e1176
JM
16982010-08-11 Joseph Myers <joseph@codesourcery.com>
1699
1700 * c-opts.c (c_common_handle_option): Call handle_generated_option
1701 instead of handle_option.
1702
ac8dc9f7
NF
17032010-08-08 Nathan Froyd <froydnj@codesourcery.com>
1704
1705 * c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
1706 (maybe_apply_renaming_pragma): Delete unneeded declarations.
1707
4f8c876d
NF
17082010-08-08 Nathan Froyd <froydnj@codesourcery.com>
1709
1710 * c-pragma.c (pending_redefinition): Declare. Declare a VEC of it.
1711 (pending_redefine_extname): Change type to a VEC.
1712 (add_to_renaming_pragma_list): Update for new type of
1713 pending_redefine_extname.
ac8dc9f7 1714 (maybe_apply_renaming_pragma): Likewise.
4f8c876d 1715
3b0c690e
AC
17162010-08-04 Arnaud Charlet <charlet@adacore.com>
1717
1718 * c-ada-spec.c (dump_ada_template): Mark underlying instance type as
1719 visited.
1720 (dump_generic_ada_node): Code clean up. Use TREE_VISITED flag to
1721 decide whether a type has already been declared/seen.
1722 Do not go to the original type.
1723 (dump_nested_types): New parameter forward.
1724 Generate forward declaration if needed and mark type as visited.
1725 (print_ada_declaration): Call dump_nested_types if not already done.
1726 Mark types as visited.
1727
1890bccc
JM
17282010-08-03 Joseph Myers <joseph@codesourcery.com>
1729
1730 * c.opt (-print-pch-checksum): Remove option.
1731 * c-opts.c (c_common_handle_option): Don't handle
1732 OPT_print_pch_checksum.
1733
5f20c657
JM
17342010-07-27 Joseph Myers <joseph@codesourcery.com>
1735
1736 * c-common.h (c_common_handle_option): Update prototype and return
1737 value type.
1738 * c-opts.c (c_common_handle_option): Update prototype and return
1739 value type. Update calls to handle_option and
1740 enable_warning_as_error.
1741
f551f80c
JJ
17422010-07-27 Jakub Jelinek <jakub@redhat.com>
1743
1744 PR c/45079
1745 * c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
1746
61ff2bdc
JM
17472010-07-27 Joseph Myers <joseph@codesourcery.com>
1748
1749 * c-common.h (c_common_missing_argument): Remove.
1750 * c-opts.c (c_common_missing_argument): Remove.
1751 * c.opt (A, D, F, I, MD, MMD, MQ, MT, U, fconstant-string-class=,
1752 idirafter, imacros, include, isysroot, isystem, iquote): Add
1753 MissingArgError.
1754 * c-objc-common.h (LANG_HOOKS_MISSING_ARGUMENT): Remove.
1755
7a9bf9a4
JM
17562010-07-27 Joseph Myers <joseph@codesourcery.com>
1757
1758 * c-common.h (c_common_option_lang_mask,
1759 c_common_initialize_diagnostics, c_common_complain_wrong_lang_p):
1760 New.
1761 (c_common_init_options): Update prototype.
1762 * c-opts.c (c_common_option_lang_mask): New.
1763 (c_common_initialize_diagnostics): Split out of
1764 c_common_init_options.
1765 (accept_all_c_family_options, c_common_complain_wrong_lang_p):
1766 New.
1767 (c_common_init_options): Update prototype. Use decoded options in
1768 search for -lang-asm.
1769
910ad8de
NF
17702010-07-15 Nathan Froyd <froydnj@codesourcery.com>
1771
1772 * c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
1773 * c-format.c: Likewise.
1774
718f9c0f
MLI
17752010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
1776
1777 * c-common.h: Include diagnostic-core.h. Error if already
1778 included.
1779 * c-semantics.c: Do not define GCC_DIAG_STYLE here.
1780
4d451982
MLI
17812010-07-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
1782
1783 * c-family/c-common.c (IN_GCC_FRONTEND): Do not undef.
1784 Do not include expr.h
1785 (vector_mode_valid_p): Move here.
1786
119fe915
SB
17872010-06-21 DJ Delorie <dj@redhat.com>
1788
1789 * c-pragma.c (handle_pragma_diagnostic): Add push/pop,
1790 allow these pragmas anywhere.
1791
17922010-06-14 Jakub Jelinek <jakub@redhat.com>
1793
1794 PR bootstrap/44509
1795 * c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
1796 (lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
1797 (lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
1798 ggc_strdup instead of xstrdup.
1799
18002010-06-10 Jakub Jelinek <jakub@redhat.com>
1801
1802 * c-cppbuiltin.c: Include cpp-id-data.h.
1803 (lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
1804 (lazy_hex_fp_value): New function.
1805 (builtin_define_with_hex_fp_value): Provide definitions lazily.
1806
6662d794
MLI
18072010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
1808
1809 * c-gimplify.c: Do not include tree-flow.h
1810
38f8b050
JR
18112010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
1812
1813 PR other/44034
1814 * c-common.c: Rename targetm member:
1815 targetm.enum_va_list -> targetm.enum_va_list_p
1816
9589f23e
AS
18172010-06-28 Anatoly Sokolov <aesok@post.ru>
1818
1819 * c-common.c (shorten_compare): Adjust call to force_fit_type_double.
1820
3b06d379
SB
18212010-06-28 Steven Bosscher <steven@gcc.gnu.org>
1822
1823 * c-cppbuiltin.c: Do not include except.h.
1824
d166d4c3
AK
18252010-06-24 Andi Kleen <ak@linux.intel.com>
1826
1827 * c-common.c (warn_for_omitted_condop): New.
1828 * c-common.h (warn_for_omitted_condop): Add prototype.
1829
70cb8be6
JM
18302010-06-21 Joseph Myers <joseph@codesourcery.com>
1831
1832 * c.opt (lang-objc): Remove.
1833 * c-opts.c (c_common_handle_option): Don't handle OPT_lang_objc.
1834
a4c97feb
JR
18352010-06-21 Joern Rennecke <joern.rennecke@embecosm.com>
1836
1837 * c-opts.c: Include "tm_p.h".
1838
6e2f1956
JM
18392010-06-20 Joseph Myers <joseph@codesourcery.com>
1840
1841 * c-common.c (parse_optimize_options): Update call to
1842 decode_options.
1843
bc87224e
NF
18442010-06-18 Nathan Froyd <froydnj@codesourcery.com>
1845
1846 * c-common.c (record_types_used_by_current_var_decl): Adjust for
1847 new type of types_used_by_cur_var_decl.
1848
b49cf425
JR
18492010-06-17 Joern Rennecke <joern.rennecke@embecosm.com>
1850
1851 PR bootstrap/44512
1852 * c-cppbuiltin.c (builtin_define_with_hex_fp_value): Add cast
1853 for C++ standard compliance.
1854
59f9c2ed
JM
18552010-06-16 Jason Merrill <jason@redhat.com>
1856
1857 * c.opt: Add -Wnoexcept.
1858
33766b66
RG
18592010-06-16 Richard Guenther <rguenther@suse.de>
1860
1861 PR c/44555
1862 * c-common.c (c_common_truthvalue_conversion): Remove
1863 premature and wrong optimization concering ADDR_EXPRs.
1864
eff7e30c
AC
18652010-06-15 Arnaud Charlet <charlet@adacore.com>
1866
1867 * c-ada-spec.c (dump_sloc): Remove column info.
1868 (is_simple_enum): New function.
1869 (dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada
1870 enum types when relevant.
1871
6312e84d
MLI
18722010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
1873
1874 * c-common.c (conversion_warning): Warn at expression
1875 location.
1876
1cb42611
JM
18772010-06-10 Joseph Myers <joseph@codesourcery.com>
1878
1879 * c-opts.c (c_common_handle_option): Don't handle
1880 OPT_fshow_column.
1881
a9429e29
LB
18822010-06-08 Laurynas Biveinis <laurynas.biveinis@gmail.com>
1883
1884 * c-pragma.c (push_alignment): Use typed GC allocation.
1885 (handle_pragma_push_options): Likewise.
1886
1887 * c-common.c (parse_optimize_options): Likewise.
1888
1889 * c-common.h (struct sorted_fields_type): Add variable_size GTY
1890 option.
1891
5498f011
JM
18922010-06-07 Joseph Myers <joseph@codesourcery.com>
1893
1894 * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
1895 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
1896 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
1897 flag_signed_bitfields, warn_strict_null_sentinel,
1898 flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
1899 flag_gen_declaration, flag_no_gnu_keywords,
1900 flag_implement_inlines, flag_implicit_templates,
1901 flag_implicit_inline_templates, flag_optional_diags,
1902 flag_elide_constructors, flag_default_inline, flag_rtti,
1903 flag_conserve_space, flag_access_control, flag_check_new,
1904 flag_new_for_scope, flag_weak, flag_working_directory,
1905 flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
1906 flag_enforce_eh_specs, flag_threadsafe_statics,
1907 flag_pretty_templates): Remove.
1908 * c-common.h (flag_preprocess_only, flag_nil_receivers,
1909 flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
1910 flag_replace_objc_classes, flag_undef, flag_no_builtin,
1911 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
1912 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
1913 flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
1914 flag_no_gnu_keywords, flag_implement_inlines,
1915 flag_implicit_templates, flag_implicit_inline_templates,
1916 flag_optional_diags, flag_elide_constructors, flag_default_inline,
1917 flag_rtti, flag_conserve_space, flag_access_control,
1918 flag_check_new, flag_new_for_scope, flag_weak,
1919 flag_working_directory, flag_use_cxa_atexit,
1920 flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
1921 flag_threadsafe_statics, flag_pretty_templates,
1922 warn_strict_null_sentinel): Remove.
1923 * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
1924 fbuiltin, fcheck-new, fconserve-space, felide-constructors,
1925 fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
1926 fimplicit-inline-templates, fimplicit-templates,
1927 flax-vector-conversions, fms-extensions, fnil-receivers,
1928 fnonansi-builtins, fpretty-templates, freplace-objc-classes,
1929 frtti, fshort-double, fshort-enums, fshort-wchar,
1930 fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
1931 funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
1932 fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
1933 gen-decls, undef): Use Var.
1934 (fdefault-inline, foptional-diags): Document as doing nothing.
1935 * c-opts.c (c_common_handle_option): Remove cases for options now
1936 using Var. Mark ignored options as such.
1937
39dabefd
SB
19382010-06-05 Steven Bosscher <steven@gcc.gnu.org>
1939
1940 * c-common.c: Moved to here from parent directory.
1941 * c-common.def: Likewise.
1942 * c-common.h: Likewise.
1943 * c-cppbuiltin.c: Likewise.
1944 * c-dump.c: Likewise.
1945 * c-format.c: Likewise.
1946 * c-format.h : Likewise.
1947 * c-gimplify.c: Likewise.
1948 * c-lex.c: Likewise.
1949 * c-omp.c: Likewise.
1950 * c.opt: Likewise.
1951 * c-opts.c: Likewise.
1952 * c-pch.c: Likewise.
1953 * c-ppoutput.c: Likewise.
1954 * c-pragma.c: Likewise.
1955 * c-pragma.h: Likewise.
1956 * c-pretty-print.c: Likewise.
1957 * c-pretty-print.h: Likewise.
1958 * c-semantics.c: Likewise.
1959 * stub-objc.c: Likewise.
1960
1961 * c-common.c: Include gt-c-family-c-common.h.
1962 * c-pragma.c: Include gt-c-family-c-pragma.h.
1963\f
04695783 1964Copyright (C) 2010, 2011 Free Software Foundation, Inc.
39dabefd
SB
1965
1966Copying and distribution of this file, with or without modification,
1967are permitted in any medium without royalty provided the copyright
1968notice and this notice are preserved.