]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/c-family/ChangeLog
re PR fortran/55297 ([OOP] type-bound operator clashes with abstract interface)
[thirdparty/gcc.git] / gcc / c-family / ChangeLog
CommitLineData
a4a0016d
ESR
12012-11-09 Ed Smith-Rowland <3dw4rd@verizon.net>
2
3 PR c++/54413
4 * c-opts.c (c_common_handle_option): Set new flags.
5 * c.opt: Describe new flags.
6
7dbb85a7
JM
72012-11-09 Jason Merrill <jason@redhat.com>
8
9 * c.opt (Wabi-tag): New.
10
ad7bac31
AK
112012-11-09 Andi Kleen <ak@linux.intel.com>
12
13 PR 55139
14 * c-common.c (get_atomic_generic_size): Mask with
15 MEMMODEL_MASK
16
7332899a
MLI
172012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
18
19 PR c/53063
20 * c.opt (Wformat): Make it Alias Wformat=1.
21 (Wformat-contains-nul,Wformat-extra-args,Wformat-nonliteral,
22 Wformat-security,Wformat-y2k,Wformat-zero-length): Use
23 LangEnabledBy.
24 (Wformat=): RejectNegative. Use LangEnabledBy.
25 (Wnonnull): Use LangEnabledBy.
26 * c-opts.c (c_common_handle_option): Do not handle Wformat here.
27 * c-format.c (set_Wformat): Delete.
28 (decode_format_attr): Replace OPT_Wformat with OPT_Wformat_.
29 (maybe_read_dollar_number): Likewise.
30 (avoid_dollar_number): Likewise.
31 (finish_dollar_format_checking): Likewise.
32 (check_format_info): Likewise.
33 (check_format_info_main): Likewise.
34 (check_format_types): Likewise.
35 (format_type_warning): Likewise.
36 * c-common.c (int): Likewise.
37 (check_function_sentinel): Likewise.
38 * c-common.h (warn_format,set_Wformat): Do not declare here.
39
34a180a6
MLI
402012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
41
42 PR c/53063
43 * c.opt(Warray-bounds,Wdelete-non-virtual-dtor,Wenum-compare,
44 Wmain,Woverlength-strings, Wunknown-pragmas,Wunused-macros):
45 Use LangEnabledBy.
46 (Wswitch,Wswitch-default,Wswitch-enum): Likewise. Move here from
47 common.opt.
48 (Wvariadic-macros): Init(1).
49 * c-opts.c (c_common_handle_option): Do not handle them
50 explicitly.
51 (c_common_post_options): Likewise.
52 (sanitize_cpp_opts): warn_unused_macros is now
53 cpp_warn_unused_macros.
54 (push_command_line_include): Likewise.
55 * c-common.c (warn_unknown_pragmas): Do not define.
56 * c-common.h (warn_unknown_pragmas): Do not declare.
57
3f46d6a5
MLI
582012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
59
60 PR c/51294
61 * c-common.c (conversion_warning): Handle conditional expressions.
62
880661a4
JW
632012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
64
65 PR c++/54930
66 * c.opt (Wreturn_local_addr): Define new option.
67
4514a96b
JM
682012-10-25 Jason Merrill <jason@redhat.com>
69
f14edc1a
JM
70 * c.opt (Wvirtual-move-assign): New.
71
4514a96b
JM
72 * c.opt (Winherited-variadic-ctor): New.
73
93100c6b
MG
742012-10-25 Marc Glisse <marc.glisse@inria.fr>
75
76 PR c++/54427
77 * c-common.c (scalar_to_vector): Handle VEC_COND_EXPR.
78
1efcb8c6
JM
792012-10-23 Joseph Myers <joseph@codesourcery.com>
80
81 * c-common.h (pch_cpp_save_state): Declare.
82 * c-target.def (c_preinclude): New hook.
83 * c-opts.c (done_preinclude): New.
84 (push_command_line_include): Handle default preincluded header.
85 (cb_file_change): Call pch_cpp_save_state when calling
86 push_command_line_include.
87 * c-pch.c (pch_ready_to_save_cpp_state, pch_cpp_state_saved)
88 (pch_cpp_save_state): New.
89 (pch_init): Call pch_cpp_save_state conditionally, instead of
90 calling cpp_save_state.
91
4a0ae68e
MLI
922012-10-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
93
94 PR c/53063
95 PR c/40989
96 * c.opt (Waddress,Wchar-subscripts,Wsign-conversion,Wimplicit,
97 Wimplicit-function-declaration,Wimplicit-int,Wsizeof-pointer-memaccess,
98 Wnarrowing,Wparentheses,Wpointer-sign,Wreturn-type,Wsequence-point,
99 Wsign-compare,Wuninitialized,Wmaybe-uninitialized,Wunused,
100 Wvolatile-register-var): Add LangEnabledBy or EnabledBy.
101 * c-opts.c (c_common_handle_option): Remove explicit handling from
102 here.
103 (c_common_post_options): Likewise.
104
67e4210b
EB
1052012-10-18 Eric Botcazou <ebotcazou@adacore.com>
106
107 * c-ada-spec.c (LOCATION_COL): Delete.
108 (compare_location): New function.
109 (compare_node): Use it.
110 (compare_comment): Likewise.
111
65d4f2cd
MLI
1122012-10-16 Manuel López-Ibáñez <manu@gcc.gnu.org>
113
114 PR c/53063
115 PR c/40989
116 * c.opt (Wstrict-aliasing=,Wstrict-overflow=): Use LangEnabledBy.
117 * c-opts.c (c_common_handle_option): Do not set them here. Add
118 comment.
119 (c_common_post_options): Likewise.
120
909881cb
EB
1212012-10-16 Eric Botcazou <ebotcazou@adacore.com>
122
123 * c-ada-spec.c (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Define.
124 (dump_generic_ada_node) <INTEGER_CST>: Deal with sizetype specially.
125 Remove POINTER_TYPE handling, add large unsigned handling and use
126 ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX for big numbers.
127
3a785c97
JJ
1282012-10-12 Jakub Jelinek <jakub@redhat.com>
129
130 PR c/54381
131 * c-common.h (sizeof_pointer_memaccess_warning): Adjust prototype.
132 * c-common.c (sizeof_pointer_memaccess_warning): Take array of 3
133 locs and array of 3 trees instead of just single loc and single
134 sizeof_arg tree. Handle __builtin___*_chk builtins too, and
135 also stpncpy, bcopy, bcmp, bzero, snprintf and vsnprintf builtins.
136 For *cmp* builtins that take two sources strings report warnings
137 about first and second source, not about destination and source.
138
5e54f81d
MG
1392012-10-12 Marc Glisse <marc.glisse@inria.fr>
140
141 PR c++/53055
142 * c-common.h (enum ref_operator) [RO_ARROW_STAR]: New.
143
f5b02f1e
EB
1442012-10-11 Eric Botcazou <ebotcazou@adacore.com>
145
146 * c-ada-spec.c (dump_ada_template): Bail out for template declarations
147 declaring something coming from another file.
148
b46dbc6c
AC
1492012-10-10 Arnaud Charlet <charlet@adacore.com>
150
f5b02f1e 151 PR ada/54845
b46dbc6c
AC
152 * c-ada-spec.c (print_ada_struct_decl): Increase buf size.
153
5d9de0d0
PC
1542012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
155
156 PR c++/54194
157 * c-common.c (warn_about_parentheses): Add location_t parameter;
158 use EXPR_LOC_OR_LOC.
159 * c-common.h: Update declaration.
160
a212e43f
MG
1612012-10-09 Marc Glisse <marc.glisse@inria.fr>
162
163 PR c++/54427
164 * c-common.c (scalar_to_vector): Moved from c-typeck.c. Support
165 more operations. Make error messages optional.
166 * c-common.h (enum stv_conv): Moved from c-typeck.c.
167 (scalar_to_vector): Declare.
168
b1db7f91
JM
1692012-10-08 Jason Merrill <jason@redhat.com>
170
171 * c-common.c (c_common_reswords): Add thread_local.
172
e28d52cf
DS
1732012-10-08 Dodji Seketeli <dodji@redhat.com>
174
175 PR c++/53528 C++11 attribute support
176 * c-common.h (bitfield_p, cxx_fundamental_alignment_p): Declare
177 new functions.
178 * c-common.c (check_cxx_fundamental_alignment_constraints): New
179 static function.
180 (handle_aligned_attribute): In choose strictest alignment
181 among many. Use new check_cxx_fundamental_alignment_constraints.
182 (handle_transparent_union_attribute): In c++11 attribute syntax,
183 don't look through typedefs.
184
3b78de56
AC
1852012-10-04 Arnaud Charlet <charlet@adacore.com>
186
187 * c-ada-spec.c (print_ada_declaration): Remove handling of TDF_RAW.
188 * c.opt (-fdump-ada-spec, -fdump-ada-spec-slim): Move switch definition
189 out of dumpfile.h.
190
6040bb5f
DC
1912012-09-25 Dehao Chen <dehao@google.com>
192
193 PR middle-end/54645
3b78de56 194 * c-pch.c (c_common_read_pch): Rebuild the location_adhoc_data
6040bb5f
DC
195 map when read in the pch.
196
0b07a57e
AC
1972012-09-18 Arnaud Charlet <charlet@adacore.com>
198
199 * c-ada-spec.c: Style fixes.
200
da5182be
TQ
2012012-09-18 Thomas Quinot <quinot@adacore.com>
202
203 * c.opt (-fada-spec-parent): Define new command line switch.
204 * c-ada-spec.c (get_ada_package): When -fada-spec-parent
205 is specified, generate binding spec as a child of the specified unit.
206
0ccb505d
PC
2072012-09-13 Paolo Carlini <paolo.carlini@oracle.com>
208 Manuel López-Ibáñez <manu@gcc.gnu.org>
209
210 PR c++/53210
211 * c.opt ([Winit-self]): Enabled by -Wall in C++.
212
c583af79
AC
2132012-08-23 Arnaud Charlet <charlet@adacore.com>
214
215 * c-ada-spec.c (dump_generic_ada_node): Fix handling of name_only
216 for pointers, and add missing Convention C pragma.
217 (print_ada_struct_decl): Add missing aliased keyword.
218 (dump_ads): Add pragma Ada_2005 and Style_Checks (Off).
219
1a4049e7
JJ
2202012-08-17 Jakub Jelinek <jakub@redhat.com>
221
222 * c-common.c (sizeof_pointer_memaccess_warning): New function.
223 * c.opt (-Wsizeof-pointer-memaccess): Add new option.
224 * c-opts.c (c_common_handle_option): Enable it for -Wall.
225 * c-common.h (sizeof_pointer_memaccess_warning): Add prototype.
226 * c-common.def (SIZEOF_EXPR): Moved here from cp-tree.def.
227
70b5e7dc
RG
2282012-08-10 Richard Guenther <rguenther@suse.de>
229
230 * c-pretty-print.c (pp_c_expression): Handle anonymous SSA names.
231
f8923f7e
SB
2322012-08-07 Steven Bosscher <steven@gcc.gnu.org>
233
234 * c-pretty-print.c (pp_c_function_definition): Use pp_newline_and_flush
235 instead of separate pp_newline and pp_flush.
236 (print_c_tree): Likewise.
237
e45abe1f
RH
2382012-07-26 Richard Henderson <rth@redhat.com>
239
240 * c-common.c (handle_hot_attribute): Allow labels.
241 (handle_cold_attribute): Likewise.
242
332f1d24
JJ
2432012-07-20 Jakub Jelinek <jakub@redhat.com>
244
245 PR c++/28656
246 * c-common.c (check_function_nonnull): Handle multiple nonnull
247 attributes properly.
248
7ee2468b
SB
2492012-07-16 Steven Bosscher <steven@gcc.gnu.org>
250
251 * c-gimplify.c: Include dumpfile.h instead of tree-dump.h.
252 * c-ada-spec.c: Likewise.
253 * c-dump.c (dump_stmt): Move to cp/dump.c, the only user.
254
ee7b28eb
SB
2552012-07-14 Steven Bosscher <steven@gcc.gnu.org>
256
257 * c-pch.c (CHECK_NO_ASM_OUT_DURING_PCH): Do not define.
258 Remove code conditional on it.
259
6bdf3519
SB
2602012-07-11 Steven Bosscher <steven@gcc.gnu.org>
261
262 * c-gimplify.c: Do not include basic-block.h.
263 * c-common.c: Do not include linfuncs.h.
264
532aafad
SB
2652012-07-08 Steven Bosscher <steven@gcc.gnu.org>
266
267 * c-common.h: Include tree.h.
268
8d0d1915
JM
2692012-07-02 Jason Merrill <jason@redhat.com>
270
271 PR c++/53524
272 * c-common.c (get_priority): Call default_conversion.
273
fbc873ad
UB
2742012-07-01 Uros Bizjak <ubizjak@gmail.com>
275
276 * c-pch.c (c_common_write_pch): Remove unused variables.
277
d4a10d0a
SB
2782012-06-29 Steven Bosscher <steven@gcc.gnu.org>
279
280 * cppspec.c: Moved from gcc/ to here.
281
6f3a2e23
KT
2822012-06-27 Kai Tietz <ktietz@redhat.com>
283
284 PR preprocessor/37215
285 * c-ppoutput.c (preprocess_file): Check for nonempty buffer.
286
8ca92d04
SB
2872012-06-21 Steven Bosscher <steven@gcc.gnu.org>
288
289 * c-common.h (c_common_print_pch_checksum): Remove.
290 * c-pch.c: Do not include output.h.
291 (CHECK_NO_ASM_OUT_DURING_PCH): Define and add FIXME.
292 (asm_out_file): Define iff CHECK_NO_ASM_OUT_DURING_PCH isdefined.
293 (asm_file_startpos): Define iff CHECK_NO_ASM_OUT_DURING_PCH is defined.
294 (struct c_pch_header): Remove.
295 (get_ident): Update gpch version.
296 (pch_init): Do not print executable_checksum to asm_out_file.
297 Do not fail if there is no asm_out_file to read back from. Set
298 asm_file_startpos only if CHECK_NO_ASM_OUT_DURING_PCH is defined.
299 (c_common_write_pch): Verify that nothing was written to asm_out_file
300 since pch_init was called. Do not write a c_pch_header, and do not
301 copy from asm_out_file to the PCH.
302 (c_common_read_pch): Do not read a c_pch_header, and do not restore
303 the content of asm_out_file from the PCH.
304 (c_common_print_pch_checksum): Remove.
305 * c-opts.c (c_common_init): Print out executable_checksum directly.
306
70f42967
SB
3072012-06-19 Steven Bosscher <steven@gcc.gnu.org>
308
309 * c-target.def (objc_declare_unresolved_class_reference,
310 objc_declare_class_definition): Add new hooks.
311
a8781821
SB
3122012-06-19 Steven Bosscher <steven@gcc.gnu.org>
313
314 * c-lex.c: Do not include output.h.
315 (cb_ident): Try to put out .ident with targetm.asm_out.output_ident.
316 Remove uses of ASM_OUTPUT_IDENT.
317
9e1a8dd1
RR
3182012-06-15 Marc Glisse <marc.glisse@inria.fr>
319
320 PR c++/51033
321 * c-common.h (c_build_vec_perm_expr): Move decl here.
322 * c-common.c (c_build_vec_perm_expr): Move definition
323 here.
324
6f07a821
SB
3252012-06-06 Steven Bosscher <steven@gcc.gnu.org>
326
327 * c.opt (fconserve-space): Turn into a no-op.
328
9faeb493 3292012-06-04 Sterling Augustine <saugustine@google.com>
c265f413
SA
330
331 * c-pretty-print.h (pp_c_flag_gnu_v3): New enumerator.
332 * c-pretty-print.c (pp_c_specifier_qualifier_list): Check it at
333 both the start and end of the function.
334
a4b7d13c
SB
3352012-06-04 Steven Bosscher <steven@gcc.gnu.org>
336
337 * c-common.c: Do not include output.h.
338 * c-pragma.c: Likewise.
339
c265f413
SA
3402012-06-04 Steven Bosscher <steven@gcc.gnu.org>
341
342 * error.c (dump_decl): Check pp_c_flag_gnu_v3.
343 (decl_as_dwarf_string, lang_decl_dwarf_name): New functions.
344 (lang_decl_name): Handle namespace decls.
345
be7a421e
SB
3462012-05-31 Steven Bosscher <steven@gcc.gnu.org>
347
348 * c-ada-spec.c: Do not include output.h.
349 * c-semantics.c: Likewise.
350
65de6659
JM
3512012-05-29 Joseph Myers <joseph@codesourcery.com>
352
353 * c-common.c: Fix typo.
354
ca5f4331
MM
3552012-05-29 Michael Matz <matz@suse.de>
356
357 * c-common.h (c_expand_decl): Remove prototype.
358
4f7f7aca
MLI
3592012-05-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
360
361 * c.opt (Wmissing-braces): Use LangEnabledBy(C ObjC,Wall).
362 * c-opts.c (c_common_handle_option): Remove code handling
363 warn_missing_braces.
364
4a792f9b
PC
3652012-05-28 Paolo Carlini <paolo.carlini@oracle.com>
366
367 PR c++/25137
368 * c-opts.c (c_common_handle_option): For C++ -Wall doesn't enable
369 -Wmissing_braces.
370
650dc14a
DS
3712012-05-22 Dodji Seketeli <dodji@redhat.com>
372
373 PR c++/53322
374 * c.opt (Wunused-local-typedefs): Use EnabledBy(Wunused).
375
9b095bf1
MLI
3762012-05-17 Manuel López-Ibáñez <manu@gcc.gnu.org>
377
378 * c.opt (--pedantic-errors,-pedantic-errors): Do not handle here.
379 * c-opts.c (c_common_handle_option): Do not handle explicitly
380 Wreturn-type, Wwrite-strings, warn_ecpp, and -pedantic-errors.
381
0b2c4be5
DS
3822012-05-16 Dodji Seketeli <dodji@redhat.com>
383
384 PR preprocessor/7263
385 * c-lex.c (c_lex_with_flags): Pass a virtual location to the call
386 to cpp_classify_number. For diagnostics, use the precise location
387 instead of the global input_location.
388
a1bde5af
PC
3892012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
390
d02924ef 391 PR c++/11856
a1bde5af
PC
392 * c-common.c (shorten_compare): Check c_inhibit_evaluation_warnings.
393
d1ede5f4
BS
3942012-05-14 Bernd Schmidt <bernds@codesourcery.com>
395
a1bde5af 396 * c-common.c (DEF_ATTR_STRING): Define and undefine as necessary.
d1ede5f4 397
f2bc201f
MLI
3982012-05-14 Manuel López-Ibáñez <manu@gcc.gnu.org>
399
400 PR 53063
401 * c.opt (Wc++0X-compat,Wdelete-non-virtual-dtor,Wjump-misses-init,
402 Wreorder): Use LangEnabledBy.
403 * c-opts.c (c_common_handle_option): Do not enable them
404 explicitly. Call lang-specific generated functions.
405 (c_common_post_options): Do not set them here.
406
95744782
MLI
4072012-05-13 Manuel López-Ibáñez <manu@gcc.gnu.org>
408
409 * c.opt (Wclobbered,Wempty-body,Wignored-qualifiers,
410 Wmissing-field-initializers,Wmissing-parameter-type,
411 Wold-style-declaration,Woverride-init): Use EnabledBy.
412 * c-opts.c (c_common_post_options): Do not set here explicitly.
413
7d5a5747
MLI
4142012-05-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
415
416 PR 53063
417 * c-opts.c (c_common_handle_option): Use handle_generated_option
418 to enable sub-options.
419
5a3c9cf2
PC
4202012-05-10 Paolo Carlini <paolo.carlini@oracle.com>
421
422 PR c++/53158
423 * c-common.c (warnings_for_convert_and_check): Use warning_at.
424
3ac8781c
RG
4252012-05-10 Richard Guenther <rguenther@suse.de>
426
427 * c-common.c (c_sizeof_or_alignof_type): Remove assert and
428 adjust commentary about TYPE_IS_SIZETYPE types.
429
1e537948
MLI
4302012-05-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
431
432 PR c++/53261
433 * c-common.c (warn_logical_operator): Check that argument of
434 integer_zerop is not NULL.
435
f2c4a785
MLI
4362012-05-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
437
438 PR c/43772
439 * c-common.c (warn_logical_operator): Do not warn if either side
440 is already true or false.
441
50f305ca
MLI
4422012-05-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
443
444 PR c/51712
445 * c-common.c (expr_original_type): New.
446 (shorten_compare): Do not warn for enumeration types.
447
0c3641b0
MLI
4482012-05-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
449
450 * c.opt (fpermissive): Add Var(flag_permissive).
451
7edaa4d2
MG
4522012-04-30 Marc Glisse <marc.glisse@inria.fr>
453
454 PR c++/51033
455 * c-common.c (convert_vector_to_pointer_for_subscript): New function.
456 * c-common.h (convert_vector_to_pointer_for_subscript): Declare it.
457
b9c8da34
DS
4582012-04-30 Dodji Seketeli <dodji@redhat.com>
459
460 Add -Wvarargs option
461 * c.opt (Wvarargs): Define new option.
462
e6c69da0
MLI
4632012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
464
465 * c-common.c (check_function_arguments): Replace
466 Wmissing-format-attribute with Wsuggest-attribute=format.
467
90137d8f
MLI
4682012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
469
470 * c.opt (Wsuggest-attribute=format): New. Alias of
471 Wmissing-format-attribute.
472 * c-format.c (decode_format_type): Replace
473 Wmissing-format-attribute with Wsuggest-attribute=format.
474 (check_function_format): Likewise.
475
9faeb493 4762012-04-27 Ollie Wild <aaw@google.com>
7f5f5f98
OW
477
478 * c-common.c: Add CPP_W_LITERAL_SUFFIX mapping.
479 * c-opts.c (c_common_handle_option): Handle OPT_Wliteral_suffix.
480 * c.opt: Add Wliteral-suffix.
481
c1771a20
MLI
4822012-04-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
483
484 PR c/44774
485 * c.opt (Wpedantic): New.
486 (pedantic): Alias Wpedantic.
487 * c-opts.c (c_common_handle_option): Replace -pedantic with -Wpedantic.
488 (c_common_post_options): Likewise.
489 (sanitize_cpp_opts): Likewise.
490 * c-lex.c (interpret_float): Likewise.
491 * c-format.c (check_format_types): Likewise.
492 * c-common.c (pointer_int_sum): Likewise.
493 (c_sizeof_or_alignof_type): Likewise.
494 (c_add_case_label): Likewise.
495 (c_do_switch_warnings): Likewise.
496 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
497
04b391c1
JM
4982012-04-15 Jason Merrill <jason@redhat.com>
499
500 PR c++/52818
501 * c-format.c (CPLUSPLUS_STD_VER): C++11 inherits from C99.
502 (C_STD_NAME): Distinguish between C++98 and C++11.
503
ac868f29
EB
5042012-04-11 Eric Botcazou <ebotcazou@adacore.com>
505
506 PR target/52624
507 * c-common.h (uint16_type_node): Rename into...
508 (c_uint16_type_node): ...this.
509 * c-common.c (c_common_nodes_and_builtins): Adjust for above renaming.
510 * c-cppbuiltin.c (builtin_define_stdint_macros): Likewise.
511
fd4116f4
MLI
5122012-04-10 Manuel López-Ibáñez <manu@gcc.gnu.org>
513
514 * c-common.c (warn_if_unused_value): Move definition to here.
515 * c-common.h (warn_if_unused_value): Move declaration to here.
516
573ac65e
WB
5172012-03-23 William Bader <williambader@hotmail.com>
518
519 * c-lex.c (c_lex_with_flags): Avoid declarations after stmts.
520
552b8185
JM
5212012-03-20 Jason Merrill <jason@redhat.com>
522
523 * c-common.h (enum cxx_dialect): Add cxx1y.
524 * c-common.c (c_common_nodes_and_builtins): Use >= for cxx_dialect
525 test.
526 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
527 * c-opts.c (c_common_post_options): Likewise.
528 (set_std_cxx1y): New.
529 (c_common_handle_option): Call it.
530 * c.opt (-std=c++1y, -std=gnu++1y): New flags.
531
04398fa8
PC
5322012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
533
534 PR c++/14710
535 * c.opt ([Wuseless-cast]): Add.
536
d2a12ae7
RG
5372012-03-16 Richard Guenther <rguenther@suse.de>
538
539 * c-pretty-print.c (pp_c_initializer_list): Adjust.
540
a12bf402
MLI
5412012-03-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
542
543 PR c++/44783
544 * c.opt (ftemplate-backtrace-limit) Add.
545
5c30094f
RO
5462012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
547
548 * c-cppbuiltin.c (c_cpp_builtins): Remove #pragma extern_prefix
549 handling.
550 * c-pragma.c (handle_pragma_extern_prefix): Remove.
551 (init_pragma): Don't register extern_prefix.
552
21fa2faf
RG
5532012-03-12 Richard Guenther <rguenther@suse.de>
554
555 * c-common.c (c_common_get_narrower): Use c_common_type_for_size.
556 (builtin_type_for_size): Likewise.
557
e3793c6f
JJ
5582012-02-13 Jakub Jelinek <jakub@redhat.com>
559
560 PR c++/52215
561 * c-common.c (sync_resolve_params): Don't decide whether to convert
562 or not based on TYPE_SIZE comparison, convert whenever arg_type
563 is unsigned INTEGER_TYPE.
564
93286335
PC
5652012-02-06 Paolo Carlini <paolo.carlini@oracle.com>
566
567 PR c/52118
568 * c.opt ([Wunused-local-typedefs]): Fix description.
569
7a421706
MS
5702012-01-24 Mike Stump <mikestump@comcast.net>
571
572 * c-common.c (c_common_type_for_mode): Match signed/unsigned types
573 exactly.
574
ba9b1f11
RG
5752012-01-18 Richard Guenther <rguenther@suse.de>
576
577 * c-opts.c (c_common_post_options): Reset LTO flags if
578 we are about to generate a PCH.
579
465406be
PC
5802012-01-17 Paolo Carlini <paolo.carlini@oracle.com>
581
582 PR c++/51777
583 * c-pretty-print.c (pp_c_integer_constant): For unsigned constants
584 use pp_unsigned_wide_integer.
585
aee15221
RG
5862012-01-10 Richard Guenther <rguenther@suse.de>
587
588 PR middle-end/51806
589 * c-opts.c (c_common_handle_option): Move -Werror handling
590 to language independent code.
591
5720c0dc
RG
5922012-01-05 Richard Guenther <rguenther@suse.de>
593
594 PR middle-end/51764
595 * c.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move here
596 from common.opt.
597
73ac190a
PC
5982011-12-30 Paolo Carlini <paolo.carlini@oracle.com>
599
600 PR c++/51316
601 * c-common.c (c_sizeof_or_alignof_type): In C++ allow for alignof
602 of array types with an unknown bound.
603
48b0b196
JM
6042011-12-20 Joseph Myers <joseph@codesourcery.com>
605
606 * c-common.c (flag_isoc99): Update comment to refer to C11.
607 (flag_isoc1x): Change to flag_isoc11.
608 * c-common.h (flag_isoc99): Update comment to refer to C11.
609 (flag_isoc1x): Change to flag_isoc11.
610 * c-cppbuiltin.c (cpp_atomic_builtins): Change comment to refer to
611 C11.
612 * c-opts.c (set_std_c1x): Change to set_std_c11.
613 (c_common_handle_option): Handle OPT_std_c11 and OPT_std_gnu11.
614 Call set_std_c11.
615 (set_std_c89, set_std_c99, set_std_c11): Use flag_isoc11.
616 (set_std_c1): Use CLK_STDC11 and CLK_GNUC11.
617 * c.opt (std=c1x): Change to std=c11. Document as non-draft
618 standard.
619 (std=c1x, std=iso9899:2011): Add as aliases of std=c11.
620 (std=gnu1x): Change to std=gnu11. Refer to non-draft standard.
621 (std=gnu1x): Make alias of std=gnu11.
622
d58d6eb5
JM
6232011-12-19 Jason Merrill <jason@redhat.com>
624
625 PR c++/51228
626 * c-common.c (handle_transparent_union_attribute): Check the first
627 field if the type is complete.
628
b3908fcc
JW
6292011-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
630
631 PR libstdc++/51365
632 * c-common.c (RID_IS_FINAL): Add.
633 * c-common.h (RID_IS_FINAL): Add.
634
fea3ca91
IS
6352011-11-30 Iain Sandoe <iains@gcc.gnu.org>
636
637 * c.opt (fgnu-runtime): Provide full description.
638 (fnext-runtime): Likewise.
639 * c-opts.c (OPT_fgnu_runtime, OPT_fnext_runtime) Remove.
640
62bad7cd
AM
6412011-11-28 Andrew MacLeod <amacleod@redhat.com>
642
643 * c-cpp-builtin.c (cpp_atomic_builtins):New. Emit all atomic
644 predefines in one place. Add LOCK_FREE predefines.
645 (c_cpp_builtins): Move Legacy HAVE_SYNC predefines to
646 new func.
647
c466c4ff
AM
6482011-11-24 Andrew MacLeod <amacleod@redhat.com>
649
650 PR c/51256
9faeb493 651 * c-common.c (get_atomic_generic_size): Check for various error
c466c4ff 652 conditions
9faeb493
UB
653 (resolve_overloaded_atomic_exchange,
654 resolve_overloaded_atomic_compare_exchange,
c466c4ff
AM
655 resolve_overloaded_atomic_load, resolve_overloaded_atomic_store): Return
656 error_mark_node for error conditions.
9faeb493 657
a5952633
RG
6582011-11-08 Richard Guenther <rguenther@suse.de>
659
660 PR middle-end/51010
661 c-family/
662
0a35513e
AH
6632011-11-07 Richard Henderson <rth@redhat.com>
664 Aldy Hernandez <aldyh@redhat.com>
665 Torvald Riegel <triegel@redhat.com>
666
667 Merged from transactional-memory.
668
669 * c-common.c (handle_tm_wrap_attribute,
670 handle_tm_attribute, ignore_attribute, parse_tm_stmt_attr): New.
671 (struct c_common_reswords): Added __transaction* keywords.
672 (struct c_common_attribute_table): Added transaction* and tm_regparm
673 attributes.
674 * c-common.h: Added RID_TRANSACTION*. Added TM_ATTR* and TM_STMT*
675 masks.
676 (parse_tm_stmt_attr, tm_attr_to_mask, tm_mask_to_attr,
677 find_tm_attribute): Declare.
678
6d87092d
JM
6792011-11-07 Jason Merrill <jason@redhat.com>
680
681 PR c++/35688
682 * c-common.c, c-common.h: Revert yesterday's changes.
683
8e7860a1
JM
6842011-11-06 Jason Merrill <jason@redhat.com>
685
686 PR c++/35688
687 * c-common.c (decl_has_visibility_attr): Split out from...
688 (c_determine_visibility): ...here.
689 * c-common.h: Declare it.
690
d19fa6b5
JM
6912011-11-06 Joseph Myers <joseph@codesourcery.com>
692
693 * c-common.c (c_common_reswords): Add _Alignas and _Alignof.
694 (c_sizeof_or_alignof_type): Diagnose alignof applied to a function
695 type.
696 (check_user_alignment): New. Split out of
697 handle_aligned_attribute. Disallow integer constants with
698 noninteger types. Conditionally allow zero.
699 (handle_aligned_attribute): Use check_user_alignment.
700 * c-common.h (RID_ALIGNAS, check_user_alignment): New.
701
86951993
AM
7022011-11-06 Andrew MacLeod <amacleod@redhat.com>
703 Richard Henderson <rth@redhat.com>
704
705 Merged from cxx-mem-model.
706
707 * c-cppbuiltin.c (c_cpp_builtins): Test both atomic and sync patterns.
9faeb493 708 * c-common.c (sync_resolve_params, sync_resolve_return): Only tweak
86951993
AM
709 parameters that are the same type size.
710 (get_atomic_generic_size): New. Find size of generic
711 atomic function parameters and do typechecking.
712 (add_atomic_size_parameter): New. Insert size into parameter list.
713 (resolve_overloaded_atomic_exchange): Restructure __atomic_exchange to
714 either __atomic_exchange_n or external library call.
9faeb493 715 (resolve_overloaded_atomic_compare_exchange): Restructure
86951993 716 __atomic_compare_exchange to either _n variant or external library call.
9faeb493 717 (resolve_overloaded_atomic_load): Restructure __atomic_load to either
86951993
AM
718 __atomic_load_n or an external library call.
719 (resolve_overloaded_atomic_store): Restructure __atomic_store to either
720 __atomic_store_n or an external library call.
721 (resolve_overloaded_builtin): Handle new __atomic builtins.
722
cf9e9959
EB
7232011-11-04 Eric Botcazou <ebotcazou@adacore.com>
724
725 PR c++/50608
726 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1.
727 (fold_offsetof_1): Make global. Remove STOP_REF argument and adjust.
728 <INDIRECT_REF>: Return the argument.
729 <ARRAY_REF>: Remove special code for negative offset.
730 Call fold_build_pointer_plus instead of size_binop.
731 (fold_offsetof): Remove STOP_REF argument and adjust.
732 * c-common.h (fold_offsetof_1): Declare.
733 (fold_offsetof): Remove STOP_REF argument.
734
25339f10
JM
7352011-11-02 Paolo Carlini <paolo.carlini@oracle.com>
736
737 PR c++/50810
738 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
739 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
740 Wnarrowing for C++0x and C++98.
741 * c.opt ([Wnarrowing]): Update.
742
89401152
PC
7432011-11-01 Paolo Carlini <paolo.carlini@oracle.com>
744
745 PR c++/44277
746 * c.opt: Add Wzero-as-null-pointer-constant.
747
97e3ad20
JM
7482011-10-31 Jason Merrill <jason@redhat.com>
749
15694fdd
JM
750 * c.opt (-fdeduce-init-list): Off by default.
751
97e3ad20
JM
752 PR c++/50920
753 * c-common.h (cxx_dialect): Add cxx11 and cxx03.
754 * c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03,
755 and -Wc++11-compat.
756 * c-opts.c (set_std_cxx11): Rename from set_std_cxx0x.
757
fb9120e3
RAV
7582011-10-27 Roberto Agostino Vitillo <ravitillo@lbl.gov>
759
760 PR c++/30066
761 * c.opt (fvisibility-inlines-hidden): Description change.
762
3ce4f9e4
ESR
7632011-10-26 Ed Smith-Rowland <3dw4rd@verizon.net>
764
765 Implement C++11 user-defined literals.
766 * c-common.c (build_userdef_literal): New.
767 * c-common.def: New tree code.
768 * c-common.h (tree_userdef_literal): New tree struct and accessors.
769 * c-lex.c (interpret_float): Add suffix parm.
770 (c_lex_with_flags): Build literal tokens.
771
5f53c243
PC
7722011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
773
774 PR c++/50841
775 Revert:
776 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
777
778 PR c++/50810
779 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
780 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
781 Wnarrowing for C++0x and C++98.
782 * c.opt ([Wnarrowing]): Update.
783
263734e1
PC
7842011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
785
786 PR c++/50810
787 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
788 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
789 Wnarrowing for C++0x and C++98.
790 * c.opt ([Wnarrowing]): Update.
791
d2e312d7
PC
7922011-10-21 Paolo Carlini <paolo.carlini@oracle.com>
793
794 PR c++/45385
795 * c-common.c (conversion_warning): Remove code looking for
796 artificial operands.
797
d17687f6
DS
7982011-10-18 Dodji Seketeli <dodji@redhat.com>
799
800 PR bootstrap/50760
801 * c-lex.c (fe_file_change): Use LINEMAP_SYSP when
9faeb493 802 !NO_IMPLICIT_EXTERN_C.
d17687f6 803
fc8396e9
PC
8042011-10-17 Michael Spertus <mike_spertus@symantec.com>
805
806 * c-common.c (c_common_reswords): Add __bases,
807 __direct_bases.
808 * c-common.h: Add RID_BASES and RID_DIRECT_BASES.
809
8102011-10-17 Paolo Carlini <paolo.carlini@oracle.com>
811
812 PR c++/50757
813 * c.opt ([Wnonnull]): Add C++ and Objective-C++.
814
847e697a
TT
8152011-10-15 Tom Tromey <tromey@redhat.com>
816 Dodji Seketeli <dodji@redhat.com>
817
818 * c.opt (fdebug-cpp): New option.
819 * c-opts.c (c_common_handle_option): Handle the option.
820 * c-ppoutput.c (maybe_print_line_1): New static function. Takes an
821 output stream in parameter. Factorized from ...
822 (maybe_print_line): ... this. Dump location debug information when
823 -fdebug-cpp is in effect.
824 (print_line_1): New static function. Takes an output stream in
825 parameter. Factorized from ...
826 (print_line): ... here. Dump location information when -fdebug-cpp
827 is in effect.
828 (scan_translation_unit): Dump location information when
829 -fdebug-cpp is in effect.
830
92582b75
TT
8312011-10-15 Tom Tromey <tromey@redhat.com>
832 Dodji Seketeli <dodji@redhat.com>
833
834 * c.opt (ftrack-macro-expansion): New option. Handle it with and
835 without argument.
836 * c-opts.c (c_common_handle_option)<case
837 OPT_ftrack_macro_expansion_, case OPT_ftrack_macro_expansion>: New
838 cases. Handle -ftrack-macro-expansion with and without argument.
839
46427374
TT
8402011-10-15 Tom Tromey <tromey@redhat.com>
841 Dodji Seketeli <dodji@redhat.com>
842
843 * c-ppoutput.c (scan_translation_unit, maybe_print_line)
844 (print_line, cb_define, do_line_change): Adjust to avoid touching
845 the internals of struct line_map. Use the public API instead.
846 * c-pch.c (c_common_read_pch): Likewise.
847 * c-lex.c (fe_file_change): Likewise.
848
fc8396e9
PC
8492011-10-14 Paolo Carlini <paolo.carlini@oracle.com>
850
851 PR c++/17212
852 * c.opt ([Wformat-zero-length]): Add C++ and Objective-C++.
853
8542011-10-11 Paolo Carlini <paolo.carlini@oracle.com>
855
856 PR c++/33067
857 * c-pretty-print.c (pp_c_floating_constant): Output
858 max_digits10 (in the ISO C++ WG N1822 sense) decimal digits.
859
e79983f4
MM
8602011-10-11 Michael Meissner <meissner@linux.vnet.ibm.com>
861
862 * c-common.c (def_builtin_1): Delete old interface with two
863 parallel arrays to hold standard builtin declarations, and replace
864 it with a function based interface that can support creating
865 builtins on the fly in the future. Change all uses, and poison
866 the old names. Make sure 0 is not a legitimate builtin index.
867 * c-omp.c (c_finish_omp_barrier): Ditto.
868 (c_finish_omp_taskwait): Ditto.
869 (c_finish_omp_flush): Ditto.
870
6637388f
TG
8712011-10-11 Tristan Gingold <gingold@adacore.com>
872
873 * c.opt: (fallow-parameterless-variadic-functions): New.
874
3797cb21
DS
8752011-09-08 Dodji Seketeli <dodji@redhat.com>
876
877 PR c++/33255 - Support -Wunused-local-typedefs warning
878 * c-common.h (struct c_language_function::local_typedefs): New
879 field.
9faeb493
UB
880 (record_locally_defined_typedef, maybe_record_typedef_use)
881 (maybe_warn_unused_local_typedefs): Declare new functions.
3797cb21 882 * c-common.c (record_locally_defined_typedef)
9faeb493
UB
883 (maybe_record_typedef_use)
884 (maybe_warn_unused_local_typedefs): Define new functions.
3797cb21
DS
885 * c.opt: Declare new -Wunused-local-typedefs flag.
886
693ddb1b
EB
8872011-09-06 Eric Botcazou <ebotcazou@adacore.com>
888
889 PR middle-end/50266
890 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Fold offsetof-like
891 computations.
892
830c740f
RG
8932011-09-05 Richard Guenther <rguenther@suse.de>
894
895 * c-common.c (complete_array_type): Use ssize_int (-1) instead
896 of integer_minus_one_node for empty array upper bounds.
897
892a371f
DS
8982011-08-28 Dodji Seketeli <dodji@redhat.com>
899
900 * c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as
901 it's the first time it's being called on this main TU.
902
0e3fdb48
RB
9032011-08-24 Richard Guenther <rguenther@suse.de>
904
905 PR c/49396
906 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional.
907
9082011-08-22 Gabriel Charette <gchare@google.com>
e3dfef44
GC
909
910 * c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens
911 defined in cpp_init_builtins and c_cpp_builtins.
912
d4a83c10
JM
9132011-08-19 Joseph Myers <joseph@codesourcery.com>
914
915 * c-common.c (c_common_reswords): Add __builtin_complex.
916 * c-common.h (RID_BUILTIN_COMPLEX): New.
917
bbceee64
JM
9182011-08-18 Joseph Myers <joseph@codesourcery.com>
919
920 * c-common.c (c_common_reswords): Add _Noreturn.
921 (keyword_is_function_specifier): Handle RID_NORETURN.
922 * c-common.h (RID_NORETURN): New.
923
0e3a99ae
AS
9242011-08-10 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
925
926 * c-common.c (unsafe_conversion_p): New function. Check if it is
927 unsafe to convert an expression to the type.
928 (conversion_warning): Adjust, use unsafe_conversion_p.
929 * c-common.h (unsafe_conversion_p): New function declaration.
930
20906c66
JJ
9312011-08-02 Jakub Jelinek <jakub@redhat.com>
932
933 * c-common.h (c_finish_omp_atomic): Adjust prototype.
934 (c_finish_omp_taskyield): New prototype.
935 * c-omp.c (c_finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1
936 arguments. Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and
937 OMP_ATOMIC_CAPTURE_NEW in addition to OMP_ATOMIC. If LHS1
938 or RHS1 have side-effects, evaluate those too in the right spot,
939 if it is a decl and LHS is also a decl, error out if they
940 aren't the same.
941 (c_finish_omp_taskyield): New function.
942 * c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP to 201107.
943 * c-pragma.c (omp_pragmas): Add taskyield.
944 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKYIELD.
945 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FINAL and
946 PRAGMA_OMP_CLAUSE_MERGEABLE.
947
770e5a2e
DS
9482011-07-25 Dodji Seketeli <dodji@redhat.com>
949
950 * c-common.h (set_underlying_type): Remove parm name from
951 declaration.
952
1baae426
RG
9532011-07-25 Romain Geissler <romain.geissler@gmail.com>
954
955 * c-pretty-print.h: Search c-common.h in c-family.
9faeb493 956
fcb21722
JM
9572011-07-22 Jason Merrill <jason@redhat.com>
958
76f86d00
JM
959 PR c++/49793
960 * c.opt (Wnarrowing): New.
961
3a636414
JM
962 PR c++/30112
963 * c-common.h: Declare c_linkage_bindings.
964 * c-pragma.c (handle_pragma_redefine_extname): Use it.
965
fcb21722
JM
966 PR c++/49813
967 * c-opts.c (set_std_cxx0x): Set flag_isoc94 and flag_isoc99.
968 * c-pretty-print.c (pp_c_cv_qualifiers): Check c_dialect_cxx as well
969 as flag_isoc99 for 'restrict'.
970 (pp_c_specifier_qualifier_list): Likewise for _Complex.
971
02614448
ILT
9722011-07-21 Ian Lance Taylor <iant@google.com>
973
974 PR middle-end/49705
975 * c-common.c (c_disable_warnings): New static function.
976 (c_enable_warnings): New static function.
977 (c_fully_fold_internal): Change local unused_p to bool. Call
978 c_disable_warnings and c_enable_warnings rather than change
979 c_inhibit_evaluation_warnings.
980
34429675
JM
9812011-07-20 Jason Merrill <jason@redhat.com>
982
983 PR c++/6709 (DR 743)
984 PR c++/42603 (DR 950)
985 * c-common.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move from cp/parser.h.
986 (CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise.
987 (CPP_DECLTYPE): New.
988 * c-common.c (c_parse_error): Handle CPP_DECLTYPE.
989
5d49b6a7
RG
9902011-07-19 Richard Guenther <rguenther@suse.de>
991
992 * c-common.c (pointer_int_sum): Use fold_build_pointer_plus.
993 * c-omp.c (c_finish_omp_for): Likewise.
994
e84a58ff
EB
9952011-07-12 Eric Botcazou <ebotcazou@adacore.com>
996
997 * c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop
998 body on the next line.
999
329af3c7
JM
10002011-07-08 Jason Merrill <jason@redhat.com>
1001
4063e61b
JM
1002 PR c++/45437
1003 * c-omp.c (check_omp_for_incr_expr): Handle preevaluation.
1004
329af3c7
JM
1005 PR c++/49673
1006 * c-common.c (c_apply_type_quals_to_decl): Don't check
1007 TYPE_NEEDS_CONSTRUCTING.
1008
1a072294
RG
10092011-07-06 Richard Guenther <rguenther@suse.de>
1010
1011 * c-common.c (c_common_nodes_and_builtins):
1012 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
1013
fce5dddd
RG
10142011-07-05 Richard Guenther <rguenther@suse.de>
1015
1016 * c-common.c (c_common_nodes_and_builtins): Build all common
1017 tree nodes first.
1018
45d439ac
JJ
10192011-06-27 Jakub Jelinek <jakub@redhat.com>
1020
56300785
JJ
1021 * c-common.h (c_tree_chain_next): New static inline function.
1022
45d439ac
JJ
1023 * c-common.c (check_builtin_function_arguments): Handle
1024 BUILT_IN_ASSUME_ALIGNED.
1025
e0a8ecf2
AM
10262011-06-21 Andrew MacLeod <amacleod@redhat.com>
1027
1028 * c-common.c: Add sync_ or SYNC__ to builtin names.
1029 * c-omp.c: Add sync_ or SYNC__ to builtin names.
dfb43cd5
PV
1030
10312011-06-20 Pierre Vittet <piervit@pvittet.com>
1032
1033 * c-pragma.h (pragma_handler_1arg, pragma_handler_2arg): New
1034 handler.
1035 (gen_pragma_handler): New union.
1036 (internal_pragma_handler): New type.
1037 (c_register_pragma_with_data)
1038 (c_register_pragma_with_expansion_and_data): New functions.
1039
1040 * c-pragma.c (registered_pragmas, c_register_pragma_1)
1041 (c_register_pragma, c_register_pragma_with_expansion)
1042 (c_invoke_pragma_handler): Changed to work with
1043 internal_pragma_handler.
1044 (c_register_pragma_with_data)
1045 (c_register_pragma_with_expansion_and_data): New functions.
1046
677f3fa8
JM
10472011-06-14 Joseph Myers <joseph@codesourcery.com>
1048
1049 * c-common.c: Include common/common-target.h.
1050 (handle_section_attribute): Use
1051 targetm_common.have_named_sections.
1052 * c-cppbuiltin.c: Include common/common-target.h.
1053 (c_cpp_builtins): Use targetm_common.except_unwind_info.
1054
d7fc8c14
RG
10552011-06-10 Richard Guenther <rguenther@suse.de>
1056
1057 * c-pretty-print.c (pp_c_type_specifier): Use pp_c_identifier
1058 to print a IDENTIFIER_NODE.
1059
10e48e39
RO
10602011-06-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1061 Joseph Myers <joseph@codesourcery.com>
1062
1063 * c.opt (fbuilding-libgcc): New option.
1064 * c-cppbuiltin.c (c_cpp_builtins): Define
1065 __LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc.
1066
6976ae51
JM
10672011-06-07 Jason Merrill <jason@redhat.com>
1068
3ff60975
JM
1069 * c-common.c (max_tinst_depth): Lower default to 900.
1070
6976ae51
JM
1071 * c-format.c (gcc_cxxdiag_char_table): Add 'S' format.
1072
009db074
RG
10732011-06-07 Richard Guenther <rguenther@suse.de>
1074
1075 * c-common.c (c_common_nodes_and_builtins): Do not set
1076 size_type_node or call set_sizetype.
1077
b4592b92
DS
10782011-06-07 Dodji Seketeli <dodji@redhat.com>
1079
1080 PR debug/49130
1081 * c-pretty-print.c (pp_c_integer_constant): Consider the canonical
9faeb493 1082 type when using pointer comparison to compare types.
b4592b92 1083
014ab419
JW
10842011-06-02 Jonathan Wakely <jwakely.gcc@gmail.com>
1085
1086 * c.opt: Add -Wdelete-non-virtual-dtor.
1087 * c-opts.c (c_common_handle_option): Include it in -Wall.
1088
4f60111f
NF
10892011-05-30 Nathan Froyd <froydnj@gcc.gnu.org>
1090
1091 PR bootstrap/49190
1092
1093 Revert:
1094 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
1095
1096 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
1097 not tree_common.
1098
4cc4f2f4
JJ
10992011-05-27 Jakub Jelinek <jakub@redhat.com>
1100
1101 PR c++/49165
1102 * c-common.c (c_common_truthvalue_conversion) <case COND_EXPR>: For
1103 C++ don't call c_common_truthvalue_conversion on void type arms.
1104
38e01f9e
NF
11052011-05-27 Nathan Froyd <froydnj@codesourcery.com>
1106
1107 * c-common.h (struct stmt_tree_s) [x_cur_stmt_list]: Change to a VEC.
1108 (stmt_list_stack): Define.
1109 (cur_stmt_list): Adjust for new type of x_cur_stmt_list.
1110 * c-semantics.c (push_stmt_list, pop_stmt_list): Likewise.
1111
92e948a8
NF
11122011-05-26 Nathan Froyd <froydnj@codesourcery.com>
1113
1114 * c-common.c (warning_candidate_p): Check for BLOCKs.
1115
a2fc3e63
NF
11162011-05-26 Nathan Froyd <froydnj@codesourcery.com>
1117
1118 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
1119 not tree_common.
1120
0957c029
JJ
11212011-05-25 Jakub Jelinek <jakub@redhat.com>
1122
1123 * c-common.c (def_fn_type): Remove extra va_end.
1124
828fb3ba
JM
11252011-05-23 Jason Merrill <jason@redhat.com>
1126
1127 PR c++/48106
1128 * c-common.c (c_common_get_narrower): New.
1129 (shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.
1130
dde05067
NF
11312011-05-23 Nathan Froyd <froydnj@codesourcery.com>
1132
1133 * c-common.h (check_function_arguments): Tweak prototype of
1134 check_function_arguments.
1135 * c-common.c (check_function_arguments): Likewise. Adjust
1136 calls to check_function_nonnull, check_function_format, and
1137 check_function_sentinel.
1138 (check_function_sentinel): Take a FUNCTION_TYPE rather than
1139 separate attributes and typelist arguments. Use
1140 FOREACH_FUNCTION_ARGS to iterate over argument types.
1141
3c0d13bf
PC
11422011-05-15 Paolo Carlini <paolo.carlini@oracle.com>
1143
1144 * c-common.c (c_common_reswords): Reorder.
1145 * c-common.h (rid): Likewise.
1146
8242dd04
NF
11472011-05-10 Nathan Froyd <froydnj@codesourcery.com>
1148
1149 * c-common.c (def_fn_type): Don't call build_function_type, call
1150 build_function_type_array or build_varargs_function_type_array
1151 instead.
1152 (c_common_nodes_and_builtins): Likewise.
1153
3d528853
NF
11542011-05-05 Nathan Froyd <froydnj@codesourcery.com>
1155
1156 * c-common.c (c_add_case_label): Omit the loc argument to
1157 build_case_label.
1158 * c-common.h (build_case_label): Remove.
1159 * c-semantics.c (build_case_label): Remove.
1160
a04a722b
JM
11612011-05-05 Joseph Myers <joseph@codesourcery.com>
1162
1163 * c-objc.h (objc_start_method_definition): Update prototype.
1164 * stub-objc.c (objc_start_method_definition): Add extra parameter.
1165
e19a18d4
NF
11662011-05-04 Nathan Froyd <froydnj@codesourcery.com>
1167
1168 * c-common.c (check_main_parameter_types): Reindent. Don't use
1169 TYPE_ARG_TYPES directly.
1170 (handle_nonnull_attribute): Likewise.
1171 (sync_resolve_params): Likewise.
1172 * c-format.c (handle_format_arg_attribute): Likewise. Adjust call
1173 to check_format_string.
1174 (handle_format_attribute): Likewise.
1175 (check_format_string): Take a function type to examine instead of
1176 a type list. Use a function_arg_iterator to step through argument
1177 types.
1178
c62c040f
RG
11792011-05-04 Richard Guenther <rguenther@suse.de>
1180
1181 * c-common.c (fix_string_type): Use size_int for index type bounds.
1182 (start_fname_decls): Do not pass NULL to build_int_cst.
1183 (c_init_attributes): Likewise.
1184 * c-lex.c (c_lex_with_flags): Likewise.
1185
c12ff9d8
JM
11862011-04-27 Jason Merrill <jason@redhat.com>
1187
1188 * c-common.c (make_tree_vector_from_list): New.
1189 * c-common.h: Declare it.
1190
304dfbe3
RG
11912011-04-26 Richard Guenther <rguenther@suse.de>
1192
1193 PR preprocessor/48248
1194 * c-ppoutput.c (maybe_print_line): Always optimize newlines
1195 for output size with -P.
1196
3c0d13bf
PC
11972011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
1198
1199 * c-common.c (struct c_common_resword): Add __underlying_type.
1200 * c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
1201
04695783
JM
12022011-04-20 Jim Meyering <meyering@redhat.com>
1203
1204 * c-format.c (init_dollar_format_checking): Remove useless
1205 if-before-free.
1206
0dc33c3c
NP
12072011-04-15 Nicola Pero <nicola.pero@meta-innovation.com>
1208
1209 * c-objc.h (objc_get_interface_ivars): Removed.
3c0d13bf 1210 (objc_detect_field_duplicates): New.
0dc33c3c 1211 * stub-objc.c: Likewise.
3c0d13bf 1212
c59633d9
NP
12132011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
1214
1215 * stub-objc.c (objc_declare_protocols): Renamed to
1216 objc_declare_protocol.
1217 * c-objc.h: Likewise.
3c0d13bf 1218
32dabdaf
NP
12192011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
1220
1221 * stub-objc.c (objc_declare_class): Updated argument name.
1222
81f653d6
NF
12232011-04-12 Nathan Froyd <froydnj@codesourcery.com>
1224
1225 * c-common.h (c_common_init_ts): Declare.
1226 * c-common.c (c_common_init_ts): Define.
1227
eb345401
NP
12282011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
1229
1230 * c-objc.h (objc_build_message_expr): Updated prototype.
1231 * stub-objc.c (objc_build_message_expr): Likewise.
9faeb493 1232
a358e188
MJ
12332011-04-12 Martin Jambor <mjambor@suse.cz>
1234
1235 * c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
1236 of cgraph_node.
1237
e6313a78
RG
12382011-04-11 Richard Guenther <rguenther@suse.de>
1239
1240 * c-common.c (complete_array_type): Build a range type of
1241 proper type.
1242
dcf0c47e
NF
12432011-04-08 Nathan Froyd <froydnj@codesourcery.com>
1244
1245 * c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
1246 (handle_type_generic_attribute): Likewise.
1247
1ee44b26
JM
12482011-04-07 Jason Merrill <jason@redhat.com>
1249
1250 PR c++/48450
1251 * c-common.c (c_common_truthvalue_conversion): Don't ignore
1252 conversion from C++0x scoped enum.
1253
acce4e77
JM
12542011-04-06 Joseph Myers <joseph@codesourcery.com>
1255
1256 * c-target-def.h: New file.
1257 * c-target.def: New file.
1258 * c-target.h: New file.
1259 * c-common.c (targetcm): Don't define here.
1260 * c-common.h (default_handle_c_option): Declare.
1261 * c-format.c: Include c-target.h instead of target.h.
1262 * c-opts.c: Include c-target.h instead of target.h. Explicitly
1263 include tm.h.
1264 (default_handle_c_option): Move from targhooks.c.
1265
e2eefb55
JJ
12662011-03-29 Jakub Jelinek <jakub@redhat.com>
1267
1268 PR preprocessor/48248
1269 * c-ppoutput.c (print): Add src_file field.
1270 (init_pp_output): Initialize it.
1271 (maybe_print_line): Don't optimize by adding up to 8 newlines
1272 if map->to_file and print.src_file are different file.
1273 (print_line): Update print.src_file.
1274
ba78087b
KT
12752011-03-25 Kai Tietz <ktietz@redhat.com>
1276
1277 * c-ada-spec.c (compare_comment): Use filename_cmp
1278 instead of strcmp for filename.
1279
0edf1bb2
JL
12802011-03-25 Jeff Law <law@redhat.com>
1281
1282 * c-family/c-common.c (def_fn_type): Add missing va_end.
1283
c7dc8804
JM
12842011-03-25 Jason Merrill <jason@redhat.com>
1285
1286 * c.opt: Add -std=c++03.
1287
d1d879b1
EB
12882011-03-22 Eric Botcazou <ebotcazou@adacore.com>
1289
1290 * c-ada-spec.c (dump_ada_template): Skip non-class instances.
1291
62d784f7
KT
12922011-03-17 Kai Tietz
1293
1294 PR target/12171
5050afdf
KT
1295 * c-pretty-print.c (pp_c_specifier_qualifier_list):
1296 Display allowed attributes for function pointer types.
1297 (pp_c_attributes_display): New function to display
1298 attributes having affects_type_identity flag set to true.
1299 * c-pretty-print.h (pp_c_attributes_display): New prototype.
1300
62d784f7
KT
1301 * c-common.c (c_common_attribute_table):
1302 Add new element.
1303 (c_common_format_attribute_table): Likewise.
1304
82d37118
JM
13052011-03-18 Jason Merrill <jason@redhat.com>
1306
49a000c3
JM
1307 * c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
1308 * c-common.h: Don't declare it here.
1309 * c-common.c: Or define it here.
1310 * c-opts.c (c_common_handle_option): Or set it here.
1311
82d37118
JM
1312 PR c++/35315
1313 * c-common.c (handle_transparent_union_attribute): Don't
1314 make a duplicate type in C++.
1315
17bc631c
JM
13162011-03-15 Jason Merrill <jason@redhat.com>
1317
1318 * c-common.c (max_constexpr_depth): New.
1319 * c-common.h: Declare it.
1320 * c-opts.c (c_common_handle_option): Set it.
1321 * c.opt (fconstexpr-depth): New option.
1322
1b9b91a6
JM
13232011-03-11 Jason Merrill <jason@redhat.com>
1324
f231b5ff
JM
1325 * c-common.c (attribute_takes_identifier_p): Add missing const.
1326
1b9b91a6
JM
1327 PR c++/46803
1328 * c-common.c (attribute_takes_identifier_p): Assume that an
1329 unknown attribute takes an identifier.
1330
a19e4d44
NF
13312011-03-07 Nathan Froyd <froydnj@codesourcery.com>
1332
1333 PR c/47786
1334 * c-common.c (c_type_hash): Call list_length instead of iterating
1335 through DECL_CHAIN. Rename 'i' to 'n_elements'.
1336
982d62f6
JJ
13372011-02-19 Jakub Jelinek <jakub@redhat.com>
1338
1339 PR c/47809
1340 * c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
1341
0a256240
NP
13422011-02-17 Iain Sandoe <iains@gcc.gnu.org>
1343
1344 * c.opt (fobjc-abi-version=) New.
1345 (fobjc-nilcheck): New.
1346
ba9e6dd5
NF
13472011-02-03 Nathan Froyd <froydnj@codesourcery.com>
1348
1349 PR c++/46890
1350 * c-common.h (keyword_is_decl_specifier): Declare.
1351 * c-common.c (keyword_is_decl_specifier): Define.
1352 (keyword_is_function_specifier): New function.
1353
7273813a
JJ
13542011-01-26 Jakub Jelinek <jakub@redhat.com>
1355
1356 PR c/47473
1357 * c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
1358 EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
1359 REAL_TYPE.
1360
908ef79b
AC
13612011-01-26 Arnaud Charlet <charlet@adacore.com>
1362
1363 * c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type.
1364
237e9384
JJ
13652011-01-26 Jakub Jelinek <jakub@redhat.com>
1366
1367 PR pch/47430
1368 * c-opts.c (c_common_post_options): Call c_common_no_more_pch
1369 after init_c_lex if pch_file is set.
1370
47ea1edf
DK
13712011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
1372
d4dba752 1373 PR c++/43601
47ea1edf
DK
1374 * c.opt (-fkeep-inline-dllexport): New switch.
1375
2aa9c6ae
RG
13762011-01-12 Richard Guenther <rguenther@suse.de>
1377
1378 PR middle-end/32511
1379 * c-common.c (handle_weak_attribute): Warn instead of error
1380 on declaring an inline function weak.
1381
7bd11157
TT
13822011-01-05 Tom Tromey <tromey@redhat.com>
1383
1384 * c-common.h (lvalue_error): Update.
1385 * c-common.c (lvalue_error): Add 'loc' argument. Call error_at,
1386 not error.
1387
0e66e494 13882010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
9faeb493 1389
b4f588c4
NP
1390 PR objc/47075
1391 * c-objc.h (objc_finish_message_expr): Added argument to
1392 prototype.
1393
f4da8dce
NF
13942010-12-22 Nathan Froyd <froydnj@codesourcery.com>
1395
1396 * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute):
1397 Use prototype_p.
1398
46270f14
NP
13992010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
1400
1401 * c-objc.h (objc_maybe_warn_exceptions): New.
9faeb493 1402 * stub-objc.c (objc_maybe_warn_exceptions): New.
46270f14 1403
4816c593
NF
14042010-12-10 Nathan Froyd <froydnj@codesourcery.com>
1405
1406 * c-common.h (readonly_error): Declare.
1407 * c-common.c (readonly_error): Define.
1408
7a6daeb0
NF
14092010-12-09 Nathan Froyd <froydnj@codesourcery.com>
1410
1411 * c-common.h (invalid_indirection_error): Declare.
1412 * c-common.c (invalid_indirection_error): Define.
1413
892f6119
RG
14142010-12-03 Richard Guenther <rguenther@suse.de>
1415
1416 PR c/46745
1417 * c-pretty-print.c (pp_c_postfix_expression): Handle MEM_REF.
1418 (pp_c_unary_expression): Likewise.
1419 (pp_c_expression): Likewise.
1420
6c39e757
NP
14212010-11-30 Nicola Pero <nicola.pero@meta-innovation.com>
1422
1423 * c-common.h (objc_finish_function): New.
1424 (objc_non_volatilized_type): Removed.
1425 (objc_type_quals_match): Removed.
1426 * stub-objc.c (objc_finish_function): New.
1427 (objc_non_volatilized_type): Removed.
1428 (objc_type_quals_match): Removed.
9faeb493 1429
7c475d11
JM
14302010-11-30 Joseph Myers <joseph@codesourcery.com>
1431
1432 * c-common.h (parse_optimize_options): Declare.
1433 * c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c,
1434 c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h.
1435
71f3e391
JM
14362010-11-29 Joseph Myers <joseph@codesourcery.com>
1437
1438 * c-opts.c (check_deps_environment_vars): Use getenv instead of
1439 GET_ENVIRONMENT.
1440 * c-pch.c (O_BINARY): Don't define here.
1441 * c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
1442
d5fabb58
JM
14432010-11-25 Joseph Myers <joseph@codesourcery.com>
1444
1445 * c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
1446 targetm.except_unwind_info.
1447
299404a1
JM
14482010-11-23 Joseph Myers <joseph@codesourcery.com>
1449
1450 * c-opts.c (c_common_handle_option): Pass location to
1451 set_struct_debug_option.
1452
c98cd5bf
JM
14532010-11-23 Joseph Myers <joseph@codesourcery.com>
1454
1455 * c-common.c (visibility_options): Move from ../opts.c.
1456 * c-common.h (struct visibility_flags, visibility_options):
1457 Declare here.
1458 * c-opts.c (finish_options): Rename to c_finish_options.
1459 (c_common_init): Update call to finish_options.
1460
a9546771
NP
14612010-11-22 Nicola Pero <nicola.pero@meta-innovation.com>
1462
1463 PR objc/34033
1464 * c-lex.c (lex_string): Check that each string in an Objective-C
1465 string concat sequence starts with either one or zero '@', and
1466 that there are no spurious '@' signs at the end.
1467
24a57808
JM
14682010-11-20 Joseph Myers <joseph@codesourcery.com>
1469
1470 * c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
1471 HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
1472 HANDLE_PRAGMA_VISIBILITY.
1473 * c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
1474 HANDLE_PRAGMA_VISIBILITY): Don't define.
1475 (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.
1476
a9aa2c3a
NF
14772010-11-20 Nathan Froyd <froydnj@codesourcery.com>
1478
1479 PR c++/16189
1480 PR c++/36888
1481 PR c++/45331
1482 * c-common.h (keyword_begins_type_specifier): Declare.
1483 (keyword_is_storage_class_specifier): Declare.
1484 (keyword_is_type_qualifier): Declare.
1485 * c-common.c (keyword_begins_type_specifier): New function.
1486 (keyword_is_storage_class_specifier): New function.
1487 (keyword_is_type_qualifier): Declare.
1488
5386338c
JM
14892010-11-19 Joseph Myers <joseph@codesourcery.com>
1490
1491 PR c/46547
1492 * c-common.c (in_late_binary_op): Define.
1493 (c_common_truthvalue_conversion): Check in_late_binary_op before
1494 calling c_save_expr.
1495 * c-common.h (in_late_binary_op): Declare.
1496
69ccdddb
JM
14972010-11-19 Joseph Myers <joseph@codesourcery.com>
1498
1499 * c-opts.c (c_common_handle_option): Update calls to
1500 set_struct_debug_option.
1501
6b192a09
NP
15022010-11-19 Nicola Pero <nicola.pero@meta-innovation.com>
1503
1504 * c-common.h (objc_declare_protocols): Added additional argument.
1505 * stub-objc.c (objc_declare_protocol): Same change.
9faeb493 1506
fb52b50a
NF
15072010-11-18 Nathan Froyd <froydnj@codesourcery.com>
1508
1509 PR c/33193
1510 * c-common.h (build_real_imag_expr): Declare.
1511 * c-semantics.c (build_real_imag_expr): Define.
1512
b37421c6
JM
15132010-11-17 Joseph Myers <joseph@codesourcery.com>
1514
1515 * c-opts.c (c_common_parse_file): Take no arguments.
1516 * c-common.h (c_common_parse_file): Update prototype.
1517
07078664
JJ
15182010-11-16 Jakub Jelinek <jakub@redhat.com>
1519
1520 PR c++/46401
1521 * c-common.c (warning_candidate_p): Don't track non-const calls
1522 or STRING_CSTs.
1523
c6a13190
ILT
15242010-11-15 Ian Lance Taylor <iant@google.com>
1525
1526 * c-lex.c (init_c_lex): Set macro debug callbacks if
1527 flag_dump_go_spec is set.
1528
925e8657
NP
15292010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
1530
1531 * c-common.h (objc_build_incr_expr_for_property_ref): New.
1532 * stub-objc.c (objc_build_incr_expr_for_property_ref): New.
1533
bb0a9581
NF
15342010-11-15 Nathan Froyd <froydnj@codesourcery.com>
1535
1536 PR preprocessor/45038
1537 * c-cppbuiltin.c (c_cpp_builtins): Use different format for C++
1538 dialects.
1539
c5fa0890
JM
15402010-11-12 Joseph Myers <joseph@codesourcery.com>
1541
1542 * c-common.h (c_family_lang_mask): Declare.
1543 * c-opts.c (c_family_lang_mask): Make extern.
1544 * c-pragma.c (handle_pragma_diagnostic): Use
1545 control_warning_option.
1546
a4d8c676
JM
15472010-11-12 Joseph Myers <joseph@codesourcery.com>
1548
1549 * c-common.c (parse_optimize_options): Update call to
1550 decode_options.
1551 * c-common.h (c_common_handle_option): Update prototype.
1552 * c-opts.c (c_common_handle_option): Take location_t parameter and
1553 pass it to other functions.
1554
f954bd2c
JM
15552010-11-11 Joseph Myers <joseph@codesourcery.com>
1556
1557 * c-opts.c (warning_as_error_callback): Remove.
1558 (c_common_initialize_diagnostics): Don't call
1559 register_warning_as_error_callback.
1560 (c_common_handle_option): Handle -Werror=normalized= here.
1561
d8a07487
JM
15622010-11-10 Joseph Myers <joseph@codesourcery.com>
1563
1564 * c-common.c (handle_mode_attribute): Use %' and word "signedness"
1565 in diagnostic.
1566 * c-opts.c (c_common_parse_file): Start diagnostics with lowercase
1567 letter.
1568 * c-pragma.c (handle_pragma_target, handle_pragma_optimize):
1569 Remove trailing '.' from diagnostics.
1570 * c.opt (Wwrite-strings_: Avoid '`' in help text.
1571
d5478783
JM
15722010-11-10 Joseph Myers <joseph@codesourcery.com>
1573
1574 * c-common.c (parse_optimize_options): Pass global_dc to
1575 decode_options.
1576 * c-opts.c (c_common_handle_option): Pass &global_options to
1577 set_Wstrict_aliasing.
1578 * c.opt (v): Don't mark Common or document here.
1579
91ebb981
IS
15802010-11-06 Iain Sandoe <iains@gcc.gnu.org>
1581
1582 PR target/44981
1583 * c-format.c (format_type): New type gcc_objc_string_format_type.
1584 (valid_stringptr_type_p): New.
1585 (handle_format_arg_attribute): Use valid_stringptr_type_p ().
9faeb493 1586 (check_format_string): Pass expected type, use
91ebb981
IS
1587 valid_stringptr_type_p (), check that the format string types are
1588 consistent with the format specification.
1589 (decode_format_attr): Warn if NSString is used outside objective-c.
1590 (format_types_orig): Add NSString.
1591 (format_name): New.
1592 (format_flags): New.
1593 (check_format_arg): Handle format strings requiring an external parser.
1594 first_target_format_type: New variable.
1595 (handle_format_attribute): Set up first_target_format_type, pass the
1596 expected format arg string type to check_format_string().
1597 * c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL): New flag.
1598 * stub-objc.c (objc_string_ref_type_p): New.
1599 (objc_check_format_arg): New.
1600
bede2adc
NP
16012010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
1602
9faeb493 1603 Fixed using the Objective-C 2.0 dot-syntax with class names.
bede2adc
NP
1604 * c-common.h (objc_build_class_component_ref): New.
1605 * stub-objc.c (objc_build_class_component_ref): New.
1606
9a179d01
NP
16072010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
1608
1609 * c.opt (Wproperty-assign-default): New option.
1610
22d8d616
NP
16112010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
1612
1613 Implemented -fobjc-std=objc1 flag.
1614 * c.opt (fobjc-std=objc1): New option.
1615
2debdb4f
NP
16162010-11-01 Nicola Pero <nicola.pero@meta-innovation.com>
1617
1618 Implemented format and noreturn attributes for Objective-C methods.
1619 * c-common.c (handle_noreturn_attribute): Recognize 'noreturn'
1620 attribute for Objective-C methods.
1621
ec52b111
JM
16222010-10-31 Jason Merrill <jason@redhat.com>
1623
1624 * c-common.c (conversion_warning, warn_for_collisions_1): Use
1625 EXPR_LOC_OR_HERE.
1626
46a88c12
NP
16272010-10-30 Nicola Pero <nicola.pero@meta-innovation.com>
1628
1629 Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
1630 * c-common.h (enum rid): Removed RID_COPIES and RID_IVAR.
1631 (objc_add_property_declaration): Removed arguments for copies and
1632 ivar.
1633 (objc_build_getter_call): Renamed to
1634 objc_maybe_build_component_ref.
1635 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
1636 (objc_is_property_ref): New.
1637 * c-common.c (c_common_reswords): Removed copies and ivar.
1638 * stub-objc.c (objc_add_property_declaration): Removed arguments
1639 for copies and ivar.
1640 (objc_build_getter_call): Renamed to
1641 objc_maybe_build_component_ref.
1642 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
1643 (objc_is_property_ref): New.
9faeb493 1644
1e4bf85b
AC
16452010-10-29 Arnaud Charlet <charlet@adacore.com>
1646 Matthew Gingell <gingell@adacore.com>
1647
1648 * c-ada-spec.c (separate_class_package): New function.
1649 (pp_ada_tree_identifier): Prefix references to C++ classes with the
1650 name of their enclosing package.
1651 (print_ada_declaration): Use separate_class_package.
1652
81f0bab2
JM
16532010-10-27 Jason Merrill <jason@redhat.com>
1654
2b08f2c5
JM
1655 * c-common.c (c_common_reswords): Add __is_literal_type.
1656 * c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
1657
81f0bab2
JM
1658 * c-common.c (check_case_value): Remove special C++ code.
1659
200290f2
NP
16602010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
1661
1662 * c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN,
1663 RID_RETAIN, RID_COPY and RID_NONATOMIC. Updated RID_FIRST_PATTR
1664 and RID_LAST_PATTR.
1665 (objc_add_property_declaration): Added additional arguments.
1666 (objc_property_attribute_kind): Removed.
1667 (objc_set_property_attr): Removed.
1668 * c-common.c (c_common_reswords): Added readwrite, assign, retain,
1669 copy and nonatomic.
1670 * stub-objc.c (objc_add_property_declaration): Added additional
1671 arguments.
1672 (objc_set_property_attr): Removed.
9faeb493 1673
f614132b
NP
16742010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
1675
1676 * c-common.h (objc_add_property_variable): Renamed to
1677 objc_add_property_declaration. Added location argument.
1678 * stub-objc.c (objc_add_property_variable): Same change.
1679
b8a18805
NP
16802010-10-23 Nicola Pero <nicola.pero@meta-innovation.com>
1681
1682 * c-common.h (objc_maybe_printable_name): New.
1683 * stub-objc.c (objc_maybe_printable_name): New.
1684
30cd1c5d
AS
16852010-10-22 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
1686 Andrew Pinski <pinskia@gmail.com>
1687
1688 * c-common.h (c_common_mark_addressable_vec): Declare.
1689 * c-common.c (c_common_mark_addressable_vec): New function.
1690
249a82c4
NP
16912010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
1692
1693 * c-common.h (objc_set_method_type): Removed.
1694 (objc_add_method_declaration): Added boolean argument.
1695 (objc_start_method_definition): Same change.
1696 (objc_build_method_signature): Same change.
1697 * stub-objc.c (objc_set_method_type): Removed.
1698 (objc_add_method_declaration): Added boolean argument.
1699 (objc_start_method_definition): Same change.
1700 (objc_build_method_signature): Same change.
1701
977e30bc
NP
17022010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
1703
1704 * c-common.h (finish_file): Removed.
1705 (objc_write_global_declarations): New.
1706 * c-opts.c (c_common_parse_file): Do not call finish_file.
1707 * stub-objc.c (objc_write_global_declarations): New.
9faeb493 1708
da57d1b9
NP
17092010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
1710
1711 Implemented parsing @synthesize and @dynamic for
1712 Objective-C/Objective-C++.
1713 * c-common.h (enum rid): Add RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
1714 (objc_add_synthesize_declaration): New.
1715 (objc_add_dynamic_declaration): New.
1716 * c-common.c (c_common_reswords): Add synthesize and dynamic.
1717 * stub-objc.c (objc_add_synthesize_declaration): New.
1718 (objc_add_dynamic_declaration): New.
9faeb493 1719
0069111f
MM
17202010-10-18 Michael Meissner <meissner@linux.vnet.ibm.com>
1721
1722 PR target/46041
1723 * c-cppbuiltin.c (mode_has_fma): Move function here from
1724 builtins.c. Don't use the fma optab, instead just use the
1725 HAVE_fma* macros, so that __FP_FAST_FMA* will be defined when
1726 using -save-temps.
1727
e426b47b
NP
17282010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
1729
1730 Merge from 'apple/trunk' branch on FSF servers.
0069111f 1731
e426b47b
NP
1732 2005-11-08 Fariborz Jahanian <fjahanian@apple.com>
1733
9faeb493 1734 Radar 4330422
e426b47b
NP
1735 * c-common.h (objc_non_volatilized_type): New declaration
1736 * stub-objc.c (objc_non_volatilized_type): New stub.
1737
90fbfdc3
NP
17382010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
1739
e426b47b 1740 Merge from 'apple/trunk' branch on FSF servers.
90fbfdc3
NP
1741
1742 2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
1743
9faeb493 1744 Radar 4133425
90fbfdc3 1745 * c-common.h (objc_diagnose_private_ivar): New decl.
0069111f 1746 * stub-objc.c (objc_diagnose_private_ivar): New stub.
90fbfdc3 1747
c37d8c30
IS
17482010-10-17 Iain Sandoe <iains@gcc.gnu.org>
1749
1750 * c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
1751 * c-common.h (enum rid): Add RID_AT_PACKAGE.
1752 (objc_ivar_visibility_kind): New enum.
1753 (objc_set_visibility): Adjust prototype to use visibility enum.
0069111f 1754 * stub-objc.c (objc_set_visibility): Adjust stub to use
c37d8c30
IS
1755 visibility enum.
1756
1b1562a5
MM
17572010-10-14 Michael Meissner <meissner@linux.vnet.ibm.com>
1758
1759 * c-cppbuiltin.c (builtin_define_float_constants): Emit
1760 __FP_FAST_FMA, __FP_FAST_FMAF, and __FP_FAST_FMAL if the machine
1761 has the appropriate fma builtins.
1762 (c_cpp_builtins): Adjust call to builtin_define_float_constants.
1763
668ea4b1
IS
17642010-10-14 Iain Sandoe <iains@gcc.gnu.org>
1765
1b1562a5 1766 merge from FSF apple 'trunk' branch.
668ea4b1 1767 2006 Fariborz Jahanian <fjahanian@apple.com>
1b1562a5 1768
668ea4b1
IS
1769 Radars 4436866, 4505126, 4506903, 4517826
1770 * c-common.c (c_common_resword): Define @property and its attributes.
1771 * c-common.h: Define property attribute enum entries.
1772 (OBJC_IS_PATTR_KEYWORD): New.
1773 (objc_property_attribute_kind): New enum.
1774 Declare objc_set_property_attr (), objc_add_property_variable (),
1775 objc_build_getter_call () and objc_build_setter_call ().
1776 * stub-objc.c (objc_set_property_attr): New stub.
1777 (objc_add_property_variable): Likewise.
1778 (objc_build_getter_call): Likewise.
1779 (objc_build_setter_call) Likewise.
1b1562a5 1780
a1178b30
IS
17812010-10-13 Iain Sandoe <iains@gcc.gnu.org>
1782
1b1562a5 1783 merge from FSF apple 'trunk' branch.
a1178b30
IS
1784 2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
1785
1786 Radar 3803157 (method attributes)
1787 * c-common.c (handle_deprecated_attribute): Recognize
1788 objc methods as valid declarations.
1789 * c-common.h: Declare objc_method_decl ().
1b1562a5 1790 * stub-objc.c (objc_method_decl): New stub.
a1178b30 1791
a75bfaa6
JM
17922010-10-08 Joseph Myers <joseph@codesourcery.com>
1793
1794 * c-common.c (parse_optimize_options): Call
1795 decode_cmdline_options_to_array_default_mask before
1796 decode_options. Update arguments to decode_options.
1797 * c-common.h (c_common_init_options_struct): Declare.
1798 * c-opts.c (c_common_init_options_struct): New. Split out from
1799 c_common_init_options.
1800
f05b9d93
NP
18012010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
1802
1803 Implemented fast enumeration for Objective-C.
1804 * c-common.h (objc_finish_foreach_loop): New.
1805 * stub-objc.c (objc_finish_foreach_loop): New.
1806
1ebe4b4f
JM
18072010-10-05 Joseph Myers <joseph@codesourcery.com>
1808
1809 * c-common.h (struct diagnostic_context): Don't declare here.
1810 (c_common_initialize_diagnostics): Declare using
1811 diagnostic_context typedef.
1812 * c-opts.c (c_common_handle_option): Pass global_dc to
1813 handle_generated_option.
1814
d4d24ba4
JM
18152010-10-04 Joseph Myers <joseph@codesourcery.com>
1816
1817 * c-opts.c (c_common_handle_option): Pass &global_options_set to
1818 handle_generated_option.
1819
478a1c5b
ILT
18202010-10-03 Ian Lance Taylor <iant@google.com>
1821
1822 * c.opt (-fplan9-extensions): New option.
1823
82a1c2fe
FXC
18242010-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1825
1826 * c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision):
1827 Remove.
1828 (c_cpp_builtins): Call functions from cppbuiltin.c instead
1829 of duplicating code.
1830
92902b1b
IS
18312010-09-30 Iain Sandoe <iains@gcc.gnu.org>
1832
1833 * c-common.c: Add two new entries for @optional
1834 and @required keywords.
1835
1836 merge from FSF 'apple/trunk' branch.
1837 2006-01-30 Fariborz Jahanian <fjahanian@apple.com>
1838
1839 Radar 4386773
1840 * c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new
1841 objective-c keywords.
1842 (objc_set_method_opt): New declaration.
1843 * stub-objc.c (objc_set_method_opt): New stub.
9faeb493 1844
46625112
JM
18452010-09-30 Joseph Myers <joseph@codesourcery.com>
1846
1847 * c-common.c (handle_optimize_attribute): Pass &global_options to
1848 cl_optimization_save and cl_optimization_restore.
1849 * c-opts.c (c_common_handle_option): Pass &global_options to
1850 handle_generated_option.
1851 * c-pragma.c (handle_pragma_diagnostic): Use option_flag_var.
1852 (handle_pragma_pop_options, handle_pragma_reset_options): Pass
1853 &global_options to cl_optimization_restore.
1854
49b91f05
NP
18552010-09-30 Nicola Pero <nicola.pero@meta-innovation.com>
1856
1857 * c-lex.c (c_lex_with_flags): Updated comments for CPP_AT_NAME
1858 Objective-C/Objective-C++ keywords.
1859
13ed556f 18602010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
a6341d57 1861
9faeb493
UB
1862 Merge from 'apple/trunk' branch on FSF servers.
1863
a6341d57
NP
1864 2005-10-04 Fariborz Jahanian <fjahanian@apple.com>
1865
1866 Radar 4281748
1867 * c-common.h (objc_check_global_decl): New declaration.
1868 * stub-objc.c (objc_check_global_decl): New stub.
1869
f0036cca
JM
18702010-09-29 Joseph Myers <joseph@codesourcery.com>
1871
1872 * c.opt: Don't use VarExists.
1873
e3339d0f
JM
18742010-09-29 Joseph Myers <joseph@codesourcery.com>
1875
1876 * c-common.c (c_cpp_error): Update names of diagnostic_context
1877 members.
1878 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of
1879 cl_optimization members.
1880 * c-opts.c (warning_as_error_callback, c_common_handle_option,
1881 sanitize_cpp_opts, finish_options): Update names of cpp_options
1882 members.
1883
1973201f
NP
18842010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
1885
1886 * c-common.h (OBJC_IS_CXX_KEYWORD): New macro. Updated comments.
1887 (objc_is_reserved_word): Removed.
1888 * c-common.c: Updated comments.
1889 * c-lex.c (c_lex_with_flags): Use OBJC_IS_CXX_KEYWORD instead of
1890 objc_is_reserved_word.
1891 * stub-objc.c (objc_is_reserved_word): Removed.
1892
f7e71da5
IS
18932010-09-28 Iain Sandoe <iains@gcc.gnu.org>
1894
9faeb493 1895 * c-common.h (objc_add_method_declaration): Adjust prototype to
f7e71da5
IS
1896 include attributes.
1897 (objc_start_method_definition): Likewise.
1898 (objc_build_keyword_decl): Likewise.
1899 * stub-objc.c:(objc_add_method_declaration): Handle attributes.
1900 (objc_start_method_definition): Likewise.
1901 (objc_build_keyword_decl): Likewise.
1902
c165dca7
IS
19032010-09-28 Iain Sandoe <iains@gcc.gnu.org>
1904
1905 * c-common.h (objc_start_class_interface): Adjust prototype.
1906 (objc_start_category_interface): Likewise.
1907 (objc_start_protocol): Likewise.
1908 * stub-objc.c (objc_start_protocol): Adjust for extra argument.
1909 (objc_start_class_interface): Likewise.
1910 (objc_start_category_interface): Likewise.
1911
7458026b
ILT
19122010-09-27 Ian Lance Taylor <iant@google.com>
1913
1914 * c-common.c (c_common_attribute_table): Add no_split_stack.
1915 (handle_no_split_stack_attribute): New static function.
1916
b581b85b
NP
19172010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
1918
9faeb493 1919 Merge from 'apple/trunk' branch on FSF servers.
b581b85b
NP
1920
1921 2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
1922
9faeb493 1923 Radar 4229905
b581b85b
NP
1924 * c-common.h (objc_have_common_type): New declaration.
1925 * stub-objc.c (objc_have_common_type): New stub.
1926
1927 2005-06-22 Ziemowit Laski <zlaski@apple.com>
1928
1929 Radar 4154928
1930 * c-common.h (objc_common_type): New prototype.
9faeb493 1931 * stub-objc.c (objc_common_type): New stub.
b581b85b 1932
46a4da10
JH
19332010-09-24 Jan Hubicka <jh@suse.cz>
1934
1935 * c-common.c (handle_leaf_attribute): New function.
1936 (struct attribute_spec c_common_att): Add leaf.
1937
e200444e
JM
19382010-09-22 Joseph Myers <joseph@codesourcery.com>
1939
1940 * c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
1941 -comments-in-macros, -define-macro, -define-macro=, -dependencies,
1942 -dump, -dump=, -imacros, -imacros=, -include, -include=,
1943 -include-barrier, -include-directory, -include-directory=,
1944 -include-directory-after, -include-directory-after=,
1945 -include-prefix, -include-prefix=, -include-with-prefix,
1946 -include-with-prefix=, -include-with-prefix-after,
1947 -include-with-prefix-after=, -include-with-prefix-before,
1948 -include-with-prefix-before=, -no-integrated-cpp,
1949 -no-line-commands, -no-standard-includes, -no-warnings, -output,
1950 -output=, -pedantic, -pedantic-errors, -preprocess,
1951 -print-missing-file-dependencies, -trace-includes, -traditional,
1952 -traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
1953 -user-dependencies, -verbose, -write-dependencies,
1954 -write-user-dependencies, no-integrated-cpp, traditional): New.
1955
29a80ea6
NP
19562010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
1957
1958 PR objc/23710
ac1fc2fc
NP
1959 * c-common.h (objc_start_method_definition): Return bool instead
1960 of void.
1961 * stub-objc.c (objc_start_method_definition): Return bool instead
1962 of void.
1963
19642010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
1965
1966 PR objc/25965
1967 * c-common.h (objc_get_interface_ivars): New declaration.
1968 * stub-objc.c (objc_get_interface_ivars): New stub.
29a80ea6 1969
de621752
ILT
19702010-09-15 Ian Lance Taylor <iant@google.com>
1971
1972 * c-common.c (parse_optimize_options): Do not capitalize warning
06730c5d 1973 messages. Remove period at end of warning message.
de621752 1974
ba885ec5
NS
19752010-09-09 Nathan Sidwell <nathan@codesourcery.com>
1976
1977 * c-common.c (handle_alias_ifunc_attribute): New, broken out of ...
1978 (handle_alias_attribute): ... here.
1979 (handle_ifunc_attribute): New.
1980
c5ee1358
MM
19812010-09-06 Mark Mitchell <mark@codesourcery.com>
1982
1983 * c-common.h (do_warn_double_promotion): Declare.
1984 * c-common.c (do_warn_double_promotion): Define.
1985
0a0b3574
MM
19862010-09-05 Mark Mitchell <mark@codesourcery.com>
1987
1988 * c.opt (Wdouble-promotion): New.
1989
d1779886
JM
19902010-09-02 Joseph Myers <joseph@codesourcery.com>
1991
1992 * c.opt (falt-external-templates, fhuge-objects, fvtable-gc,
1993 fvtable-thunks, fxref): Mark no longer supported in help text.
1994
2d2bd949
JM
19952010-09-02 Joseph Myers <joseph@codesourcery.com>
1996
1997 * c.opt (Wimport, fall-virtual, falt-external-templates,
1998 fdefault-inline, fenum-int-equiv, fexternal-templates,
1999 fguiding-decls, fhonor-std, fhuge-objects, flabels-ok,
2000 fname-mangling-version-, fnew-abi, fnonnull-objects,
2001 foptional-diags, fsquangle, fstrict-prototype, fthis-is-variable,
2002 fvtable-gc, fvtable-thunks, fxref): Mark with Ignore and Warn as
2003 applicable.
2004 (fhandle-exceptions): Mark with Alias and Warn.
2005 * c-opts.c (c_common_handle_option): Don't handle options marked
2006 as ignored.
2007
5de8299c
JM
20082010-09-02 Joseph Myers <joseph@codesourcery.com>
2009
2010 * c.opt (Wcomments, Werror-implicit-function-declaration,
2011 ftemplate-depth-, std=c89, std=c9x, std=gnu89, std=gnu9x,
2012 std=iso9899:1990, std=iso9899:1999, std=iso9899:199x): Mark as
2013 aliases.
2014 * c-common.c (option_codes): Use OPT_Wcomment instead of
2015 OPT_Wcomments.
2016 * c-opts.c (warning_as_error_callback, c_common_handle_option):
2017 Don't handle options marked as aliases.
2018
0ceb0201
RG
20192010-08-25 Richard Guenther <rguenther@suse.de>
2020
2021 * c-common.c (c_common_get_alias_set): Remove special
2022 handling for pointers.
2023
ac47786e
NF
20242010-08-20 Nathan Froyd <froydnj@codesourcery.com>
2025
2026 * c-common.c: Use FOR_EACH_VEC_ELT.
2027 * c-gimplify.c: Likewise.
2028 * c-pragma.c: Likewise.
2029
c878765b
JM
20302010-08-16 Joseph Myers <joseph@codesourcery.com>
2031
2032 * c.opt (MDX): Change back to MD. Mark NoDriverArg instead of
2033 RejectDriver.
2034 (MMDX): Change back to MMD. Mark NoDriverArg instead of
2035 RejectDriver.
2036 * c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
2037 instead of OPT_MDX and OPT_MMDX.
2038
603349bf
JM
20392010-08-16 Joseph Myers <joseph@codesourcery.com>
2040
2041 * c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.
2042
644fa7ac
JM
20432010-08-12 Joseph Myers <joseph@codesourcery.com>
2044
2045 * c.opt (MD, MMD): Change to MDX and MMDX.
2046 * c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX.
2047
481e1176
JM
20482010-08-11 Joseph Myers <joseph@codesourcery.com>
2049
2050 * c-opts.c (c_common_handle_option): Call handle_generated_option
2051 instead of handle_option.
2052
ac8dc9f7
NF
20532010-08-08 Nathan Froyd <froydnj@codesourcery.com>
2054
2055 * c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
2056 (maybe_apply_renaming_pragma): Delete unneeded declarations.
2057
4f8c876d
NF
20582010-08-08 Nathan Froyd <froydnj@codesourcery.com>
2059
2060 * c-pragma.c (pending_redefinition): Declare. Declare a VEC of it.
2061 (pending_redefine_extname): Change type to a VEC.
2062 (add_to_renaming_pragma_list): Update for new type of
2063 pending_redefine_extname.
ac8dc9f7 2064 (maybe_apply_renaming_pragma): Likewise.
4f8c876d 2065
3b0c690e
AC
20662010-08-04 Arnaud Charlet <charlet@adacore.com>
2067
2068 * c-ada-spec.c (dump_ada_template): Mark underlying instance type as
2069 visited.
2070 (dump_generic_ada_node): Code clean up. Use TREE_VISITED flag to
2071 decide whether a type has already been declared/seen.
2072 Do not go to the original type.
2073 (dump_nested_types): New parameter forward.
2074 Generate forward declaration if needed and mark type as visited.
2075 (print_ada_declaration): Call dump_nested_types if not already done.
2076 Mark types as visited.
2077
1890bccc
JM
20782010-08-03 Joseph Myers <joseph@codesourcery.com>
2079
2080 * c.opt (-print-pch-checksum): Remove option.
2081 * c-opts.c (c_common_handle_option): Don't handle
2082 OPT_print_pch_checksum.
2083
5f20c657
JM
20842010-07-27 Joseph Myers <joseph@codesourcery.com>
2085
2086 * c-common.h (c_common_handle_option): Update prototype and return
2087 value type.
2088 * c-opts.c (c_common_handle_option): Update prototype and return
2089 value type. Update calls to handle_option and
2090 enable_warning_as_error.
2091
f551f80c
JJ
20922010-07-27 Jakub Jelinek <jakub@redhat.com>
2093
2094 PR c/45079
2095 * c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
2096
61ff2bdc
JM
20972010-07-27 Joseph Myers <joseph@codesourcery.com>
2098
2099 * c-common.h (c_common_missing_argument): Remove.
2100 * c-opts.c (c_common_missing_argument): Remove.
2101 * c.opt (A, D, F, I, MD, MMD, MQ, MT, U, fconstant-string-class=,
2102 idirafter, imacros, include, isysroot, isystem, iquote): Add
2103 MissingArgError.
2104 * c-objc-common.h (LANG_HOOKS_MISSING_ARGUMENT): Remove.
2105
7a9bf9a4
JM
21062010-07-27 Joseph Myers <joseph@codesourcery.com>
2107
2108 * c-common.h (c_common_option_lang_mask,
2109 c_common_initialize_diagnostics, c_common_complain_wrong_lang_p):
2110 New.
2111 (c_common_init_options): Update prototype.
2112 * c-opts.c (c_common_option_lang_mask): New.
2113 (c_common_initialize_diagnostics): Split out of
2114 c_common_init_options.
2115 (accept_all_c_family_options, c_common_complain_wrong_lang_p):
2116 New.
2117 (c_common_init_options): Update prototype. Use decoded options in
2118 search for -lang-asm.
2119
910ad8de
NF
21202010-07-15 Nathan Froyd <froydnj@codesourcery.com>
2121
2122 * c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
2123 * c-format.c: Likewise.
2124
718f9c0f
MLI
21252010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
2126
2127 * c-common.h: Include diagnostic-core.h. Error if already
2128 included.
2129 * c-semantics.c: Do not define GCC_DIAG_STYLE here.
2130
4d451982
MLI
21312010-07-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
2132
2133 * c-family/c-common.c (IN_GCC_FRONTEND): Do not undef.
2134 Do not include expr.h
2135 (vector_mode_valid_p): Move here.
2136
119fe915
SB
21372010-06-21 DJ Delorie <dj@redhat.com>
2138
2139 * c-pragma.c (handle_pragma_diagnostic): Add push/pop,
2140 allow these pragmas anywhere.
2141
21422010-06-14 Jakub Jelinek <jakub@redhat.com>
2143
2144 PR bootstrap/44509
2145 * c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
2146 (lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
2147 (lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
2148 ggc_strdup instead of xstrdup.
2149
21502010-06-10 Jakub Jelinek <jakub@redhat.com>
2151
2152 * c-cppbuiltin.c: Include cpp-id-data.h.
2153 (lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
2154 (lazy_hex_fp_value): New function.
2155 (builtin_define_with_hex_fp_value): Provide definitions lazily.
2156
6662d794
MLI
21572010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
2158
2159 * c-gimplify.c: Do not include tree-flow.h
2160
38f8b050
JR
21612010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
2162
2163 PR other/44034
2164 * c-common.c: Rename targetm member:
2165 targetm.enum_va_list -> targetm.enum_va_list_p
2166
9589f23e
AS
21672010-06-28 Anatoly Sokolov <aesok@post.ru>
2168
2169 * c-common.c (shorten_compare): Adjust call to force_fit_type_double.
2170
3b06d379
SB
21712010-06-28 Steven Bosscher <steven@gcc.gnu.org>
2172
2173 * c-cppbuiltin.c: Do not include except.h.
2174
d166d4c3
AK
21752010-06-24 Andi Kleen <ak@linux.intel.com>
2176
9faeb493
UB
2177 * c-common.c (warn_for_omitted_condop): New.
2178 * c-common.h (warn_for_omitted_condop): Add prototype.
d166d4c3 2179
70cb8be6
JM
21802010-06-21 Joseph Myers <joseph@codesourcery.com>
2181
2182 * c.opt (lang-objc): Remove.
2183 * c-opts.c (c_common_handle_option): Don't handle OPT_lang_objc.
2184
a4c97feb
JR
21852010-06-21 Joern Rennecke <joern.rennecke@embecosm.com>
2186
2187 * c-opts.c: Include "tm_p.h".
2188
6e2f1956
JM
21892010-06-20 Joseph Myers <joseph@codesourcery.com>
2190
2191 * c-common.c (parse_optimize_options): Update call to
2192 decode_options.
2193
bc87224e
NF
21942010-06-18 Nathan Froyd <froydnj@codesourcery.com>
2195
2196 * c-common.c (record_types_used_by_current_var_decl): Adjust for
2197 new type of types_used_by_cur_var_decl.
2198
b49cf425
JR
21992010-06-17 Joern Rennecke <joern.rennecke@embecosm.com>
2200
2201 PR bootstrap/44512
2202 * c-cppbuiltin.c (builtin_define_with_hex_fp_value): Add cast
2203 for C++ standard compliance.
2204
59f9c2ed
JM
22052010-06-16 Jason Merrill <jason@redhat.com>
2206
2207 * c.opt: Add -Wnoexcept.
2208
33766b66
RG
22092010-06-16 Richard Guenther <rguenther@suse.de>
2210
2211 PR c/44555
2212 * c-common.c (c_common_truthvalue_conversion): Remove
2213 premature and wrong optimization concering ADDR_EXPRs.
2214
eff7e30c
AC
22152010-06-15 Arnaud Charlet <charlet@adacore.com>
2216
2217 * c-ada-spec.c (dump_sloc): Remove column info.
2218 (is_simple_enum): New function.
2219 (dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada
2220 enum types when relevant.
2221
6312e84d
MLI
22222010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
2223
9faeb493 2224 * c-common.c (conversion_warning): Warn at expression
6312e84d
MLI
2225 location.
2226
1cb42611
JM
22272010-06-10 Joseph Myers <joseph@codesourcery.com>
2228
2229 * c-opts.c (c_common_handle_option): Don't handle
2230 OPT_fshow_column.
2231
a9429e29
LB
22322010-06-08 Laurynas Biveinis <laurynas.biveinis@gmail.com>
2233
2234 * c-pragma.c (push_alignment): Use typed GC allocation.
2235 (handle_pragma_push_options): Likewise.
2236
2237 * c-common.c (parse_optimize_options): Likewise.
2238
2239 * c-common.h (struct sorted_fields_type): Add variable_size GTY
2240 option.
2241
5498f011
JM
22422010-06-07 Joseph Myers <joseph@codesourcery.com>
2243
2244 * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
2245 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
2246 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
2247 flag_signed_bitfields, warn_strict_null_sentinel,
2248 flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
2249 flag_gen_declaration, flag_no_gnu_keywords,
2250 flag_implement_inlines, flag_implicit_templates,
2251 flag_implicit_inline_templates, flag_optional_diags,
2252 flag_elide_constructors, flag_default_inline, flag_rtti,
2253 flag_conserve_space, flag_access_control, flag_check_new,
2254 flag_new_for_scope, flag_weak, flag_working_directory,
2255 flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
2256 flag_enforce_eh_specs, flag_threadsafe_statics,
2257 flag_pretty_templates): Remove.
2258 * c-common.h (flag_preprocess_only, flag_nil_receivers,
2259 flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
2260 flag_replace_objc_classes, flag_undef, flag_no_builtin,
2261 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
2262 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
2263 flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
2264 flag_no_gnu_keywords, flag_implement_inlines,
2265 flag_implicit_templates, flag_implicit_inline_templates,
2266 flag_optional_diags, flag_elide_constructors, flag_default_inline,
2267 flag_rtti, flag_conserve_space, flag_access_control,
2268 flag_check_new, flag_new_for_scope, flag_weak,
2269 flag_working_directory, flag_use_cxa_atexit,
2270 flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
2271 flag_threadsafe_statics, flag_pretty_templates,
2272 warn_strict_null_sentinel): Remove.
2273 * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
2274 fbuiltin, fcheck-new, fconserve-space, felide-constructors,
2275 fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
2276 fimplicit-inline-templates, fimplicit-templates,
2277 flax-vector-conversions, fms-extensions, fnil-receivers,
2278 fnonansi-builtins, fpretty-templates, freplace-objc-classes,
2279 frtti, fshort-double, fshort-enums, fshort-wchar,
2280 fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
2281 funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
2282 fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
2283 gen-decls, undef): Use Var.
2284 (fdefault-inline, foptional-diags): Document as doing nothing.
2285 * c-opts.c (c_common_handle_option): Remove cases for options now
2286 using Var. Mark ignored options as such.
2287
39dabefd
SB
22882010-06-05 Steven Bosscher <steven@gcc.gnu.org>
2289
9faeb493 2290 * c-common.c: Moved to here from parent directory.
39dabefd
SB
2291 * c-common.def: Likewise.
2292 * c-common.h: Likewise.
2293 * c-cppbuiltin.c: Likewise.
2294 * c-dump.c: Likewise.
2295 * c-format.c: Likewise.
2296 * c-format.h : Likewise.
2297 * c-gimplify.c: Likewise.
2298 * c-lex.c: Likewise.
2299 * c-omp.c: Likewise.
2300 * c.opt: Likewise.
2301 * c-opts.c: Likewise.
2302 * c-pch.c: Likewise.
2303 * c-ppoutput.c: Likewise.
2304 * c-pragma.c: Likewise.
2305 * c-pragma.h: Likewise.
2306 * c-pretty-print.c: Likewise.
2307 * c-pretty-print.h: Likewise.
2308 * c-semantics.c: Likewise.
2309 * stub-objc.c: Likewise.
2310
2311 * c-common.c: Include gt-c-family-c-common.h.
2312 * c-pragma.c: Include gt-c-family-c-pragma.h.
2313\f
04695783 2314Copyright (C) 2010, 2011 Free Software Foundation, Inc.
39dabefd
SB
2315
2316Copying and distribution of this file, with or without modification,
2317are permitted in any medium without royalty provided the copyright
2318notice and this notice are preserved.