]> 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
c33e051d 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
5213d6c9 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
6b722052 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
0cb69d12 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
168dfbf0 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
b83705f4 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
d5957f0d 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
bae6edff 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
73a69d02 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
7ff8db31 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
bcc1f37e 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
b660d3c6 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
325b8c3c 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
1e074e77 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
04afd878 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
a3f448f0 1102014-09-03 Marek Polacek <polacek@redhat.com>
111
112 * c.opt (Wlogical-not-parentheses): Enable by -Wall.
113
40750995 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
f0fbe519 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
a7d2e480 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
c35e53f1 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
4e454776 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
af1a80f2 1542014-08-22 Jason Merrill <jason@redhat.com>
155
156 * c.opt (std=gnu++17): Fix alias.
157
dc6229e8 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
ba7f7c88 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
399d4f80 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
1babed5f 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
3636964b 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
78bf4156 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
508ea33a 2042014-08-19 Marek Polacek <polacek@redhat.com>
205
206 * c.opt (Wc99-c11-compat): New option.
207
806fe15e 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
6c867de1 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
dc8078a3 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
d271ec7e 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
890c2e2f 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
7149db5f 2472014-08-07 Trevor Saunders <tsaunders@mozilla.com>
248
249 * c-gimplify.c, cilk.c: Remove includes of pointer-set.h.
250
2d2f6a15 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
06ecf488 2562014-08-02 Trevor Saunders <tsaunders@mozilla.com>
257
258 * cilk.c: Use hash_map instead of pointer_map.
259
431205b7 2602014-08-02 Trevor Saunders <tsaunders@mozilla.com>
261
262 * c-gimplify.c: Use hash_set instead of pointer_set.
263
3394c80c 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
392dee1e 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
f22a2cb7 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
87b0198f 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
74691f46 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
9140d56f 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
a09c5cc2 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
2b25b62f 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
305d96bc 3262014-07-14 Jakub Jelinek <jakub@redhat.com>
327
328 PR middle-end/61294
329 * c.opt (Wmemset-transposed-args): New warning.
330
8ea4660d 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
cd480f3d 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
87d59e72 3442014-07-06 Marek Polacek <polacek@redhat.com>
345
346 PR c/6940
347 * c.opt (Wsizeof-array-argument): New option.
348
d69521d8 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
1207866e 3542014-07-01 Marek Polacek <polacek@redhat.com>
355
356 * c.opt (Wint-conversion): New option.
357
7a6bbb76 3582014-07-01 Marek Polacek <polacek@redhat.com>
359
360 PR c/58286
361 * c.opt (Wincompatible-pointer-types): New option.
362
9d4eeb52 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
4b53bc0f 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
a8a8d4ea 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
1f6be080 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
5ef6b660 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>
3ccd1e6e 408
409 PR lto/61123
410 * c.opt (fshort-enums): Add to LTO.
411 * c.opt (fshort-wchar): Likewise.
412
78438f31 4132014-06-16 Marek Polacek <polacek@redhat.com>
414
415 PR c/60439
416 * c.opt (Wswitch-bool): Add Var.
417
5fddcf34 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
74b777e5 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
738a6bda 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
cf5f881f 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
32dc1512 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
f61a9bc2 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
c69ec07d 4582014-06-03 Marek Polacek <polacek@redhat.com>
459
460 PR c/60439
461 * c.opt (Wswitch-bool): New option.
462
3c77ca67 4632014-05-22 Thomas Schwinge <thomas@codesourcery.com>
464
68a2c870 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
3c77ca67 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
3ab4693e 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
25a27413 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
3e5a8b00 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
c2c4ae8d 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
2026249a 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
33c8dcfe 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
960d5a55 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
bbb88b31 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
022d4718 5552014-05-02 Marek Polacek <polacek@redhat.com>
556
557 * c.opt (Wsizeof-pointer-memaccess): Describe option.
558
e4ab2ef3 5592014-05-01 Marek Polacek <polacek@redhat.com>
560
561 PR c/43245
562 * c.opt (Wdiscarded-qualifiers): Add.
563
52cc0072 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
4a026b48 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
90e645fa 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
db103ea4 5822014-04-24 Mike Stump <mikestump@comcast.net>
583
584 * c.opt (Wshadow-ivar): Default to on.
585
06511efd 5862014-04-24 Dimitris Papavasiliou <dpapavas@gmail.com>
587
588 * c.opt (Wshadow-ivar, flocal-ivars, fivar-visibility): Add.
589
cdf34fca 5902014-04-23 Marek Polacek <polacek@redhat.com>
591
592 * c-common.c (handle_tm_wrap_attribute): Tweak error message.
593
7311d7c1 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
c1917557 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
b2ca6510 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
855372a3 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
4012a986 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
0d284870 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
a34c1231 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
a35a8e18 6402014-04-03 Nathan Sidwell <nathan@codesourcery.com>
641
642 * c.opt (Wnon-virtual-dtor): Auto set when Weffc++.
643
b23e42b6 6442014-04-02 Marek Polacek <polacek@redhat.com>
645
646 * c-common.h (c_expand_expr): Remove declaration.
647
5a672e62 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
d4d068c0 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
446bdf5f 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
8895f0a3 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
7a5da2cd 6782014-03-11 Jason Merrill <jason@redhat.com>
679
680 * c.opt: Add -std=gnu++14.
681
95093889 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
c9a24b37 6872014-03-08 Paulo Matos <paulo@matos-sorge.com>
688
689 * c.opt: Enable LTO FE for fshort-double.
690
3f6dba6e 6912014-03-07 Jason Merrill <jason@redhat.com>
692
693 * c.opt: Add -std=c++14.
694
3bfdc94f 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
8b3a6a4c 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
734ec290 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
81aec8b8 7162014-02-19 Jakub Jelinek <jakub@redhat.com>
717
d1081017 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
81aec8b8 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
312243bb 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
237e78b1 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
76fdceeb 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
4a4dea42 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
ec704957 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
caf62483 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
ec761d5a 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
22a75734 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
a89e6c15 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
2623625f 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
46da3601 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
c9743c6a 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>
36e33c6a 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
1248c663 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
6e5c480b 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
3aea1f79 8432014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
844
845 Update copyright years
846
e4f22041 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
7fb0fe24 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
468088ac 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
74acc703 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
433e804e 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
5bcc7e60 8912013-12-11 Bernd Schmidt <bernds@codesourcery.com>
892
e66325ea 893 * c-common.c (c_fully_fold_internal): Handle ADDR_SPACE_CONVERT_EXPR.
894
5bcc7e60 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
0b26ec77 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
a179a7dc 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
137559b2 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
648fd348 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
253e1cae 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
3e398f5b 9322013-11-28 Sergey Ostanevich <sergos.gnu@gmail.com>
933
934 * c.opt (Wopenmp-simd): New.
935
020bc656 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
bc61cadb 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
3df42822 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
8c53c46c 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
5200ef07 9722013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com>
973
974 * c-common.c (check_function_arguments_recurse): Use tree_to_uhwi.
975
ca9d7d74 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
0391a567 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
19b928d9 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
aa59f000 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
08f817b3 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
6a0712d4 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
fcb97e84 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
cd4547bf 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
35ec552a 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
f2697631 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
0aa8c34e 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
e795d6e1 10552013-11-14 Andrew MacLeod <amacleod@redhat.com>
1056
1057 * c-common.c: Likewise.
1058 * c-gimplify.c: Likewise.
1059 * cilk.c: Likewise.
1060
9ed99284 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
4fba5eb9 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
a8783bee 10902013-11-12 Andrew MacLeod <amacleod@redhat.com>
1091
e795d6e1 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.
a8783bee 1097
d184e0c0 10982013-11-12 Joseph Myers <joseph@codesourcery.com>
1099
1100 * c-common.c (c_common_reswords): Add _Thread_local.
1101
a056826c 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
b560fabd 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
5b1a0622 11222013-11-06 Tobias Burnus <burnus@net-b.de>
1123
1124 * c-common.c (reason_option_codes_t): Add CPP_W_DATE_TIME.
1125
4f8f4cb8 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
9148bda3 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
08c5f4d5 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
c630ef93 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
7354a89b 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
4c866b9b 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
e2a6a333 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
2c4c3477 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
452659af 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
4d6f7dd4 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
06cfe805 12182013-10-30 Jakub Jelinek <jakub@redhat.com>
1219
1220 * cilk.c (create_cilk_helper_decl): Use HOST_WIDE_INT_PRINT_DEC.
1221
d037099f 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
02774f2d 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
31fe10fd 12492013-10-27 Richard Sandiford <rdsandiford@googlemail.com>
1250
1251 * c-lex.c (interpret_integer): Remove call to cpp_num_sign_extend.
1252
b1c06ff9 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
48a972c8 12582013-10-24 Tobias Burnus <burnus@net-b.de>
4644b593 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
546a04b1 12642013-10-23 Jason Merrill <jason@redhat.com>
1265
1266 * c-format.c (gcc_cxxdiag_char_table): Add %X.
1267
bc7bff74 12682013-10-11 Jakub Jelinek <jakub@redhat.com>
1269
d62c713e 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
bc7bff74 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
d7dcba40 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
0b7282f1 13302013-10-03 Marc Glisse <marc.glisse@inria.fr>
1331
1332 PR c++/19476
1333 * c.opt (fcheck-new): Move to common.opt.
1334
51f553af 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
05f893e1 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
236ce1d1 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
f9f68d35 13572013-09-13 Jacek Caban <jacek@codeweavers.com>
1358
1359 * c-target.def: New hook
1360
ba2f764e 13612013-09-09 Paolo Carlini <paolo.carlini@oracle.com>
1362
1363 PR c++/43452
1364 * c.opt (Wdelete-incomplete): Add.
1365
73437615 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
95af4c75 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
eaab24b9 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
9e46467d 14262013-08-30 Marek Polacek <polacek@redhat.com>
1427
1428 * c-ubsan.c: New file.
1429 * c-ubsan.h: New file.
1430
36a8d9b9 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
30635c2e 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
027d08ed 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
f873303a 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
08e3e481 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
1fc4a87f 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
a6cb161b 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
eed6bc21 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
df558d2e 15592013-08-09 Arnaud Charlet <charlet@adacore.com>
1560
1561 * c-ada-spec.c (print_ada_declaration): Prevent accessing null asm name
1562
42f9a786 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
f874ddad 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
a94db6b0 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
1898176c 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
70d60d1d 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
dda4f0ec 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
7aa04c8d 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
a04e8d62 16342013-07-21 OndÅ\99ej Bílka <neleai@seznam.cz>
1635
1636 * c-common.c: Fix typos.
1637 * c-common.h: Likewise.
1638
a96c3cc1 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
da31536d 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
839f2f70 16502013-07-10 Paolo Carlini <paolo.carlini@oracle.com>
1651
1652 PR c++/57869
1653 * c.opt: Add Wconditionally-supported.
1654
73f353d0 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
21ebaa24 16602013-07-04 Joern Rennecke <joern.rennecke@embecosm.com>
f5298614 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
68ea4406 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
60777f69 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
839f2f70 16792013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
50acebe0 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
e9331eab 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.
60777f69 1695
a9c99fc4 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
f2526cce 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
09970d67 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.
839f2f70 1732
3c6d4197 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
8e71dad2 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
432dd330 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
b156ec37 17642013-05-07 Han Shen <shenhan@google.com>
1765
1766 * c-cppbuiltin.c (c_cpp_builtins): Added "__SSP_STRONG__=3".
1767
1a087624 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
1638c736 17722013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
1773
1774 * c-opts.c (set_std_cxx11): Use CLK_CXX1Y and CLK_GNUCXX1Y.
1775
949dbf93 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
9205a6cc 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
05d0bce1 17892013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
1790
1791 * c-cppbuiltin.c (c_cpp_builtins): Define __GXX_EXPERIMENTAL_CXX1Y__.
1792
41609f8b 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
c671dc4f 17992013-04-07 Steven Bosscher <steven@gcc.gnu.org>
1800
1801 * c-pragma.c (add_to_renaming_pragma_list): Fix leading comment.
1802
ba125576 18032013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
1804
1805 * c-common.c (pointer_int_sum): Remove dead code.
1806
9d3fa937 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
5ceebb21 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
18eeed2b 18182013-03-04 Jakub Jelinek <jakub@redhat.com>
1819
1820 * c-pretty-print.c (pp_c_pretty_printer_init): Clear pp->flags.
1821
a9196da9 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
15c27dda 18322013-02-18 Aldy Hernandez <aldyh@redhat.com>
08c7d04b 1833
1834 PR target/52555
1835 * c-common.c (handle_optimize_attribute): Call
1836 save_optabs_if_changed.
1837
19426fe1 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
df936998 18462013-02-05 Jakub Jelinek <jakub@redhat.com>
1847
1848 PR middle-end/56167
1849 * c-common.c (handle_error_attribute): Fix condition.
1850
ae0c3984 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
1c4973d7 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
7c834436 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
5abaa10a 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
324ca377 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
b4c4a429 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
d413ffdd 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
52bc861d 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
2dd00636 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
d4701f6c 19152012-11-09 Jason Merrill <jason@redhat.com>
1916
1917 * c.opt (Wabi-tag): New.
1918
72d65da9 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
77a357e3 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
45efa6b9 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
0e4e775a 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
8b447d3f 19712012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
1972
1973 PR c++/54930
1974 * c.opt (Wreturn_local_addr): Define new option.
1975
f4a61754 19762012-10-25 Jason Merrill <jason@redhat.com>
1977
ecb10e6a 1978 * c.opt (Wvirtual-move-assign): New.
1979
f4a61754 1980 * c.opt (Winherited-variadic-ctor): New.
1981
7b463b19 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
6adc88f8 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
fa816b0b 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
d214ccee 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
77b27208 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
cc02ca4d 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
57f872a2 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
7354ad2e 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
1ac7f120 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
1e0cc9e3 20572012-10-10 Arnaud Charlet <charlet@adacore.com>
2058
1ac7f120 2059 PR ada/54845
1e0cc9e3 2060 * c-ada-spec.c (print_ada_struct_decl): Increase buf size.
2061
b0e7825e 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
41ed701a 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
3740094c 20772012-10-08 Jason Merrill <jason@redhat.com>
2078
2079 * c-common.c (c_common_reswords): Add thread_local.
2080
ffcdbf9c 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
ef34afc1 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
f1ff4562 20992012-09-25 Dehao Chen <dehao@google.com>
2100
2101 PR middle-end/54645
ef34afc1 2102 * c-pch.c (c_common_read_pch): Rebuild the location_adhoc_data
f1ff4562 2103 map when read in the pch.
2104
735538a1 21052012-09-18 Arnaud Charlet <charlet@adacore.com>
2106
2107 * c-ada-spec.c: Style fixes.
2108
9120cdc8 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
8eba82c2 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
38682990 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
f003f5dc 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
ec11736b 21362012-08-10 Richard Guenther <rguenther@suse.de>
2137
2138 * c-pretty-print.c (pp_c_expression): Handle anonymous SSA names.
2139
5f7f600e 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
758a38ab 21462012-07-26 Richard Henderson <rth@redhat.com>
2147
2148 * c-common.c (handle_hot_attribute): Allow labels.
2149 (handle_cold_attribute): Likewise.
2150
9ca77b08 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
b9ed1410 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
c2a65b90 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
88c5a1d1 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
4a020a8c 21732012-07-08 Steven Bosscher <steven@gcc.gnu.org>
2174
2175 * c-common.h: Include tree.h.
2176
c28ddc97 21772012-07-02 Jason Merrill <jason@redhat.com>
2178
2179 PR c++/53524
2180 * c-common.c (get_priority): Call default_conversion.
2181
405ed67f 21822012-07-01 Uros Bizjak <ubizjak@gmail.com>
2183
2184 * c-pch.c (c_common_write_pch): Remove unused variables.
2185
e53d55e7 21862012-06-29 Steven Bosscher <steven@gcc.gnu.org>
2187
2188 * cppspec.c: Moved from gcc/ to here.
2189
3d9c25ec 21902012-06-27 Kai Tietz <ktietz@redhat.com>
2191
2192 PR preprocessor/37215
2193 * c-ppoutput.c (preprocess_file): Check for nonempty buffer.
2194
3169c57a 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
ff6624bc 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
367b1459 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
bf0cb017 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
b37a3600 22332012-06-06 Steven Bosscher <steven@gcc.gnu.org>
2234
2235 * c.opt (fconserve-space): Turn into a no-op.
2236
19931eea 22372012-06-04 Sterling Augustine <saugustine@google.com>
5f9e7dd5 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
dff12c10 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
5f9e7dd5 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
b5369b7d 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
8032877c 22592012-05-29 Joseph Myers <joseph@codesourcery.com>
2260
2261 * c-common.c: Fix typo.
2262
7843e4bc 22632012-05-29 Michael Matz <matz@suse.de>
2264
2265 * c-common.h (c_expand_decl): Remove prototype.
2266
8cf857d4 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
8b64dc3c 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
43cbde16 22792012-05-22 Dodji Seketeli <dodji@redhat.com>
2280
2281 PR c++/53322
2282 * c.opt (Wunused-local-typedefs): Use EnabledBy(Wunused).
2283
db490cb6 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
a60f3e81 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
82e6ef7c 22972012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
2298
cd4797ff 2299 PR c++/11856
82e6ef7c 2300 * c-common.c (shorten_compare): Check c_inhibit_evaluation_warnings.
2301
258a168d 23022012-05-14 Bernd Schmidt <bernds@codesourcery.com>
2303
82e6ef7c 2304 * c-common.c (DEF_ATTR_STRING): Define and undefine as necessary.
258a168d 2305
d3b7ee7c 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
70059cea 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
fbb6fbd8 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
61f69bc9 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
5a1fe2db 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
d42e7c5a 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
686369e8 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
03fe1dc2 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
bba5a206 23562012-05-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
2357
2358 * c.opt (fpermissive): Add Var(flag_permissive).
2359
7059d45d 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
7edb1062 23662012-04-30 Dodji Seketeli <dodji@redhat.com>
2367
2368 Add -Wvarargs option
2369 * c.opt (Wvarargs): Define new option.
2370
068bea1e 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
b86527d8 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
19931eea 23842012-04-27 Ollie Wild <aaw@google.com>
76d340ac 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
29438999 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
4f9d6b8b 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
74bdbe96 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
3d177e8c 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
6a9a958f 24252012-03-23 William Bader <williambader@hotmail.com>
2426
2427 * c-lex.c (c_lex_with_flags): Avoid declarations after stmts.
2428
543efdbe 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
62206d34 24402012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
2441
2442 PR c++/14710
2443 * c.opt ([Wuseless-cast]): Add.
2444
fadf62f4 24452012-03-16 Richard Guenther <rguenther@suse.de>
2446
2447 * c-pretty-print.c (pp_c_initializer_list): Adjust.
2448
249faa35 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
126b6848 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
a51edb4c 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
0f6a7cb7 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
0779e32c 24732012-02-06 Paolo Carlini <paolo.carlini@oracle.com>
2474
2475 PR c/52118
2476 * c.opt ([Wunused-local-typedefs]): Fix description.
2477
baec58e1 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
c779d8cc 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
ee917d24 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
90e2341f 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
9ea022ce 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
3df19e1b 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
32074525 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
fca86134 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
aa4313eb 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
3f3d5ad4 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
c4606d19 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
1d581089 25562011-11-24 Andrew MacLeod <amacleod@redhat.com>
2557
2558 PR c/51256
19931eea 2559 * c-common.c (get_atomic_generic_size): Check for various error
1d581089 2560 conditions
19931eea 2561 (resolve_overloaded_atomic_exchange,
2562 resolve_overloaded_atomic_compare_exchange,
1d581089 2563 resolve_overloaded_atomic_load, resolve_overloaded_atomic_store): Return
2564 error_mark_node for error conditions.
19931eea 2565
6aa221fa 25662011-11-08 Richard Guenther <rguenther@suse.de>
2567
2568 PR middle-end/51010
2569 c-family/
2570
4c0315d0 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
920f5a70 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
b4f861b4 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
83e25171 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
1cd6e20d 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.
19931eea 2616 * c-common.c (sync_resolve_params, sync_resolve_return): Only tweak
1cd6e20d 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.
19931eea 2623 (resolve_overloaded_atomic_compare_exchange): Restructure
1cd6e20d 2624 __atomic_compare_exchange to either _n variant or external library call.
19931eea 2625 (resolve_overloaded_atomic_load): Restructure __atomic_load to either
1cd6e20d 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
7549df0d 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
7e783eb3 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
8fe701f5 26512011-11-01 Paolo Carlini <paolo.carlini@oracle.com>
2652
2653 PR c++/44277
2654 * c.opt: Add Wzero-as-null-pointer-constant.
2655
0d84dc2d 26562011-10-31 Jason Merrill <jason@redhat.com>
2657
67031f52 2658 * c.opt (-fdeduce-init-list): Off by default.
2659
0d84dc2d 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
66f24c41 26662011-10-27 Roberto Agostino Vitillo <ravitillo@lbl.gov>
2667
2668 PR c++/30066
2669 * c.opt (fvisibility-inlines-hidden): Description change.
2670
244db24d 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
235be70f 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
4fe0fb1c 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
5f7504f9 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
2a688977 27062011-10-18 Dodji Seketeli <dodji@redhat.com>
2707
2708 PR bootstrap/50760
2709 * c-lex.c (fe_file_change): Use LINEMAP_SYSP when
19931eea 2710 !NO_IMPLICIT_EXTERN_C.
2a688977 2711
326e3391 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
62db153a 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
ce70f433 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
97bfb9ef 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
326e3391 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
b9a16870 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
c7964868 27792011-10-11 Tristan Gingold <gingold@adacore.com>
2780
2781 * c.opt: (fallow-parameterless-variadic-functions): New.
2782
a4e3ffad 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.
19931eea 2788 (record_locally_defined_typedef, maybe_record_typedef_use)
2789 (maybe_warn_unused_local_typedefs): Declare new functions.
a4e3ffad 2790 * c-common.c (record_locally_defined_typedef)
19931eea 2791 (maybe_record_typedef_use)
2792 (maybe_warn_unused_local_typedefs): Define new functions.
a4e3ffad 2793 * c.opt: Declare new -Wunused-local-typedefs flag.
2794
737a23cc 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
7542c3b4 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
1dc92c59 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
2bdf2b6e 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>
6ea2c7a3 2817
2818 * c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens
2819 defined in cpp_init_builtins and c_cpp_builtins.
2820
bff4ad11 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
985c6e3a 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
7dfa155b 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
2169f33b 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
ab77850e 28562011-07-25 Dodji Seketeli <dodji@redhat.com>
2857
2858 * c-common.h (set_underlying_type): Remove parm name from
2859 declaration.
2860
6ee97920 28612011-07-25 Romain Geissler <romain.geissler@gmail.com>
2862
2863 * c-pretty-print.h: Search c-common.h in c-family.
19931eea 2864
dc251364 28652011-07-22 Jason Merrill <jason@redhat.com>
2866
1a2a35f0 2867 PR c++/49793
2868 * c.opt (Wnarrowing): New.
2869
27282252 2870 PR c++/30112
2871 * c-common.h: Declare c_linkage_bindings.
2872 * c-pragma.c (handle_pragma_redefine_extname): Use it.
2873
dc251364 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
fc501191 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
07b8f133 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
2cc66f2a 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
3c802a1e 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
98a33d9f 29082011-07-08 Jason Merrill <jason@redhat.com>
2909
3115bda0 2910 PR c++/45437
2911 * c-omp.c (check_omp_for_incr_expr): Handle preevaluation.
2912
98a33d9f 2913 PR c++/49673
2914 * c-common.c (c_apply_type_quals_to_decl): Don't check
2915 TYPE_NEEDS_CONSTRUCTING.
2916
c38a75b7 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
e593356b 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
fca0886c 29272011-06-27 Jakub Jelinek <jakub@redhat.com>
2928
a68f7a8d 2929 * c-common.h (c_tree_chain_next): New static inline function.
2930
fca0886c 2931 * c-common.c (check_builtin_function_arguments): Handle
2932 BUILT_IN_ASSUME_ALIGNED.
2933
2797f13a 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.
9cad95b7 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
218e3e4e 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
41e53ed2 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
a6f06169 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
1ea9269b 29752011-06-07 Jason Merrill <jason@redhat.com>
2976
8ce59854 2977 * c-common.c (max_tinst_depth): Lower default to 900.
2978
1ea9269b 2979 * c-format.c (gcc_cxxdiag_char_table): Add 'S' format.
2980
1af0124d 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
0e9a4c01 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
19931eea 2990 type when using pointer comparison to compare types.
0e9a4c01 2991
90b40725 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
fc9c9e87 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
d0389adc 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
cacfdc02 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
027fc6ef 30202011-05-26 Nathan Froyd <froydnj@codesourcery.com>
3021
3022 * c-common.c (warning_candidate_p): Check for BLOCKs.
3023
f21317a1 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
789e953d 30292011-05-25 Jakub Jelinek <jakub@redhat.com>
3030
3031 * c-common.c (def_fn_type): Remove extra va_end.
3032
7f506bca 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
774e9d58 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
23407dc9 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
3a939d12 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
b6e3dd65 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
4232a958 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
d0af78c5 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
ceb7b692 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
c66c81be 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
16930c72 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
23407dc9 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
dd045aee 31102011-04-20 Jim Meyering <meyering@redhat.com>
3111
3112 * c-format.c (init_dollar_format_checking): Remove useless
3113 if-before-free.
3114
394dd737 31152011-04-15 Nicola Pero <nicola.pero@meta-innovation.com>
3116
3117 * c-objc.h (objc_get_interface_ivars): Removed.
23407dc9 3118 (objc_detect_field_duplicates): New.
394dd737 3119 * stub-objc.c: Likewise.
23407dc9 3120
a758bf7d 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.
23407dc9 3126
29d7200d 31272011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
3128
3129 * stub-objc.c (objc_declare_class): Updated argument name.
3130
9b88d08d 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
4185cf58 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.
19931eea 3140
5a90471f 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
783bb57e 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
c33080b9 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
f8913d47 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
c94b1d0e 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
acb10f41 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
82715bcd 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
451c8e2f 31882011-03-25 Jeff Law <law@redhat.com>
3189
3190 * c-family/c-common.c (def_fn_type): Add missing va_end.
3191
3c47771c 31922011-03-25 Jason Merrill <jason@redhat.com>
3193
3194 * c.opt: Add -std=c++03.
3195
97e6200f 31962011-03-22 Eric Botcazou <ebotcazou@adacore.com>
3197
3198 * c-ada-spec.c (dump_ada_template): Skip non-class instances.
3199
ac86af5d 32002011-03-17 Kai Tietz
3201
3202 PR target/12171
ee212425 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
ac86af5d 3209 * c-common.c (c_common_attribute_table):
3210 Add new element.
3211 (c_common_format_attribute_table): Likewise.
3212
914d1151 32132011-03-18 Jason Merrill <jason@redhat.com>
3214
69788bdf 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
914d1151 3220 PR c++/35315
3221 * c-common.c (handle_transparent_union_attribute): Don't
3222 make a duplicate type in C++.
3223
54cf6eed 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
02cb1060 32312011-03-11 Jason Merrill <jason@redhat.com>
3232
9bf1c74e 3233 * c-common.c (attribute_takes_identifier_p): Add missing const.
3234
02cb1060 3235 PR c++/46803
3236 * c-common.c (attribute_takes_identifier_p): Assume that an
3237 unknown attribute takes an identifier.
3238
ecf2703d 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
2b19dfe4 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
29cf2335 32502011-02-17 Iain Sandoe <iains@gcc.gnu.org>
3251
3252 * c.opt (fobjc-abi-version=) New.
3253 (fobjc-nilcheck): New.
3254
fad3f658 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
a12319b3 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
5c128dc8 32692011-01-26 Arnaud Charlet <charlet@adacore.com>
3270
3271 * c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type.
3272
8d67b0c7 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
0675168d 32792011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
3280
e8911163 3281 PR c++/43601
0675168d 3282 * c.opt (-fkeep-inline-dllexport): New switch.
3283
0725e25c 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
fdd84b77 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
e6e73d14 32962010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
19931eea 3297
d67e8485 3298 PR objc/47075
3299 * c-objc.h (objc_finish_message_expr): Added argument to
3300 prototype.
3301
a36cf284 33022010-12-22 Nathan Froyd <froydnj@codesourcery.com>
3303
3304 * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute):
3305 Use prototype_p.
3306
33b3681f 33072010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
3308
3309 * c-objc.h (objc_maybe_warn_exceptions): New.
19931eea 3310 * stub-objc.c (objc_maybe_warn_exceptions): New.
33b3681f 3311
a1f90215 33122010-12-10 Nathan Froyd <froydnj@codesourcery.com>
3313
3314 * c-common.h (readonly_error): Declare.
3315 * c-common.c (readonly_error): Define.
3316
b1bbc8e5 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
b0d55af9 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
d7489d8d 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.
19931eea 3337
92468061 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
967958e4 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
b213bf24 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
9faf44d6 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
79396169 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
b4aa4123 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
3e0e49f2 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
a9ffdd35 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
93be21c0 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
d7175aef 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
c213e196 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.
19931eea 3414
0b5fc5d6 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
b8ba44e7 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
6ef8d12f 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
929d2a90 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
e4a7640a 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
597d2d81 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
c123f04d 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
3c6c0e40 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
19ec5c9e 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
bf776685 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
6bd9d862 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
1f6616ee 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 ().
19931eea 3494 (check_format_string): Pass expected type, use
1f6616ee 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
b0d0931f 35092010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
3510
19931eea 3511 Fixed using the Objective-C 2.0 dot-syntax with class names.
b0d0931f 3512 * c-common.h (objc_build_class_component_ref): New.
3513 * stub-objc.c (objc_build_class_component_ref): New.
3514
f26877d5 35152010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
3516
3517 * c.opt (Wproperty-assign-default): New option.
3518
1ef143b6 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
8c582e4f 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
8637f1db 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
9d9f5bb3 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.
19931eea 3552
56f907a0 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
b5fa273e 35612010-10-27 Jason Merrill <jason@redhat.com>
3562
5290e253 3563 * c-common.c (c_common_reswords): Add __is_literal_type.
3564 * c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
3565
b5fa273e 3566 * c-common.c (check_case_value): Remove special C++ code.
3567
7590f0e5 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.
19931eea 3581
1d894bcf 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
e23bf1fb 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
93426222 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
45b2b110 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
64cd9619 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.
19931eea 3616
e1f293c0 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.
19931eea 3627
ef97a312 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
69b07042 36362010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
3637
3638 Merge from 'apple/trunk' branch on FSF servers.
ef97a312 3639
69b07042 3640 2005-11-08 Fariborz Jahanian <fjahanian@apple.com>
3641
19931eea 3642 Radar 4330422
69b07042 3643 * c-common.h (objc_non_volatilized_type): New declaration
3644 * stub-objc.c (objc_non_volatilized_type): New stub.
3645
f15f2e56 36462010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
3647
69b07042 3648 Merge from 'apple/trunk' branch on FSF servers.
f15f2e56 3649
3650 2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
3651
19931eea 3652 Radar 4133425
f15f2e56 3653 * c-common.h (objc_diagnose_private_ivar): New decl.
ef97a312 3654 * stub-objc.c (objc_diagnose_private_ivar): New stub.
f15f2e56 3655
4a8875ed 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.
ef97a312 3662 * stub-objc.c (objc_set_visibility): Adjust stub to use
4a8875ed 3663 visibility enum.
3664
7e0713b1 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
86c110ac 36722010-10-14 Iain Sandoe <iains@gcc.gnu.org>
3673
7e0713b1 3674 merge from FSF apple 'trunk' branch.
86c110ac 3675 2006 Fariborz Jahanian <fjahanian@apple.com>
7e0713b1 3676
86c110ac 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.
7e0713b1 3688
40c8d1dd 36892010-10-13 Iain Sandoe <iains@gcc.gnu.org>
3690
7e0713b1 3691 merge from FSF apple 'trunk' branch.
40c8d1dd 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 ().
7e0713b1 3698 * stub-objc.c (objc_method_decl): New stub.
40c8d1dd 3699
f3f006ad 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
0a65c3bb 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
24ca3b4e 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
f83b64ca 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
2fdec027 37282010-10-03 Ian Lance Taylor <iant@google.com>
3729
3730 * c.opt (-fplan9-extensions): New option.
3731
41acdfa4 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
069761fb 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.
19931eea 3752
2c5d2e39 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
e5c75ac3 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
3511333e 37682010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
e147d6aa 3769
19931eea 3770 Merge from 'apple/trunk' branch on FSF servers.
3771
e147d6aa 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
5461e683 37782010-09-29 Joseph Myers <joseph@codesourcery.com>
3779
3780 * c.opt: Don't use VarExists.
3781
5ae82d58 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
b27e241e 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
03fc2271 38012010-09-28 Iain Sandoe <iains@gcc.gnu.org>
3802
19931eea 3803 * c-common.h (objc_add_method_declaration): Adjust prototype to
03fc2271 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
a336eb4b 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
48b14f50 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
4abfc532 38252010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
3826
19931eea 3827 Merge from 'apple/trunk' branch on FSF servers.
4abfc532 3828
3829 2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
3830
19931eea 3831 Radar 4229905
4abfc532 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.
19931eea 3839 * stub-objc.c (objc_common_type): New stub.
4abfc532 3840
7bd95dfd 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
5789e05b 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
e6fb54ba 38642010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
3865
3866 PR objc/23710
9b60f3b0 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.
e6fb54ba 3877
e44b0a1f 38782010-09-15 Ian Lance Taylor <iant@google.com>
3879
3880 * c-common.c (parse_optimize_options): Do not capitalize warning
ebd7c4c1 3881 messages. Remove period at end of warning message.
e44b0a1f 3882
85c0a25c 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
5ba33bf4 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
c920faa3 38942010-09-05 Mark Mitchell <mark@codesourcery.com>
3895
3896 * c.opt (Wdouble-promotion): New.
3897
9604e070 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
3b0273a1 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
67089c6b 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
2af087f2 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
48148244 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
89c69892 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
e28aa114 39472010-08-16 Joseph Myers <joseph@codesourcery.com>
3948
3949 * c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.
3950
99b66d21 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
666f4bf0 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
5ec815f6 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
d13143cf 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.
5ec815f6 3972 (maybe_apply_renaming_pragma): Likewise.
d13143cf 3973
2008c983 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
9b091a73 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
b78351e5 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
34416a90 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
fecf9011 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
e88d34f6 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
1767a056 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
0b205f4c 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
1c58e3f1 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
33cc157c 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
9b40bfbf 40652010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
4066
4067 * c-gimplify.c: Do not include tree-flow.h
4068
202d6e5f 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
d3237426 40752010-06-28 Anatoly Sokolov <aesok@post.ru>
4076
4077 * c-common.c (shorten_compare): Adjust call to force_fit_type_double.
4078
596981c8 40792010-06-28 Steven Bosscher <steven@gcc.gnu.org>
4080
4081 * c-cppbuiltin.c: Do not include except.h.
4082
b9bdfa0b 40832010-06-24 Andi Kleen <ak@linux.intel.com>
4084
19931eea 4085 * c-common.c (warn_for_omitted_condop): New.
4086 * c-common.h (warn_for_omitted_condop): Add prototype.
b9bdfa0b 4087
55ad092d 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
9e7c2572 40932010-06-21 Joern Rennecke <joern.rennecke@embecosm.com>
4094
4095 * c-opts.c: Include "tm_p.h".
4096
615ef0bb 40972010-06-20 Joseph Myers <joseph@codesourcery.com>
4098
4099 * c-common.c (parse_optimize_options): Update call to
4100 decode_options.
4101
aef48c9a 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
d74003b4 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
1194d077 41132010-06-16 Jason Merrill <jason@redhat.com>
4114
4115 * c.opt: Add -Wnoexcept.
4116
d473d901 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
b62dbfd3 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
200dd99c 41302010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
4131
19931eea 4132 * c-common.c (conversion_warning): Warn at expression
200dd99c 4133 location.
4134
abf6a617 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
ba72912a 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
4aafe913 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
7bedc3a0 41962010-06-05 Steven Bosscher <steven@gcc.gnu.org>
4197
19931eea 4198 * c-common.c: Moved to here from parent directory.
7bedc3a0 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
3aea1f79 4222Copyright (C) 2010-2014 Free Software Foundation, Inc.
7bedc3a0 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.