]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/c-family/ChangeLog
method.c (build_stub_object): Use CONVERT_EXPR.
[thirdparty/gcc.git] / gcc / c-family / ChangeLog
CommitLineData
8d0cf15e
JM
12014-09-30 Jason Merrill <jason@redhat.com>
2
3 * c-common.h (enum rid): Remove RID_IS_CONVERTIBLE_TO.
4 * c-common.c (c_common_reswords): Remove __is_convertible_to.
5
083e891e
MP
62014-09-24 Marek Polacek <polacek@redhat.com>
7
8 PR c/61405
9 PR c/53874
10 * c-common.h (struct c_common_resword): Don't define CPP_KEYWORD.
11
7861b648
AK
122014-09-23 Andi Kleen <ak@linux.intel.com>
13
14 * c-common.c (handle_no_reorder_attribute): New function.
15 (c_common_attribute_table): Add no_reorder attribute.
16
9a79452d
JM
172014-09-22 Joseph Myers <joseph@codesourcery.com>
18
19 * c-cppbuiltin.c (c_cpp_builtins): Define
20 __LIBGCC_*_EXCESS_PRECISION__ macros for supported floating-point
21 modes.
22
dd69f047
JM
232014-09-18 Joseph Myers <joseph@codesourcery.com>
24
25 * c-cppbuiltin.c (c_cpp_builtins): Define __LIBGCC_*_FUNC_EXT__
26 for supported floating-point modes.
27
737a4826
MLI
282014-09-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
29
30 * c.opt (Wpsabi): Use LangEnabledBy.
31 * c-opts.c (c_common_handle_option): Do not handle here.
32
8cc4b7a2
JM
332014-09-12 Joseph Myers <joseph@codesourcery.com>
34
35 * c-cppbuiltin.c (c_cpp_builtins): Define __LIBGCC_HAS_%s_MODE__
36 macros for floating-point modes.
37
179b5a55
MG
382014-09-11 Marc Glisse <marc.glisse@inria.fr>
39
40 PR target/58757
41 * c-cppbuiltin.c (builtin_define_float_constants): Correct
42 __*_DENORM_MIN__ without denormals.
43
570a11fe
JJ
442014-09-10 Jakub Jelinek <jakub@redhat.com>
45
46 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
47 ubsan_instrument_vla, ubsan_instrument_return): Adjust
48 ubsan_create_data callers.
49 (ubsan_instrument_bounds): Don't emit UBSAN_BOUNDS at all if
50 index is constant or BIT_AND_EXPR with constant mask and is
51 small enough for the bound.
52 * c-gimplify.c (ubsan_walk_array_refs_r): For ADDR_EXPR of
53 ARRAY_REF, make sure the inner ARRAY_REF is not walked again.
54
b559c810
MLI
552014-09-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
56
57 * c.opt: Add CppReason to various flags.
58 (Wdate-time): Re-sort.
59 * c-common.c: Include c-common.h earlier.
60 (struct reason_option_codes_t): Delete.
61 (c_option_controlling_cpp_error): Prefix global type and struct
62 with cpp_.
63
1ef33fd4
MLI
642014-09-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
65
66 * c.opt (Wnormalized): New.
67 (Wnormalized=): Use Enum and Reject Negative.
68 * c-opts.c (c_common_handle_option): Do not handle Wnormalized here.
69
66bb34c0
JM
702014-09-08 Joseph Myers <joseph@codesourcery.com>
71
72 * c-cppbuiltin.c (c_cpp_builtins): Define macros for mantissa
73 digits of floating-point modes if -fbuilding-libgcc.
74
53d68b9f
JM
752014-09-05 Joseph Myers <joseph@codesourcery.com>
76
77 * c-cppbuiltin.c (c_cpp_builtins): Also define
78 __LIBGCC_EH_TABLES_CAN_BE_READ_ONLY__,
79 __LIBGCC_EH_FRAME_SECTION_NAME__, __LIBGCC_JCR_SECTION_NAME__,
80 __LIBGCC_CTORS_SECTION_ASM_OP__, __LIBGCC_DTORS_SECTION_ASM_OP__,
81 __LIBGCC_TEXT_SECTION_ASM_OP__, __LIBGCC_INIT_SECTION_ASM_OP__,
82 __LIBGCC_INIT_ARRAY_SECTION_ASM_OP__,
83 __LIBGCC_STACK_GROWS_DOWNWARD__,
84 __LIBGCC_DONT_USE_BUILTIN_SETJMP__,
85 __LIBGCC_DWARF_ALT_FRAME_RETURN_COLUMN__,
86 __LIBGCC_DWARF_FRAME_REGISTERS__,
87 __LIBGCC_EH_RETURN_STACKADJ_RTX__, __LIBGCC_JMP_BUF_SIZE__,
88 __LIBGCC_STACK_POINTER_REGNUM__ and
89 __LIBGCC_VTABLE_USES_DESCRIPTORS__ for -fbuilding-libgcc.
90 (builtin_define_with_value): Handle backslash-escaping in string
91 macro values.
92
f65586dc
RB
932014-09-05 Richard Biener <rguenther@suse.de>
94
95 PR middle-end/63148
96 * c-format.c (check_format_arg): Properly handle
97 effectively signed POINTER_PLUS_EXPR offset.
98
2b71f4a4
MLI
992014-09-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
100
101 * c.opt (Wc90-c99-compat,Wc++-compat,Wcomment,Wendif-labels,
102 Winvalid-pch,Wlong-long,Wmissing-include-dirs,Wmultichar,Wpedantic,
103 (Wdate-time,Wtraditional,Wundef,Wvariadic-macros): Add CPP, Var
104 and Init.
105 * c-opts.c (c_common_handle_option): Do not handle here.
106 (sanitize_cpp_opts): Likewise.
107 * c-common.c (struct reason_option_codes_t): Handle
108 CPP_W_C90_C99_COMPAT and CPP_W_PEDANTIC.
109
d2e4feca
MP
1102014-09-03 Marek Polacek <polacek@redhat.com>
111
112 * c.opt (Wlogical-not-parentheses): Enable by -Wall.
113
9a771876
JJ
1142014-09-02 Jakub Jelinek <jakub@redhat.com>
115 Balaji V. Iyer <balaji.v.iyer@intel.com>
116 Igor Zamyatin <igor.zamyatin@intel.com>
117
118 * c-cilkplus.c (cilk_for_number_of_iterations): New function.
119 * c-common.c (c_common_reswords): Added _Cilk_for.
120 * c-common.h (enum rid): Added RID_CILK_FOR.
121 (cilk_for_number_of_iterations): Add declaration.
122 * c-omp.c (c_finish_omp_for): Added checks for CILK_SIMD and
123 CILK_FOR.
124 * c-pragma.c (init_pragma): Register "grainsize" pragma.
125 * c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_GRAINSIZE.
126
81b5d104
MLI
1272014-08-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
128
129 * c.opt (Wbuiltin-macro-redefined,Wdeprecated,Wendif-labels,
130 Winvalid-pch,Wliteral-suffix,Wmissing-include-dirs,Wtrigraphs,
131 Wundef): Use CPP, Var and Init.
132 * c-opts.c (c_common_handle_option): Do not handle the above flags here.
133
b753b37b
MLI
1342014-08-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
135
136 * c.opt (Wbuiltin-macro-redefined): Use CPP, Var and Init.
137 * c-opts.c (c_common_handle_option): Do not handle here.
138
028aee17
JM
1392014-08-25 Jason Merrill <jason@redhat.com>
140
141 * c.opt: Change -std=c++1y and -std=gnu++1y to be aliases for
142 -std=c++14 and -std=gnu++14, rather than the reverse.
143 * c-opts.c (c_common_handle_option): Change OPT_std_c__1y and
144 OPT_std_gnu__1y to OPT_std_c__14 and OPT_std_gnu__14.
145 * c-common.h (cxx_dialect): Remove cxx1y.
146
e4276ba5
ESR
1472014-08-23 Edward Smith-Rowland <3dw4rd@verizon.net>
148
149 * c-common.h (enum cxx_dialect): Add cxx14.
150 * c-opts.c (set_std_cxx1y): Rename to set_std_cxx14; Use cxx14.
151 * c-ubsan.c (ubsan_instrument_shift): Change comment and logic from
152 cxx_dialect == cxx11 || cxx_dialect == cxx1y to cxx_dialect >= cxx11.
153
a545cacd
JM
1542014-08-22 Jason Merrill <jason@redhat.com>
155
156 * c.opt (std=gnu++17): Fix alias.
157
59ea0364
MP
1582014-08-22 Marek Polacek <polacek@redhat.com>
159
160 PR c++/62199
161 * c-common.c (warn_logical_not_parentheses): Don't check LHS. Don't
162 check for vector types. Drop LHS argument.
163 * c-common.h (warn_logical_not_parentheses): Adjust.
164
596e808c
MLI
1652014-08-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
166
167 * c.opt (Wcomment): Use CPP, Var and LangEnabledBy.
168 (Wmultichar): Likewise.
169 (Wdate-time): Use C-family languages instead of Common. Use CPP
170 and Var.
171 * c-opts.c (c_common_handle_option): Do not handle the above
172 options here.
173 (sanitize_cpp_opts): Likewise.
174
18767f65
MLI
1752014-08-21 Manuel López-Ibáñez <manu@gcc.gnu.org>
176
177 PR fortran/44054
178 * c-opts.c: Include tree-diagnostics.h.
179 (c_diagnostic_finalizer): New.
180 (c_common_initialize_diagnostics): Use it.
181
b4413594
MLI
1822014-08-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
183
184 PR preprocessor/51303
185 * c-common.c (struct reason_option_codes_t option_codes):
186 Add CPP_W_MISSING_INCLUDE_DIRS. Sort alphabetically.
187
43f9a13c
MLI
1882014-08-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
189
190 PR c/60975
191 PR c/53063
192 * c.opt (Wvariadic-macros): Use CPP and LangEnabledBy.
193 * c-opts.c (c_common_handle_option): Call cpp_handle_option_auto.
194 (c_common_post_options): Call init_global_opts_from_cpp.
195 (sanitize_cpp_opts): Do not handle Wvariadic-macros here.
196
04159acf
MP
1972014-08-19 Marek Polacek <polacek@redhat.com>
198
199 PR c++/62153
200 * c-common.c (maybe_warn_bool_compare): New function.
201 * c-common.h (maybe_warn_bool_compare): Declare.
202 * c.opt (Wbool-compare): New option.
203
35aff4fb
MP
2042014-08-19 Marek Polacek <polacek@redhat.com>
205
206 * c.opt (Wc99-c11-compat): New option.
207
177cce46
MP
2082014-08-19 Marek Polacek <polacek@redhat.com>
209
210 * c-opts.c (sanitize_cpp_opts): Make warn_long_long be set according
211 to warn_c90_c99_compat.
212 * c.opt (Wc90-c99-compat, Wdeclaration-after-statement): Initialize
213 to -1.
214
6ae9194f
MLI
2152014-08-19 Manuel López-Ibáñez <manu@gcc.gnu.org>
216 Steven Bosscher <steven@gcc.gnu.org>
217
218 PR c/52952
219 * c-format.c: Add extra_arg_loc and format_string_loc to struct
220 format_check_results.
221 (check_function_format): Use true and add comment for boolean
222 argument.
223 (finish_dollar_format_checking): Use explicit location when warning.
224 (check_format_info): Likewise.
225 (check_format_arg): Set extra_arg_loc and format_string_loc.
226 (check_format_info_main): Use explicit location when warning.
227 (check_format_types): Pass explicit location.
228 (format_type_warning): Likewise.
229
8e54f6d3
MLI
2302014-08-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
231
232 PR fortran/44054
233 * c-format.c: Handle Fortran flags.
234
cd4e76fc
IZ
2352014-08-12 Igor Zamyatin <igor.zamyatin@intel.com>
236
237 PR other/61962
238 * array-notation-common.c (find_rank): Added handling for other
239 types of references.
240
f3bede71
MP
2412014-08-10 Marek Polacek <polacek@redhat.com>
242
243 PR c/51849
244 * c-opts.c (sanitize_cpp_opts): Pass warn_c90_c99_compat to libcpp.
245 * c.opt (Wc90-c99-compat): Add option.
246
9f25a338
TS
2472014-08-07 Trevor Saunders <tsaunders@mozilla.com>
248
249 * c-gimplify.c, cilk.c: Remove includes of pointer-set.h.
250
62e4eb35
MP
2512014-08-03 Marek Polacek <polacek@redhat.com>
252
253 * c-common.c (check_case_value): Add location_t parameter. Use it.
254 (c_add_case_label): Pass loc to check_case_value.
255
b787e7a2
TS
2562014-08-02 Trevor Saunders <tsaunders@mozilla.com>
257
258 * cilk.c: Use hash_map instead of pointer_map.
259
6e2830c3
TS
2602014-08-02 Trevor Saunders <tsaunders@mozilla.com>
261
262 * c-gimplify.c: Use hash_set instead of pointer_set.
263
a7ee52fb
IZ
2642014-08-01 Igor Zamyatin <igor.zamyatin@intel.com>
265
266 PR middle-end/61455
267 * array-notation-common.c (extract_array_notation_exprs): Handling
268 of DECL_EXPR added.
269
944fa280
JJ
2702014-08-01 Jakub Jelinek <jakub@redhat.com>
271
272 * c-common.h (min_align_of_type): Removed prototype.
273 * c-common.c (min_align_of_type): Removed.
274 * c-ubsan.h (ubsan_maybe_instrument_reference,
275 ubsan_maybe_instrument_member_call): New prototypes.
276 * c-ubsan.c: Include stor-layout.h and builtins.h.
277 (ubsan_maybe_instrument_reference_or_call,
278 ubsan_maybe_instrument_reference, ubsan_maybe_instrument_call): New
279 functions.
280
b4dfdc11
MG
2812014-07-31 Marc Glisse <marc.glisse@inria.fr>
282
283 PR c++/60517
284 * c.opt (-Wreturn-local-addr): Move to common.opt.
285
a41844e5
JM
2862014-07-30 Jason Merrill <jason@redhat.com>
287
288 PR c++/61659
289 PR c++/61687
290 Revert:
291 * c.opt (-fuse-all-virtuals): New.
292
976d5a22
TT
2932014-07-30 Tom Tromey <tromey@redhat.com>
294
295 PR c/59855
296 * c.opt (Wdesignated-init): New option.
297 * c-common.c (c_common_attribute_table): Add "designated_init".
298 (handle_designated_init): New function.
299
cdc94aca
MP
3002014-07-24 Marek Polacek <polacek@redhat.com>
301
302 PR c/57653
303 * c-opts.c (c_finish_options): If -imacros is in effect, return.
304
f41373b6
DS
3052014-07-16 Dodji Seketeli <dodji@redhat.com>
306
307 PR preprocessor/60723 - missing system-ness marks for macro tokens
308 * c-ppoutput.c (struct print::prev_was_system_token): New data
309 member.
310 (init_pp_output): Initialize it.
311 (maybe_print_line_1, maybe_print_line, print_line_1, print_line)
312 (do_line_change): Return a flag saying if a line marker was
313 emitted or not.
314 (scan_translation_unit): Detect if the system-ness of the token we
315 are about to emit is different from the one of the previously
316 emitted token. If so, emit a line marker. Avoid emitting useless
317 adjacent line markers. Avoid emitting line markers for tokens
318 originating from the expansion of built-in macros.
319 (scan_translation_unit_directives_only): Adjust.
320
4d661eaa
MP
3212014-07-15 Marek Polacek <polacek@redhat.com>
322
323 * c-ubsan.c (ubsan_instrument_bounds): Don't instrument if
324 TYPE_MAX_VALUE is NULL.
325
b108f48f
JJ
3262014-07-14 Jakub Jelinek <jakub@redhat.com>
327
328 PR middle-end/61294
329 * c.opt (Wmemset-transposed-args): New warning.
330
c0221884
JM
3312014-07-10 Jason Merrill <jason@redhat.com>
332
333 PR c++/61659
334 PR c++/61687
335 * c.opt (-fuse-all-virtuals): New.
336
63dfbb95
RB
3372014-07-09 Richard Biener <rguenther@suse.de>
338
339 PR c-family/61741
340 * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
341 using unsigned arithmetic if overflow does not wrap instead of
342 if overflow is undefined.
343
773ec47f
MP
3442014-07-06 Marek Polacek <polacek@redhat.com>
345
346 PR c/6940
347 * c.opt (Wsizeof-array-argument): New option.
348
00a7ba58
JJ
3492014-07-03 Jakub Jelinek <jakub@redhat.com>
350
351 * c-ada-spec.c (dump_ada_nodes): Don't call qsort if
352 comments->count <= 1, as comments->entries might be NULL.
353
52ec0ea3
MP
3542014-07-01 Marek Polacek <polacek@redhat.com>
355
356 * c.opt (Wint-conversion): New option.
357
d5c3d343
MP
3582014-07-01 Marek Polacek <polacek@redhat.com>
359
360 PR c/58286
361 * c.opt (Wincompatible-pointer-types): New option.
362
6e7ceb17
PC
3632014-06-30 Paolo Carlini <paolo.carlini@oracle.com>
364
365 PR c++/51400
366 * c-common.c (handle_noreturn_attribute, handle_const_attribute):
367 Do not discard TYPE_QUALS of type.
368
da73100b
JM
3692014-06-26 Jason Merrill <jason@redhat.com>
370
371 * c-common.h (enum cxx_dialect): Add cxx1z.
372 * c.opt (std=c++1z, std=c++17, std=gnu++1z, std=gnu++17): New.
373 * c-opts.c (c_common_handle_option, set_std_cxx1z): Handle it.
374
08eedf75
TJ
3752014-06-26 Teresa Johnson <tejohnson@google.com>
376
377 * c-common.h (get_dump_info): Declare.
378 * c-gimplify.c (c_genericize): Use saved dump files.
379 * c-opts.c (c_common_parse_file): Begin and end dumps
380 once around parsing invocation.
381 (get_dump_info): New function.
382
7b56b2f8
MP
3832014-06-23 Marek Polacek <polacek@redhat.com>
384 Andrew MacLeod <amacleod@redhat.com>
385
386 PR c/61553
387 * c-common.c (get_atomic_generic_size): Don't segfault if the
388 type doesn't have a size.
389
0e37a2f3
MP
3902014-06-20 Marek Polacek <polacek@redhat.com>
391
392 * c-gimplify.c: Include "c-ubsan.h" and "pointer-set.h".
393 (ubsan_walk_array_refs_r): New function.
394 (c_genericize): Instrument array bounds.
395 * c-ubsan.c: Include "internal-fn.h".
396 (ubsan_instrument_division): Mark instrumented arrays as having
397 side effects. Adjust ubsan_type_descriptor call.
398 (ubsan_instrument_shift): Likewise.
399 (ubsan_instrument_vla): Adjust ubsan_type_descriptor call.
400 (ubsan_instrument_bounds): New function.
401 (ubsan_array_ref_instrumented_p): New function.
402 (ubsan_maybe_instrument_array_ref): New function.
403 * c-ubsan.h (ubsan_instrument_bounds): Declare.
404 (ubsan_array_ref_instrumented_p): Declare.
405 (ubsan_maybe_instrument_array_ref): Declare.
406
4072014-06-20 Hale Wang <hale.wang@arm.com>
dd6fe7d4
HW
408
409 PR lto/61123
410 * c.opt (fshort-enums): Add to LTO.
411 * c.opt (fshort-wchar): Likewise.
412
5c3d09f7
MP
4132014-06-16 Marek Polacek <polacek@redhat.com>
414
415 PR c/60439
416 * c.opt (Wswitch-bool): Add Var.
417
9cf32741
JJ
4182014-06-12 Jakub Jelinek <jakub@redhat.com>
419
420 PR middle-end/61486
421 * c-omp.c (c_omp_split_clauses): Don't crash on firstprivate in
422 #pragma omp target teams or
423 #pragma omp {,target }teams distribute simd.
424
62984918
JM
4252014-06-12 Jason Merrill <jason@redhat.com>
426
427 * c.opt (Wabi=, fabi-compat-version): New.
428 * c-opts.c (c_common_handle_option): Handle -Wabi=.
429 (c_common_post_options): Handle flag_abi_compat_version default.
430 Disallow -fabi-compat-version=1.
431 * c-common.h (abi_version_crosses): New.
432
f961457f
JH
4332014-06-11 Jan Hubicka <hubicka@ucw.cz>
434
435 * c-family/c-common.c (handle_section_attribute): Update handling for
436 section names that are no longer trees.
437
92d28cbb
JJ
4382014-06-10 Jakub Jelinek <jakub@redhat.com>
439
440 PR fortran/60928
441 * c-pragma.c (omp_pragmas_simd): Move PRAGMA_OMP_TASK...
442 (omp_pragmas): ... back here.
443
742938c9
MP
4442014-06-05 Marek Polacek <polacek@redhat.com>
445
446 PR c/49706
447 * c-common.c (warn_logical_not_parentheses): New function.
448 * c-common.h (warn_logical_not_parentheses): Declare.
449 * c.opt (Wlogical-not-parentheses): New option.
450
9d548dfb
MP
4512014-06-04 Marek Polacek <polacek@redhat.com>
452
453 PR c/30020
454 * c-common.c (check_case_bounds): Add location parameter.
455 Use it.
456 (c_add_case_label): Pass loc to check_case_bounds.
457
fedfecef
MP
4582014-06-03 Marek Polacek <polacek@redhat.com>
459
460 PR c/60439
461 * c.opt (Wswitch-bool): New option.
462
f6a7cffc
TS
4632014-05-22 Thomas Schwinge <thomas@codesourcery.com>
464
040d18b6
TS
465 * c-common.h (c_omp_sharing_predetermined, c_omp_remap_decl):
466 Remove prototypes.
467 (record_types_used_by_current_var_decl): Move prototype to where
468 it belongs.
469
f6a7cffc
TS
470 * c-common.c (DEF_FUNCTION_TYPE_0, DEF_FUNCTION_TYPE_6)
471 (DEF_FUNCTION_TYPE_7, DEF_FUNCTION_TYPE_8)
472 (DEF_FUNCTION_TYPE_VAR_5): Cosmetic fixes.
473
632f2871
RS
4742014-05-21 Richard Sandiford <rsandifo@linux.vnet.ibm.com>
475
476 * c-common.h (CTI_VOID_ZERO, void_zero_node): Delete.
477 * c-common.c (c_common_nodes_and_builtins): Don't initialize
478 void_zero_node.
479 * c-pretty-print.c (pp_c_void_constant): New function.
480 (c_pretty_printer::constant, c_pretty_printer::primary_expression)
481 (c_pretty_printer::expression): Handle VOID_CST.
482 * cilk.c (extract_free_variables): Likewise.
483 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift)
484 (ubsan_instrument_vla): Use void_node instead of void_zero_node.
485
766090c2
TS
4862014-05-17 Trevor Saunders <tsaunders@mozilla.com>
487
488 * c-common.h (sorted_fields_type): Remove variable_size GTY attribute.
489 * c-pragma.c (push_alignment): Adjust.
490 (handle_pragma_push_options): Likewise.
491
661a0813
MP
4922014-05-09 Marek Polacek <polacek@redhat.com>
493
494 PR c/50459
495 * c-common.c (check_user_alignment): Return -1 if alignment is error
496 node.
497 (handle_aligned_attribute): Don't call default_conversion on
498 FUNCTION_DECLs.
499 (handle_vector_size_attribute): Likewise.
500 (handle_tm_wrap_attribute): Handle case when wrap_decl is error node.
501 (handle_sentinel_attribute): Call default_conversion and allow even
502 integral types as an argument.
503
2793eeab
MP
5042014-05-08 Marek Polacek <polacek@redhat.com>
505
506 PR c/61053
507 * c-common.c (min_align_of_type): New function factored out from...
508 (c_sizeof_or_alignof_type): ...here.
509 * c-common.h (min_align_of_type): Declare.
510
f827930a
MP
5112014-05-08 Marek Polacek <polacek@redhat.com>
512
513 PR c/61077
514 * c-common.c (check_main_parameter_types): Warn for _Atomic-qualified
515 parameter type of main.
516
ca49b74e
DD
5172014-05-07 DJ Delorie <dj@redhat.com>
518
519 * c-cppbuiltin.c (print_bits_of_hex): New.
520 (builtin_define_type_minmax): Print values using hex so as not to
521 require a pre-computed list of string values.
522
1d60af08
KZ
5232014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
524 Mike Stump <mikestump@comcast.net>
525 Richard Sandiford <rdsandiford@googlemail.com>
526
527 * c-ada-spec.c: Include wide-int.h.
528 (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Remove.
529 (dump_generic_ada_node): Use wide-int interfaces.
530 * c-common.c: Include wide-int-print.h.
531 (shorten_compare): Use wide-int interfaces and tree_int_cst_lt.
532 (pointer_int_sum): Use wide-int interfaces.
533 (c_common_nodes_and_builtins): Use make_int_cst.
534 (match_case_to_enum_1): Use tree_fits_uhwi_p and tree_fits_shwi_p.
535 (handle_alloc_size_attribute): Use wide-int interfaces.
536 (get_nonnull_operand): Likewise.
537 * c-format.c (get_constant): Use tree_fits_uhwi_p.
538 * c-lex.c: Include wide-int.h.
539 (narrowest_unsigned_type): Take a widest_int rather than two
540 HOST_WIDE_INTs.
541 (narrowest_signed_type): Likewise.
542 (interpret_integer): Update accordingly. Use wide-int interfaces.
543 (lex_charconst): Use wide-int interfaces.
544 * c-pretty-print.c: Include wide-int.h.
545 (pp_c_integer_constant): Use wide-int interfaces.
546 * cilk.c (declare_one_free_variable): Use tree_int_cst_lt instead of
547 INT_CST_LT_UNSIGNED.
548
b15458be
RB
5492014-05-06 Richard Biener <rguenther@suse.de>
550
551 * c-opts.c (c_common_post_options): For -freestanding,
552 -fno-hosted and -fno-builtin disable pattern recognition
553 if not enabled explicitely.
554
6577374e
MP
5552014-05-02 Marek Polacek <polacek@redhat.com>
556
557 * c.opt (Wsizeof-pointer-memaccess): Describe option.
558
d00887e8
MP
5592014-05-01 Marek Polacek <polacek@redhat.com>
560
561 PR c/43245
562 * c.opt (Wdiscarded-qualifiers): Add.
563
f8ed5150
MP
5642014-04-30 Marek Polacek <polacek@redhat.com>
565
566 * c-ubsan.c (ubsan_instrument_division): Handle REAL_TYPEs. Perform
567 INT_MIN / -1 sanitization only for integer types.
568
45484dcf
MP
5692014-04-25 Marek Polacek <polacek@redhat.com>
570
571 PR c/18079
572 * c-common.c (handle_noinline_attribute): Warn if the attribute
573 conflicts with always_inline attribute.
574 (handle_always_inline_attribute): Warn if the attribute conflicts
575 with noinline attribute.
576
38e514c0
MP
5772014-04-25 Marek Polacek <polacek@redhat.com>
578
579 PR c/60156
580 * c-common.c (check_main_parameter_types): Warn about variadic main.
581
44875f92
MS
5822014-04-24 Mike Stump <mikestump@comcast.net>
583
584 * c.opt (Wshadow-ivar): Default to on.
585
dcaaa5a0
DP
5862014-04-24 Dimitris Papavasiliou <dpapavas@gmail.com>
587
588 * c.opt (Wshadow-ivar, flocal-ivars, fivar-visibility): Add.
589
c07d7c02
MP
5902014-04-23 Marek Polacek <polacek@redhat.com>
591
592 * c-common.c (handle_tm_wrap_attribute): Tweak error message.
593
1c33c9b7
JJ
5942014-04-22 Jakub Jelinek <jakub@redhat.com>
595
596 PR sanitizer/60275
597 * c-ubsan.c (ubsan_instrument_return): Return __builtin_trap ()
598 if flag_sanitize_undefined_trap_on_error.
599 (ubsan_instrument_division, ubsan_instrument_shift,
600 ubsan_instrument_vla): Likewise. Use __ubsan_handle_*_abort ()
601 if !flag_sanitize_recover.
602
793c625f
MG
6032014-04-22 Marc Glisse <marc.glisse@inria.fr>
604
605 PR libstdc++/43622
606 * c-common.c (registered_builtin_types): Make non-static.
607 * c-common.h (registered_builtin_types): Declare.
608
b0f1bf36
RB
6092014-04-14 Richard Biener <rguenther@suse.de>
610 Marc Glisse <marc.glisse@inria.fr>
611
612 PR c/60819
613 * c-common.c (convert_vector_to_pointer_for_subscript): Properly
614 apply may-alias the scalar pointer type when applicable.
615
3b07fa4a
IZ
6162014-04-12 Igor Zamyatin <igor.zamyatin@intel.com>
617
618 PR middle-end/60467
619 * cilk.c (cilk_set_spawn_marker): Remove FUNCTION_DECL
620 as possible argument for Cilk_spawn.
621
cbbd2b1c
TB
6222014-04-11 Tobias Burnus <burnus@net-b.de>
623
624 PR c/60194
625 * c.opt (Wformat-signedness): Add
626 * c-format.c(check_format_types): Use it.
627
6415bd5d
JM
6282014-04-11 Jason Merrill <jason@redhat.com>
629
630 PR c++/57926
631 * c-common.c (sync_resolve_size, get_atomic_generic_size): Call
632 default_conversion for an array argument.
633
6525783a
MP
6342014-04-08 Marek Polacek <polacek@redhat.com>
635
636 PR sanitizer/60745
637 * c-ubsan.c: Include asan.h.
638 (ubsan_instrument_return): Call initialize_sanitizer_builtins.
639
880a467b
NS
6402014-04-03 Nathan Sidwell <nathan@codesourcery.com>
641
642 * c.opt (Wnon-virtual-dtor): Auto set when Weffc++.
643
7b59ff2d
MP
6442014-04-02 Marek Polacek <polacek@redhat.com>
645
646 * c-common.h (c_expand_expr): Remove declaration.
647
8edbfaa6
JJ
6482014-03-28 Jakub Jelinek <jakub@redhat.com>
649
650 PR c++/60689
651 * c-common.c (add_atomic_size_parameter): When creating new
652 params vector, push the size argument first.
653
07d72e1d
JJ
6542014-03-26 Jakub Jelinek <jakub@redhat.com>
655
656 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
657 ubsan_instrument_vla, ubsan_instrument_return): Adjust
658 ubsan_create_data callers.
659
b35e0fa0
JJ
6602014-03-22 Jakub Jelinek <jakub@redhat.com>
661
662 PR debug/60603
663 * c-opts.c (c_finish_options): Restore cb_file_change call to
664 <built-in>.
665
39a1ebb3
JJ
6662014-03-13 Jakub Jelinek <jakub@redhat.com>
667
668 PR middle-end/36282
669 * c-pragma.c (apply_pragma_weak): Only look at
670 TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl)) if
671 DECL_ASSEMBLER_NAME_SET_P (decl).
672 (maybe_apply_pending_pragma_weaks): Exit early if
673 vec_safe_is_empty (pending_weaks) rather than only when
674 !pending_weaks.
675 (maybe_apply_pragma_weak): Likewise. If !DECL_ASSEMBLER_NAME_SET_P,
676 set assembler name back to NULL afterwards.
677
a07f6ed2
JM
6782014-03-11 Jason Merrill <jason@redhat.com>
679
680 * c.opt: Add -std=gnu++14.
681
75b107f5
IB
6822014-03-11 Ian Bolton <ian.bolton@arm.com>
683
684 * c-opts.c (c_common_post_options): Don't override
685 -ffp-contract=fast if unsafe-math-optimizations is on.
686
f42c637e
PM
6872014-03-08 Paulo Matos <paulo@matos-sorge.com>
688
689 * c.opt: Enable LTO FE for fshort-double.
690
70e24808
JM
6912014-03-07 Jason Merrill <jason@redhat.com>
692
693 * c.opt: Add -std=c++14.
694
3af9c5e9
MP
6952014-03-06 Marek Polacek <polacek@redhat.com>
696
697 PR c/60197
698 * cilk.c (contains_cilk_spawn_stmt): New function.
699 (contains_cilk_spawn_stmt_walker): Likewise.
700 (recognize_spawn): Give error on invalid use of _Cilk_spawn.
701 * c-common.h (contains_cilk_spawn_stmt): Add declaration.
702
b3bdf019
JJ
7032014-03-03 Jakub Jelinek <jakub@redhat.com>
704
705 * c-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_SIMD.
706 (init_pragma): Call cpp_register_deferred_pragma for PRAGMA_CILK_SIMD
707 even when flag_preprocess_only.
708
ca7e759d
JM
7092014-02-26 Jason Merrill <jason@redhat.com>
710
711 PR c++/59231
712 PR c++/11586
713 * c-common.c (shorten_compare): Don't check
714 c_inhibit_evaluation_warnings.
715
28e41874
JJ
7162014-02-19 Jakub Jelinek <jakub@redhat.com>
717
cca615af
JJ
718 PR c/37743
719 * c-common.c (c_common_nodes_and_builtins): When initializing
720 c_uint{16,32,64}_type_node, also set corresponding
721 uint{16,32,64}_type_node to the same value.
722
28e41874
JJ
723 PR c++/60267
724 * c-pragma.c (init_pragma): Don't call cpp_register_deferred_pragma
725 for PRAGMA_IVDEP if flag_preprocess_only.
726
c2bf53a1
JJ
7272014-02-12 Jakub Jelinek <jakub@redhat.com>
728
729 PR c/60101
730 * c-common.c (merge_tlist): If copy is true, call new_tlist,
731 if false, add ADD itself, rather than vice versa.
732 (verify_tree): For COND_EXPR, don't call merge_tlist with non-zero
733 copy. For SAVE_EXPR, only call merge_tlist once.
734
8fcbce72
JJ
7352014-02-08 Jakub Jelinek <jakub@redhat.com>
736
737 PR middle-end/60092
738 * c-common.c (handle_alloc_size_attribute): Use tree_fits_uhwi_p
739 and tree_to_uhwi.
740 (handle_alloc_align_attribute, handle_assume_aligned_attribute): New
741 functions.
742 (c_common_attribute_table): Add alloc_align and assume_aligned
743 attributes.
744
0a756a3f
MP
7452014-02-06 Marek Polacek <polacek@redhat.com>
746
747 PR c/60087
748 * c-common.c (warn_for_sign_compare): Call warning_at with location
749 instead of warning.
750
7ec4847a
MP
7512014-02-05 Marek Polacek <polacek@redhat.com>
752
753 PR c/53123
754 * c-omp.c (c_finish_omp_atomic): Remove unreachable return
755 statement.
756
66f20604
MP
7572014-02-04 Marek Polacek <polacek@redhat.com>
758
759 PR c/60036
760 * c-common.c (conversion_warning): Unwrap C_MAYBE_CONST_EXPR and/or
761 SAVE_EXPR.
762
5d77fb19
MG
7632014-02-03 Marc Glisse <marc.glisse@inria.fr>
764
765 PR c++/53017
766 PR c++/59211
767 * c-common.c (handle_aligned_attribute, handle_alloc_size_attribute,
768 handle_vector_size_attribute, handle_nonnull_attribute): Call
769 default_conversion on the attribute argument.
770 (handle_nonnull_attribute): Increment the argument number.
771
81e5eca8
MP
7722014-01-31 Marek Polacek <polacek@redhat.com>
773
774 PR c/59963
775 * c-common.c (add_atomic_size_parameter): Pass vNULL to
776 build_function_call_vec.
777 (resolve_overloaded_builtin): Likewise.
778 * c-common.h (build_function_call_vec): Adjust declaration.
779
68fca595
MP
7802014-01-30 Marek Polacek <polacek@redhat.com>
781
782 PR c/59940
783 * c-common.h (unsafe_conversion_p): Adjust declaration.
784 (warnings_for_convert_and_check): Likewise.
785 (convert_and_check): Likewise.
786 * c-common.c (unsafe_conversion_p): Add location parameter. Call
787 expansion_point_location_if_in_system_header on it.
788 (warnings_for_convert_and_check): Add location parameter. Call
789 expansion_point_location_if_in_system_header on it. Use it.
790 (convert_and_check): Add location parameter. Use it.
791 (conversion_warning): Likewise.
792 (c_add_case_label): Adjust convert_and_check calls.
793 (scalar_to_vector): Adjust unsafe_conversion_p calls.
794
b72271b9
BI
7952014-01-24 Balaji V. Iyer <balaji.v.iyer@intel.com>
796
797 * c-common.c (c_define_builtins): Replaced flag_enable_cilkplus with
798 flag_cilkplus.
799 * c-pragma.c (init_pragma): Likewise.
800 * c.opt: Likewise.
801
393e8e8b
MP
8022014-01-23 Marek Polacek <polacek@redhat.com>
803
804 PR c/59846
805 * c-common.c (shorten_compare): Add location_t parameter.
806 * c-common.h (shorten_binary_op): Adjust declaration.
807
f04dda30
MP
8082014-01-23 Marek Polacek <polacek@redhat.com>
809
810 PR c/58346
811 * c-common.c (pointer_to_zero_sized_aggr_p): New function.
812 * c-common.h: Declare it.
813
621955cb
EB
8142014-01-20 Eric Botcazou <ebotcazou@adacore.com>
815
816 * c-ada-spec.h (dump_ada_specs): Revert prototype change.
817 * c-ada-spec.c (dump_ads): Likewise.
818 (cpp_check): Likewise.
819 (dump_ada_specs): Likewise.
820
8212014-01-15 Laurent Alfonsi <laurent.alfonsi@st.com>
67bf2939
LA
822
823 PR c++/49718
824 * c-common.c (handle_no_instrument_function_attribute): Allow
825 no_instrument_function attribute in class member
826 definition/declaration.
827
241f845a
JJ
8282014-01-15 Jakub Jelinek <jakub@redhat.com>
829
830 PR c/58943
831 * c-omp.c (c_finish_omp_atomic): Set in_late_binary_op around
832 build_modify_expr with non-NOP_EXPR opcode. Handle return from it
833 being COMPOUND_EXPR.
834 (c_finish_omp_for): Handle incr being COMPOUND_EXPR with first
835 operand a SAVE_EXPR and second MODIFY_EXPR.
836
e83b8e2e
JJ
8372014-01-09 Jakub Jelinek <jakub@redhat.com>
838
839 PR target/58115
840 * c-pch.c (c_common_write_pch): Call
841 prepare_target_option_nodes_for_pch.
842
23a5b65a
RS
8432014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
844
845 Update copyright years
846
f9030485
RS
8472014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
848
849 * array-notation-common.c, c-cilkplus.c: Use the standard form for
850 the copyright notice.
851
f2aa696b
EB
8522013-12-28 Eric Botcazou <ebotcazou@adacore.com>
853
854 * c-ada-spec.c (print_constructor): New function.
855 (print_destructor): Retrieve the origin of the destructor.
856 (print_ada_declaration): Revamp handling of constructors/destructors.
857
1f26ac87
JM
8582013-12-23 Stuart Hastings <stuart@apple.com>
859 Bill Maddox <maddox@google.com>
860 Jason Merrill <jason@redhat.com>
861
862 * c.opt: Add -fdeclone-ctor-dtor.
863 * c-opts.c (c_common_post_options): Default to on iff -Os.
864
41958c28
BI
8652013-12-18 Balaji V. Iyer <balaji.v.iyer@intel.com>
866
867 * c-common.c (c_common_attribute_table): Added "cilk simd function"
868 attribute.
869 * c-pragma.h (enum pragma_cilk_clause): Remove.
870 (enum pragma_omp_clause): Added the following fields:
871 PRAGMA_CILK_CLAUSE_NOMASK, PRAGMA_CILK_CLAUSE_MASK,
872 PRAGMA_CILK_CLAUSE_VECTORLENGTH, PRAGMA_CILK_CLAUSE_NONE,
873 PRAGMA_CILK_CLAUSE_LINEAR, PRAGMA_CILK_CLAUSE_PRIVATE,
874 PRAGMA_CILK_CLAUSE_FIRSTPRIVATE, PRAGMA_CILK_CLAUSE_LASTPRIVATE,
875 PRAGMA_CILK_CLAUSE_UNIFORM.
876
877
12893402
BI
8782013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com>
879
880 * cilk.c (cilk_outline): Made this function non-static.
881 (gimplify_cilk_spawn): Removed pre_p and post_p arguments.
882 (create_cilk_wrapper): Added a new parameter: a function pointer.
883 (c_install_body_w_frame_cleanup): Remove
884 (extract_free_variables): Added VEC_INIT_EXPR and CONSTRUCTOR case.
885 * c-common.h (cilk_outline): New prototype.
886 (gimplify_cilk_spawn): Removed two parameters.
887 (cilk_install_body_with_frame_cleanup): New prototype.
888 * c-gimplify.c (c_gimplify_expr): Added MODIFY_EXPR, CALL_EXPR and
889 CILK_SPAWN_STMT case.
890
085b42ed
BS
8912013-12-11 Bernd Schmidt <bernds@codesourcery.com>
892
2ce064c3
BS
893 * c-common.c (c_fully_fold_internal): Handle ADDR_SPACE_CONVERT_EXPR.
894
085b42ed
BS
895 * c-common.h (enum c_tree_index): Remove CTI_INT_ARRAY_TYPE.
896 (int_array_type_node): Remove.
897 * c-common.c (c_common_nodes_and_builtins): Don't build it.
898
9e36c9ed
MP
8992013-12-05 Marek Polacek <polacek@redhat.com>
900
901 PR c/52023
902 * c-common.c (c_sizeof_or_alignof_type): Move a declaration into
903 [ADJUST_FIELD_ALIGN].
904
296674db
JM
9052013-12-04 Joseph Myers <joseph@codesourcery.com>
906
907 PR c/52023
908 * c-common.c (c_sizeof_or_alignof_type): Add parameter min_alignof
909 and check field alignment if set.
910 * c-common.h (c_sizeof_or_alignof_type): Update prototype.
911 (c_sizeof, c_alignof): Update calls to c_sizeof_or_alignof_type.
912
31e071ae
MP
9132013-12-04 Jakub Jelinek <jakub@redhat.com>
914 Marek Polacek <polacek@redhat.com>
915
916 * c-gimplify.c (c_gimplify_expr): If doing the integer-overflow
917 sanitization, call unsigned_type_for only when !TYPE_OVERFLOW_WRAPS.
918
d7947e19
L
9192013-11-29 H.J. Lu <hongjiu.lu@intel.com>
920
921 PR c/59309
922 * cilk.c (gimplify_cilk_spawn): Properly handle function without
923 arguments.
924
fad7652e
JJ
9252013-11-29 Jakub Jelinek <jakub@redhat.com>
926
927 PR c/59280
928 * c-common.c (get_priority): If TREE_VALUE (args) is IDENTIFIER_NODE,
929 goto invalid. If it is error_mark_node, don't issue further
930 diagnostics.
931
8b5e1202
SO
9322013-11-28 Sergey Ostanevich <sergos.gnu@gmail.com>
933
934 * c.opt (Wopenmp-simd): New.
935
0a508bb6
JJ
9362013-11-22 Jakub Jelinek <jakub@redhat.com>
937
938 * c-ubsan.h (ubsan_instrument_return): New prototype.
939 * c-ubsan.c (ubsan_instrument_return): New function.
940
2fb9a547
AM
9412013-11-22 Andrew MacLeod <amacleod@redhat.com>
942
943 * c-common.c: Add required include files from gimple.h.
944 * c-gimplify.c: Likewise
945 * cilk.c: Likewise
946
8400e75e
DM
9472013-11-22 David Malcolm <dmalcolm@redhat.com>
948
949 * c-common.c (unsafe_conversion_p): Remove use of
950 EXPR_LOC_OR_HERE macro.
951 (conversion_warning): Likewise.
952 (warnings_for_convert_and_check): Likewise.
953 (warn_for_collisions_1): Likewise.
954 (shorten_compare): Likewise, and remove use of in_system_header
955 macro, using the location from the former.
956 * c-lex.c (dump_one_header): Remove use of input_filename macro.
957 (cb_def_pragma): Remove use of in_system_header macro.
958 (lex_string): Likewise.
959 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
960
eb1ce453
KZ
9612013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com>
962 Mike Stump <mikestump@comcast.net>
963 Richard Sandiford <rdsandiford@googlemail.com>
964
965 * c-ada-spec.c (is_simple_enum): Use tree_to_shwi and tree_to_uhwi
966 instead of TREE_INT_CST_LOW, in cases where there is a protecting
967 tree_fits_shwi_p or tree_fits_uhwi_p.
968 (dump_generic_ada_node): Likewise.
969 * c-format.c (check_format_arg): Likewise.
970 * c-pretty-print.c (pp_c_integer_constant): Likewise.
971
6b3b8c27
KZ
9722013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com>
973
974 * c-common.c (check_function_arguments_recurse): Use tree_to_uhwi.
975
49b0aa18
JC
9762013-11-19 Joshua J Cogliati <jrincayc@yahoo.com>
977
978 PR c/53001
979 * c-common.c (unsafe_conversion_p): Make this function
980 return an enumeration with more detail.
981 (conversion_warning): Use the new return type of
982 unsafe_conversion_p to separately warn either about conversions
983 that lower floating point number precision or about the other
984 kinds of conversions.
985 * c-common.h (enum conversion_safety): New enumeration.
986 (unsafe_conversion_p): switching return type to
987 conversion_safety enumeration.
988 * c.opt: Adding new warning -Wfloat-conversion and
989 enabling it with -Wconversion.
990
b826515a
BS
9912013-11-19 Basile Starynkevitch <basile@starynkevitch.net>
992
993 * c-opts.c: Include plugin.h.
994 (cb_file_change): Invoke plugin event PLUGIN_INCLUDE_FILE.
995
b9a55b13
MP
9962013-11-19 Marek Polacek <polacek@redhat.com>
997
998 * c-ubsan.c (ubsan_instrument_division): Adjust ubsan_create_data
999 call.
1000 (ubsan_instrument_shift): Likewise.
1001 (ubsan_instrument_vla): Likewise.
1002
7d362f6c
RS
10032013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1004
1005 * c-common.c (convert_vector_to_pointer_for_subscript): Remove
1006 cast to unsigned type.
1007
386b1f1f
RS
10082013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1009
1010 * c-common.c (fold_offsetof_1): Use tree_to_uhwi rather than
1011 tree_low_cst.
1012 (complete_array_type): Update comment to refer to tree_to_[su]hwi
1013 rather than tree_low_cst.
1014
ae7e9ddd
RS
10152013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1016
1017 * c-common.c, c-cppbuiltin.c: Replace tree_low_cst (..., 1) with
1018 tree_to_uhwi throughout.
1019
9439e9a1
RS
10202013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1021
1022 * c-common.c, c-format.c, c-omp.c, c-pretty-print.c: Replace
1023 tree_low_cst (..., 0) with tree_to_shwi throughout.
1024
cc269bb6
RS
10252013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1026
1027 * c-ada-spec.c, c-common.c, c-pretty-print.c: Replace
1028 host_integerp (..., 1) with tree_fits_uhwi_p throughout.
1029
9541ffee
RS
10302013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1031
1032 * c-ada-spec.c, c-common.c, c-format.c, c-pretty-print.c: Replace
1033 host_integerp (..., 0) with tree_fits_shwi_p throughout.
1034
c02065fc
AH
10352013-11-15 Aldy Hernandez <aldyh@redhat.com>
1036
1037 * c-cilkplus.c: New file.
1038 * c-common.c (readonly_error): Add location argument.
1039 * c-common.h (readonly_error): Same.
1040 (c_finish_cilk_clauses): Protoize.
1041 (c_check_cilk_loop): Same.
1042 c-omp.c (c_finish_omp_for): Handle CILK_SIMD nodes.
1043 Do not fail on error_mark_node.
1044 Abstract increment canonicalization to here...
1045 (c_omp_for_incr_canonicalize_ptr): New.
1046 c-pragma.c (init_pragma): Register "simd" pragma.
1047 c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_SIMD.
1048 (enum pragma_cilk_clause): New.
1049
9cc65f15
RS
10502013-11-15 Richard Sandiford <rdsandiford@googlemail.com>
1051
1052 * c-pretty-print.c (pp_c_character_constant): Remove unnecessary
1053 wchar_type and host_integerp checks.
1054
18f429e2
AM
10552013-11-14 Andrew MacLeod <amacleod@redhat.com>
1056
1057 * c-common.c: Likewise.
1058 * c-gimplify.c: Likewise.
1059 * cilk.c: Likewise.
1060
d8a2d370
DN
10612013-11-14 Diego Novillo <dnovillo@google.com>
1062
1063 * c-common.c: Include fold-const.h.
1064 Include stor-layout.h.
1065 Include calls.h.
1066 Include stringpool.h.
1067 Include attribs.h.
1068 Include varasm.h.
1069 Include trans-mem.h.
1070 * c-cppbuiltin.c: Include stor-layout.h.
1071 Include stringpool.h.
1072 * c-format.c: Include stringpool.h.
1073 * c-lex.c: Include stringpool.h.
1074 Include stor-layout.h.
1075 * c-pragma.c: Include stringpool.h.
1076 Include attribs.h.
1077 Include varasm.h.
1078 Include gcc-symtab.h.
1079 * c-pretty-print.c: Include stor-layout.h.
1080 Include attribs.h.
1081 * cilk.c: Include stringpool.h.
1082 Include calls.h.
1083
38b7bc7f
JM
10842013-11-13 Joseph Myers <joseph@codesourcery.com>
1085
1086 * c-common.h (enum rid): Add RID_AUTO_TYPE.
1087 * c-common.c (c_common_reswords): Add __auto_type.
1088 (keyword_begins_type_specifier): Handle RID_AUTO_TYPE.
1089
45b0be94
AM
10902013-11-12 Andrew MacLeod <amacleod@redhat.com>
1091
18f429e2
AM
1092 * c-common.c: Include gimplify.h.
1093 * c-gimplify.c: Likewise.
1094 * cilk.c: Likewise.
1095 * c-omp.c: Include gimple-expr.h instead of gimple.h.
1096 * c-ubsan.c: Don't include gimple.h.
45b0be94 1097
582d9b50
JM
10982013-11-12 Joseph Myers <joseph@codesourcery.com>
1099
1100 * c-common.c (c_common_reswords): Add _Thread_local.
1101
6b28e197
JM
11022013-11-09 Joseph Myers <joseph@codesourcery.com>
1103
1104 * c-common.c (atomic_size_supported_p): New function.
1105 (resolve_overloaded_atomic_exchange)
1106 (resolve_overloaded_atomic_compare_exchange)
1107 (resolve_overloaded_atomic_load, resolve_overloaded_atomic_store):
1108 Use it instead of comparing size with a local list of sizes.
1109
267bac10
JM
11102013-11-07 Andrew MacLeod <amacleod@redhat.com>
1111 Joseph Myers <joseph@codesourcery.com>
1112
1113 * c-common.h (enum rid): Add RID_ATOMIC.
1114 * c-common.c (c_common_reswords): Add _Atomic.
1115 (sync_resolve_params): Use TYPE_MAIN_VARIANT on pointer argument.
1116 (keyword_is_type_qualifier): Accept RID_ATOMIC.
1117 * c-format.c (check_format_types): Check for extra _Atomic
1118 qualifiers in format argument.
1119 * c-pretty-print.c (pp_c_cv_qualifiers): Handle atomic qualifier.
1120 (pp_c_type_qualifier_list): Mention _Atomic in comment.
1121
5157b91e
TB
11222013-11-06 Tobias Burnus <burnus@net-b.de>
1123
1124 * c-common.c (reason_option_codes_t): Add CPP_W_DATE_TIME.
1125
6dbe0958
JM
11262013-11-06 Joseph Myers <joseph@codesourcery.com>
1127
1128 * c-opts.c (c_common_post_options): Set -ffp-contract=off in C
1129 standards modes.
1130 * c-cppbuiltin.c (cpp_iec_559_value): Consider -ffp-contract=fast
1131 to mean lack of IEEE 754 support.
1132
e8ff5196
TB
11332013-11-05 Tobias Burnus <burnus@net-b.de>
1134
1135 * c.opt (-Wdate-time): New option
1136 * c-opts.c (sanitize_cpp_opts): Pass on to libcpp.
1137
254a0760
JM
11382013-11-05 Joseph Myers <joseph@codesourcery.com>
1139
1140 * c-cppbuiltin.c (cpp_iec_559_value): Test
1141 flag_excess_precision_cmdline not flag_excess_precision.
1142
6d7f7e0a
TB
11432013-11-05 Tobias Burnus <burnus@net-b.de>
1144
1145 * c.opt (fopenmp-simd): New option.
1146 * c-pragma.c (omp_pragmas): Move pragmas which can contain simd to ...
1147 (omp_pragmas): ... this new struct.
1148 (c_pp_lookup_pragma): Also walk omp_pragmas.
1149 (init_pragma): Init pragmas for -fopenmp-simd.
1150
55a7f02f
MP
11512013-11-04 Marek Polacek <polacek@redhat.com>
1152
1153 PR c++/58979
1154 * c-common.c (invalid_indirection_error): Handle RO_ARROW_STAR case.
1155
9193fb05
JM
11562013-11-04 Joseph Myers <joseph@codesourcery.com>
1157
1158 * c-cppbuiltin.c (cpp_iec_559_value, cpp_iec_559_complex_value):
1159 New functions.
1160 (c_cpp_builtins): Define __GCC_IEC_559 and __GCC_IEC_559_COMPLEX.
1161
94159ecf
EB
11622013-11-04 Eric Botcazou <ebotcazou@adacore.com>
1163
1164 * c-ada-spec.h (cpp_operation): Add IS_TRIVIAL.
1165 (dump_ada_specs): Adjust prototype of second callback.
1166 * c-ada-spec.c (cpp_check): New global variable.
1167 (dump_ada_nodes): Remove cpp_check parameter and do not pass it down.
1168 (print_generic_ada_decl): Likewise.
1169 (has_static_fields): Change return type to bool and add guard.
1170 (has_nontrivial_methods): New predicate.
1171 (is_tagged_type): Change return type to bool.
1172 (separate_class_package): Call has_nontrivial_methods.
1173 (pp_ada_tree_identifier): Minor tweaks.
1174 (dump_ada_function_declaration): Adjust calls to dump_generic_ada_node.
1175 (dump_ada_array_domains): Likewise.
1176 (dump_ada_array_type): Likewise.
1177 (dump_template_types): Remove cpp_check parameter and do not pass it to
1178 dump_generic_ada_node.
1179 (dump_ada_template): Likewise.
1180 (dump_generic_ada_node): Remove cpp_check parameter and do not pass it
1181 recursively.
1182 (print_ada_methods): Change return type to integer. Remove cpp_check
1183 parameter and do not pass it down.
1184 (dump_nested_types): Remove cpp_check parameter and do not pass it to
1185 dump_generic_ada_node.
1186 (print_ada_declaration): Likewise. Test RECORD_OR_UNION_TYPE_P before
1187 accessing methods.
1188 (print_ada_struct_decl): Remove cpp_check parameter and do not pass it
1189 down. Use has_nontrivial_methods to recognize C++ classes. Use return
1190 value of print_ada_methods.
1191 (dump_ads): Rename cpp_check parameter to check and adjust prototype.
1192 Set cpp_check to it before invoking dump_ada_nodes.
1193 (dump_ada_specs): Likewise.
1194
b906f4ca
MP
11952013-11-03 Marek Polacek <polacek@redhat.com>
1196
1197 * c-ubsan.c: Don't include hash-table.h.
1198 (ubsan_instrument_vla): New function.
1199 * c-ubsan.h: Declare it.
1200
5e20cdc9
DM
12012013-10-31 David Malcolm <dmalcolm@redhat.com>
1202
1203 Automated part of renaming of symtab_node_base to symtab_node.
1204
1205 Patch autogenerated by rename_symtab.py from
1206 https://github.com/davidmalcolm/gcc-refactoring-scripts
1207 revision 58bb219cc090b2f4516a9297d868c245495ee622
1208
1209 * c-pragma.c (maybe_apply_pending_pragma_weaks): Rename
1210 symtab_node_base to symtab_node.
1211
7057e645
ESR
12122013-10-31 Edward Smith-Rowland <3dw4rd@verizon.net>
1213
1214 Implement C++14 digit separators.
1215 * c-lex.c (interpret_float): Remove digit separators from scratch string
1216 before building real literal.
1217
193ea7bc
JJ
12182013-10-30 Jakub Jelinek <jakub@redhat.com>
1219
1220 * cilk.c (create_cilk_helper_decl): Use HOST_WIDE_INT_PRINT_DEC.
1221
939b37da
BI
12222013-10-29 Balaji V. Iyer <balaji.v.iyer@intel.com>
1223
1224 * c-common.c (c_common_reswords[]): Added _Cilk_spawn and _Cilk_sync
1225 fields.
1226 (c_define_builtins): Called cilk_init_builtins if Cilk Plus is
1227 enabled.
1228 * c-common.h (enum rid): Added RID_CILK_SPAWN and RID_CILK_SYNC.
1229 (insert_cilk_frame): New prototype.
1230 (cilk_init_builtins): Likewise.
1231 (gimplify_cilk_spawn): Likewise.
1232 (c_cilk_install_body_w_frame_cleanup): Likewise.
1233 (cilk_detect_spawn_and_unwrap): Likewise.
1234 (cilk_set_spawn_marker): Likewise.
1235 (build_cilk_sync): Likewise.
1236 (build_cilk_spawn): Likewise.
1237 * cilk.c: New file.
1238
67348ccc
DM
12392013-10-29 David Malcolm <dmalcolm@redhat.com>
1240
1241 Patch autogenerated by refactor_symtab.py from
1242 https://github.com/davidmalcolm/gcc-refactoring-scripts
1243 revision 58bb219cc090b2f4516a9297d868c245495ee622
1244
1245 * c-gimplify.c (c_genericize): Update for conversion of symtab types
1246 to a true class hierarchy.
1247 * c-pragma.c (maybe_apply_pending_pragma_weaks): Likewise.
1248
d570872d
RS
12492013-10-27 Richard Sandiford <rdsandiford@googlemail.com>
1250
1251 * c-lex.c (interpret_integer): Remove call to cpp_num_sign_extend.
1252
98906124
JL
12532013-10-26 Jeff Law <law@redhat.com>
1254
1255 * c-family/c-common.c (c_define_builtins): Remove mudflap support.
1256 * c-family/c.opt: Ignore and warn for mudflap options.
1257
d73749df 12582013-10-24 Tobias Burnus <burnus@net-b.de>
8170608b
TB
1259
1260 PR other/33426
1261 * c-pragma.c (init_pragma) Add #pragma ivdep handling.
1262 * c-pragma.h (pragma_kind): Add PRAGMA_IVDEP.
1263
3f04b1bb
JM
12642013-10-23 Jason Merrill <jason@redhat.com>
1265
1266 * c-format.c (gcc_cxxdiag_char_table): Add %X.
1267
acf0174b
JJ
12682013-10-11 Jakub Jelinek <jakub@redhat.com>
1269
acd15a28
JJ
1270 * c-common.h (omp_clause_mask::operator !=): New method.
1271 * c-omp.c (c_omp_split_clauses): Use if ((mask & something) != 0)
1272 instead of if (mask & something) tests everywhere.
1273
acf0174b
JJ
1274 * c-cppbuiltin.c (c_cpp_builtins): Predefine _OPENMP to
1275 201307 instead of 201107.
1276 * c-common.c (DEF_FUNCTION_TYPE_8): Define.
1277 (c_common_attribute_table): Add "omp declare target" and
1278 "omp declare simd" attributes.
1279 (handle_omp_declare_target_attribute,
1280 handle_omp_declare_simd_attribute): New functions.
1281 * c-omp.c: Include c-pragma.h.
1282 (c_finish_omp_taskgroup): New function.
1283 (c_finish_omp_atomic): Add swapped argument, if true,
1284 build the operation first with rhs, lhs arguments and use NOP_EXPR
1285 build_modify_expr.
1286 (c_finish_omp_for): Add code argument, pass it down to make_code.
1287 (c_omp_split_clauses): New function.
1288 (c_split_parallel_clauses): Removed.
1289 (c_omp_declare_simd_clause_cmp, c_omp_declare_simd_clauses_to_numbers,
1290 c_omp_declare_simd_clauses_to_decls): New functions.
1291 * c-common.h (omp_clause_mask): New type.
1292 (OMP_CLAUSE_MASK_1): Define.
1293 (omp_clause_mask::omp_clause_mask, omp_clause_mask::operator &=,
1294 omp_clause_mask::operator |=, omp_clause_mask::operator ~,
1295 omp_clause_mask::operator |, omp_clause_mask::operator &,
1296 omp_clause_mask::operator <<, omp_clause_mask::operator >>,
1297 omp_clause_mask::operator ==): New methods.
1298 (enum c_omp_clause_split): New.
1299 (c_finish_omp_taskgroup): New prototype.
1300 (c_finish_omp_atomic): Add swapped argument.
1301 (c_finish_omp_for): Add code argument.
1302 (c_omp_split_clauses): New prototype.
1303 (c_split_parallel_clauses): Removed.
1304 (c_omp_declare_simd_clauses_to_numbers,
1305 c_omp_declare_simd_clauses_to_decls): New prototypes.
1306 * c-pragma.c (omp_pragmas): Add new OpenMP 4.0 constructs.
1307 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_CANCEL,
1308 PRAGMA_OMP_CANCELLATION_POINT, PRAGMA_OMP_DECLARE_REDUCTION,
1309 PRAGMA_OMP_DISTRIBUTE, PRAGMA_OMP_END_DECLARE_TARGET, PRAGMA_OMP_SIMD,
1310 PRAGMA_OMP_TARGET, PRAGMA_OMP_TASKGROUP and PRAGMA_OMP_TEAMS.
1311 Remove PRAGMA_OMP_PARALLEL_FOR and PRAGMA_OMP_PARALLEL_SECTIONS.
1312 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_ALIGNED,
1313 PRAGMA_OMP_CLAUSE_DEPEND, PRAGMA_OMP_CLAUSE_DEVICE,
1314 PRAGMA_OMP_CLAUSE_DIST_SCHEDULE, PRAGMA_OMP_CLAUSE_FOR,
1315 PRAGMA_OMP_CLAUSE_FROM, PRAGMA_OMP_CLAUSE_INBRANCH,
1316 PRAGMA_OMP_CLAUSE_LINEAR, PRAGMA_OMP_CLAUSE_MAP,
1317 PRAGMA_OMP_CLAUSE_NOTINBRANCH, PRAGMA_OMP_CLAUSE_NUM_TEAMS,
1318 PRAGMA_OMP_CLAUSE_PARALLEL, PRAGMA_OMP_CLAUSE_PROC_BIND,
1319 PRAGMA_OMP_CLAUSE_SAFELEN, PRAGMA_OMP_CLAUSE_SECTIONS,
1320 PRAGMA_OMP_CLAUSE_SIMDLEN, PRAGMA_OMP_CLAUSE_TASKGROUP,
1321 PRAGMA_OMP_CLAUSE_THREAD_LIMIT, PRAGMA_OMP_CLAUSE_TO and
1322 PRAGMA_OMP_CLAUSE_UNIFORM.
1323
826cacfe
MG
13242013-10-09 Marc Glisse <marc.glisse@inria.fr>
1325
1326 PR tree-optimization/20318
1327 * c-common.c (handle_returns_nonnull_attribute): New function.
1328 (c_common_attribute_table): Add returns_nonnull.
1329
2284b034
MG
13302013-10-03 Marc Glisse <marc.glisse@inria.fr>
1331
1332 PR c++/19476
1333 * c.opt (fcheck-new): Move to common.opt.
1334
b56e9788
MP
13352013-09-25 Marek Polacek <polacek@redhat.com>
1336 Jakub Jelinek <jakub@redhat.com>
1337
1338 PR sanitizer/58413
1339 * c-ubsan.c (ubsan_instrument_shift): Don't instrument
1340 an expression if we can prove it is correct.
1341 (ubsan_instrument_division): Likewise. Remove unnecessary
1342 check.
1343
ce6923c5
MP
13442013-09-18 Marek Polacek <polacek@redhat.com>
1345
1346 PR sanitizer/58411
1347 * c-common.c (handle_no_sanitize_undefined_attribute): New function.
1348 Declare it.
1349 (struct attribute_spec c_common_att): Add no_sanitize_undefined.
1350
fb5610fb
IS
13512013-09-14 Iain Sandoe <iain@codesourcery.com>
1352
1353 PR target/48094
1354 * c.opt (fgnu-runtime, fnext-runtime, fobjc-abi-version,
1355 fobjc-gc, freplace-objc-classes): Accept for LTO.
1356
88b0e79e
JC
13572013-09-13 Jacek Caban <jacek@codeweavers.com>
1358
1359 * c-target.def: New hook
1360
c9b0866a
PC
13612013-09-09 Paolo Carlini <paolo.carlini@oracle.com>
1362
1363 PR c++/43452
1364 * c.opt (Wdelete-incomplete): Add.
1365
0af94e6f
JR
13662013-09-08 Joern Rennecke <joern.rennecke@embecosm.com>
1367
1368 * c-common.c (same_scalar_type_ignoring_signedness): Delete.
1369 (vector_types_compatible_elements_p): New function.
1370 * c-common.h: (same_scalar_type_ignoring_signedness): Delete
1371 declaration.
1372 (vector_types_compatible_elements_p): Declare.
1373
7c26172c
GDR
13742013-09-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
1375
1376 * c-pretty-print.h (c_pretty_printer::simple_type_specifier): Now
1377 a virtual member function.
1378 (pp_simple_type_specifier): Remove.
1379 (pp_c_type_specifier): Likewise.
1380 * c-pretty-print.c (c_pretty_printer::simple_type_specifier):
1381 Rename from pp_c_type_specifier. Adjust.
1382 (c_pretty_printer::c_pretty_printer): Do not assign to
1383 simple_type_specifier.
1384
20059c8b
GDR
13852013-09-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
1386
1387 * c-pretty-print.h (c_pretty_printer::type_id): Now a virtual
1388 member function.
1389 (c_pretty_printer::storage_class_specifier): Likewise.
1390 (c_pretty_printer::initializer): Likewise.
1391 (pp_declaration): Remove.
1392 (pp_declaration_specifiers): Likewise.
1393 (pp_abstract_declarator): Likewise.
1394 (pp_declarator): Likewise.
1395 (pp_type_id): Likewise.
1396 (pp_statement): Likewise.
1397 (pp_constant): Likewise.
1398 (pp_id_expression): Likewise.
1399 (pp_primary_expression): Likewise.
1400 (pp_unary_expression): Likewise.
1401 (pp_multiplicative_expression): Likewise.
1402 (pp_conditional_expression): Likewise.
1403 (pp_assignment_expression): Likewise.
1404 (pp_expression): Likewise.
1405 (pp_c_type_id): Likewise.
1406 (pp_c_storage_class_specifier): Likewise.
1407 * c-pretty-print.c (pp_c_type_cast): Tidy.
1408 (pp_c_pointer): Likewise.
1409 (pp_c_type_specifier): Likewise.
1410 (pp_c_parameter_type_list): Likewise.
1411 (pp_c_function_definition): Likewise.
1412 (pp_c_init_declarator): Likewise.
1413 (pp_c_initializer_list): Likewise.
1414 (pp_c_constructor_elts): Likewise.
1415 (c_pretty_printer::direct_abstract_declarator): Likewise.
1416 (c_pretty_printer::declaration_specifiers): Likewise.
1417 (c_pretty_printer::primary_expression): Likewise.
1418 (c_pretty_printer::postfix_expression): Likewise.
1419 (c_pretty_printer::type_id): Rename from pp_c_type_id.
1420 (c_pretty_printer::storage_class_specifier): Rename from
1421 pp_c_storage_class_specifier.
1422 (c_pretty_printer::initializer): Rename from pp_c_initializer.
1423 (c_pretty_printer::c_pretty_printer): Do not assign to type_id,
1424 storage_class_specifier, initializer, offset_list, flags.
1425
de5a5fa1
MP
14262013-08-30 Marek Polacek <polacek@redhat.com>
1427
1428 * c-ubsan.c: New file.
1429 * c-ubsan.h: New file.
1430
8f0e4d72
GDR
14312013-08-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
1432
1433 * c-pretty-print.h (c_pretty_printer::declaration): Now a virtual
1434 member function.
1435 (c_pretty_printer::declaration_specifiers): Likewise.
1436 (c_pretty_printer::declarator): Likewise.
1437 (c_pretty_printer::abstract_declarator): Likewise.
1438 (c_pretty_printer::direct_abstract_declarator): Likewise.
1439 (c_pretty_printer::direct_declarator): Likewise.
1440 (c_pretty_printer::function_specifier): Likewise.
1441 (pp_declaration): Adjust.
1442 (pp_declaration_specifiers): Likewise.
1443 (pp_abstract_declarator): Likewise.
1444 (pp_direct_declarator): Likewise.
1445 (pp_function_specifier): Likewise.
1446 (pp_direct_abstract_declarator): Remove as unused.
1447 (pp_c_declaration): Remove.
1448 (pp_c_declaration_specifiers): Likewise.
1449 (pp_c_declarator): Likewise.
1450 (pp_c_direct_declarator): Likewise.
1451 (pp_c_function_specifier): Likewise.
1452 (pp_c_direct_abstract_declarator): Likewise.
1453 * c-pretty-print.c (c_pretty_printer::abstract_declarator): Rename
1454 from pp_c_abstract_declarator. Adjust.
1455 (c_pretty_printer::direct_abstract_declarator): Rename from
1456 pp_c_direct_abstract_declarator. Adjust.
1457 (c_pretty_printer::function_specifier): Rename from
1458 pp_c_function_specifier. Adjust.
1459 (c_pretty_printer::declaration_specifiers): Rename from
1460 pp_c_declaration_specifiers. Adjust.
1461 (c_pretty_printer::direct_declarator): Rename from
1462 pp_c_direct_declarator. Adjust.
1463 (c_pretty_printer::declarator): Rename from pp_c_declarator. Adjust.
1464 (c_pretty_printer::declaration): Rename from pp_c_declaration. Adjust.
1465 (c_pretty_printer::c_pretty_printer): Do not assign to
1466 declaration, declaration_specifiers, declarator,
1467 direct_declarator, direct_abstract_declarator, function_specifier.
1468
00d34d3a
GDR
14692013-08-26 Gabriel Dos Reis <gdre@integrable-solutions.net>
1470
1471 * c-pretty-print.h (c_pretty_printer::unary_expression): Now a
1472 virtual member function.
1473 (c_pretty_printer::multiplicative_expression): Likewise.
1474 (c_pretty_printer::conditional_expression): Likewise.
1475 (c_pretty_printer::assignment_expression): Likewise.
1476 (c_pretty_printer::expression): Likewise.
1477 (pp_unary_expression): Adjust.
1478 (pp_multiplicative_expression): Likewise.
1479 (pp_assignment_expression): Likewise.
1480 (pp_conditional_expression): Likewise.
1481 (pp_expression): Likewise.
1482 * c-pretty-print.c (c_pretty_printer::unary_expression): Rename
1483 from pp_c_unary_expression. Adjust.
1484 (c_pretty_printer::multiplicative_expression): Rename from
1485 pp_c_multiplicative_expression. Adjust.
1486 (c_pretty_printer::conditional_expression): Rename from
1487 pp_c_conditional_expression. Adjust.
1488 (c_pretty_printer::assignment_expression): Rename from
1489 pp_c_assignment_expression. Adjust.
1490 (c_pretty_printer::expression): Rename from pp_c_expression. Adjust.
1491 (c_pretty_printer::c_pretty_printer): Do not assign to
1492 unary_expression, multiplicative_expression,
1493 conditional_expression, expression.
1494
fb22178f
GDR
14952013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
1496
1497 * c-pretty-print.h (c_pretty_printer::postfix_expression): Now a
1498 virtual member function.
1499 (pp_postfix_expression): Adjust.
1500 (pp_c_postfix_expression): Remove.
1501 * c-pretty-print.c (c_pretty_printer::postfix_expression): Rename
1502 from pp_c_postfix_expression. Adjust.
1503 (c_pretty_printer::c_pretty_printer): Do not assign to
1504 postfix_expression.
1505
7ecc2600
GDR
15062013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
1507
1508 * c-pretty-print.h (c_pretty_printer::primary_expression): Now a
1509 virtua member function.
1510 (pp_primary_expression): Adjust.
1511 (pp_c_primary_expression): Remove.
1512 * c-pretty-print.c (c_pretty_printer::primary_expression): Rename
1513 from pp_c_primary_expression. Adjust.
1514 (pp_c_initializer_list): Use pp_primary_expression.
1515 (c_pretty_printer::c_pretty_printer): Do not assign to
1516 primary_expression.
1517
0691175f
GDR
15182013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
1519
1520 * c-pretty-print.h (c_pretty_printer::translate_string): Declare.
1521 * c-pretty-print.c (M_): Remove.
1522 (c_pretty_printer::translate_string): Define.
1523 (pp_c_type_specifier): Use it.
1524 (pp_c_primary_expression): Likewise.
1525 (pp_c_expression): Likewise.
1526
66dfe4c4
GDR
15272013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
1528
1529 * c-pretty-print.h (c_pretty_printer::id_expression): Now a
1530 virtual function.
1531 (pp_c_id_expression): Remove.
1532 (pp_id_expression): Adjust.
1533 * c-pretty-print.c (c_pretty_printer::id_expression): Rename from
1534 pp_c_id_expression. Adjust.
1535 (pp_c_postfix_expression): Use pp_id_expression.
1536 (c_pretty_printer::c_pretty_printer): Do not assign to id_expression.
1537
ca43e9d5
GDR
15382013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
1539
1540 * c-pretty-print.h (c_pretty_printer::constant): Now a virtual
1541 member function.
1542 (pp_constant): Adjust.
1543 (pp_c_constant): Remove.
1544 * c-pretty-print.c (c_pretty_printer::constant): Rename from
1545 pp_c_constant. Adjust.
1546 (pp_c_constant)
1547 (pp_c_primary_expression): Call pp_constant in lieu of pp_c_constant.
1548 (c_pretty_printer::c_pretty_printer): Remove assignment to constant.
1549
da6ca2b5
GDR
15502013-08-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
1551
1552 * c-pretty-print.h (pp_c_pretty_printer_init): Remove.
1553 (c_pretty_printer::c_pretty_printer): Declare.
1554 * c-pretty-print.c (pretty_printer::c_pretty_printer): Rename from
1555 c_pretty_printer_init. Adjust.
1556 (print_c_tree): Do not call c_pretty_printer_init.
1557 * c-ada-spec.c (dump_ads): Remove call to pp_construct.
1558
65a372f4
AC
15592013-08-09 Arnaud Charlet <charlet@adacore.com>
1560
1561 * c-ada-spec.c (print_ada_declaration): Prevent accessing null asm name
1562
fd9b0f32
PC
15632013-08-05 Paolo Carlini <paolo.carlini@oracle.com>
1564
1565 PR c++/58080
1566 * c-common.c (pointer_int_sum): Add bool parameter.
1567 * c-common.h (pointer_int_sum): Adjust declaration.
1568
e0aec1e9
GDR
15692013-08-05 Gabriel Dos Reis <gdr@integrable-solutions.net>
1570
1571 * c-pretty-print.c (print_c_tree): Simplify. Use non-static local
1572 c_pretty_printer variable.
1573
b066401f
GDR
15742013-08-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
1575
1576 * c-pretty-print.h (c_pretty_printer): Derive from pretty_printer.
1577 (pp_base): Remove.
1578 (pp_c_base): Likewise. Adjust users.
1579 * c-pretty-print.c (pp_c_maybe_whitespace): Adjust.
1580 (pp_c_whitespace): Do not call pp_base.
1581 (pp_c_left_paren): Likewise.
1582 (pp_c_right_paren): Likewise.
1583 (pp_c_left_brace): Likewise.
1584 (pp_c_right_brace): Likewise.
1585 (pp_c_left_bracket): Likewise.
1586 (pp_c_right_bracket): Likewise.
1587 (pp_c_dot): Likewise.
1588 (pp_c_ampersand): Likewise.
1589 (pp_c_star): Likewise.
1590 (pp_c_arrow): Likewise.
1591 (pp_c_semicolon): Likewise.
1592 (pp_c_complement): Likewise.
1593 (pp_c_exclamation): Likewise.
1594 (pp_c_direct_declarator): Likewise.
1595 (pp_c_ws_string): Likewise.
1596 (pp_c_identifier): Likewise.
1597 (pp_c_statement): Likewise.
1598 (print_c_tree): Likewise.
1599
65e5a578
ESR
16002013-08-04 Ed Smith-Rowland <3dw4rd@verizon.net>
1601
1602 PR c++/58072
1603 * c-common.c (c_parse_error): Catch user-defined literal tokens and
1604 provide useful error strings.
1605
137a1a27
GDR
16062013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
1607
1608 * c-ada-spec.c (pp_ada_tree_identifier): Use specialized pretty
1609 printer functions instead of pp_string or operators and punctuators.
1610 (dump_generic_ada_node): Likewise.
1611 * c-pretty-print.c (pp_c_type_specifier): Likewise.
1612 (pp_c_relational_expression): Likewise.
1613 (pp_c_logical_or_expression): Likewise.
1614
07838b13
GDR
16152013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
1616
1617 * c-ada-spec.c (print_ada_macros): Use specialized pretty printer
1618 functions instead of pp_character.
1619 (pp_ada_tree_identifier): Likewise.
1620 (dump_ada_double_name): Likewise.
1621 (dump_ada_function_declaration): Likewise.
1622 (dump_ada_array_domains): Likewise.
1623 (dump_template_types): Likewise.
1624 (dump_generic_ada_node): Likewise.
1625 (print_ada_declaration): Likewise.
1626 (print_ada_struct_decl): Likewise.
1627 * c-pretty-print.c (pp_c_integer_constant): Likewise.
1628
433cc7b0
TT
16292013-07-23 Tom Tromey <tromey@redhat.com>
1630
1631 * c-common.h (enum rid) <RID_GENERIC>: New constant.
1632 * c-common.c (c_common_reswords): Add _Generic.
1633
688010ba
OB
16342013-07-21 OndÅ\99ej Bílka <neleai@seznam.cz>
1635
1636 * c-common.c: Fix typos.
1637 * c-common.h: Likewise.
1638
2a99e5e6
LL
16392013-07-13 Lubos Lunak <l.lunak@suse.cz>
1640
1641 PR c++/55203
1642 * c-common.c (c_common_attribute_table): Add warn_unused.
1643 (handle_warn_unused_attribute): New.
1644
c26302d5
JJ
16452013-07-10 Jakub Jelinek <jakub@redhat.com>
1646
1647 * c-ppoutput.c (scan_translation_unit): Call account_for_newlines
1648 for all CPP_TOKEN_FLD_STR tokens, not just CPP_COMMENT.
1649
dfeadaa0
PC
16502013-07-10 Paolo Carlini <paolo.carlini@oracle.com>
1651
1652 PR c++/57869
1653 * c.opt: Add Wconditionally-supported.
1654
6a2fa4b2
GS
16552013-07-08 Graham Stott <graham.stott@btinternet.com>
1656
1657 * c-family/array-notation-common.c (length_mismatch_in_expr_p): Delete
1658 unused variables l_length and l_node.
1659
ecdbd01a 16602013-07-04 Joern Rennecke <joern.rennecke@embecosm.com>
40d3d530
JR
1661
1662 PR c/57821
1663 * c-common.c (complete_array_type): Delay folding first index
1664 like other indices. When folding, check for index overflow.
1665
bedc293e
MG
16662013-06-27 Marc Glisse <marc.glisse@inria.fr>
1667
1668 PR c++/57509
1669 * c-common.h (c_build_vec_perm_expr): New complain argument.
1670 * c-common.c (c_build_vec_perm_expr): Likewise.
1671 Use save_expr also in C++.
1672
604b2bfc
GDR
16732013-06-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
1674
1675 * c-common.c (c_common_nodes_and_builtins): Use cxx11 in lieu of cxx0x.
1676 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
1677 * c-opts.c (c_common_post_options): Likewise.
1678
dfeadaa0 16792013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
713b46fa
BI
1680
1681 * array-notation-common.c (length_mismatch_in_expr): Changed the
1682 parameter type's from a dynamic array to a vec_tree. Also removed
1683 the size parameters.
1684 * c-common.h (length_mismatch_in_expr_p): Fixed prototype's as per
1685 the change above.
1686
2ce86d2e
BI
16872013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
1688
1689 * c-common.h (struct cilkplus_an_parts): New structure.
1690 (struct cilkplus_an_loop_parts): Likewise.
1691 (cilkplus_extract_an_triplets): New prototype.
1692 (fix_sec_implicit_args): Likewise.
1693 * array-notation-common.c (cilkplus_extract_an_triplets): New function.
1694 (fix_sec_implicit_args): Likewise.
604b2bfc 1695
07a6825b
BI
16962013-06-20 Balaji V. Iyer <balaji.v.iyer@intel.com>
1697
1698 * array-notation-common.c (find_inv_trees): Removed an unwanted
1699 typecasting.
1700 * c-common.h (struct inv_list::additional_tcodes): Changed type from
1701 enum rid to enum tree_code.
1702
08346abd
JH
17032013-06-11 Jan Hubicka <jh@suse.cz>
1704
1705 * c-common.c (handle_alias_ifunc_attribute): Do not set
1706 DECL_EXTERNAL for weakref variables.
1707 * c-pragma.c (handle_pragma_weak): Make sure aliases
1708 are not declared as external.
1709
d60f1706
BI
17102013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
1711
1712 * array-notation-common.c (length_mismatch_in_expr_p): Moved this
1713 function from c/c-array-notation.c.
1714 (is_cilkplus_reduce_builtin): Likewise.
1715 (find_rank): Likewise.
1716 (extract_array_notation_exprs): Likewise.
1717 (replace_array_notations): Likewise.
1718 (find_inv_trees): Likewise.
1719 (replace_inv_trees): Likewise.
1720 (contains_array_notation_expr): Likewise.
1721 (find_correct_array_notation_type): Likewise.
1722 * c-common.h (struct inv_list): Moved this struct from the file
1723 c/c-array-notation.c and added a new field called additional tcodes.
1724 (length_mismatch_in_expr_p): New prototype.
1725 (is_cilkplus_reduce_builtin): Likewise.
1726 (find_rank): Likewise.
1727 (extract_array_notation_exprs): Likewise.
1728 (replace_array_notation): Likewise.
1729 (find_inv_trees): Likewise.
1730 (replace_inv_trees): Likewise.
1731 (find_correct_array_notation_type): Likewise.
dfeadaa0 1732
36536d79
BI
17332013-05-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
1734
1735 * c-common.c (c_define_builtins): When cilkplus is enabled, the
1736 function array_notation_init_builtins is called.
1737 (c_common_init_ts): Added ARRAY_NOTATION_REF as typed.
1738 * c-common.def (ARRAY_NOTATION_REF): New tree.
1739 * c-common.h (build_array_notation_expr): New function declaration.
1740 (build_array_notation_ref): Likewise.
1741 (extract_sec_implicit_index_arg): New extern declaration.
1742 (is_sec_implicit_index_fn): Likewise.
1743 (ARRAY_NOTATION_CHECK): New define.
1744 (ARRAY_NOTATION_ARRAY): Likewise.
1745 (ARRAY_NOTATION_START): Likewise.
1746 (ARRAY_NOTATION_LENGTH): Likewise.
1747 (ARRAY_NOTATION_STRIDE): Likewise.
1748 * c-pretty-print.c (pp_c_postifix_expression): Added a new case for
1749 ARRAY_NOTATION_REF.
1750 (pp_c_expression): Likewise.
1751 * c.opt (flag_enable_cilkplus): New flag.
1752 * array-notation-common.c: New file.
1753
f7716d57
JJ
17542013-05-14 Jakub Jelinek <jakub@redhat.com>
1755
1756 PR c++/57274
1757 * c-common.c (verify_tree): Don't recurse into SIZEOF_EXPR.
1758
a5e0cd1d
MG
17592013-05-10 Marc Glisse <marc.glisse@inria.fr>
1760
1761 * c-common.c (vector_types_convertible_p): No TYPE_PRECISION for
1762 vectors.
1763
f6bc1c4a
HS
17642013-05-07 Han Shen <shenhan@google.com>
1765
1766 * c-cppbuiltin.c (c_cpp_builtins): Added "__SSP_STRONG__=3".
1767
3f12f6e9
SKS
17682013-04-29 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
1769
1770 * c-common.c (check_user_alignment): Emit error for negative values.
1771
61949153
PC
17722013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
1773
1774 * c-opts.c (set_std_cxx11): Use CLK_CXX1Y and CLK_GNUCXX1Y.
1775
e93e18e9
PC
17762013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
1777
1778 * c-cppbuiltin.c (c_cpp_builtins): Do not define
1779 __GXX_EXPERIMENTAL_CXX1Y__.
1780
44d90fe1
PC
17812013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
1782 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
1783
1784 * c.opt ([Wpointer-arith]): Enabled by -Wpedantic, as documented.
1785 * c-common.c (pointer_int_sum): Change -Wpointer-arith pedwarns
1786 to simply use OPT_Wpointer_arith.
1787 (c_sizeof_or_alignof_type): Likewise.
1788
13f39b2e
PC
17892013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
1790
1791 * c-cppbuiltin.c (c_cpp_builtins): Define __GXX_EXPERIMENTAL_CXX1Y__.
1792
4b84d650
JJ
17932013-04-12 Jakub Jelinek <jakub@redhat.com>
1794
1795 * c-format.c (gcc_diag_char_table, gcc_tdiag_char_table,
1796 gcc_cdiag_char_table, gcc_cxxdiag_char_table): Add %r and %R format
1797 specifiers.
1798
fb037b5d
SB
17992013-04-07 Steven Bosscher <steven@gcc.gnu.org>
1800
1801 * c-pragma.c (add_to_renaming_pragma_list): Fix leading comment.
1802
4e856798
PC
18032013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
1804
1805 * c-common.c (pointer_int_sum): Remove dead code.
1806
4b1baac8
RS
18072013-03-09 Richard Sandiford <rdsandiford@googlemail.com>
1808
1809 PR middle-end/56524
1810 * c-common.c (handle_optimize_attribute): Don't call
1811 save_optabs_if_changed.
1812
0b50e654
JJ
18132013-03-05 Jakub Jelinek <jakub@redhat.com>
1814
1815 PR middle-end/56461
1816 * c-pch.c (pch_init): Free target_validity at the end.
1817
48c41403
JJ
18182013-03-04 Jakub Jelinek <jakub@redhat.com>
1819
1820 * c-pretty-print.c (pp_c_pretty_printer_init): Clear pp->flags.
1821
e664c61c
KS
18222013-02-28 Konstantin Serebryany <konstantin.s.serebryany@gmail.com>
1823 Jakub Jelinek <jakub@redhat.com>
1824
1825 PR sanitizer/56454
1826 * c-common.c (handle_no_sanitize_address_attribute): New function.
1827 (c_common_attribute_table): Add no_sanitize_address attribute.
1828 (handle_no_address_safety_analysis_attribute): Add
1829 no_sanitize_address attribute, not no_address_safety_analysis
1830 attribute.
1831
a475fd3d 18322013-02-18 Aldy Hernandez <aldyh@redhat.com>
135204dd
AH
1833
1834 PR target/52555
1835 * c-common.c (handle_optimize_attribute): Call
1836 save_optabs_if_changed.
1837
f6007d99
JJ
18382013-02-18 Jakub Jelinek <jakub@redhat.com>
1839 Steven Bosscher <steven@gcc.gnu.org>
1840
1841 PR pch/54117
1842 * c-opts.c (c_common_post_options): If debug info is enabled
1843 and non-dwarf*, refuse to load PCH files and when writing PCH
1844 file warn.
1845
cf35e2b1
JJ
18462013-02-05 Jakub Jelinek <jakub@redhat.com>
1847
1848 PR middle-end/56167
1849 * c-common.c (handle_error_attribute): Fix condition.
1850
32887460
JJ
18512013-01-30 Jakub Jelinek <jakub@redhat.com>
1852
1853 PR c++/55742
1854 * c-common.c (handle_target_attribute): Revert 2012-12-26 change.
1855
5af057d8
JM
18562013-01-18 Jason Merrill <jason@redhat.com>
1857
1858 PR target/54908
1859 * c.opt (-fextern-tls-init): New.
1860 * c-opts.c (c_common_post_options): Handle it.
1861
cc83c823
JJ
18622013-01-09 Jakub Jelinek <jakub@redhat.com>
1863
1864 PR c/48418
1865 * c-common.c (c_fully_fold_internal): Warn for LSHIFT_EXPR and
1866 RSHIFT_EXPR, if orig_op1 isn't INTEGER_CST, op1 is INTEGER_CST
1867 and is either negative or bigger or equal to type precision
1868 of the first operand.
1869
a859517f
MP
18702012-12-03 Marek Polacek <polacek@redhat.com>
1871
1872 PR c/55570
1873 * c-common.c (check_user_alignment): Swap order of tests,
1874 check TREE_CODE first.
1875
2d7aa578
ESR
18762012-11-29 Ed Smith-Rowland <3dw4rd@verizon.net>
1877
1878 PR c++/52654
1879 * c-common.h (overflow_type): New enum.
1880 (build_userdef_literal): Add overflow_type argument.
1881 (tree_userdef_literal): Add overflow_type.
1882 (USERDEF_LITERAL_OVERFLOW): New access macro.
1883 * c-common.c (build_userdef_literal): Add overflow_type
1884 argument.
1885 * c-lex.c (c_lex_with_flags): Add overflow_type to
1886 build_userdef_literal calls.
1887 (interpret_integer, interpret_float): Add overflow_type argument.
1888
cc3c4f62
RB
18892012-11-28 Richard Biener <rguenther@suse.de>
1890
1891 PR c/35634
1892 * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
1893 here and use a type with proper overflow behavior for types that would
1894 need to be promoted for the arithmetic.
1895
77bc5132
JJ
18962012-11-23 Jakub Jelinek <jakub@redhat.com>
1897
1898 PR sanitizer/55435
1899 * c-common.c (handle_no_address_safety_analysis_attribute): New
1900 function.
1901 (c_common_attribute_table): Add no_address_safety_analysis.
1902
5dc99c46
SB
19032012-11-16 Simon Baldwin <simonb@google.com>
1904
1905 * c.opt: Add f[no-]canonical-system-headers.
1906 * c-opts.c (c_common_handle_option): Handle
1907 OPT_fcanonical_system_headers.
1908
a4a0016d
ESR
19092012-11-09 Ed Smith-Rowland <3dw4rd@verizon.net>
1910
1911 PR c++/54413
1912 * c-opts.c (c_common_handle_option): Set new flags.
1913 * c.opt: Describe new flags.
1914
7dbb85a7
JM
19152012-11-09 Jason Merrill <jason@redhat.com>
1916
1917 * c.opt (Wabi-tag): New.
1918
ad7bac31
AK
19192012-11-09 Andi Kleen <ak@linux.intel.com>
1920
1921 PR 55139
1922 * c-common.c (get_atomic_generic_size): Mask with
1923 MEMMODEL_MASK
1924
7332899a
MLI
19252012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
1926
1927 PR c/53063
1928 * c.opt (Wformat): Make it Alias Wformat=1.
1929 (Wformat-contains-nul,Wformat-extra-args,Wformat-nonliteral,
1930 Wformat-security,Wformat-y2k,Wformat-zero-length): Use
1931 LangEnabledBy.
1932 (Wformat=): RejectNegative. Use LangEnabledBy.
1933 (Wnonnull): Use LangEnabledBy.
1934 * c-opts.c (c_common_handle_option): Do not handle Wformat here.
1935 * c-format.c (set_Wformat): Delete.
1936 (decode_format_attr): Replace OPT_Wformat with OPT_Wformat_.
1937 (maybe_read_dollar_number): Likewise.
1938 (avoid_dollar_number): Likewise.
1939 (finish_dollar_format_checking): Likewise.
1940 (check_format_info): Likewise.
1941 (check_format_info_main): Likewise.
1942 (check_format_types): Likewise.
1943 (format_type_warning): Likewise.
1944 * c-common.c (int): Likewise.
1945 (check_function_sentinel): Likewise.
1946 * c-common.h (warn_format,set_Wformat): Do not declare here.
1947
34a180a6
MLI
19482012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
1949
1950 PR c/53063
1951 * c.opt(Warray-bounds,Wdelete-non-virtual-dtor,Wenum-compare,
1952 Wmain,Woverlength-strings, Wunknown-pragmas,Wunused-macros):
1953 Use LangEnabledBy.
1954 (Wswitch,Wswitch-default,Wswitch-enum): Likewise. Move here from
1955 common.opt.
1956 (Wvariadic-macros): Init(1).
1957 * c-opts.c (c_common_handle_option): Do not handle them
1958 explicitly.
1959 (c_common_post_options): Likewise.
1960 (sanitize_cpp_opts): warn_unused_macros is now
1961 cpp_warn_unused_macros.
1962 (push_command_line_include): Likewise.
1963 * c-common.c (warn_unknown_pragmas): Do not define.
1964 * c-common.h (warn_unknown_pragmas): Do not declare.
1965
3f46d6a5
MLI
19662012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
1967
1968 PR c/51294
1969 * c-common.c (conversion_warning): Handle conditional expressions.
1970
880661a4
JW
19712012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
1972
1973 PR c++/54930
1974 * c.opt (Wreturn_local_addr): Define new option.
1975
4514a96b
JM
19762012-10-25 Jason Merrill <jason@redhat.com>
1977
f14edc1a
JM
1978 * c.opt (Wvirtual-move-assign): New.
1979
4514a96b
JM
1980 * c.opt (Winherited-variadic-ctor): New.
1981
93100c6b
MG
19822012-10-25 Marc Glisse <marc.glisse@inria.fr>
1983
1984 PR c++/54427
1985 * c-common.c (scalar_to_vector): Handle VEC_COND_EXPR.
1986
1efcb8c6
JM
19872012-10-23 Joseph Myers <joseph@codesourcery.com>
1988
1989 * c-common.h (pch_cpp_save_state): Declare.
1990 * c-target.def (c_preinclude): New hook.
1991 * c-opts.c (done_preinclude): New.
1992 (push_command_line_include): Handle default preincluded header.
1993 (cb_file_change): Call pch_cpp_save_state when calling
1994 push_command_line_include.
1995 * c-pch.c (pch_ready_to_save_cpp_state, pch_cpp_state_saved)
1996 (pch_cpp_save_state): New.
1997 (pch_init): Call pch_cpp_save_state conditionally, instead of
1998 calling cpp_save_state.
1999
4a0ae68e
MLI
20002012-10-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
2001
2002 PR c/53063
2003 PR c/40989
2004 * c.opt (Waddress,Wchar-subscripts,Wsign-conversion,Wimplicit,
2005 Wimplicit-function-declaration,Wimplicit-int,Wsizeof-pointer-memaccess,
2006 Wnarrowing,Wparentheses,Wpointer-sign,Wreturn-type,Wsequence-point,
2007 Wsign-compare,Wuninitialized,Wmaybe-uninitialized,Wunused,
2008 Wvolatile-register-var): Add LangEnabledBy or EnabledBy.
2009 * c-opts.c (c_common_handle_option): Remove explicit handling from
2010 here.
2011 (c_common_post_options): Likewise.
2012
67e4210b
EB
20132012-10-18 Eric Botcazou <ebotcazou@adacore.com>
2014
2015 * c-ada-spec.c (LOCATION_COL): Delete.
2016 (compare_location): New function.
2017 (compare_node): Use it.
2018 (compare_comment): Likewise.
2019
65d4f2cd
MLI
20202012-10-16 Manuel López-Ibáñez <manu@gcc.gnu.org>
2021
2022 PR c/53063
2023 PR c/40989
2024 * c.opt (Wstrict-aliasing=,Wstrict-overflow=): Use LangEnabledBy.
2025 * c-opts.c (c_common_handle_option): Do not set them here. Add
2026 comment.
2027 (c_common_post_options): Likewise.
2028
909881cb
EB
20292012-10-16 Eric Botcazou <ebotcazou@adacore.com>
2030
2031 * c-ada-spec.c (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Define.
2032 (dump_generic_ada_node) <INTEGER_CST>: Deal with sizetype specially.
2033 Remove POINTER_TYPE handling, add large unsigned handling and use
2034 ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX for big numbers.
2035
3a785c97
JJ
20362012-10-12 Jakub Jelinek <jakub@redhat.com>
2037
2038 PR c/54381
2039 * c-common.h (sizeof_pointer_memaccess_warning): Adjust prototype.
2040 * c-common.c (sizeof_pointer_memaccess_warning): Take array of 3
2041 locs and array of 3 trees instead of just single loc and single
2042 sizeof_arg tree. Handle __builtin___*_chk builtins too, and
2043 also stpncpy, bcopy, bcmp, bzero, snprintf and vsnprintf builtins.
2044 For *cmp* builtins that take two sources strings report warnings
2045 about first and second source, not about destination and source.
2046
5e54f81d
MG
20472012-10-12 Marc Glisse <marc.glisse@inria.fr>
2048
2049 PR c++/53055
2050 * c-common.h (enum ref_operator) [RO_ARROW_STAR]: New.
2051
f5b02f1e
EB
20522012-10-11 Eric Botcazou <ebotcazou@adacore.com>
2053
2054 * c-ada-spec.c (dump_ada_template): Bail out for template declarations
2055 declaring something coming from another file.
2056
b46dbc6c
AC
20572012-10-10 Arnaud Charlet <charlet@adacore.com>
2058
f5b02f1e 2059 PR ada/54845
b46dbc6c
AC
2060 * c-ada-spec.c (print_ada_struct_decl): Increase buf size.
2061
5d9de0d0
PC
20622012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
2063
2064 PR c++/54194
2065 * c-common.c (warn_about_parentheses): Add location_t parameter;
2066 use EXPR_LOC_OR_LOC.
2067 * c-common.h: Update declaration.
2068
a212e43f
MG
20692012-10-09 Marc Glisse <marc.glisse@inria.fr>
2070
2071 PR c++/54427
2072 * c-common.c (scalar_to_vector): Moved from c-typeck.c. Support
2073 more operations. Make error messages optional.
2074 * c-common.h (enum stv_conv): Moved from c-typeck.c.
2075 (scalar_to_vector): Declare.
2076
b1db7f91
JM
20772012-10-08 Jason Merrill <jason@redhat.com>
2078
2079 * c-common.c (c_common_reswords): Add thread_local.
2080
e28d52cf
DS
20812012-10-08 Dodji Seketeli <dodji@redhat.com>
2082
2083 PR c++/53528 C++11 attribute support
2084 * c-common.h (bitfield_p, cxx_fundamental_alignment_p): Declare
2085 new functions.
2086 * c-common.c (check_cxx_fundamental_alignment_constraints): New
2087 static function.
2088 (handle_aligned_attribute): In choose strictest alignment
2089 among many. Use new check_cxx_fundamental_alignment_constraints.
2090 (handle_transparent_union_attribute): In c++11 attribute syntax,
2091 don't look through typedefs.
2092
3b78de56
AC
20932012-10-04 Arnaud Charlet <charlet@adacore.com>
2094
2095 * c-ada-spec.c (print_ada_declaration): Remove handling of TDF_RAW.
2096 * c.opt (-fdump-ada-spec, -fdump-ada-spec-slim): Move switch definition
2097 out of dumpfile.h.
2098
6040bb5f
DC
20992012-09-25 Dehao Chen <dehao@google.com>
2100
2101 PR middle-end/54645
3b78de56 2102 * c-pch.c (c_common_read_pch): Rebuild the location_adhoc_data
6040bb5f
DC
2103 map when read in the pch.
2104
0b07a57e
AC
21052012-09-18 Arnaud Charlet <charlet@adacore.com>
2106
2107 * c-ada-spec.c: Style fixes.
2108
da5182be
TQ
21092012-09-18 Thomas Quinot <quinot@adacore.com>
2110
2111 * c.opt (-fada-spec-parent): Define new command line switch.
2112 * c-ada-spec.c (get_ada_package): When -fada-spec-parent
2113 is specified, generate binding spec as a child of the specified unit.
2114
0ccb505d
PC
21152012-09-13 Paolo Carlini <paolo.carlini@oracle.com>
2116 Manuel López-Ibáñez <manu@gcc.gnu.org>
2117
2118 PR c++/53210
2119 * c.opt ([Winit-self]): Enabled by -Wall in C++.
2120
c583af79
AC
21212012-08-23 Arnaud Charlet <charlet@adacore.com>
2122
2123 * c-ada-spec.c (dump_generic_ada_node): Fix handling of name_only
2124 for pointers, and add missing Convention C pragma.
2125 (print_ada_struct_decl): Add missing aliased keyword.
2126 (dump_ads): Add pragma Ada_2005 and Style_Checks (Off).
2127
1a4049e7
JJ
21282012-08-17 Jakub Jelinek <jakub@redhat.com>
2129
2130 * c-common.c (sizeof_pointer_memaccess_warning): New function.
2131 * c.opt (-Wsizeof-pointer-memaccess): Add new option.
2132 * c-opts.c (c_common_handle_option): Enable it for -Wall.
2133 * c-common.h (sizeof_pointer_memaccess_warning): Add prototype.
2134 * c-common.def (SIZEOF_EXPR): Moved here from cp-tree.def.
2135
70b5e7dc
RG
21362012-08-10 Richard Guenther <rguenther@suse.de>
2137
2138 * c-pretty-print.c (pp_c_expression): Handle anonymous SSA names.
2139
f8923f7e
SB
21402012-08-07 Steven Bosscher <steven@gcc.gnu.org>
2141
2142 * c-pretty-print.c (pp_c_function_definition): Use pp_newline_and_flush
2143 instead of separate pp_newline and pp_flush.
2144 (print_c_tree): Likewise.
2145
e45abe1f
RH
21462012-07-26 Richard Henderson <rth@redhat.com>
2147
2148 * c-common.c (handle_hot_attribute): Allow labels.
2149 (handle_cold_attribute): Likewise.
2150
332f1d24
JJ
21512012-07-20 Jakub Jelinek <jakub@redhat.com>
2152
2153 PR c++/28656
2154 * c-common.c (check_function_nonnull): Handle multiple nonnull
2155 attributes properly.
2156
7ee2468b
SB
21572012-07-16 Steven Bosscher <steven@gcc.gnu.org>
2158
2159 * c-gimplify.c: Include dumpfile.h instead of tree-dump.h.
2160 * c-ada-spec.c: Likewise.
2161 * c-dump.c (dump_stmt): Move to cp/dump.c, the only user.
2162
ee7b28eb
SB
21632012-07-14 Steven Bosscher <steven@gcc.gnu.org>
2164
2165 * c-pch.c (CHECK_NO_ASM_OUT_DURING_PCH): Do not define.
2166 Remove code conditional on it.
2167
6bdf3519
SB
21682012-07-11 Steven Bosscher <steven@gcc.gnu.org>
2169
2170 * c-gimplify.c: Do not include basic-block.h.
2171 * c-common.c: Do not include linfuncs.h.
2172
532aafad
SB
21732012-07-08 Steven Bosscher <steven@gcc.gnu.org>
2174
2175 * c-common.h: Include tree.h.
2176
8d0d1915
JM
21772012-07-02 Jason Merrill <jason@redhat.com>
2178
2179 PR c++/53524
2180 * c-common.c (get_priority): Call default_conversion.
2181
fbc873ad
UB
21822012-07-01 Uros Bizjak <ubizjak@gmail.com>
2183
2184 * c-pch.c (c_common_write_pch): Remove unused variables.
2185
d4a10d0a
SB
21862012-06-29 Steven Bosscher <steven@gcc.gnu.org>
2187
2188 * cppspec.c: Moved from gcc/ to here.
2189
6f3a2e23
KT
21902012-06-27 Kai Tietz <ktietz@redhat.com>
2191
2192 PR preprocessor/37215
2193 * c-ppoutput.c (preprocess_file): Check for nonempty buffer.
2194
8ca92d04
SB
21952012-06-21 Steven Bosscher <steven@gcc.gnu.org>
2196
2197 * c-common.h (c_common_print_pch_checksum): Remove.
2198 * c-pch.c: Do not include output.h.
2199 (CHECK_NO_ASM_OUT_DURING_PCH): Define and add FIXME.
2200 (asm_out_file): Define iff CHECK_NO_ASM_OUT_DURING_PCH isdefined.
2201 (asm_file_startpos): Define iff CHECK_NO_ASM_OUT_DURING_PCH is defined.
2202 (struct c_pch_header): Remove.
2203 (get_ident): Update gpch version.
2204 (pch_init): Do not print executable_checksum to asm_out_file.
2205 Do not fail if there is no asm_out_file to read back from. Set
2206 asm_file_startpos only if CHECK_NO_ASM_OUT_DURING_PCH is defined.
2207 (c_common_write_pch): Verify that nothing was written to asm_out_file
2208 since pch_init was called. Do not write a c_pch_header, and do not
2209 copy from asm_out_file to the PCH.
2210 (c_common_read_pch): Do not read a c_pch_header, and do not restore
2211 the content of asm_out_file from the PCH.
2212 (c_common_print_pch_checksum): Remove.
2213 * c-opts.c (c_common_init): Print out executable_checksum directly.
2214
70f42967
SB
22152012-06-19 Steven Bosscher <steven@gcc.gnu.org>
2216
2217 * c-target.def (objc_declare_unresolved_class_reference,
2218 objc_declare_class_definition): Add new hooks.
2219
a8781821
SB
22202012-06-19 Steven Bosscher <steven@gcc.gnu.org>
2221
2222 * c-lex.c: Do not include output.h.
2223 (cb_ident): Try to put out .ident with targetm.asm_out.output_ident.
2224 Remove uses of ASM_OUTPUT_IDENT.
2225
9e1a8dd1
RR
22262012-06-15 Marc Glisse <marc.glisse@inria.fr>
2227
2228 PR c++/51033
2229 * c-common.h (c_build_vec_perm_expr): Move decl here.
2230 * c-common.c (c_build_vec_perm_expr): Move definition
2231 here.
2232
6f07a821
SB
22332012-06-06 Steven Bosscher <steven@gcc.gnu.org>
2234
2235 * c.opt (fconserve-space): Turn into a no-op.
2236
9faeb493 22372012-06-04 Sterling Augustine <saugustine@google.com>
c265f413
SA
2238
2239 * c-pretty-print.h (pp_c_flag_gnu_v3): New enumerator.
2240 * c-pretty-print.c (pp_c_specifier_qualifier_list): Check it at
2241 both the start and end of the function.
2242
a4b7d13c
SB
22432012-06-04 Steven Bosscher <steven@gcc.gnu.org>
2244
2245 * c-common.c: Do not include output.h.
2246 * c-pragma.c: Likewise.
2247
c265f413
SA
22482012-06-04 Steven Bosscher <steven@gcc.gnu.org>
2249
2250 * error.c (dump_decl): Check pp_c_flag_gnu_v3.
2251 (decl_as_dwarf_string, lang_decl_dwarf_name): New functions.
2252 (lang_decl_name): Handle namespace decls.
2253
be7a421e
SB
22542012-05-31 Steven Bosscher <steven@gcc.gnu.org>
2255
2256 * c-ada-spec.c: Do not include output.h.
2257 * c-semantics.c: Likewise.
2258
65de6659
JM
22592012-05-29 Joseph Myers <joseph@codesourcery.com>
2260
2261 * c-common.c: Fix typo.
2262
ca5f4331
MM
22632012-05-29 Michael Matz <matz@suse.de>
2264
2265 * c-common.h (c_expand_decl): Remove prototype.
2266
4f7f7aca
MLI
22672012-05-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
2268
2269 * c.opt (Wmissing-braces): Use LangEnabledBy(C ObjC,Wall).
2270 * c-opts.c (c_common_handle_option): Remove code handling
2271 warn_missing_braces.
2272
4a792f9b
PC
22732012-05-28 Paolo Carlini <paolo.carlini@oracle.com>
2274
2275 PR c++/25137
2276 * c-opts.c (c_common_handle_option): For C++ -Wall doesn't enable
2277 -Wmissing_braces.
2278
650dc14a
DS
22792012-05-22 Dodji Seketeli <dodji@redhat.com>
2280
2281 PR c++/53322
2282 * c.opt (Wunused-local-typedefs): Use EnabledBy(Wunused).
2283
9b095bf1
MLI
22842012-05-17 Manuel López-Ibáñez <manu@gcc.gnu.org>
2285
2286 * c.opt (--pedantic-errors,-pedantic-errors): Do not handle here.
2287 * c-opts.c (c_common_handle_option): Do not handle explicitly
2288 Wreturn-type, Wwrite-strings, warn_ecpp, and -pedantic-errors.
2289
0b2c4be5
DS
22902012-05-16 Dodji Seketeli <dodji@redhat.com>
2291
2292 PR preprocessor/7263
2293 * c-lex.c (c_lex_with_flags): Pass a virtual location to the call
2294 to cpp_classify_number. For diagnostics, use the precise location
2295 instead of the global input_location.
2296
a1bde5af
PC
22972012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
2298
d02924ef 2299 PR c++/11856
a1bde5af
PC
2300 * c-common.c (shorten_compare): Check c_inhibit_evaluation_warnings.
2301
d1ede5f4
BS
23022012-05-14 Bernd Schmidt <bernds@codesourcery.com>
2303
a1bde5af 2304 * c-common.c (DEF_ATTR_STRING): Define and undefine as necessary.
d1ede5f4 2305
f2bc201f
MLI
23062012-05-14 Manuel López-Ibáñez <manu@gcc.gnu.org>
2307
2308 PR 53063
2309 * c.opt (Wc++0X-compat,Wdelete-non-virtual-dtor,Wjump-misses-init,
2310 Wreorder): Use LangEnabledBy.
2311 * c-opts.c (c_common_handle_option): Do not enable them
2312 explicitly. Call lang-specific generated functions.
2313 (c_common_post_options): Do not set them here.
2314
95744782
MLI
23152012-05-13 Manuel López-Ibáñez <manu@gcc.gnu.org>
2316
2317 * c.opt (Wclobbered,Wempty-body,Wignored-qualifiers,
2318 Wmissing-field-initializers,Wmissing-parameter-type,
2319 Wold-style-declaration,Woverride-init): Use EnabledBy.
2320 * c-opts.c (c_common_post_options): Do not set here explicitly.
2321
7d5a5747
MLI
23222012-05-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
2323
2324 PR 53063
2325 * c-opts.c (c_common_handle_option): Use handle_generated_option
2326 to enable sub-options.
2327
5a3c9cf2
PC
23282012-05-10 Paolo Carlini <paolo.carlini@oracle.com>
2329
2330 PR c++/53158
2331 * c-common.c (warnings_for_convert_and_check): Use warning_at.
2332
3ac8781c
RG
23332012-05-10 Richard Guenther <rguenther@suse.de>
2334
2335 * c-common.c (c_sizeof_or_alignof_type): Remove assert and
2336 adjust commentary about TYPE_IS_SIZETYPE types.
2337
1e537948
MLI
23382012-05-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
2339
2340 PR c++/53261
2341 * c-common.c (warn_logical_operator): Check that argument of
2342 integer_zerop is not NULL.
2343
f2c4a785
MLI
23442012-05-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
2345
2346 PR c/43772
2347 * c-common.c (warn_logical_operator): Do not warn if either side
2348 is already true or false.
2349
50f305ca
MLI
23502012-05-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
2351
2352 PR c/51712
2353 * c-common.c (expr_original_type): New.
2354 (shorten_compare): Do not warn for enumeration types.
2355
0c3641b0
MLI
23562012-05-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
2357
2358 * c.opt (fpermissive): Add Var(flag_permissive).
2359
7edaa4d2
MG
23602012-04-30 Marc Glisse <marc.glisse@inria.fr>
2361
2362 PR c++/51033
2363 * c-common.c (convert_vector_to_pointer_for_subscript): New function.
2364 * c-common.h (convert_vector_to_pointer_for_subscript): Declare it.
2365
b9c8da34
DS
23662012-04-30 Dodji Seketeli <dodji@redhat.com>
2367
2368 Add -Wvarargs option
2369 * c.opt (Wvarargs): Define new option.
2370
e6c69da0
MLI
23712012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
2372
2373 * c-common.c (check_function_arguments): Replace
2374 Wmissing-format-attribute with Wsuggest-attribute=format.
2375
90137d8f
MLI
23762012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
2377
2378 * c.opt (Wsuggest-attribute=format): New. Alias of
2379 Wmissing-format-attribute.
2380 * c-format.c (decode_format_type): Replace
2381 Wmissing-format-attribute with Wsuggest-attribute=format.
2382 (check_function_format): Likewise.
2383
9faeb493 23842012-04-27 Ollie Wild <aaw@google.com>
7f5f5f98
OW
2385
2386 * c-common.c: Add CPP_W_LITERAL_SUFFIX mapping.
2387 * c-opts.c (c_common_handle_option): Handle OPT_Wliteral_suffix.
2388 * c.opt: Add Wliteral-suffix.
2389
c1771a20
MLI
23902012-04-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
2391
2392 PR c/44774
2393 * c.opt (Wpedantic): New.
2394 (pedantic): Alias Wpedantic.
2395 * c-opts.c (c_common_handle_option): Replace -pedantic with -Wpedantic.
2396 (c_common_post_options): Likewise.
2397 (sanitize_cpp_opts): Likewise.
2398 * c-lex.c (interpret_float): Likewise.
2399 * c-format.c (check_format_types): Likewise.
2400 * c-common.c (pointer_int_sum): Likewise.
2401 (c_sizeof_or_alignof_type): Likewise.
2402 (c_add_case_label): Likewise.
2403 (c_do_switch_warnings): Likewise.
2404 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
2405
04b391c1
JM
24062012-04-15 Jason Merrill <jason@redhat.com>
2407
2408 PR c++/52818
2409 * c-format.c (CPLUSPLUS_STD_VER): C++11 inherits from C99.
2410 (C_STD_NAME): Distinguish between C++98 and C++11.
2411
ac868f29
EB
24122012-04-11 Eric Botcazou <ebotcazou@adacore.com>
2413
2414 PR target/52624
2415 * c-common.h (uint16_type_node): Rename into...
2416 (c_uint16_type_node): ...this.
2417 * c-common.c (c_common_nodes_and_builtins): Adjust for above renaming.
2418 * c-cppbuiltin.c (builtin_define_stdint_macros): Likewise.
2419
fd4116f4
MLI
24202012-04-10 Manuel López-Ibáñez <manu@gcc.gnu.org>
2421
2422 * c-common.c (warn_if_unused_value): Move definition to here.
2423 * c-common.h (warn_if_unused_value): Move declaration to here.
2424
573ac65e
WB
24252012-03-23 William Bader <williambader@hotmail.com>
2426
2427 * c-lex.c (c_lex_with_flags): Avoid declarations after stmts.
2428
552b8185
JM
24292012-03-20 Jason Merrill <jason@redhat.com>
2430
2431 * c-common.h (enum cxx_dialect): Add cxx1y.
2432 * c-common.c (c_common_nodes_and_builtins): Use >= for cxx_dialect
2433 test.
2434 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
2435 * c-opts.c (c_common_post_options): Likewise.
2436 (set_std_cxx1y): New.
2437 (c_common_handle_option): Call it.
2438 * c.opt (-std=c++1y, -std=gnu++1y): New flags.
2439
04398fa8
PC
24402012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
2441
2442 PR c++/14710
2443 * c.opt ([Wuseless-cast]): Add.
2444
d2a12ae7
RG
24452012-03-16 Richard Guenther <rguenther@suse.de>
2446
2447 * c-pretty-print.c (pp_c_initializer_list): Adjust.
2448
a12bf402
MLI
24492012-03-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
2450
2451 PR c++/44783
2452 * c.opt (ftemplate-backtrace-limit) Add.
2453
5c30094f
RO
24542012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2455
2456 * c-cppbuiltin.c (c_cpp_builtins): Remove #pragma extern_prefix
2457 handling.
2458 * c-pragma.c (handle_pragma_extern_prefix): Remove.
2459 (init_pragma): Don't register extern_prefix.
2460
21fa2faf
RG
24612012-03-12 Richard Guenther <rguenther@suse.de>
2462
2463 * c-common.c (c_common_get_narrower): Use c_common_type_for_size.
2464 (builtin_type_for_size): Likewise.
2465
e3793c6f
JJ
24662012-02-13 Jakub Jelinek <jakub@redhat.com>
2467
2468 PR c++/52215
2469 * c-common.c (sync_resolve_params): Don't decide whether to convert
2470 or not based on TYPE_SIZE comparison, convert whenever arg_type
2471 is unsigned INTEGER_TYPE.
2472
93286335
PC
24732012-02-06 Paolo Carlini <paolo.carlini@oracle.com>
2474
2475 PR c/52118
2476 * c.opt ([Wunused-local-typedefs]): Fix description.
2477
7a421706
MS
24782012-01-24 Mike Stump <mikestump@comcast.net>
2479
2480 * c-common.c (c_common_type_for_mode): Match signed/unsigned types
2481 exactly.
2482
ba9b1f11
RG
24832012-01-18 Richard Guenther <rguenther@suse.de>
2484
2485 * c-opts.c (c_common_post_options): Reset LTO flags if
2486 we are about to generate a PCH.
2487
465406be
PC
24882012-01-17 Paolo Carlini <paolo.carlini@oracle.com>
2489
2490 PR c++/51777
2491 * c-pretty-print.c (pp_c_integer_constant): For unsigned constants
2492 use pp_unsigned_wide_integer.
2493
aee15221
RG
24942012-01-10 Richard Guenther <rguenther@suse.de>
2495
2496 PR middle-end/51806
2497 * c-opts.c (c_common_handle_option): Move -Werror handling
2498 to language independent code.
2499
5720c0dc
RG
25002012-01-05 Richard Guenther <rguenther@suse.de>
2501
2502 PR middle-end/51764
2503 * c.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move here
2504 from common.opt.
2505
73ac190a
PC
25062011-12-30 Paolo Carlini <paolo.carlini@oracle.com>
2507
2508 PR c++/51316
2509 * c-common.c (c_sizeof_or_alignof_type): In C++ allow for alignof
2510 of array types with an unknown bound.
2511
48b0b196
JM
25122011-12-20 Joseph Myers <joseph@codesourcery.com>
2513
2514 * c-common.c (flag_isoc99): Update comment to refer to C11.
2515 (flag_isoc1x): Change to flag_isoc11.
2516 * c-common.h (flag_isoc99): Update comment to refer to C11.
2517 (flag_isoc1x): Change to flag_isoc11.
2518 * c-cppbuiltin.c (cpp_atomic_builtins): Change comment to refer to
2519 C11.
2520 * c-opts.c (set_std_c1x): Change to set_std_c11.
2521 (c_common_handle_option): Handle OPT_std_c11 and OPT_std_gnu11.
2522 Call set_std_c11.
2523 (set_std_c89, set_std_c99, set_std_c11): Use flag_isoc11.
2524 (set_std_c1): Use CLK_STDC11 and CLK_GNUC11.
2525 * c.opt (std=c1x): Change to std=c11. Document as non-draft
2526 standard.
2527 (std=c1x, std=iso9899:2011): Add as aliases of std=c11.
2528 (std=gnu1x): Change to std=gnu11. Refer to non-draft standard.
2529 (std=gnu1x): Make alias of std=gnu11.
2530
d58d6eb5
JM
25312011-12-19 Jason Merrill <jason@redhat.com>
2532
2533 PR c++/51228
2534 * c-common.c (handle_transparent_union_attribute): Check the first
2535 field if the type is complete.
2536
b3908fcc
JW
25372011-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
2538
2539 PR libstdc++/51365
2540 * c-common.c (RID_IS_FINAL): Add.
2541 * c-common.h (RID_IS_FINAL): Add.
2542
fea3ca91
IS
25432011-11-30 Iain Sandoe <iains@gcc.gnu.org>
2544
2545 * c.opt (fgnu-runtime): Provide full description.
2546 (fnext-runtime): Likewise.
2547 * c-opts.c (OPT_fgnu_runtime, OPT_fnext_runtime) Remove.
2548
62bad7cd
AM
25492011-11-28 Andrew MacLeod <amacleod@redhat.com>
2550
2551 * c-cpp-builtin.c (cpp_atomic_builtins):New. Emit all atomic
2552 predefines in one place. Add LOCK_FREE predefines.
2553 (c_cpp_builtins): Move Legacy HAVE_SYNC predefines to
2554 new func.
2555
c466c4ff
AM
25562011-11-24 Andrew MacLeod <amacleod@redhat.com>
2557
2558 PR c/51256
9faeb493 2559 * c-common.c (get_atomic_generic_size): Check for various error
c466c4ff 2560 conditions
9faeb493
UB
2561 (resolve_overloaded_atomic_exchange,
2562 resolve_overloaded_atomic_compare_exchange,
c466c4ff
AM
2563 resolve_overloaded_atomic_load, resolve_overloaded_atomic_store): Return
2564 error_mark_node for error conditions.
9faeb493 2565
a5952633
RG
25662011-11-08 Richard Guenther <rguenther@suse.de>
2567
2568 PR middle-end/51010
2569 c-family/
2570
0a35513e
AH
25712011-11-07 Richard Henderson <rth@redhat.com>
2572 Aldy Hernandez <aldyh@redhat.com>
2573 Torvald Riegel <triegel@redhat.com>
2574
2575 Merged from transactional-memory.
2576
2577 * c-common.c (handle_tm_wrap_attribute,
2578 handle_tm_attribute, ignore_attribute, parse_tm_stmt_attr): New.
2579 (struct c_common_reswords): Added __transaction* keywords.
2580 (struct c_common_attribute_table): Added transaction* and tm_regparm
2581 attributes.
2582 * c-common.h: Added RID_TRANSACTION*. Added TM_ATTR* and TM_STMT*
2583 masks.
2584 (parse_tm_stmt_attr, tm_attr_to_mask, tm_mask_to_attr,
2585 find_tm_attribute): Declare.
2586
6d87092d
JM
25872011-11-07 Jason Merrill <jason@redhat.com>
2588
2589 PR c++/35688
2590 * c-common.c, c-common.h: Revert yesterday's changes.
2591
8e7860a1
JM
25922011-11-06 Jason Merrill <jason@redhat.com>
2593
2594 PR c++/35688
2595 * c-common.c (decl_has_visibility_attr): Split out from...
2596 (c_determine_visibility): ...here.
2597 * c-common.h: Declare it.
2598
d19fa6b5
JM
25992011-11-06 Joseph Myers <joseph@codesourcery.com>
2600
2601 * c-common.c (c_common_reswords): Add _Alignas and _Alignof.
2602 (c_sizeof_or_alignof_type): Diagnose alignof applied to a function
2603 type.
2604 (check_user_alignment): New. Split out of
2605 handle_aligned_attribute. Disallow integer constants with
2606 noninteger types. Conditionally allow zero.
2607 (handle_aligned_attribute): Use check_user_alignment.
2608 * c-common.h (RID_ALIGNAS, check_user_alignment): New.
2609
86951993
AM
26102011-11-06 Andrew MacLeod <amacleod@redhat.com>
2611 Richard Henderson <rth@redhat.com>
2612
2613 Merged from cxx-mem-model.
2614
2615 * c-cppbuiltin.c (c_cpp_builtins): Test both atomic and sync patterns.
9faeb493 2616 * c-common.c (sync_resolve_params, sync_resolve_return): Only tweak
86951993
AM
2617 parameters that are the same type size.
2618 (get_atomic_generic_size): New. Find size of generic
2619 atomic function parameters and do typechecking.
2620 (add_atomic_size_parameter): New. Insert size into parameter list.
2621 (resolve_overloaded_atomic_exchange): Restructure __atomic_exchange to
2622 either __atomic_exchange_n or external library call.
9faeb493 2623 (resolve_overloaded_atomic_compare_exchange): Restructure
86951993 2624 __atomic_compare_exchange to either _n variant or external library call.
9faeb493 2625 (resolve_overloaded_atomic_load): Restructure __atomic_load to either
86951993
AM
2626 __atomic_load_n or an external library call.
2627 (resolve_overloaded_atomic_store): Restructure __atomic_store to either
2628 __atomic_store_n or an external library call.
2629 (resolve_overloaded_builtin): Handle new __atomic builtins.
2630
cf9e9959
EB
26312011-11-04 Eric Botcazou <ebotcazou@adacore.com>
2632
2633 PR c++/50608
2634 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1.
2635 (fold_offsetof_1): Make global. Remove STOP_REF argument and adjust.
2636 <INDIRECT_REF>: Return the argument.
2637 <ARRAY_REF>: Remove special code for negative offset.
2638 Call fold_build_pointer_plus instead of size_binop.
2639 (fold_offsetof): Remove STOP_REF argument and adjust.
2640 * c-common.h (fold_offsetof_1): Declare.
2641 (fold_offsetof): Remove STOP_REF argument.
2642
25339f10
JM
26432011-11-02 Paolo Carlini <paolo.carlini@oracle.com>
2644
2645 PR c++/50810
2646 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
2647 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
2648 Wnarrowing for C++0x and C++98.
2649 * c.opt ([Wnarrowing]): Update.
2650
89401152
PC
26512011-11-01 Paolo Carlini <paolo.carlini@oracle.com>
2652
2653 PR c++/44277
2654 * c.opt: Add Wzero-as-null-pointer-constant.
2655
97e3ad20
JM
26562011-10-31 Jason Merrill <jason@redhat.com>
2657
15694fdd
JM
2658 * c.opt (-fdeduce-init-list): Off by default.
2659
97e3ad20
JM
2660 PR c++/50920
2661 * c-common.h (cxx_dialect): Add cxx11 and cxx03.
2662 * c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03,
2663 and -Wc++11-compat.
2664 * c-opts.c (set_std_cxx11): Rename from set_std_cxx0x.
2665
fb9120e3
RAV
26662011-10-27 Roberto Agostino Vitillo <ravitillo@lbl.gov>
2667
2668 PR c++/30066
2669 * c.opt (fvisibility-inlines-hidden): Description change.
2670
3ce4f9e4
ESR
26712011-10-26 Ed Smith-Rowland <3dw4rd@verizon.net>
2672
2673 Implement C++11 user-defined literals.
2674 * c-common.c (build_userdef_literal): New.
2675 * c-common.def: New tree code.
2676 * c-common.h (tree_userdef_literal): New tree struct and accessors.
2677 * c-lex.c (interpret_float): Add suffix parm.
2678 (c_lex_with_flags): Build literal tokens.
2679
5f53c243
PC
26802011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
2681
2682 PR c++/50841
2683 Revert:
2684 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
2685
2686 PR c++/50810
2687 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
2688 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
2689 Wnarrowing for C++0x and C++98.
2690 * c.opt ([Wnarrowing]): Update.
2691
263734e1
PC
26922011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
2693
2694 PR c++/50810
2695 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
2696 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
2697 Wnarrowing for C++0x and C++98.
2698 * c.opt ([Wnarrowing]): Update.
2699
d2e312d7
PC
27002011-10-21 Paolo Carlini <paolo.carlini@oracle.com>
2701
2702 PR c++/45385
2703 * c-common.c (conversion_warning): Remove code looking for
2704 artificial operands.
2705
d17687f6
DS
27062011-10-18 Dodji Seketeli <dodji@redhat.com>
2707
2708 PR bootstrap/50760
2709 * c-lex.c (fe_file_change): Use LINEMAP_SYSP when
9faeb493 2710 !NO_IMPLICIT_EXTERN_C.
d17687f6 2711
fc8396e9
PC
27122011-10-17 Michael Spertus <mike_spertus@symantec.com>
2713
2714 * c-common.c (c_common_reswords): Add __bases,
2715 __direct_bases.
2716 * c-common.h: Add RID_BASES and RID_DIRECT_BASES.
2717
27182011-10-17 Paolo Carlini <paolo.carlini@oracle.com>
2719
2720 PR c++/50757
2721 * c.opt ([Wnonnull]): Add C++ and Objective-C++.
2722
847e697a
TT
27232011-10-15 Tom Tromey <tromey@redhat.com>
2724 Dodji Seketeli <dodji@redhat.com>
2725
2726 * c.opt (fdebug-cpp): New option.
2727 * c-opts.c (c_common_handle_option): Handle the option.
2728 * c-ppoutput.c (maybe_print_line_1): New static function. Takes an
2729 output stream in parameter. Factorized from ...
2730 (maybe_print_line): ... this. Dump location debug information when
2731 -fdebug-cpp is in effect.
2732 (print_line_1): New static function. Takes an output stream in
2733 parameter. Factorized from ...
2734 (print_line): ... here. Dump location information when -fdebug-cpp
2735 is in effect.
2736 (scan_translation_unit): Dump location information when
2737 -fdebug-cpp is in effect.
2738
92582b75
TT
27392011-10-15 Tom Tromey <tromey@redhat.com>
2740 Dodji Seketeli <dodji@redhat.com>
2741
2742 * c.opt (ftrack-macro-expansion): New option. Handle it with and
2743 without argument.
2744 * c-opts.c (c_common_handle_option)<case
2745 OPT_ftrack_macro_expansion_, case OPT_ftrack_macro_expansion>: New
2746 cases. Handle -ftrack-macro-expansion with and without argument.
2747
46427374
TT
27482011-10-15 Tom Tromey <tromey@redhat.com>
2749 Dodji Seketeli <dodji@redhat.com>
2750
2751 * c-ppoutput.c (scan_translation_unit, maybe_print_line)
2752 (print_line, cb_define, do_line_change): Adjust to avoid touching
2753 the internals of struct line_map. Use the public API instead.
2754 * c-pch.c (c_common_read_pch): Likewise.
2755 * c-lex.c (fe_file_change): Likewise.
2756
fc8396e9
PC
27572011-10-14 Paolo Carlini <paolo.carlini@oracle.com>
2758
2759 PR c++/17212
2760 * c.opt ([Wformat-zero-length]): Add C++ and Objective-C++.
2761
27622011-10-11 Paolo Carlini <paolo.carlini@oracle.com>
2763
2764 PR c++/33067
2765 * c-pretty-print.c (pp_c_floating_constant): Output
2766 max_digits10 (in the ISO C++ WG N1822 sense) decimal digits.
2767
e79983f4
MM
27682011-10-11 Michael Meissner <meissner@linux.vnet.ibm.com>
2769
2770 * c-common.c (def_builtin_1): Delete old interface with two
2771 parallel arrays to hold standard builtin declarations, and replace
2772 it with a function based interface that can support creating
2773 builtins on the fly in the future. Change all uses, and poison
2774 the old names. Make sure 0 is not a legitimate builtin index.
2775 * c-omp.c (c_finish_omp_barrier): Ditto.
2776 (c_finish_omp_taskwait): Ditto.
2777 (c_finish_omp_flush): Ditto.
2778
6637388f
TG
27792011-10-11 Tristan Gingold <gingold@adacore.com>
2780
2781 * c.opt: (fallow-parameterless-variadic-functions): New.
2782
3797cb21
DS
27832011-09-08 Dodji Seketeli <dodji@redhat.com>
2784
2785 PR c++/33255 - Support -Wunused-local-typedefs warning
2786 * c-common.h (struct c_language_function::local_typedefs): New
2787 field.
9faeb493
UB
2788 (record_locally_defined_typedef, maybe_record_typedef_use)
2789 (maybe_warn_unused_local_typedefs): Declare new functions.
3797cb21 2790 * c-common.c (record_locally_defined_typedef)
9faeb493
UB
2791 (maybe_record_typedef_use)
2792 (maybe_warn_unused_local_typedefs): Define new functions.
3797cb21
DS
2793 * c.opt: Declare new -Wunused-local-typedefs flag.
2794
693ddb1b
EB
27952011-09-06 Eric Botcazou <ebotcazou@adacore.com>
2796
2797 PR middle-end/50266
2798 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Fold offsetof-like
2799 computations.
2800
830c740f
RG
28012011-09-05 Richard Guenther <rguenther@suse.de>
2802
2803 * c-common.c (complete_array_type): Use ssize_int (-1) instead
2804 of integer_minus_one_node for empty array upper bounds.
2805
892a371f
DS
28062011-08-28 Dodji Seketeli <dodji@redhat.com>
2807
2808 * c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as
2809 it's the first time it's being called on this main TU.
2810
0e3fdb48
RB
28112011-08-24 Richard Guenther <rguenther@suse.de>
2812
2813 PR c/49396
2814 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional.
2815
28162011-08-22 Gabriel Charette <gchare@google.com>
e3dfef44
GC
2817
2818 * c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens
2819 defined in cpp_init_builtins and c_cpp_builtins.
2820
d4a83c10
JM
28212011-08-19 Joseph Myers <joseph@codesourcery.com>
2822
2823 * c-common.c (c_common_reswords): Add __builtin_complex.
2824 * c-common.h (RID_BUILTIN_COMPLEX): New.
2825
bbceee64
JM
28262011-08-18 Joseph Myers <joseph@codesourcery.com>
2827
2828 * c-common.c (c_common_reswords): Add _Noreturn.
2829 (keyword_is_function_specifier): Handle RID_NORETURN.
2830 * c-common.h (RID_NORETURN): New.
2831
0e3a99ae
AS
28322011-08-10 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
2833
2834 * c-common.c (unsafe_conversion_p): New function. Check if it is
2835 unsafe to convert an expression to the type.
2836 (conversion_warning): Adjust, use unsafe_conversion_p.
2837 * c-common.h (unsafe_conversion_p): New function declaration.
2838
20906c66
JJ
28392011-08-02 Jakub Jelinek <jakub@redhat.com>
2840
2841 * c-common.h (c_finish_omp_atomic): Adjust prototype.
2842 (c_finish_omp_taskyield): New prototype.
2843 * c-omp.c (c_finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1
2844 arguments. Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and
2845 OMP_ATOMIC_CAPTURE_NEW in addition to OMP_ATOMIC. If LHS1
2846 or RHS1 have side-effects, evaluate those too in the right spot,
2847 if it is a decl and LHS is also a decl, error out if they
2848 aren't the same.
2849 (c_finish_omp_taskyield): New function.
2850 * c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP to 201107.
2851 * c-pragma.c (omp_pragmas): Add taskyield.
2852 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKYIELD.
2853 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FINAL and
2854 PRAGMA_OMP_CLAUSE_MERGEABLE.
2855
770e5a2e
DS
28562011-07-25 Dodji Seketeli <dodji@redhat.com>
2857
2858 * c-common.h (set_underlying_type): Remove parm name from
2859 declaration.
2860
1baae426
RG
28612011-07-25 Romain Geissler <romain.geissler@gmail.com>
2862
2863 * c-pretty-print.h: Search c-common.h in c-family.
9faeb493 2864
fcb21722
JM
28652011-07-22 Jason Merrill <jason@redhat.com>
2866
76f86d00
JM
2867 PR c++/49793
2868 * c.opt (Wnarrowing): New.
2869
3a636414
JM
2870 PR c++/30112
2871 * c-common.h: Declare c_linkage_bindings.
2872 * c-pragma.c (handle_pragma_redefine_extname): Use it.
2873
fcb21722
JM
2874 PR c++/49813
2875 * c-opts.c (set_std_cxx0x): Set flag_isoc94 and flag_isoc99.
2876 * c-pretty-print.c (pp_c_cv_qualifiers): Check c_dialect_cxx as well
2877 as flag_isoc99 for 'restrict'.
2878 (pp_c_specifier_qualifier_list): Likewise for _Complex.
2879
02614448
ILT
28802011-07-21 Ian Lance Taylor <iant@google.com>
2881
2882 PR middle-end/49705
2883 * c-common.c (c_disable_warnings): New static function.
2884 (c_enable_warnings): New static function.
2885 (c_fully_fold_internal): Change local unused_p to bool. Call
2886 c_disable_warnings and c_enable_warnings rather than change
2887 c_inhibit_evaluation_warnings.
2888
34429675
JM
28892011-07-20 Jason Merrill <jason@redhat.com>
2890
2891 PR c++/6709 (DR 743)
2892 PR c++/42603 (DR 950)
2893 * c-common.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move from cp/parser.h.
2894 (CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise.
2895 (CPP_DECLTYPE): New.
2896 * c-common.c (c_parse_error): Handle CPP_DECLTYPE.
2897
5d49b6a7
RG
28982011-07-19 Richard Guenther <rguenther@suse.de>
2899
2900 * c-common.c (pointer_int_sum): Use fold_build_pointer_plus.
2901 * c-omp.c (c_finish_omp_for): Likewise.
2902
e84a58ff
EB
29032011-07-12 Eric Botcazou <ebotcazou@adacore.com>
2904
2905 * c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop
2906 body on the next line.
2907
329af3c7
JM
29082011-07-08 Jason Merrill <jason@redhat.com>
2909
4063e61b
JM
2910 PR c++/45437
2911 * c-omp.c (check_omp_for_incr_expr): Handle preevaluation.
2912
329af3c7
JM
2913 PR c++/49673
2914 * c-common.c (c_apply_type_quals_to_decl): Don't check
2915 TYPE_NEEDS_CONSTRUCTING.
2916
1a072294
RG
29172011-07-06 Richard Guenther <rguenther@suse.de>
2918
2919 * c-common.c (c_common_nodes_and_builtins):
2920 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
2921
fce5dddd
RG
29222011-07-05 Richard Guenther <rguenther@suse.de>
2923
2924 * c-common.c (c_common_nodes_and_builtins): Build all common
2925 tree nodes first.
2926
45d439ac
JJ
29272011-06-27 Jakub Jelinek <jakub@redhat.com>
2928
56300785
JJ
2929 * c-common.h (c_tree_chain_next): New static inline function.
2930
45d439ac
JJ
2931 * c-common.c (check_builtin_function_arguments): Handle
2932 BUILT_IN_ASSUME_ALIGNED.
2933
e0a8ecf2
AM
29342011-06-21 Andrew MacLeod <amacleod@redhat.com>
2935
2936 * c-common.c: Add sync_ or SYNC__ to builtin names.
2937 * c-omp.c: Add sync_ or SYNC__ to builtin names.
dfb43cd5
PV
2938
29392011-06-20 Pierre Vittet <piervit@pvittet.com>
2940
2941 * c-pragma.h (pragma_handler_1arg, pragma_handler_2arg): New
2942 handler.
2943 (gen_pragma_handler): New union.
2944 (internal_pragma_handler): New type.
2945 (c_register_pragma_with_data)
2946 (c_register_pragma_with_expansion_and_data): New functions.
2947
2948 * c-pragma.c (registered_pragmas, c_register_pragma_1)
2949 (c_register_pragma, c_register_pragma_with_expansion)
2950 (c_invoke_pragma_handler): Changed to work with
2951 internal_pragma_handler.
2952 (c_register_pragma_with_data)
2953 (c_register_pragma_with_expansion_and_data): New functions.
2954
677f3fa8
JM
29552011-06-14 Joseph Myers <joseph@codesourcery.com>
2956
2957 * c-common.c: Include common/common-target.h.
2958 (handle_section_attribute): Use
2959 targetm_common.have_named_sections.
2960 * c-cppbuiltin.c: Include common/common-target.h.
2961 (c_cpp_builtins): Use targetm_common.except_unwind_info.
2962
d7fc8c14
RG
29632011-06-10 Richard Guenther <rguenther@suse.de>
2964
2965 * c-pretty-print.c (pp_c_type_specifier): Use pp_c_identifier
2966 to print a IDENTIFIER_NODE.
2967
10e48e39
RO
29682011-06-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2969 Joseph Myers <joseph@codesourcery.com>
2970
2971 * c.opt (fbuilding-libgcc): New option.
2972 * c-cppbuiltin.c (c_cpp_builtins): Define
2973 __LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc.
2974
6976ae51
JM
29752011-06-07 Jason Merrill <jason@redhat.com>
2976
3ff60975
JM
2977 * c-common.c (max_tinst_depth): Lower default to 900.
2978
6976ae51
JM
2979 * c-format.c (gcc_cxxdiag_char_table): Add 'S' format.
2980
009db074
RG
29812011-06-07 Richard Guenther <rguenther@suse.de>
2982
2983 * c-common.c (c_common_nodes_and_builtins): Do not set
2984 size_type_node or call set_sizetype.
2985
b4592b92
DS
29862011-06-07 Dodji Seketeli <dodji@redhat.com>
2987
2988 PR debug/49130
2989 * c-pretty-print.c (pp_c_integer_constant): Consider the canonical
9faeb493 2990 type when using pointer comparison to compare types.
b4592b92 2991
014ab419
JW
29922011-06-02 Jonathan Wakely <jwakely.gcc@gmail.com>
2993
2994 * c.opt: Add -Wdelete-non-virtual-dtor.
2995 * c-opts.c (c_common_handle_option): Include it in -Wall.
2996
4f60111f
NF
29972011-05-30 Nathan Froyd <froydnj@gcc.gnu.org>
2998
2999 PR bootstrap/49190
3000
3001 Revert:
3002 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
3003
3004 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
3005 not tree_common.
3006
4cc4f2f4
JJ
30072011-05-27 Jakub Jelinek <jakub@redhat.com>
3008
3009 PR c++/49165
3010 * c-common.c (c_common_truthvalue_conversion) <case COND_EXPR>: For
3011 C++ don't call c_common_truthvalue_conversion on void type arms.
3012
38e01f9e
NF
30132011-05-27 Nathan Froyd <froydnj@codesourcery.com>
3014
3015 * c-common.h (struct stmt_tree_s) [x_cur_stmt_list]: Change to a VEC.
3016 (stmt_list_stack): Define.
3017 (cur_stmt_list): Adjust for new type of x_cur_stmt_list.
3018 * c-semantics.c (push_stmt_list, pop_stmt_list): Likewise.
3019
92e948a8
NF
30202011-05-26 Nathan Froyd <froydnj@codesourcery.com>
3021
3022 * c-common.c (warning_candidate_p): Check for BLOCKs.
3023
a2fc3e63
NF
30242011-05-26 Nathan Froyd <froydnj@codesourcery.com>
3025
3026 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
3027 not tree_common.
3028
0957c029
JJ
30292011-05-25 Jakub Jelinek <jakub@redhat.com>
3030
3031 * c-common.c (def_fn_type): Remove extra va_end.
3032
828fb3ba
JM
30332011-05-23 Jason Merrill <jason@redhat.com>
3034
3035 PR c++/48106
3036 * c-common.c (c_common_get_narrower): New.
3037 (shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.
3038
dde05067
NF
30392011-05-23 Nathan Froyd <froydnj@codesourcery.com>
3040
3041 * c-common.h (check_function_arguments): Tweak prototype of
3042 check_function_arguments.
3043 * c-common.c (check_function_arguments): Likewise. Adjust
3044 calls to check_function_nonnull, check_function_format, and
3045 check_function_sentinel.
3046 (check_function_sentinel): Take a FUNCTION_TYPE rather than
3047 separate attributes and typelist arguments. Use
3048 FOREACH_FUNCTION_ARGS to iterate over argument types.
3049
3c0d13bf
PC
30502011-05-15 Paolo Carlini <paolo.carlini@oracle.com>
3051
3052 * c-common.c (c_common_reswords): Reorder.
3053 * c-common.h (rid): Likewise.
3054
8242dd04
NF
30552011-05-10 Nathan Froyd <froydnj@codesourcery.com>
3056
3057 * c-common.c (def_fn_type): Don't call build_function_type, call
3058 build_function_type_array or build_varargs_function_type_array
3059 instead.
3060 (c_common_nodes_and_builtins): Likewise.
3061
3d528853
NF
30622011-05-05 Nathan Froyd <froydnj@codesourcery.com>
3063
3064 * c-common.c (c_add_case_label): Omit the loc argument to
3065 build_case_label.
3066 * c-common.h (build_case_label): Remove.
3067 * c-semantics.c (build_case_label): Remove.
3068
a04a722b
JM
30692011-05-05 Joseph Myers <joseph@codesourcery.com>
3070
3071 * c-objc.h (objc_start_method_definition): Update prototype.
3072 * stub-objc.c (objc_start_method_definition): Add extra parameter.
3073
e19a18d4
NF
30742011-05-04 Nathan Froyd <froydnj@codesourcery.com>
3075
3076 * c-common.c (check_main_parameter_types): Reindent. Don't use
3077 TYPE_ARG_TYPES directly.
3078 (handle_nonnull_attribute): Likewise.
3079 (sync_resolve_params): Likewise.
3080 * c-format.c (handle_format_arg_attribute): Likewise. Adjust call
3081 to check_format_string.
3082 (handle_format_attribute): Likewise.
3083 (check_format_string): Take a function type to examine instead of
3084 a type list. Use a function_arg_iterator to step through argument
3085 types.
3086
c62c040f
RG
30872011-05-04 Richard Guenther <rguenther@suse.de>
3088
3089 * c-common.c (fix_string_type): Use size_int for index type bounds.
3090 (start_fname_decls): Do not pass NULL to build_int_cst.
3091 (c_init_attributes): Likewise.
3092 * c-lex.c (c_lex_with_flags): Likewise.
3093
c12ff9d8
JM
30942011-04-27 Jason Merrill <jason@redhat.com>
3095
3096 * c-common.c (make_tree_vector_from_list): New.
3097 * c-common.h: Declare it.
3098
304dfbe3
RG
30992011-04-26 Richard Guenther <rguenther@suse.de>
3100
3101 PR preprocessor/48248
3102 * c-ppoutput.c (maybe_print_line): Always optimize newlines
3103 for output size with -P.
3104
3c0d13bf
PC
31052011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
3106
3107 * c-common.c (struct c_common_resword): Add __underlying_type.
3108 * c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
3109
04695783
JM
31102011-04-20 Jim Meyering <meyering@redhat.com>
3111
3112 * c-format.c (init_dollar_format_checking): Remove useless
3113 if-before-free.
3114
0dc33c3c
NP
31152011-04-15 Nicola Pero <nicola.pero@meta-innovation.com>
3116
3117 * c-objc.h (objc_get_interface_ivars): Removed.
3c0d13bf 3118 (objc_detect_field_duplicates): New.
0dc33c3c 3119 * stub-objc.c: Likewise.
3c0d13bf 3120
c59633d9
NP
31212011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
3122
3123 * stub-objc.c (objc_declare_protocols): Renamed to
3124 objc_declare_protocol.
3125 * c-objc.h: Likewise.
3c0d13bf 3126
32dabdaf
NP
31272011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
3128
3129 * stub-objc.c (objc_declare_class): Updated argument name.
3130
81f653d6
NF
31312011-04-12 Nathan Froyd <froydnj@codesourcery.com>
3132
3133 * c-common.h (c_common_init_ts): Declare.
3134 * c-common.c (c_common_init_ts): Define.
3135
eb345401
NP
31362011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
3137
3138 * c-objc.h (objc_build_message_expr): Updated prototype.
3139 * stub-objc.c (objc_build_message_expr): Likewise.
9faeb493 3140
a358e188
MJ
31412011-04-12 Martin Jambor <mjambor@suse.cz>
3142
3143 * c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
3144 of cgraph_node.
3145
e6313a78
RG
31462011-04-11 Richard Guenther <rguenther@suse.de>
3147
3148 * c-common.c (complete_array_type): Build a range type of
3149 proper type.
3150
dcf0c47e
NF
31512011-04-08 Nathan Froyd <froydnj@codesourcery.com>
3152
3153 * c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
3154 (handle_type_generic_attribute): Likewise.
3155
1ee44b26
JM
31562011-04-07 Jason Merrill <jason@redhat.com>
3157
3158 PR c++/48450
3159 * c-common.c (c_common_truthvalue_conversion): Don't ignore
3160 conversion from C++0x scoped enum.
3161
acce4e77
JM
31622011-04-06 Joseph Myers <joseph@codesourcery.com>
3163
3164 * c-target-def.h: New file.
3165 * c-target.def: New file.
3166 * c-target.h: New file.
3167 * c-common.c (targetcm): Don't define here.
3168 * c-common.h (default_handle_c_option): Declare.
3169 * c-format.c: Include c-target.h instead of target.h.
3170 * c-opts.c: Include c-target.h instead of target.h. Explicitly
3171 include tm.h.
3172 (default_handle_c_option): Move from targhooks.c.
3173
e2eefb55
JJ
31742011-03-29 Jakub Jelinek <jakub@redhat.com>
3175
3176 PR preprocessor/48248
3177 * c-ppoutput.c (print): Add src_file field.
3178 (init_pp_output): Initialize it.
3179 (maybe_print_line): Don't optimize by adding up to 8 newlines
3180 if map->to_file and print.src_file are different file.
3181 (print_line): Update print.src_file.
3182
ba78087b
KT
31832011-03-25 Kai Tietz <ktietz@redhat.com>
3184
3185 * c-ada-spec.c (compare_comment): Use filename_cmp
3186 instead of strcmp for filename.
3187
0edf1bb2
JL
31882011-03-25 Jeff Law <law@redhat.com>
3189
3190 * c-family/c-common.c (def_fn_type): Add missing va_end.
3191
c7dc8804
JM
31922011-03-25 Jason Merrill <jason@redhat.com>
3193
3194 * c.opt: Add -std=c++03.
3195
d1d879b1
EB
31962011-03-22 Eric Botcazou <ebotcazou@adacore.com>
3197
3198 * c-ada-spec.c (dump_ada_template): Skip non-class instances.
3199
62d784f7
KT
32002011-03-17 Kai Tietz
3201
3202 PR target/12171
5050afdf
KT
3203 * c-pretty-print.c (pp_c_specifier_qualifier_list):
3204 Display allowed attributes for function pointer types.
3205 (pp_c_attributes_display): New function to display
3206 attributes having affects_type_identity flag set to true.
3207 * c-pretty-print.h (pp_c_attributes_display): New prototype.
3208
62d784f7
KT
3209 * c-common.c (c_common_attribute_table):
3210 Add new element.
3211 (c_common_format_attribute_table): Likewise.
3212
82d37118
JM
32132011-03-18 Jason Merrill <jason@redhat.com>
3214
49a000c3
JM
3215 * c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
3216 * c-common.h: Don't declare it here.
3217 * c-common.c: Or define it here.
3218 * c-opts.c (c_common_handle_option): Or set it here.
3219
82d37118
JM
3220 PR c++/35315
3221 * c-common.c (handle_transparent_union_attribute): Don't
3222 make a duplicate type in C++.
3223
17bc631c
JM
32242011-03-15 Jason Merrill <jason@redhat.com>
3225
3226 * c-common.c (max_constexpr_depth): New.
3227 * c-common.h: Declare it.
3228 * c-opts.c (c_common_handle_option): Set it.
3229 * c.opt (fconstexpr-depth): New option.
3230
1b9b91a6
JM
32312011-03-11 Jason Merrill <jason@redhat.com>
3232
f231b5ff
JM
3233 * c-common.c (attribute_takes_identifier_p): Add missing const.
3234
1b9b91a6
JM
3235 PR c++/46803
3236 * c-common.c (attribute_takes_identifier_p): Assume that an
3237 unknown attribute takes an identifier.
3238
a19e4d44
NF
32392011-03-07 Nathan Froyd <froydnj@codesourcery.com>
3240
3241 PR c/47786
3242 * c-common.c (c_type_hash): Call list_length instead of iterating
3243 through DECL_CHAIN. Rename 'i' to 'n_elements'.
3244
982d62f6
JJ
32452011-02-19 Jakub Jelinek <jakub@redhat.com>
3246
3247 PR c/47809
3248 * c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
3249
0a256240
NP
32502011-02-17 Iain Sandoe <iains@gcc.gnu.org>
3251
3252 * c.opt (fobjc-abi-version=) New.
3253 (fobjc-nilcheck): New.
3254
ba9e6dd5
NF
32552011-02-03 Nathan Froyd <froydnj@codesourcery.com>
3256
3257 PR c++/46890
3258 * c-common.h (keyword_is_decl_specifier): Declare.
3259 * c-common.c (keyword_is_decl_specifier): Define.
3260 (keyword_is_function_specifier): New function.
3261
7273813a
JJ
32622011-01-26 Jakub Jelinek <jakub@redhat.com>
3263
3264 PR c/47473
3265 * c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
3266 EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
3267 REAL_TYPE.
3268
908ef79b
AC
32692011-01-26 Arnaud Charlet <charlet@adacore.com>
3270
3271 * c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type.
3272
237e9384
JJ
32732011-01-26 Jakub Jelinek <jakub@redhat.com>
3274
3275 PR pch/47430
3276 * c-opts.c (c_common_post_options): Call c_common_no_more_pch
3277 after init_c_lex if pch_file is set.
3278
47ea1edf
DK
32792011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
3280
d4dba752 3281 PR c++/43601
47ea1edf
DK
3282 * c.opt (-fkeep-inline-dllexport): New switch.
3283
2aa9c6ae
RG
32842011-01-12 Richard Guenther <rguenther@suse.de>
3285
3286 PR middle-end/32511
3287 * c-common.c (handle_weak_attribute): Warn instead of error
3288 on declaring an inline function weak.
3289
7bd11157
TT
32902011-01-05 Tom Tromey <tromey@redhat.com>
3291
3292 * c-common.h (lvalue_error): Update.
3293 * c-common.c (lvalue_error): Add 'loc' argument. Call error_at,
3294 not error.
3295
0e66e494 32962010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
9faeb493 3297
b4f588c4
NP
3298 PR objc/47075
3299 * c-objc.h (objc_finish_message_expr): Added argument to
3300 prototype.
3301
f4da8dce
NF
33022010-12-22 Nathan Froyd <froydnj@codesourcery.com>
3303
3304 * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute):
3305 Use prototype_p.
3306
46270f14
NP
33072010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
3308
3309 * c-objc.h (objc_maybe_warn_exceptions): New.
9faeb493 3310 * stub-objc.c (objc_maybe_warn_exceptions): New.
46270f14 3311
4816c593
NF
33122010-12-10 Nathan Froyd <froydnj@codesourcery.com>
3313
3314 * c-common.h (readonly_error): Declare.
3315 * c-common.c (readonly_error): Define.
3316
7a6daeb0
NF
33172010-12-09 Nathan Froyd <froydnj@codesourcery.com>
3318
3319 * c-common.h (invalid_indirection_error): Declare.
3320 * c-common.c (invalid_indirection_error): Define.
3321
892f6119
RG
33222010-12-03 Richard Guenther <rguenther@suse.de>
3323
3324 PR c/46745
3325 * c-pretty-print.c (pp_c_postfix_expression): Handle MEM_REF.
3326 (pp_c_unary_expression): Likewise.
3327 (pp_c_expression): Likewise.
3328
6c39e757
NP
33292010-11-30 Nicola Pero <nicola.pero@meta-innovation.com>
3330
3331 * c-common.h (objc_finish_function): New.
3332 (objc_non_volatilized_type): Removed.
3333 (objc_type_quals_match): Removed.
3334 * stub-objc.c (objc_finish_function): New.
3335 (objc_non_volatilized_type): Removed.
3336 (objc_type_quals_match): Removed.
9faeb493 3337
7c475d11
JM
33382010-11-30 Joseph Myers <joseph@codesourcery.com>
3339
3340 * c-common.h (parse_optimize_options): Declare.
3341 * c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c,
3342 c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h.
3343
71f3e391
JM
33442010-11-29 Joseph Myers <joseph@codesourcery.com>
3345
3346 * c-opts.c (check_deps_environment_vars): Use getenv instead of
3347 GET_ENVIRONMENT.
3348 * c-pch.c (O_BINARY): Don't define here.
3349 * c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
3350
d5fabb58
JM
33512010-11-25 Joseph Myers <joseph@codesourcery.com>
3352
3353 * c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
3354 targetm.except_unwind_info.
3355
299404a1
JM
33562010-11-23 Joseph Myers <joseph@codesourcery.com>
3357
3358 * c-opts.c (c_common_handle_option): Pass location to
3359 set_struct_debug_option.
3360
c98cd5bf
JM
33612010-11-23 Joseph Myers <joseph@codesourcery.com>
3362
3363 * c-common.c (visibility_options): Move from ../opts.c.
3364 * c-common.h (struct visibility_flags, visibility_options):
3365 Declare here.
3366 * c-opts.c (finish_options): Rename to c_finish_options.
3367 (c_common_init): Update call to finish_options.
3368
a9546771
NP
33692010-11-22 Nicola Pero <nicola.pero@meta-innovation.com>
3370
3371 PR objc/34033
3372 * c-lex.c (lex_string): Check that each string in an Objective-C
3373 string concat sequence starts with either one or zero '@', and
3374 that there are no spurious '@' signs at the end.
3375
24a57808
JM
33762010-11-20 Joseph Myers <joseph@codesourcery.com>
3377
3378 * c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
3379 HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
3380 HANDLE_PRAGMA_VISIBILITY.
3381 * c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
3382 HANDLE_PRAGMA_VISIBILITY): Don't define.
3383 (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.
3384
a9aa2c3a
NF
33852010-11-20 Nathan Froyd <froydnj@codesourcery.com>
3386
3387 PR c++/16189
3388 PR c++/36888
3389 PR c++/45331
3390 * c-common.h (keyword_begins_type_specifier): Declare.
3391 (keyword_is_storage_class_specifier): Declare.
3392 (keyword_is_type_qualifier): Declare.
3393 * c-common.c (keyword_begins_type_specifier): New function.
3394 (keyword_is_storage_class_specifier): New function.
3395 (keyword_is_type_qualifier): Declare.
3396
5386338c
JM
33972010-11-19 Joseph Myers <joseph@codesourcery.com>
3398
3399 PR c/46547
3400 * c-common.c (in_late_binary_op): Define.
3401 (c_common_truthvalue_conversion): Check in_late_binary_op before
3402 calling c_save_expr.
3403 * c-common.h (in_late_binary_op): Declare.
3404
69ccdddb
JM
34052010-11-19 Joseph Myers <joseph@codesourcery.com>
3406
3407 * c-opts.c (c_common_handle_option): Update calls to
3408 set_struct_debug_option.
3409
6b192a09
NP
34102010-11-19 Nicola Pero <nicola.pero@meta-innovation.com>
3411
3412 * c-common.h (objc_declare_protocols): Added additional argument.
3413 * stub-objc.c (objc_declare_protocol): Same change.
9faeb493 3414
fb52b50a
NF
34152010-11-18 Nathan Froyd <froydnj@codesourcery.com>
3416
3417 PR c/33193
3418 * c-common.h (build_real_imag_expr): Declare.
3419 * c-semantics.c (build_real_imag_expr): Define.
3420
b37421c6
JM
34212010-11-17 Joseph Myers <joseph@codesourcery.com>
3422
3423 * c-opts.c (c_common_parse_file): Take no arguments.
3424 * c-common.h (c_common_parse_file): Update prototype.
3425
07078664
JJ
34262010-11-16 Jakub Jelinek <jakub@redhat.com>
3427
3428 PR c++/46401
3429 * c-common.c (warning_candidate_p): Don't track non-const calls
3430 or STRING_CSTs.
3431
c6a13190
ILT
34322010-11-15 Ian Lance Taylor <iant@google.com>
3433
3434 * c-lex.c (init_c_lex): Set macro debug callbacks if
3435 flag_dump_go_spec is set.
3436
925e8657
NP
34372010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
3438
3439 * c-common.h (objc_build_incr_expr_for_property_ref): New.
3440 * stub-objc.c (objc_build_incr_expr_for_property_ref): New.
3441
bb0a9581
NF
34422010-11-15 Nathan Froyd <froydnj@codesourcery.com>
3443
3444 PR preprocessor/45038
3445 * c-cppbuiltin.c (c_cpp_builtins): Use different format for C++
3446 dialects.
3447
c5fa0890
JM
34482010-11-12 Joseph Myers <joseph@codesourcery.com>
3449
3450 * c-common.h (c_family_lang_mask): Declare.
3451 * c-opts.c (c_family_lang_mask): Make extern.
3452 * c-pragma.c (handle_pragma_diagnostic): Use
3453 control_warning_option.
3454
a4d8c676
JM
34552010-11-12 Joseph Myers <joseph@codesourcery.com>
3456
3457 * c-common.c (parse_optimize_options): Update call to
3458 decode_options.
3459 * c-common.h (c_common_handle_option): Update prototype.
3460 * c-opts.c (c_common_handle_option): Take location_t parameter and
3461 pass it to other functions.
3462
f954bd2c
JM
34632010-11-11 Joseph Myers <joseph@codesourcery.com>
3464
3465 * c-opts.c (warning_as_error_callback): Remove.
3466 (c_common_initialize_diagnostics): Don't call
3467 register_warning_as_error_callback.
3468 (c_common_handle_option): Handle -Werror=normalized= here.
3469
d8a07487
JM
34702010-11-10 Joseph Myers <joseph@codesourcery.com>
3471
3472 * c-common.c (handle_mode_attribute): Use %' and word "signedness"
3473 in diagnostic.
3474 * c-opts.c (c_common_parse_file): Start diagnostics with lowercase
3475 letter.
3476 * c-pragma.c (handle_pragma_target, handle_pragma_optimize):
3477 Remove trailing '.' from diagnostics.
3478 * c.opt (Wwrite-strings_: Avoid '`' in help text.
3479
d5478783
JM
34802010-11-10 Joseph Myers <joseph@codesourcery.com>
3481
3482 * c-common.c (parse_optimize_options): Pass global_dc to
3483 decode_options.
3484 * c-opts.c (c_common_handle_option): Pass &global_options to
3485 set_Wstrict_aliasing.
3486 * c.opt (v): Don't mark Common or document here.
3487
91ebb981
IS
34882010-11-06 Iain Sandoe <iains@gcc.gnu.org>
3489
3490 PR target/44981
3491 * c-format.c (format_type): New type gcc_objc_string_format_type.
3492 (valid_stringptr_type_p): New.
3493 (handle_format_arg_attribute): Use valid_stringptr_type_p ().
9faeb493 3494 (check_format_string): Pass expected type, use
91ebb981
IS
3495 valid_stringptr_type_p (), check that the format string types are
3496 consistent with the format specification.
3497 (decode_format_attr): Warn if NSString is used outside objective-c.
3498 (format_types_orig): Add NSString.
3499 (format_name): New.
3500 (format_flags): New.
3501 (check_format_arg): Handle format strings requiring an external parser.
3502 first_target_format_type: New variable.
3503 (handle_format_attribute): Set up first_target_format_type, pass the
3504 expected format arg string type to check_format_string().
3505 * c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL): New flag.
3506 * stub-objc.c (objc_string_ref_type_p): New.
3507 (objc_check_format_arg): New.
3508
bede2adc
NP
35092010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
3510
9faeb493 3511 Fixed using the Objective-C 2.0 dot-syntax with class names.
bede2adc
NP
3512 * c-common.h (objc_build_class_component_ref): New.
3513 * stub-objc.c (objc_build_class_component_ref): New.
3514
9a179d01
NP
35152010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
3516
3517 * c.opt (Wproperty-assign-default): New option.
3518
22d8d616
NP
35192010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
3520
3521 Implemented -fobjc-std=objc1 flag.
3522 * c.opt (fobjc-std=objc1): New option.
3523
2debdb4f
NP
35242010-11-01 Nicola Pero <nicola.pero@meta-innovation.com>
3525
3526 Implemented format and noreturn attributes for Objective-C methods.
3527 * c-common.c (handle_noreturn_attribute): Recognize 'noreturn'
3528 attribute for Objective-C methods.
3529
ec52b111
JM
35302010-10-31 Jason Merrill <jason@redhat.com>
3531
3532 * c-common.c (conversion_warning, warn_for_collisions_1): Use
3533 EXPR_LOC_OR_HERE.
3534
46a88c12
NP
35352010-10-30 Nicola Pero <nicola.pero@meta-innovation.com>
3536
3537 Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
3538 * c-common.h (enum rid): Removed RID_COPIES and RID_IVAR.
3539 (objc_add_property_declaration): Removed arguments for copies and
3540 ivar.
3541 (objc_build_getter_call): Renamed to
3542 objc_maybe_build_component_ref.
3543 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
3544 (objc_is_property_ref): New.
3545 * c-common.c (c_common_reswords): Removed copies and ivar.
3546 * stub-objc.c (objc_add_property_declaration): Removed arguments
3547 for copies and ivar.
3548 (objc_build_getter_call): Renamed to
3549 objc_maybe_build_component_ref.
3550 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
3551 (objc_is_property_ref): New.
9faeb493 3552
1e4bf85b
AC
35532010-10-29 Arnaud Charlet <charlet@adacore.com>
3554 Matthew Gingell <gingell@adacore.com>
3555
3556 * c-ada-spec.c (separate_class_package): New function.
3557 (pp_ada_tree_identifier): Prefix references to C++ classes with the
3558 name of their enclosing package.
3559 (print_ada_declaration): Use separate_class_package.
3560
81f0bab2
JM
35612010-10-27 Jason Merrill <jason@redhat.com>
3562
2b08f2c5
JM
3563 * c-common.c (c_common_reswords): Add __is_literal_type.
3564 * c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
3565
81f0bab2
JM
3566 * c-common.c (check_case_value): Remove special C++ code.
3567
200290f2
NP
35682010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
3569
3570 * c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN,
3571 RID_RETAIN, RID_COPY and RID_NONATOMIC. Updated RID_FIRST_PATTR
3572 and RID_LAST_PATTR.
3573 (objc_add_property_declaration): Added additional arguments.
3574 (objc_property_attribute_kind): Removed.
3575 (objc_set_property_attr): Removed.
3576 * c-common.c (c_common_reswords): Added readwrite, assign, retain,
3577 copy and nonatomic.
3578 * stub-objc.c (objc_add_property_declaration): Added additional
3579 arguments.
3580 (objc_set_property_attr): Removed.
9faeb493 3581
f614132b
NP
35822010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
3583
3584 * c-common.h (objc_add_property_variable): Renamed to
3585 objc_add_property_declaration. Added location argument.
3586 * stub-objc.c (objc_add_property_variable): Same change.
3587
b8a18805
NP
35882010-10-23 Nicola Pero <nicola.pero@meta-innovation.com>
3589
3590 * c-common.h (objc_maybe_printable_name): New.
3591 * stub-objc.c (objc_maybe_printable_name): New.
3592
30cd1c5d
AS
35932010-10-22 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
3594 Andrew Pinski <pinskia@gmail.com>
3595
3596 * c-common.h (c_common_mark_addressable_vec): Declare.
3597 * c-common.c (c_common_mark_addressable_vec): New function.
3598
249a82c4
NP
35992010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
3600
3601 * c-common.h (objc_set_method_type): Removed.
3602 (objc_add_method_declaration): Added boolean argument.
3603 (objc_start_method_definition): Same change.
3604 (objc_build_method_signature): Same change.
3605 * stub-objc.c (objc_set_method_type): Removed.
3606 (objc_add_method_declaration): Added boolean argument.
3607 (objc_start_method_definition): Same change.
3608 (objc_build_method_signature): Same change.
3609
977e30bc
NP
36102010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
3611
3612 * c-common.h (finish_file): Removed.
3613 (objc_write_global_declarations): New.
3614 * c-opts.c (c_common_parse_file): Do not call finish_file.
3615 * stub-objc.c (objc_write_global_declarations): New.
9faeb493 3616
da57d1b9
NP
36172010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
3618
3619 Implemented parsing @synthesize and @dynamic for
3620 Objective-C/Objective-C++.
3621 * c-common.h (enum rid): Add RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
3622 (objc_add_synthesize_declaration): New.
3623 (objc_add_dynamic_declaration): New.
3624 * c-common.c (c_common_reswords): Add synthesize and dynamic.
3625 * stub-objc.c (objc_add_synthesize_declaration): New.
3626 (objc_add_dynamic_declaration): New.
9faeb493 3627
0069111f
MM
36282010-10-18 Michael Meissner <meissner@linux.vnet.ibm.com>
3629
3630 PR target/46041
3631 * c-cppbuiltin.c (mode_has_fma): Move function here from
3632 builtins.c. Don't use the fma optab, instead just use the
3633 HAVE_fma* macros, so that __FP_FAST_FMA* will be defined when
3634 using -save-temps.
3635
e426b47b
NP
36362010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
3637
3638 Merge from 'apple/trunk' branch on FSF servers.
0069111f 3639
e426b47b
NP
3640 2005-11-08 Fariborz Jahanian <fjahanian@apple.com>
3641
9faeb493 3642 Radar 4330422
e426b47b
NP
3643 * c-common.h (objc_non_volatilized_type): New declaration
3644 * stub-objc.c (objc_non_volatilized_type): New stub.
3645
90fbfdc3
NP
36462010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
3647
e426b47b 3648 Merge from 'apple/trunk' branch on FSF servers.
90fbfdc3
NP
3649
3650 2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
3651
9faeb493 3652 Radar 4133425
90fbfdc3 3653 * c-common.h (objc_diagnose_private_ivar): New decl.
0069111f 3654 * stub-objc.c (objc_diagnose_private_ivar): New stub.
90fbfdc3 3655
c37d8c30
IS
36562010-10-17 Iain Sandoe <iains@gcc.gnu.org>
3657
3658 * c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
3659 * c-common.h (enum rid): Add RID_AT_PACKAGE.
3660 (objc_ivar_visibility_kind): New enum.
3661 (objc_set_visibility): Adjust prototype to use visibility enum.
0069111f 3662 * stub-objc.c (objc_set_visibility): Adjust stub to use
c37d8c30
IS
3663 visibility enum.
3664
1b1562a5
MM
36652010-10-14 Michael Meissner <meissner@linux.vnet.ibm.com>
3666
3667 * c-cppbuiltin.c (builtin_define_float_constants): Emit
3668 __FP_FAST_FMA, __FP_FAST_FMAF, and __FP_FAST_FMAL if the machine
3669 has the appropriate fma builtins.
3670 (c_cpp_builtins): Adjust call to builtin_define_float_constants.
3671
668ea4b1
IS
36722010-10-14 Iain Sandoe <iains@gcc.gnu.org>
3673
1b1562a5 3674 merge from FSF apple 'trunk' branch.
668ea4b1 3675 2006 Fariborz Jahanian <fjahanian@apple.com>
1b1562a5 3676
668ea4b1
IS
3677 Radars 4436866, 4505126, 4506903, 4517826
3678 * c-common.c (c_common_resword): Define @property and its attributes.
3679 * c-common.h: Define property attribute enum entries.
3680 (OBJC_IS_PATTR_KEYWORD): New.
3681 (objc_property_attribute_kind): New enum.
3682 Declare objc_set_property_attr (), objc_add_property_variable (),
3683 objc_build_getter_call () and objc_build_setter_call ().
3684 * stub-objc.c (objc_set_property_attr): New stub.
3685 (objc_add_property_variable): Likewise.
3686 (objc_build_getter_call): Likewise.
3687 (objc_build_setter_call) Likewise.
1b1562a5 3688
a1178b30
IS
36892010-10-13 Iain Sandoe <iains@gcc.gnu.org>
3690
1b1562a5 3691 merge from FSF apple 'trunk' branch.
a1178b30
IS
3692 2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
3693
3694 Radar 3803157 (method attributes)
3695 * c-common.c (handle_deprecated_attribute): Recognize
3696 objc methods as valid declarations.
3697 * c-common.h: Declare objc_method_decl ().
1b1562a5 3698 * stub-objc.c (objc_method_decl): New stub.
a1178b30 3699
a75bfaa6
JM
37002010-10-08 Joseph Myers <joseph@codesourcery.com>
3701
3702 * c-common.c (parse_optimize_options): Call
3703 decode_cmdline_options_to_array_default_mask before
3704 decode_options. Update arguments to decode_options.
3705 * c-common.h (c_common_init_options_struct): Declare.
3706 * c-opts.c (c_common_init_options_struct): New. Split out from
3707 c_common_init_options.
3708
f05b9d93
NP
37092010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
3710
3711 Implemented fast enumeration for Objective-C.
3712 * c-common.h (objc_finish_foreach_loop): New.
3713 * stub-objc.c (objc_finish_foreach_loop): New.
3714
1ebe4b4f
JM
37152010-10-05 Joseph Myers <joseph@codesourcery.com>
3716
3717 * c-common.h (struct diagnostic_context): Don't declare here.
3718 (c_common_initialize_diagnostics): Declare using
3719 diagnostic_context typedef.
3720 * c-opts.c (c_common_handle_option): Pass global_dc to
3721 handle_generated_option.
3722
d4d24ba4
JM
37232010-10-04 Joseph Myers <joseph@codesourcery.com>
3724
3725 * c-opts.c (c_common_handle_option): Pass &global_options_set to
3726 handle_generated_option.
3727
478a1c5b
ILT
37282010-10-03 Ian Lance Taylor <iant@google.com>
3729
3730 * c.opt (-fplan9-extensions): New option.
3731
82a1c2fe
FXC
37322010-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
3733
3734 * c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision):
3735 Remove.
3736 (c_cpp_builtins): Call functions from cppbuiltin.c instead
3737 of duplicating code.
3738
92902b1b
IS
37392010-09-30 Iain Sandoe <iains@gcc.gnu.org>
3740
3741 * c-common.c: Add two new entries for @optional
3742 and @required keywords.
3743
3744 merge from FSF 'apple/trunk' branch.
3745 2006-01-30 Fariborz Jahanian <fjahanian@apple.com>
3746
3747 Radar 4386773
3748 * c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new
3749 objective-c keywords.
3750 (objc_set_method_opt): New declaration.
3751 * stub-objc.c (objc_set_method_opt): New stub.
9faeb493 3752
46625112
JM
37532010-09-30 Joseph Myers <joseph@codesourcery.com>
3754
3755 * c-common.c (handle_optimize_attribute): Pass &global_options to
3756 cl_optimization_save and cl_optimization_restore.
3757 * c-opts.c (c_common_handle_option): Pass &global_options to
3758 handle_generated_option.
3759 * c-pragma.c (handle_pragma_diagnostic): Use option_flag_var.
3760 (handle_pragma_pop_options, handle_pragma_reset_options): Pass
3761 &global_options to cl_optimization_restore.
3762
49b91f05
NP
37632010-09-30 Nicola Pero <nicola.pero@meta-innovation.com>
3764
3765 * c-lex.c (c_lex_with_flags): Updated comments for CPP_AT_NAME
3766 Objective-C/Objective-C++ keywords.
3767
13ed556f 37682010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
a6341d57 3769
9faeb493
UB
3770 Merge from 'apple/trunk' branch on FSF servers.
3771
a6341d57
NP
3772 2005-10-04 Fariborz Jahanian <fjahanian@apple.com>
3773
3774 Radar 4281748
3775 * c-common.h (objc_check_global_decl): New declaration.
3776 * stub-objc.c (objc_check_global_decl): New stub.
3777
f0036cca
JM
37782010-09-29 Joseph Myers <joseph@codesourcery.com>
3779
3780 * c.opt: Don't use VarExists.
3781
e3339d0f
JM
37822010-09-29 Joseph Myers <joseph@codesourcery.com>
3783
3784 * c-common.c (c_cpp_error): Update names of diagnostic_context
3785 members.
3786 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of
3787 cl_optimization members.
3788 * c-opts.c (warning_as_error_callback, c_common_handle_option,
3789 sanitize_cpp_opts, finish_options): Update names of cpp_options
3790 members.
3791
1973201f
NP
37922010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
3793
3794 * c-common.h (OBJC_IS_CXX_KEYWORD): New macro. Updated comments.
3795 (objc_is_reserved_word): Removed.
3796 * c-common.c: Updated comments.
3797 * c-lex.c (c_lex_with_flags): Use OBJC_IS_CXX_KEYWORD instead of
3798 objc_is_reserved_word.
3799 * stub-objc.c (objc_is_reserved_word): Removed.
3800
f7e71da5
IS
38012010-09-28 Iain Sandoe <iains@gcc.gnu.org>
3802
9faeb493 3803 * c-common.h (objc_add_method_declaration): Adjust prototype to
f7e71da5
IS
3804 include attributes.
3805 (objc_start_method_definition): Likewise.
3806 (objc_build_keyword_decl): Likewise.
3807 * stub-objc.c:(objc_add_method_declaration): Handle attributes.
3808 (objc_start_method_definition): Likewise.
3809 (objc_build_keyword_decl): Likewise.
3810
c165dca7
IS
38112010-09-28 Iain Sandoe <iains@gcc.gnu.org>
3812
3813 * c-common.h (objc_start_class_interface): Adjust prototype.
3814 (objc_start_category_interface): Likewise.
3815 (objc_start_protocol): Likewise.
3816 * stub-objc.c (objc_start_protocol): Adjust for extra argument.
3817 (objc_start_class_interface): Likewise.
3818 (objc_start_category_interface): Likewise.
3819
7458026b
ILT
38202010-09-27 Ian Lance Taylor <iant@google.com>
3821
3822 * c-common.c (c_common_attribute_table): Add no_split_stack.
3823 (handle_no_split_stack_attribute): New static function.
3824
b581b85b
NP
38252010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
3826
9faeb493 3827 Merge from 'apple/trunk' branch on FSF servers.
b581b85b
NP
3828
3829 2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
3830
9faeb493 3831 Radar 4229905
b581b85b
NP
3832 * c-common.h (objc_have_common_type): New declaration.
3833 * stub-objc.c (objc_have_common_type): New stub.
3834
3835 2005-06-22 Ziemowit Laski <zlaski@apple.com>
3836
3837 Radar 4154928
3838 * c-common.h (objc_common_type): New prototype.
9faeb493 3839 * stub-objc.c (objc_common_type): New stub.
b581b85b 3840
46a4da10
JH
38412010-09-24 Jan Hubicka <jh@suse.cz>
3842
3843 * c-common.c (handle_leaf_attribute): New function.
3844 (struct attribute_spec c_common_att): Add leaf.
3845
e200444e
JM
38462010-09-22 Joseph Myers <joseph@codesourcery.com>
3847
3848 * c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
3849 -comments-in-macros, -define-macro, -define-macro=, -dependencies,
3850 -dump, -dump=, -imacros, -imacros=, -include, -include=,
3851 -include-barrier, -include-directory, -include-directory=,
3852 -include-directory-after, -include-directory-after=,
3853 -include-prefix, -include-prefix=, -include-with-prefix,
3854 -include-with-prefix=, -include-with-prefix-after,
3855 -include-with-prefix-after=, -include-with-prefix-before,
3856 -include-with-prefix-before=, -no-integrated-cpp,
3857 -no-line-commands, -no-standard-includes, -no-warnings, -output,
3858 -output=, -pedantic, -pedantic-errors, -preprocess,
3859 -print-missing-file-dependencies, -trace-includes, -traditional,
3860 -traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
3861 -user-dependencies, -verbose, -write-dependencies,
3862 -write-user-dependencies, no-integrated-cpp, traditional): New.
3863
29a80ea6
NP
38642010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
3865
3866 PR objc/23710
ac1fc2fc
NP
3867 * c-common.h (objc_start_method_definition): Return bool instead
3868 of void.
3869 * stub-objc.c (objc_start_method_definition): Return bool instead
3870 of void.
3871
38722010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
3873
3874 PR objc/25965
3875 * c-common.h (objc_get_interface_ivars): New declaration.
3876 * stub-objc.c (objc_get_interface_ivars): New stub.
29a80ea6 3877
de621752
ILT
38782010-09-15 Ian Lance Taylor <iant@google.com>
3879
3880 * c-common.c (parse_optimize_options): Do not capitalize warning
06730c5d 3881 messages. Remove period at end of warning message.
de621752 3882
ba885ec5
NS
38832010-09-09 Nathan Sidwell <nathan@codesourcery.com>
3884
3885 * c-common.c (handle_alias_ifunc_attribute): New, broken out of ...
3886 (handle_alias_attribute): ... here.
3887 (handle_ifunc_attribute): New.
3888
c5ee1358
MM
38892010-09-06 Mark Mitchell <mark@codesourcery.com>
3890
3891 * c-common.h (do_warn_double_promotion): Declare.
3892 * c-common.c (do_warn_double_promotion): Define.
3893
0a0b3574
MM
38942010-09-05 Mark Mitchell <mark@codesourcery.com>
3895
3896 * c.opt (Wdouble-promotion): New.
3897
d1779886
JM
38982010-09-02 Joseph Myers <joseph@codesourcery.com>
3899
3900 * c.opt (falt-external-templates, fhuge-objects, fvtable-gc,
3901 fvtable-thunks, fxref): Mark no longer supported in help text.
3902
2d2bd949
JM
39032010-09-02 Joseph Myers <joseph@codesourcery.com>
3904
3905 * c.opt (Wimport, fall-virtual, falt-external-templates,
3906 fdefault-inline, fenum-int-equiv, fexternal-templates,
3907 fguiding-decls, fhonor-std, fhuge-objects, flabels-ok,
3908 fname-mangling-version-, fnew-abi, fnonnull-objects,
3909 foptional-diags, fsquangle, fstrict-prototype, fthis-is-variable,
3910 fvtable-gc, fvtable-thunks, fxref): Mark with Ignore and Warn as
3911 applicable.
3912 (fhandle-exceptions): Mark with Alias and Warn.
3913 * c-opts.c (c_common_handle_option): Don't handle options marked
3914 as ignored.
3915
5de8299c
JM
39162010-09-02 Joseph Myers <joseph@codesourcery.com>
3917
3918 * c.opt (Wcomments, Werror-implicit-function-declaration,
3919 ftemplate-depth-, std=c89, std=c9x, std=gnu89, std=gnu9x,
3920 std=iso9899:1990, std=iso9899:1999, std=iso9899:199x): Mark as
3921 aliases.
3922 * c-common.c (option_codes): Use OPT_Wcomment instead of
3923 OPT_Wcomments.
3924 * c-opts.c (warning_as_error_callback, c_common_handle_option):
3925 Don't handle options marked as aliases.
3926
0ceb0201
RG
39272010-08-25 Richard Guenther <rguenther@suse.de>
3928
3929 * c-common.c (c_common_get_alias_set): Remove special
3930 handling for pointers.
3931
ac47786e
NF
39322010-08-20 Nathan Froyd <froydnj@codesourcery.com>
3933
3934 * c-common.c: Use FOR_EACH_VEC_ELT.
3935 * c-gimplify.c: Likewise.
3936 * c-pragma.c: Likewise.
3937
c878765b
JM
39382010-08-16 Joseph Myers <joseph@codesourcery.com>
3939
3940 * c.opt (MDX): Change back to MD. Mark NoDriverArg instead of
3941 RejectDriver.
3942 (MMDX): Change back to MMD. Mark NoDriverArg instead of
3943 RejectDriver.
3944 * c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
3945 instead of OPT_MDX and OPT_MMDX.
3946
603349bf
JM
39472010-08-16 Joseph Myers <joseph@codesourcery.com>
3948
3949 * c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.
3950
644fa7ac
JM
39512010-08-12 Joseph Myers <joseph@codesourcery.com>
3952
3953 * c.opt (MD, MMD): Change to MDX and MMDX.
3954 * c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX.
3955
481e1176
JM
39562010-08-11 Joseph Myers <joseph@codesourcery.com>
3957
3958 * c-opts.c (c_common_handle_option): Call handle_generated_option
3959 instead of handle_option.
3960
ac8dc9f7
NF
39612010-08-08 Nathan Froyd <froydnj@codesourcery.com>
3962
3963 * c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
3964 (maybe_apply_renaming_pragma): Delete unneeded declarations.
3965
4f8c876d
NF
39662010-08-08 Nathan Froyd <froydnj@codesourcery.com>
3967
3968 * c-pragma.c (pending_redefinition): Declare. Declare a VEC of it.
3969 (pending_redefine_extname): Change type to a VEC.
3970 (add_to_renaming_pragma_list): Update for new type of
3971 pending_redefine_extname.
ac8dc9f7 3972 (maybe_apply_renaming_pragma): Likewise.
4f8c876d 3973
3b0c690e
AC
39742010-08-04 Arnaud Charlet <charlet@adacore.com>
3975
3976 * c-ada-spec.c (dump_ada_template): Mark underlying instance type as
3977 visited.
3978 (dump_generic_ada_node): Code clean up. Use TREE_VISITED flag to
3979 decide whether a type has already been declared/seen.
3980 Do not go to the original type.
3981 (dump_nested_types): New parameter forward.
3982 Generate forward declaration if needed and mark type as visited.
3983 (print_ada_declaration): Call dump_nested_types if not already done.
3984 Mark types as visited.
3985
1890bccc
JM
39862010-08-03 Joseph Myers <joseph@codesourcery.com>
3987
3988 * c.opt (-print-pch-checksum): Remove option.
3989 * c-opts.c (c_common_handle_option): Don't handle
3990 OPT_print_pch_checksum.
3991
5f20c657
JM
39922010-07-27 Joseph Myers <joseph@codesourcery.com>
3993
3994 * c-common.h (c_common_handle_option): Update prototype and return
3995 value type.
3996 * c-opts.c (c_common_handle_option): Update prototype and return
3997 value type. Update calls to handle_option and
3998 enable_warning_as_error.
3999
f551f80c
JJ
40002010-07-27 Jakub Jelinek <jakub@redhat.com>
4001
4002 PR c/45079
4003 * c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
4004
61ff2bdc
JM
40052010-07-27 Joseph Myers <joseph@codesourcery.com>
4006
4007 * c-common.h (c_common_missing_argument): Remove.
4008 * c-opts.c (c_common_missing_argument): Remove.
4009 * c.opt (A, D, F, I, MD, MMD, MQ, MT, U, fconstant-string-class=,
4010 idirafter, imacros, include, isysroot, isystem, iquote): Add
4011 MissingArgError.
4012 * c-objc-common.h (LANG_HOOKS_MISSING_ARGUMENT): Remove.
4013
7a9bf9a4
JM
40142010-07-27 Joseph Myers <joseph@codesourcery.com>
4015
4016 * c-common.h (c_common_option_lang_mask,
4017 c_common_initialize_diagnostics, c_common_complain_wrong_lang_p):
4018 New.
4019 (c_common_init_options): Update prototype.
4020 * c-opts.c (c_common_option_lang_mask): New.
4021 (c_common_initialize_diagnostics): Split out of
4022 c_common_init_options.
4023 (accept_all_c_family_options, c_common_complain_wrong_lang_p):
4024 New.
4025 (c_common_init_options): Update prototype. Use decoded options in
4026 search for -lang-asm.
4027
910ad8de
NF
40282010-07-15 Nathan Froyd <froydnj@codesourcery.com>
4029
4030 * c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
4031 * c-format.c: Likewise.
4032
718f9c0f
MLI
40332010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
4034
4035 * c-common.h: Include diagnostic-core.h. Error if already
4036 included.
4037 * c-semantics.c: Do not define GCC_DIAG_STYLE here.
4038
4d451982
MLI
40392010-07-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
4040
4041 * c-family/c-common.c (IN_GCC_FRONTEND): Do not undef.
4042 Do not include expr.h
4043 (vector_mode_valid_p): Move here.
4044
119fe915
SB
40452010-06-21 DJ Delorie <dj@redhat.com>
4046
4047 * c-pragma.c (handle_pragma_diagnostic): Add push/pop,
4048 allow these pragmas anywhere.
4049
40502010-06-14 Jakub Jelinek <jakub@redhat.com>
4051
4052 PR bootstrap/44509
4053 * c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
4054 (lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
4055 (lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
4056 ggc_strdup instead of xstrdup.
4057
40582010-06-10 Jakub Jelinek <jakub@redhat.com>
4059
4060 * c-cppbuiltin.c: Include cpp-id-data.h.
4061 (lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
4062 (lazy_hex_fp_value): New function.
4063 (builtin_define_with_hex_fp_value): Provide definitions lazily.
4064
6662d794
MLI
40652010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
4066
4067 * c-gimplify.c: Do not include tree-flow.h
4068
38f8b050
JR
40692010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
4070
4071 PR other/44034
4072 * c-common.c: Rename targetm member:
4073 targetm.enum_va_list -> targetm.enum_va_list_p
4074
9589f23e
AS
40752010-06-28 Anatoly Sokolov <aesok@post.ru>
4076
4077 * c-common.c (shorten_compare): Adjust call to force_fit_type_double.
4078
3b06d379
SB
40792010-06-28 Steven Bosscher <steven@gcc.gnu.org>
4080
4081 * c-cppbuiltin.c: Do not include except.h.
4082
d166d4c3
AK
40832010-06-24 Andi Kleen <ak@linux.intel.com>
4084
9faeb493
UB
4085 * c-common.c (warn_for_omitted_condop): New.
4086 * c-common.h (warn_for_omitted_condop): Add prototype.
d166d4c3 4087
70cb8be6
JM
40882010-06-21 Joseph Myers <joseph@codesourcery.com>
4089
4090 * c.opt (lang-objc): Remove.
4091 * c-opts.c (c_common_handle_option): Don't handle OPT_lang_objc.
4092
a4c97feb
JR
40932010-06-21 Joern Rennecke <joern.rennecke@embecosm.com>
4094
4095 * c-opts.c: Include "tm_p.h".
4096
6e2f1956
JM
40972010-06-20 Joseph Myers <joseph@codesourcery.com>
4098
4099 * c-common.c (parse_optimize_options): Update call to
4100 decode_options.
4101
bc87224e
NF
41022010-06-18 Nathan Froyd <froydnj@codesourcery.com>
4103
4104 * c-common.c (record_types_used_by_current_var_decl): Adjust for
4105 new type of types_used_by_cur_var_decl.
4106
b49cf425
JR
41072010-06-17 Joern Rennecke <joern.rennecke@embecosm.com>
4108
4109 PR bootstrap/44512
4110 * c-cppbuiltin.c (builtin_define_with_hex_fp_value): Add cast
4111 for C++ standard compliance.
4112
59f9c2ed
JM
41132010-06-16 Jason Merrill <jason@redhat.com>
4114
4115 * c.opt: Add -Wnoexcept.
4116
33766b66
RG
41172010-06-16 Richard Guenther <rguenther@suse.de>
4118
4119 PR c/44555
4120 * c-common.c (c_common_truthvalue_conversion): Remove
4121 premature and wrong optimization concering ADDR_EXPRs.
4122
eff7e30c
AC
41232010-06-15 Arnaud Charlet <charlet@adacore.com>
4124
4125 * c-ada-spec.c (dump_sloc): Remove column info.
4126 (is_simple_enum): New function.
4127 (dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada
4128 enum types when relevant.
4129
6312e84d
MLI
41302010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
4131
9faeb493 4132 * c-common.c (conversion_warning): Warn at expression
6312e84d
MLI
4133 location.
4134
1cb42611
JM
41352010-06-10 Joseph Myers <joseph@codesourcery.com>
4136
4137 * c-opts.c (c_common_handle_option): Don't handle
4138 OPT_fshow_column.
4139
a9429e29
LB
41402010-06-08 Laurynas Biveinis <laurynas.biveinis@gmail.com>
4141
4142 * c-pragma.c (push_alignment): Use typed GC allocation.
4143 (handle_pragma_push_options): Likewise.
4144
4145 * c-common.c (parse_optimize_options): Likewise.
4146
4147 * c-common.h (struct sorted_fields_type): Add variable_size GTY
4148 option.
4149
5498f011
JM
41502010-06-07 Joseph Myers <joseph@codesourcery.com>
4151
4152 * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
4153 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
4154 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
4155 flag_signed_bitfields, warn_strict_null_sentinel,
4156 flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
4157 flag_gen_declaration, flag_no_gnu_keywords,
4158 flag_implement_inlines, flag_implicit_templates,
4159 flag_implicit_inline_templates, flag_optional_diags,
4160 flag_elide_constructors, flag_default_inline, flag_rtti,
4161 flag_conserve_space, flag_access_control, flag_check_new,
4162 flag_new_for_scope, flag_weak, flag_working_directory,
4163 flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
4164 flag_enforce_eh_specs, flag_threadsafe_statics,
4165 flag_pretty_templates): Remove.
4166 * c-common.h (flag_preprocess_only, flag_nil_receivers,
4167 flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
4168 flag_replace_objc_classes, flag_undef, flag_no_builtin,
4169 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
4170 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
4171 flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
4172 flag_no_gnu_keywords, flag_implement_inlines,
4173 flag_implicit_templates, flag_implicit_inline_templates,
4174 flag_optional_diags, flag_elide_constructors, flag_default_inline,
4175 flag_rtti, flag_conserve_space, flag_access_control,
4176 flag_check_new, flag_new_for_scope, flag_weak,
4177 flag_working_directory, flag_use_cxa_atexit,
4178 flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
4179 flag_threadsafe_statics, flag_pretty_templates,
4180 warn_strict_null_sentinel): Remove.
4181 * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
4182 fbuiltin, fcheck-new, fconserve-space, felide-constructors,
4183 fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
4184 fimplicit-inline-templates, fimplicit-templates,
4185 flax-vector-conversions, fms-extensions, fnil-receivers,
4186 fnonansi-builtins, fpretty-templates, freplace-objc-classes,
4187 frtti, fshort-double, fshort-enums, fshort-wchar,
4188 fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
4189 funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
4190 fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
4191 gen-decls, undef): Use Var.
4192 (fdefault-inline, foptional-diags): Document as doing nothing.
4193 * c-opts.c (c_common_handle_option): Remove cases for options now
4194 using Var. Mark ignored options as such.
4195
39dabefd
SB
41962010-06-05 Steven Bosscher <steven@gcc.gnu.org>
4197
9faeb493 4198 * c-common.c: Moved to here from parent directory.
39dabefd
SB
4199 * c-common.def: Likewise.
4200 * c-common.h: Likewise.
4201 * c-cppbuiltin.c: Likewise.
4202 * c-dump.c: Likewise.
4203 * c-format.c: Likewise.
4204 * c-format.h : Likewise.
4205 * c-gimplify.c: Likewise.
4206 * c-lex.c: Likewise.
4207 * c-omp.c: Likewise.
4208 * c.opt: Likewise.
4209 * c-opts.c: Likewise.
4210 * c-pch.c: Likewise.
4211 * c-ppoutput.c: Likewise.
4212 * c-pragma.c: Likewise.
4213 * c-pragma.h: Likewise.
4214 * c-pretty-print.c: Likewise.
4215 * c-pretty-print.h: Likewise.
4216 * c-semantics.c: Likewise.
4217 * stub-objc.c: Likewise.
4218
4219 * c-common.c: Include gt-c-family-c-common.h.
4220 * c-pragma.c: Include gt-c-family-c-pragma.h.
4221\f
23a5b65a 4222Copyright (C) 2010-2014 Free Software Foundation, Inc.
39dabefd
SB
4223
4224Copying and distribution of this file, with or without modification,
4225are permitted in any medium without royalty provided the copyright
4226notice and this notice are preserved.