]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/c-family/ChangeLog
PR target/63764
[thirdparty/gcc.git] / gcc / c-family / ChangeLog
1 2014-11-21 Jakub Jelinek <jakub@redhat.com>
2
3 PR target/63764
4 * c-common.h (convert_vector_to_pointer_for_subscript): Change
5 return type to bool.
6 * c-common.c: Include gimple-expr.c.
7 (convert_vector_to_pointer_for_subscript): Change return type to
8 bool. If *vecp is not lvalue_p and has VECTOR_TYPE, return true
9 and copy it into a TARGET_EXPR and use that instead of *vecp
10 directly.
11
12 2014-11-19 David Malcolm <dmalcolm@redhat.com>
13
14 Merger of git branch "gimple-classes-v2-option-3".
15 * ChangeLog.gimple-classes: New.
16 * c-gimplify.c (add_block_to_enclosing): Strengthen local "stack"
17 from being just a vec<gimple> to a vec<gbind *>.
18
19 2014-11-18 Jakub Jelinek <jakub@redhat.com>
20
21 PR sanitizer/63813
22 * c-ubsan.c (ubsan_maybe_instrument_reference_or_call): Change type
23 argument to ptype, set type to TREE_TYPE (ptype). Don't call
24 get_pointer_alignment for non-pointers. Use ptype, or if it is
25 reference type, corresponding pointer type, as type of kind
26 argument.
27 (ubsan_maybe_instrument_reference,
28 ubsan_maybe_instrument_member_call): Adjust callers.
29
30 2014-11-15 Marek Polacek <polacek@redhat.com>
31
32 PR middle-end/63884
33 * array-notation-common.c (is_sec_implicit_index_fn): Return false
34 for NULL fndecl.
35 (extract_array_notation_exprs): Return for NULL node.
36
37 2014-11-12 Joseph Myers <joseph@codesourcery.com>
38
39 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Define and
40 undefine __NO_MATH_ERRNO__ based on changes to -fmath-errno state.
41
42 2014-11-12 Jakub Jelinek <jakub@redhat.com>
43
44 PR c/59708
45 * c-common.c (check_builtin_function_arguments): Handle
46 BUILT_IN_{ADD,SUB,MUL}_OVERFLOW.
47
48 2014-11-10 Andi Kleen <ak@linux.intel.com>
49
50 PR c/60804
51 * c-common.h (check_no_cilk): Declare.
52 * cilk.c (get_error_location): New function.
53 (check_no_cilk): Dito.
54
55 2014-11-10 Andi Kleen <ak@linux.intel.com>
56
57 * cilk.c (recognize_spawn): Use expression location
58 for error message.
59
60 2014-11-10 Paolo Carlini <paolo.carlini@oracle.com>
61
62 * c.opt ([Wshift-count-negative, Wshift-count-overflow]): Add.
63
64 2014-11-10 Edward Smith-Rowland <3dw4rd@verizon.net>
65
66 * c-cppbuiltin.c (__has_attribute, __has_cpp_attribute): New macros;
67 (__cpp_rtti, __cpp_exceptions): New macros for C++98;
68 (__cpp_range_based_for, __cpp_initializer_lists,
69 __cpp_delegating_constructors, __cpp_nsdmi,
70 __cpp_inheriting_constructors, __cpp_ref_qualifiers): New macros
71 for C++11; (__cpp_attribute_deprecated): Remove in favor of
72 __has_cpp_attribute.
73 * c-lex.c (cb_has_attribute): New callback CPP function;
74 (init_c_lex): Set has_attribute callback.
75
76 2014-11-04 Richard Biener <rguenther@suse.de>
77
78 * c-common.c (shorten_compare): Do not shorten mixed
79 DFP and non-DFP compares.
80
81 2014-11-01 Edward Smith-Rowland <3dw4rd@verizon.net>
82
83 * g++.dg/cpp1y/feat-cxx11.C: Commentary and rearrangement of tests.
84 * g++.dg/cpp1y/feat-cxx11-neg.C: Add aggregate NSDMI test.
85 Commentary and rearrangement of tests.
86 * g++.dg/cpp1y/feat-cxx14.C: Enable aggregate NSDMI test.
87 Commentary and rearrangement of tests.
88 * g++.dg/cpp1y/feat-cxx98-neg.C: Ditto
89 * g++.dg/cpp1y/feat-cxx98.C: Commentary.
90
91 2014-10-29 Richard Sandiford <richard.sandiford@arm.com>
92
93 * c-common.c, c-common.h, c-cppbuiltin.c, c-lex.c: Remove redundant
94 enum from machine_mode.
95
96 2014-10-28 Andrew MacLeod <amacleod@redhat.com>
97
98 * c-family/c-common.c: Adjust include files.
99 * c-family/c-gimplify.c: Ditto.
100 * c-family/cilk.c: Ditto.
101 * c-family/c-pragma.c: Ditto.
102 * c-family/c-ubsan.c: Ditto.
103
104 2014-10-27 Andrew MacLeod <amacleod@redhat.com>
105
106 * c-gimplify.c: Adjust include files.
107
108 2014-10-26 Manuel López-Ibáñez <manu@gcc.gnu.org>
109
110 PR c++/53061
111 * c-opts.c (c_common_diagnostics_set_defaults): Renamed from
112 c_common_initialize_diagnostics.
113 * c-common.h: Likewise.
114
115 2014-10-24 Marek Polacek <polacek@redhat.com>
116
117 PR c/56980
118 * c-pretty-print.c (c_pretty_printer::simple_type_specifier): Don't
119 print "struct"/"union"/"enum" for typedefed names.
120
121 2014-10-23 Marek Polacek <polacek@redhat.com>
122
123 * c-ubsan.c (ubsan_instrument_shift): Perform the MINUS_EXPR
124 in unsigned type.
125
126 2014-10-22 Jakub Jelinek <jakub@redhat.com>
127 Yury Gribov <y.gribov@samsung.com>
128
129 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
130 ubsan_instrument_vla): Check bits in flag_sanitize_recover bitmask
131 instead of flag_sanitize_recover as bool flag.
132
133 2014-10-21 Kirill Yukhin <kirill.yukhin@intel.com>
134
135 * cilk.c: Revert previous change.
136
137 2014-10-20 Igor Zamyatin <igor.zamyatin@intel.com>
138
139 PR c/63307
140 * cilk.c: Include vec.h.
141 (struct cilk_decls): New structure.
142 (wrapper_parm_cb): Split this function to...
143 (fill_decls_vec): ...this...
144 (create_parm_list): ...and this.
145 (compare_decls): New function.
146 (for_local_cb): Remove.
147 (wrapper_local_cb): Ditto.
148 (build_wrapper_type): For now first traverse and fill vector of
149 declarations then sort it and then deal with sorted vector.
150 (cilk_outline): Ditto.
151 (declare_one_free_variable): Ditto.
152
153 2014-10-17 Marek Polacek <polacek@redhat.com>
154
155 * c-opts.c (c_common_post_options): Set warn_implicit_int.
156 * c.opt (Wimplicit-int): Initialize to -1.
157
158 2014-10-16 Andrew MacLeod <amacleod@redhat.com>
159
160 * c-pragma.c: Adjust include files.
161 * c-semantics.c: Likewise.
162
163 2014-10-16 DJ Delorie <dj@redhat.com>
164
165 * c-cppbuiltin.c (cpp_atomic_builtins): Don't assume pointers are
166 multiples of bytes.
167
168 2014-10-14 Jason Merrill <jason@redhat.com>
169
170 PR c++/63455
171 * c-common.h (CPP_PREPARSED_EXPR): New.
172 (N_CP_TTYPES): Adjust.
173
174 2014-10-15 Marek Polacek <polacek@redhat.com>
175
176 * c-opts.c (c_common_init_options): Make -std=gnu11 the default for C.
177
178 2014-10-14 DJ Delorie <dj@redhat.com>
179
180 * c-pretty-print.c (pp_c_integer_constant): Check for all __intN
181 types, not just __int128.
182 * c-cppbuiltin.c (c_cpp_builtins): Add builtins for all __intN
183 types, not just __int128.
184 (cpp_atomic_builtins): Round pointer sizes up.
185 (type_suffix): Use type precision, not specific types.
186 * c-common.c (c_common_reswords): Remove __int128 special case.
187 (c_common_type_for_size): Check for all __intN types, not just
188 __int128.
189 (c_common_type_for_mode): Likewise.
190 (c_common_signed_or_unsigned_type): Likewise.
191 (c_build_bitfield_integer_type): Likewise.
192 (c_common_nodes_and_builtins): Likewise.
193 (keyword_begins_type_specifier): Likewise.
194 * c-common.h (rid): Remove RID_INT128 and add RID_INT_N_* for all
195 __intN variants.
196
197 2014-10-12 Trevor Saunders <tsaunders@mozilla.com>
198
199 * c-common.c: Use hash_table instead of hashtab.
200
201 2014-10-06 Edward Smith-Rowland <3dw4rd@verizon.net>
202
203 * c-family/c-cppbuiltin.c: Move __cpp_attribute_deprecated to the
204 C++11 section.
205
206 2014-10-03 Marc Glisse <marc.glisse@inria.fr>
207
208 PR c++/54427
209 PR c++/57198
210 PR c++/58845
211 * c-common.c (warn_logical_operator): Punt for vectors.
212
213 2014-10-01 Edward Smith-Rowland <3dw4rd@verizon.net>
214
215 Implement SD-6: SG10 Feature Test Recommendations
216 * c-cppbuiltin.c (c_cpp_builtins()): Define language feature
217 macros and the __has_header macro.
218
219 2014-09-30 Jason Merrill <jason@redhat.com>
220
221 * c-common.h (enum rid): Add RID_IS_TRIVIALLY_ASSIGNABLE and
222 RID_IS_TRIVIALLY_CONSTRUCTIBLE.
223 * c-common.c (c_common_reswords): Add __is_trivially_copyable.
224
225 * c-common.h (enum rid): Add RID_IS_TRIVIALLY_COPYABLE.
226 * c-common.c (c_common_reswords): Add __is_trivially_copyable.
227
228 * c-common.h (enum rid): Remove RID_IS_CONVERTIBLE_TO.
229 * c-common.c (c_common_reswords): Remove __is_convertible_to.
230
231 2014-09-24 Marek Polacek <polacek@redhat.com>
232
233 PR c/61405
234 PR c/53874
235 * c-common.h (struct c_common_resword): Don't define CPP_KEYWORD.
236
237 2014-09-23 Andi Kleen <ak@linux.intel.com>
238
239 * c-common.c (handle_no_reorder_attribute): New function.
240 (c_common_attribute_table): Add no_reorder attribute.
241
242 2014-09-22 Joseph Myers <joseph@codesourcery.com>
243
244 * c-cppbuiltin.c (c_cpp_builtins): Define
245 __LIBGCC_*_EXCESS_PRECISION__ macros for supported floating-point
246 modes.
247
248 2014-09-18 Joseph Myers <joseph@codesourcery.com>
249
250 * c-cppbuiltin.c (c_cpp_builtins): Define __LIBGCC_*_FUNC_EXT__
251 for supported floating-point modes.
252
253 2014-09-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
254
255 * c.opt (Wpsabi): Use LangEnabledBy.
256 * c-opts.c (c_common_handle_option): Do not handle here.
257
258 2014-09-12 Joseph Myers <joseph@codesourcery.com>
259
260 * c-cppbuiltin.c (c_cpp_builtins): Define __LIBGCC_HAS_%s_MODE__
261 macros for floating-point modes.
262
263 2014-09-11 Marc Glisse <marc.glisse@inria.fr>
264
265 PR target/58757
266 * c-cppbuiltin.c (builtin_define_float_constants): Correct
267 __*_DENORM_MIN__ without denormals.
268
269 2014-09-10 Jakub Jelinek <jakub@redhat.com>
270
271 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
272 ubsan_instrument_vla, ubsan_instrument_return): Adjust
273 ubsan_create_data callers.
274 (ubsan_instrument_bounds): Don't emit UBSAN_BOUNDS at all if
275 index is constant or BIT_AND_EXPR with constant mask and is
276 small enough for the bound.
277 * c-gimplify.c (ubsan_walk_array_refs_r): For ADDR_EXPR of
278 ARRAY_REF, make sure the inner ARRAY_REF is not walked again.
279
280 2014-09-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
281
282 * c.opt: Add CppReason to various flags.
283 (Wdate-time): Re-sort.
284 * c-common.c: Include c-common.h earlier.
285 (struct reason_option_codes_t): Delete.
286 (c_option_controlling_cpp_error): Prefix global type and struct
287 with cpp_.
288
289 2014-09-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
290
291 * c.opt (Wnormalized): New.
292 (Wnormalized=): Use Enum and Reject Negative.
293 * c-opts.c (c_common_handle_option): Do not handle Wnormalized here.
294
295 2014-09-08 Joseph Myers <joseph@codesourcery.com>
296
297 * c-cppbuiltin.c (c_cpp_builtins): Define macros for mantissa
298 digits of floating-point modes if -fbuilding-libgcc.
299
300 2014-09-05 Joseph Myers <joseph@codesourcery.com>
301
302 * c-cppbuiltin.c (c_cpp_builtins): Also define
303 __LIBGCC_EH_TABLES_CAN_BE_READ_ONLY__,
304 __LIBGCC_EH_FRAME_SECTION_NAME__, __LIBGCC_JCR_SECTION_NAME__,
305 __LIBGCC_CTORS_SECTION_ASM_OP__, __LIBGCC_DTORS_SECTION_ASM_OP__,
306 __LIBGCC_TEXT_SECTION_ASM_OP__, __LIBGCC_INIT_SECTION_ASM_OP__,
307 __LIBGCC_INIT_ARRAY_SECTION_ASM_OP__,
308 __LIBGCC_STACK_GROWS_DOWNWARD__,
309 __LIBGCC_DONT_USE_BUILTIN_SETJMP__,
310 __LIBGCC_DWARF_ALT_FRAME_RETURN_COLUMN__,
311 __LIBGCC_DWARF_FRAME_REGISTERS__,
312 __LIBGCC_EH_RETURN_STACKADJ_RTX__, __LIBGCC_JMP_BUF_SIZE__,
313 __LIBGCC_STACK_POINTER_REGNUM__ and
314 __LIBGCC_VTABLE_USES_DESCRIPTORS__ for -fbuilding-libgcc.
315 (builtin_define_with_value): Handle backslash-escaping in string
316 macro values.
317
318 2014-09-05 Richard Biener <rguenther@suse.de>
319
320 PR middle-end/63148
321 * c-format.c (check_format_arg): Properly handle
322 effectively signed POINTER_PLUS_EXPR offset.
323
324 2014-09-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
325
326 * c.opt (Wc90-c99-compat,Wc++-compat,Wcomment,Wendif-labels,
327 Winvalid-pch,Wlong-long,Wmissing-include-dirs,Wmultichar,Wpedantic,
328 (Wdate-time,Wtraditional,Wundef,Wvariadic-macros): Add CPP, Var
329 and Init.
330 * c-opts.c (c_common_handle_option): Do not handle here.
331 (sanitize_cpp_opts): Likewise.
332 * c-common.c (struct reason_option_codes_t): Handle
333 CPP_W_C90_C99_COMPAT and CPP_W_PEDANTIC.
334
335 2014-09-03 Marek Polacek <polacek@redhat.com>
336
337 * c.opt (Wlogical-not-parentheses): Enable by -Wall.
338
339 2014-09-02 Jakub Jelinek <jakub@redhat.com>
340 Balaji V. Iyer <balaji.v.iyer@intel.com>
341 Igor Zamyatin <igor.zamyatin@intel.com>
342
343 * c-cilkplus.c (cilk_for_number_of_iterations): New function.
344 * c-common.c (c_common_reswords): Added _Cilk_for.
345 * c-common.h (enum rid): Added RID_CILK_FOR.
346 (cilk_for_number_of_iterations): Add declaration.
347 * c-omp.c (c_finish_omp_for): Added checks for CILK_SIMD and
348 CILK_FOR.
349 * c-pragma.c (init_pragma): Register "grainsize" pragma.
350 * c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_GRAINSIZE.
351
352 2014-08-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
353
354 * c.opt (Wbuiltin-macro-redefined,Wdeprecated,Wendif-labels,
355 Winvalid-pch,Wliteral-suffix,Wmissing-include-dirs,Wtrigraphs,
356 Wundef): Use CPP, Var and Init.
357 * c-opts.c (c_common_handle_option): Do not handle the above flags here.
358
359 2014-08-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
360
361 * c.opt (Wbuiltin-macro-redefined): Use CPP, Var and Init.
362 * c-opts.c (c_common_handle_option): Do not handle here.
363
364 2014-08-25 Jason Merrill <jason@redhat.com>
365
366 * c.opt: Change -std=c++1y and -std=gnu++1y to be aliases for
367 -std=c++14 and -std=gnu++14, rather than the reverse.
368 * c-opts.c (c_common_handle_option): Change OPT_std_c__1y and
369 OPT_std_gnu__1y to OPT_std_c__14 and OPT_std_gnu__14.
370 * c-common.h (cxx_dialect): Remove cxx1y.
371
372 2014-08-23 Edward Smith-Rowland <3dw4rd@verizon.net>
373
374 * c-common.h (enum cxx_dialect): Add cxx14.
375 * c-opts.c (set_std_cxx1y): Rename to set_std_cxx14; Use cxx14.
376 * c-ubsan.c (ubsan_instrument_shift): Change comment and logic from
377 cxx_dialect == cxx11 || cxx_dialect == cxx1y to cxx_dialect >= cxx11.
378
379 2014-08-22 Jason Merrill <jason@redhat.com>
380
381 * c.opt (std=gnu++17): Fix alias.
382
383 2014-08-22 Marek Polacek <polacek@redhat.com>
384
385 PR c++/62199
386 * c-common.c (warn_logical_not_parentheses): Don't check LHS. Don't
387 check for vector types. Drop LHS argument.
388 * c-common.h (warn_logical_not_parentheses): Adjust.
389
390 2014-08-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
391
392 * c.opt (Wcomment): Use CPP, Var and LangEnabledBy.
393 (Wmultichar): Likewise.
394 (Wdate-time): Use C-family languages instead of Common. Use CPP
395 and Var.
396 * c-opts.c (c_common_handle_option): Do not handle the above
397 options here.
398 (sanitize_cpp_opts): Likewise.
399
400 2014-08-21 Manuel López-Ibáñez <manu@gcc.gnu.org>
401
402 PR fortran/44054
403 * c-opts.c: Include tree-diagnostics.h.
404 (c_diagnostic_finalizer): New.
405 (c_common_initialize_diagnostics): Use it.
406
407 2014-08-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
408
409 PR preprocessor/51303
410 * c-common.c (struct reason_option_codes_t option_codes):
411 Add CPP_W_MISSING_INCLUDE_DIRS. Sort alphabetically.
412
413 2014-08-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
414
415 PR c/60975
416 PR c/53063
417 * c.opt (Wvariadic-macros): Use CPP and LangEnabledBy.
418 * c-opts.c (c_common_handle_option): Call cpp_handle_option_auto.
419 (c_common_post_options): Call init_global_opts_from_cpp.
420 (sanitize_cpp_opts): Do not handle Wvariadic-macros here.
421
422 2014-08-19 Marek Polacek <polacek@redhat.com>
423
424 PR c++/62153
425 * c-common.c (maybe_warn_bool_compare): New function.
426 * c-common.h (maybe_warn_bool_compare): Declare.
427 * c.opt (Wbool-compare): New option.
428
429 2014-08-19 Marek Polacek <polacek@redhat.com>
430
431 * c.opt (Wc99-c11-compat): New option.
432
433 2014-08-19 Marek Polacek <polacek@redhat.com>
434
435 * c-opts.c (sanitize_cpp_opts): Make warn_long_long be set according
436 to warn_c90_c99_compat.
437 * c.opt (Wc90-c99-compat, Wdeclaration-after-statement): Initialize
438 to -1.
439
440 2014-08-19 Manuel López-Ibáñez <manu@gcc.gnu.org>
441 Steven Bosscher <steven@gcc.gnu.org>
442
443 PR c/52952
444 * c-format.c: Add extra_arg_loc and format_string_loc to struct
445 format_check_results.
446 (check_function_format): Use true and add comment for boolean
447 argument.
448 (finish_dollar_format_checking): Use explicit location when warning.
449 (check_format_info): Likewise.
450 (check_format_arg): Set extra_arg_loc and format_string_loc.
451 (check_format_info_main): Use explicit location when warning.
452 (check_format_types): Pass explicit location.
453 (format_type_warning): Likewise.
454
455 2014-08-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
456
457 PR fortran/44054
458 * c-format.c: Handle Fortran flags.
459
460 2014-08-12 Igor Zamyatin <igor.zamyatin@intel.com>
461
462 PR other/61962
463 * array-notation-common.c (find_rank): Added handling for other
464 types of references.
465
466 2014-08-10 Marek Polacek <polacek@redhat.com>
467
468 PR c/51849
469 * c-opts.c (sanitize_cpp_opts): Pass warn_c90_c99_compat to libcpp.
470 * c.opt (Wc90-c99-compat): Add option.
471
472 2014-08-07 Trevor Saunders <tsaunders@mozilla.com>
473
474 * c-gimplify.c, cilk.c: Remove includes of pointer-set.h.
475
476 2014-08-03 Marek Polacek <polacek@redhat.com>
477
478 * c-common.c (check_case_value): Add location_t parameter. Use it.
479 (c_add_case_label): Pass loc to check_case_value.
480
481 2014-08-02 Trevor Saunders <tsaunders@mozilla.com>
482
483 * cilk.c: Use hash_map instead of pointer_map.
484
485 2014-08-02 Trevor Saunders <tsaunders@mozilla.com>
486
487 * c-gimplify.c: Use hash_set instead of pointer_set.
488
489 2014-08-01 Igor Zamyatin <igor.zamyatin@intel.com>
490
491 PR middle-end/61455
492 * array-notation-common.c (extract_array_notation_exprs): Handling
493 of DECL_EXPR added.
494
495 2014-08-01 Jakub Jelinek <jakub@redhat.com>
496
497 * c-common.h (min_align_of_type): Removed prototype.
498 * c-common.c (min_align_of_type): Removed.
499 * c-ubsan.h (ubsan_maybe_instrument_reference,
500 ubsan_maybe_instrument_member_call): New prototypes.
501 * c-ubsan.c: Include stor-layout.h and builtins.h.
502 (ubsan_maybe_instrument_reference_or_call,
503 ubsan_maybe_instrument_reference, ubsan_maybe_instrument_call): New
504 functions.
505
506 2014-07-31 Marc Glisse <marc.glisse@inria.fr>
507
508 PR c++/60517
509 * c.opt (-Wreturn-local-addr): Move to common.opt.
510
511 2014-07-30 Jason Merrill <jason@redhat.com>
512
513 PR c++/61659
514 PR c++/61687
515 Revert:
516 * c.opt (-fuse-all-virtuals): New.
517
518 2014-07-30 Tom Tromey <tromey@redhat.com>
519
520 PR c/59855
521 * c.opt (Wdesignated-init): New option.
522 * c-common.c (c_common_attribute_table): Add "designated_init".
523 (handle_designated_init): New function.
524
525 2014-07-24 Marek Polacek <polacek@redhat.com>
526
527 PR c/57653
528 * c-opts.c (c_finish_options): If -imacros is in effect, return.
529
530 2014-07-16 Dodji Seketeli <dodji@redhat.com>
531
532 PR preprocessor/60723 - missing system-ness marks for macro tokens
533 * c-ppoutput.c (struct print::prev_was_system_token): New data
534 member.
535 (init_pp_output): Initialize it.
536 (maybe_print_line_1, maybe_print_line, print_line_1, print_line)
537 (do_line_change): Return a flag saying if a line marker was
538 emitted or not.
539 (scan_translation_unit): Detect if the system-ness of the token we
540 are about to emit is different from the one of the previously
541 emitted token. If so, emit a line marker. Avoid emitting useless
542 adjacent line markers. Avoid emitting line markers for tokens
543 originating from the expansion of built-in macros.
544 (scan_translation_unit_directives_only): Adjust.
545
546 2014-07-15 Marek Polacek <polacek@redhat.com>
547
548 * c-ubsan.c (ubsan_instrument_bounds): Don't instrument if
549 TYPE_MAX_VALUE is NULL.
550
551 2014-07-14 Jakub Jelinek <jakub@redhat.com>
552
553 PR middle-end/61294
554 * c.opt (Wmemset-transposed-args): New warning.
555
556 2014-07-10 Jason Merrill <jason@redhat.com>
557
558 PR c++/61659
559 PR c++/61687
560 * c.opt (-fuse-all-virtuals): New.
561
562 2014-07-09 Richard Biener <rguenther@suse.de>
563
564 PR c-family/61741
565 * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
566 using unsigned arithmetic if overflow does not wrap instead of
567 if overflow is undefined.
568
569 2014-07-06 Marek Polacek <polacek@redhat.com>
570
571 PR c/6940
572 * c.opt (Wsizeof-array-argument): New option.
573
574 2014-07-03 Jakub Jelinek <jakub@redhat.com>
575
576 * c-ada-spec.c (dump_ada_nodes): Don't call qsort if
577 comments->count <= 1, as comments->entries might be NULL.
578
579 2014-07-01 Marek Polacek <polacek@redhat.com>
580
581 * c.opt (Wint-conversion): New option.
582
583 2014-07-01 Marek Polacek <polacek@redhat.com>
584
585 PR c/58286
586 * c.opt (Wincompatible-pointer-types): New option.
587
588 2014-06-30 Paolo Carlini <paolo.carlini@oracle.com>
589
590 PR c++/51400
591 * c-common.c (handle_noreturn_attribute, handle_const_attribute):
592 Do not discard TYPE_QUALS of type.
593
594 2014-06-26 Jason Merrill <jason@redhat.com>
595
596 * c-common.h (enum cxx_dialect): Add cxx1z.
597 * c.opt (std=c++1z, std=c++17, std=gnu++1z, std=gnu++17): New.
598 * c-opts.c (c_common_handle_option, set_std_cxx1z): Handle it.
599
600 2014-06-26 Teresa Johnson <tejohnson@google.com>
601
602 * c-common.h (get_dump_info): Declare.
603 * c-gimplify.c (c_genericize): Use saved dump files.
604 * c-opts.c (c_common_parse_file): Begin and end dumps
605 once around parsing invocation.
606 (get_dump_info): New function.
607
608 2014-06-23 Marek Polacek <polacek@redhat.com>
609 Andrew MacLeod <amacleod@redhat.com>
610
611 PR c/61553
612 * c-common.c (get_atomic_generic_size): Don't segfault if the
613 type doesn't have a size.
614
615 2014-06-20 Marek Polacek <polacek@redhat.com>
616
617 * c-gimplify.c: Include "c-ubsan.h" and "pointer-set.h".
618 (ubsan_walk_array_refs_r): New function.
619 (c_genericize): Instrument array bounds.
620 * c-ubsan.c: Include "internal-fn.h".
621 (ubsan_instrument_division): Mark instrumented arrays as having
622 side effects. Adjust ubsan_type_descriptor call.
623 (ubsan_instrument_shift): Likewise.
624 (ubsan_instrument_vla): Adjust ubsan_type_descriptor call.
625 (ubsan_instrument_bounds): New function.
626 (ubsan_array_ref_instrumented_p): New function.
627 (ubsan_maybe_instrument_array_ref): New function.
628 * c-ubsan.h (ubsan_instrument_bounds): Declare.
629 (ubsan_array_ref_instrumented_p): Declare.
630 (ubsan_maybe_instrument_array_ref): Declare.
631
632 2014-06-20 Hale Wang <hale.wang@arm.com>
633
634 PR lto/61123
635 * c.opt (fshort-enums): Add to LTO.
636 * c.opt (fshort-wchar): Likewise.
637
638 2014-06-16 Marek Polacek <polacek@redhat.com>
639
640 PR c/60439
641 * c.opt (Wswitch-bool): Add Var.
642
643 2014-06-12 Jakub Jelinek <jakub@redhat.com>
644
645 PR middle-end/61486
646 * c-omp.c (c_omp_split_clauses): Don't crash on firstprivate in
647 #pragma omp target teams or
648 #pragma omp {,target }teams distribute simd.
649
650 2014-06-12 Jason Merrill <jason@redhat.com>
651
652 * c.opt (Wabi=, fabi-compat-version): New.
653 * c-opts.c (c_common_handle_option): Handle -Wabi=.
654 (c_common_post_options): Handle flag_abi_compat_version default.
655 Disallow -fabi-compat-version=1.
656 * c-common.h (abi_version_crosses): New.
657
658 2014-06-11 Jan Hubicka <hubicka@ucw.cz>
659
660 * c-family/c-common.c (handle_section_attribute): Update handling for
661 section names that are no longer trees.
662
663 2014-06-10 Jakub Jelinek <jakub@redhat.com>
664
665 PR fortran/60928
666 * c-pragma.c (omp_pragmas_simd): Move PRAGMA_OMP_TASK...
667 (omp_pragmas): ... back here.
668
669 2014-06-05 Marek Polacek <polacek@redhat.com>
670
671 PR c/49706
672 * c-common.c (warn_logical_not_parentheses): New function.
673 * c-common.h (warn_logical_not_parentheses): Declare.
674 * c.opt (Wlogical-not-parentheses): New option.
675
676 2014-06-04 Marek Polacek <polacek@redhat.com>
677
678 PR c/30020
679 * c-common.c (check_case_bounds): Add location parameter.
680 Use it.
681 (c_add_case_label): Pass loc to check_case_bounds.
682
683 2014-06-03 Marek Polacek <polacek@redhat.com>
684
685 PR c/60439
686 * c.opt (Wswitch-bool): New option.
687
688 2014-05-22 Thomas Schwinge <thomas@codesourcery.com>
689
690 * c-common.h (c_omp_sharing_predetermined, c_omp_remap_decl):
691 Remove prototypes.
692 (record_types_used_by_current_var_decl): Move prototype to where
693 it belongs.
694
695 * c-common.c (DEF_FUNCTION_TYPE_0, DEF_FUNCTION_TYPE_6)
696 (DEF_FUNCTION_TYPE_7, DEF_FUNCTION_TYPE_8)
697 (DEF_FUNCTION_TYPE_VAR_5): Cosmetic fixes.
698
699 2014-05-21 Richard Sandiford <rsandifo@linux.vnet.ibm.com>
700
701 * c-common.h (CTI_VOID_ZERO, void_zero_node): Delete.
702 * c-common.c (c_common_nodes_and_builtins): Don't initialize
703 void_zero_node.
704 * c-pretty-print.c (pp_c_void_constant): New function.
705 (c_pretty_printer::constant, c_pretty_printer::primary_expression)
706 (c_pretty_printer::expression): Handle VOID_CST.
707 * cilk.c (extract_free_variables): Likewise.
708 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift)
709 (ubsan_instrument_vla): Use void_node instead of void_zero_node.
710
711 2014-05-17 Trevor Saunders <tsaunders@mozilla.com>
712
713 * c-common.h (sorted_fields_type): Remove variable_size GTY attribute.
714 * c-pragma.c (push_alignment): Adjust.
715 (handle_pragma_push_options): Likewise.
716
717 2014-05-09 Marek Polacek <polacek@redhat.com>
718
719 PR c/50459
720 * c-common.c (check_user_alignment): Return -1 if alignment is error
721 node.
722 (handle_aligned_attribute): Don't call default_conversion on
723 FUNCTION_DECLs.
724 (handle_vector_size_attribute): Likewise.
725 (handle_tm_wrap_attribute): Handle case when wrap_decl is error node.
726 (handle_sentinel_attribute): Call default_conversion and allow even
727 integral types as an argument.
728
729 2014-05-08 Marek Polacek <polacek@redhat.com>
730
731 PR c/61053
732 * c-common.c (min_align_of_type): New function factored out from...
733 (c_sizeof_or_alignof_type): ...here.
734 * c-common.h (min_align_of_type): Declare.
735
736 2014-05-08 Marek Polacek <polacek@redhat.com>
737
738 PR c/61077
739 * c-common.c (check_main_parameter_types): Warn for _Atomic-qualified
740 parameter type of main.
741
742 2014-05-07 DJ Delorie <dj@redhat.com>
743
744 * c-cppbuiltin.c (print_bits_of_hex): New.
745 (builtin_define_type_minmax): Print values using hex so as not to
746 require a pre-computed list of string values.
747
748 2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
749 Mike Stump <mikestump@comcast.net>
750 Richard Sandiford <rdsandiford@googlemail.com>
751
752 * c-ada-spec.c: Include wide-int.h.
753 (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Remove.
754 (dump_generic_ada_node): Use wide-int interfaces.
755 * c-common.c: Include wide-int-print.h.
756 (shorten_compare): Use wide-int interfaces and tree_int_cst_lt.
757 (pointer_int_sum): Use wide-int interfaces.
758 (c_common_nodes_and_builtins): Use make_int_cst.
759 (match_case_to_enum_1): Use tree_fits_uhwi_p and tree_fits_shwi_p.
760 (handle_alloc_size_attribute): Use wide-int interfaces.
761 (get_nonnull_operand): Likewise.
762 * c-format.c (get_constant): Use tree_fits_uhwi_p.
763 * c-lex.c: Include wide-int.h.
764 (narrowest_unsigned_type): Take a widest_int rather than two
765 HOST_WIDE_INTs.
766 (narrowest_signed_type): Likewise.
767 (interpret_integer): Update accordingly. Use wide-int interfaces.
768 (lex_charconst): Use wide-int interfaces.
769 * c-pretty-print.c: Include wide-int.h.
770 (pp_c_integer_constant): Use wide-int interfaces.
771 * cilk.c (declare_one_free_variable): Use tree_int_cst_lt instead of
772 INT_CST_LT_UNSIGNED.
773
774 2014-05-06 Richard Biener <rguenther@suse.de>
775
776 * c-opts.c (c_common_post_options): For -freestanding,
777 -fno-hosted and -fno-builtin disable pattern recognition
778 if not enabled explicitely.
779
780 2014-05-02 Marek Polacek <polacek@redhat.com>
781
782 * c.opt (Wsizeof-pointer-memaccess): Describe option.
783
784 2014-05-01 Marek Polacek <polacek@redhat.com>
785
786 PR c/43245
787 * c.opt (Wdiscarded-qualifiers): Add.
788
789 2014-04-30 Marek Polacek <polacek@redhat.com>
790
791 * c-ubsan.c (ubsan_instrument_division): Handle REAL_TYPEs. Perform
792 INT_MIN / -1 sanitization only for integer types.
793
794 2014-04-25 Marek Polacek <polacek@redhat.com>
795
796 PR c/18079
797 * c-common.c (handle_noinline_attribute): Warn if the attribute
798 conflicts with always_inline attribute.
799 (handle_always_inline_attribute): Warn if the attribute conflicts
800 with noinline attribute.
801
802 2014-04-25 Marek Polacek <polacek@redhat.com>
803
804 PR c/60156
805 * c-common.c (check_main_parameter_types): Warn about variadic main.
806
807 2014-04-24 Mike Stump <mikestump@comcast.net>
808
809 * c.opt (Wshadow-ivar): Default to on.
810
811 2014-04-24 Dimitris Papavasiliou <dpapavas@gmail.com>
812
813 * c.opt (Wshadow-ivar, flocal-ivars, fivar-visibility): Add.
814
815 2014-04-23 Marek Polacek <polacek@redhat.com>
816
817 * c-common.c (handle_tm_wrap_attribute): Tweak error message.
818
819 2014-04-22 Jakub Jelinek <jakub@redhat.com>
820
821 PR sanitizer/60275
822 * c-ubsan.c (ubsan_instrument_return): Return __builtin_trap ()
823 if flag_sanitize_undefined_trap_on_error.
824 (ubsan_instrument_division, ubsan_instrument_shift,
825 ubsan_instrument_vla): Likewise. Use __ubsan_handle_*_abort ()
826 if !flag_sanitize_recover.
827
828 2014-04-22 Marc Glisse <marc.glisse@inria.fr>
829
830 PR libstdc++/43622
831 * c-common.c (registered_builtin_types): Make non-static.
832 * c-common.h (registered_builtin_types): Declare.
833
834 2014-04-14 Richard Biener <rguenther@suse.de>
835 Marc Glisse <marc.glisse@inria.fr>
836
837 PR c/60819
838 * c-common.c (convert_vector_to_pointer_for_subscript): Properly
839 apply may-alias the scalar pointer type when applicable.
840
841 2014-04-12 Igor Zamyatin <igor.zamyatin@intel.com>
842
843 PR middle-end/60467
844 * cilk.c (cilk_set_spawn_marker): Remove FUNCTION_DECL
845 as possible argument for Cilk_spawn.
846
847 2014-04-11 Tobias Burnus <burnus@net-b.de>
848
849 PR c/60194
850 * c.opt (Wformat-signedness): Add
851 * c-format.c(check_format_types): Use it.
852
853 2014-04-11 Jason Merrill <jason@redhat.com>
854
855 PR c++/57926
856 * c-common.c (sync_resolve_size, get_atomic_generic_size): Call
857 default_conversion for an array argument.
858
859 2014-04-08 Marek Polacek <polacek@redhat.com>
860
861 PR sanitizer/60745
862 * c-ubsan.c: Include asan.h.
863 (ubsan_instrument_return): Call initialize_sanitizer_builtins.
864
865 2014-04-03 Nathan Sidwell <nathan@codesourcery.com>
866
867 * c.opt (Wnon-virtual-dtor): Auto set when Weffc++.
868
869 2014-04-02 Marek Polacek <polacek@redhat.com>
870
871 * c-common.h (c_expand_expr): Remove declaration.
872
873 2014-03-28 Jakub Jelinek <jakub@redhat.com>
874
875 PR c++/60689
876 * c-common.c (add_atomic_size_parameter): When creating new
877 params vector, push the size argument first.
878
879 2014-03-26 Jakub Jelinek <jakub@redhat.com>
880
881 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
882 ubsan_instrument_vla, ubsan_instrument_return): Adjust
883 ubsan_create_data callers.
884
885 2014-03-22 Jakub Jelinek <jakub@redhat.com>
886
887 PR debug/60603
888 * c-opts.c (c_finish_options): Restore cb_file_change call to
889 <built-in>.
890
891 2014-03-13 Jakub Jelinek <jakub@redhat.com>
892
893 PR middle-end/36282
894 * c-pragma.c (apply_pragma_weak): Only look at
895 TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl)) if
896 DECL_ASSEMBLER_NAME_SET_P (decl).
897 (maybe_apply_pending_pragma_weaks): Exit early if
898 vec_safe_is_empty (pending_weaks) rather than only when
899 !pending_weaks.
900 (maybe_apply_pragma_weak): Likewise. If !DECL_ASSEMBLER_NAME_SET_P,
901 set assembler name back to NULL afterwards.
902
903 2014-03-11 Jason Merrill <jason@redhat.com>
904
905 * c.opt: Add -std=gnu++14.
906
907 2014-03-11 Ian Bolton <ian.bolton@arm.com>
908
909 * c-opts.c (c_common_post_options): Don't override
910 -ffp-contract=fast if unsafe-math-optimizations is on.
911
912 2014-03-08 Paulo Matos <paulo@matos-sorge.com>
913
914 * c.opt: Enable LTO FE for fshort-double.
915
916 2014-03-07 Jason Merrill <jason@redhat.com>
917
918 * c.opt: Add -std=c++14.
919
920 2014-03-06 Marek Polacek <polacek@redhat.com>
921
922 PR c/60197
923 * cilk.c (contains_cilk_spawn_stmt): New function.
924 (contains_cilk_spawn_stmt_walker): Likewise.
925 (recognize_spawn): Give error on invalid use of _Cilk_spawn.
926 * c-common.h (contains_cilk_spawn_stmt): Add declaration.
927
928 2014-03-03 Jakub Jelinek <jakub@redhat.com>
929
930 * c-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_SIMD.
931 (init_pragma): Call cpp_register_deferred_pragma for PRAGMA_CILK_SIMD
932 even when flag_preprocess_only.
933
934 2014-02-26 Jason Merrill <jason@redhat.com>
935
936 PR c++/59231
937 PR c++/11586
938 * c-common.c (shorten_compare): Don't check
939 c_inhibit_evaluation_warnings.
940
941 2014-02-19 Jakub Jelinek <jakub@redhat.com>
942
943 PR c/37743
944 * c-common.c (c_common_nodes_and_builtins): When initializing
945 c_uint{16,32,64}_type_node, also set corresponding
946 uint{16,32,64}_type_node to the same value.
947
948 PR c++/60267
949 * c-pragma.c (init_pragma): Don't call cpp_register_deferred_pragma
950 for PRAGMA_IVDEP if flag_preprocess_only.
951
952 2014-02-12 Jakub Jelinek <jakub@redhat.com>
953
954 PR c/60101
955 * c-common.c (merge_tlist): If copy is true, call new_tlist,
956 if false, add ADD itself, rather than vice versa.
957 (verify_tree): For COND_EXPR, don't call merge_tlist with non-zero
958 copy. For SAVE_EXPR, only call merge_tlist once.
959
960 2014-02-08 Jakub Jelinek <jakub@redhat.com>
961
962 PR middle-end/60092
963 * c-common.c (handle_alloc_size_attribute): Use tree_fits_uhwi_p
964 and tree_to_uhwi.
965 (handle_alloc_align_attribute, handle_assume_aligned_attribute): New
966 functions.
967 (c_common_attribute_table): Add alloc_align and assume_aligned
968 attributes.
969
970 2014-02-06 Marek Polacek <polacek@redhat.com>
971
972 PR c/60087
973 * c-common.c (warn_for_sign_compare): Call warning_at with location
974 instead of warning.
975
976 2014-02-05 Marek Polacek <polacek@redhat.com>
977
978 PR c/53123
979 * c-omp.c (c_finish_omp_atomic): Remove unreachable return
980 statement.
981
982 2014-02-04 Marek Polacek <polacek@redhat.com>
983
984 PR c/60036
985 * c-common.c (conversion_warning): Unwrap C_MAYBE_CONST_EXPR and/or
986 SAVE_EXPR.
987
988 2014-02-03 Marc Glisse <marc.glisse@inria.fr>
989
990 PR c++/53017
991 PR c++/59211
992 * c-common.c (handle_aligned_attribute, handle_alloc_size_attribute,
993 handle_vector_size_attribute, handle_nonnull_attribute): Call
994 default_conversion on the attribute argument.
995 (handle_nonnull_attribute): Increment the argument number.
996
997 2014-01-31 Marek Polacek <polacek@redhat.com>
998
999 PR c/59963
1000 * c-common.c (add_atomic_size_parameter): Pass vNULL to
1001 build_function_call_vec.
1002 (resolve_overloaded_builtin): Likewise.
1003 * c-common.h (build_function_call_vec): Adjust declaration.
1004
1005 2014-01-30 Marek Polacek <polacek@redhat.com>
1006
1007 PR c/59940
1008 * c-common.h (unsafe_conversion_p): Adjust declaration.
1009 (warnings_for_convert_and_check): Likewise.
1010 (convert_and_check): Likewise.
1011 * c-common.c (unsafe_conversion_p): Add location parameter. Call
1012 expansion_point_location_if_in_system_header on it.
1013 (warnings_for_convert_and_check): Add location parameter. Call
1014 expansion_point_location_if_in_system_header on it. Use it.
1015 (convert_and_check): Add location parameter. Use it.
1016 (conversion_warning): Likewise.
1017 (c_add_case_label): Adjust convert_and_check calls.
1018 (scalar_to_vector): Adjust unsafe_conversion_p calls.
1019
1020 2014-01-24 Balaji V. Iyer <balaji.v.iyer@intel.com>
1021
1022 * c-common.c (c_define_builtins): Replaced flag_enable_cilkplus with
1023 flag_cilkplus.
1024 * c-pragma.c (init_pragma): Likewise.
1025 * c.opt: Likewise.
1026
1027 2014-01-23 Marek Polacek <polacek@redhat.com>
1028
1029 PR c/59846
1030 * c-common.c (shorten_compare): Add location_t parameter.
1031 * c-common.h (shorten_binary_op): Adjust declaration.
1032
1033 2014-01-23 Marek Polacek <polacek@redhat.com>
1034
1035 PR c/58346
1036 * c-common.c (pointer_to_zero_sized_aggr_p): New function.
1037 * c-common.h: Declare it.
1038
1039 2014-01-20 Eric Botcazou <ebotcazou@adacore.com>
1040
1041 * c-ada-spec.h (dump_ada_specs): Revert prototype change.
1042 * c-ada-spec.c (dump_ads): Likewise.
1043 (cpp_check): Likewise.
1044 (dump_ada_specs): Likewise.
1045
1046 2014-01-15 Laurent Alfonsi <laurent.alfonsi@st.com>
1047
1048 PR c++/49718
1049 * c-common.c (handle_no_instrument_function_attribute): Allow
1050 no_instrument_function attribute in class member
1051 definition/declaration.
1052
1053 2014-01-15 Jakub Jelinek <jakub@redhat.com>
1054
1055 PR c/58943
1056 * c-omp.c (c_finish_omp_atomic): Set in_late_binary_op around
1057 build_modify_expr with non-NOP_EXPR opcode. Handle return from it
1058 being COMPOUND_EXPR.
1059 (c_finish_omp_for): Handle incr being COMPOUND_EXPR with first
1060 operand a SAVE_EXPR and second MODIFY_EXPR.
1061
1062 2014-01-09 Jakub Jelinek <jakub@redhat.com>
1063
1064 PR target/58115
1065 * c-pch.c (c_common_write_pch): Call
1066 prepare_target_option_nodes_for_pch.
1067
1068 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1069
1070 Update copyright years
1071
1072 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1073
1074 * array-notation-common.c, c-cilkplus.c: Use the standard form for
1075 the copyright notice.
1076
1077 2013-12-28 Eric Botcazou <ebotcazou@adacore.com>
1078
1079 * c-ada-spec.c (print_constructor): New function.
1080 (print_destructor): Retrieve the origin of the destructor.
1081 (print_ada_declaration): Revamp handling of constructors/destructors.
1082
1083 2013-12-23 Stuart Hastings <stuart@apple.com>
1084 Bill Maddox <maddox@google.com>
1085 Jason Merrill <jason@redhat.com>
1086
1087 * c.opt: Add -fdeclone-ctor-dtor.
1088 * c-opts.c (c_common_post_options): Default to on iff -Os.
1089
1090 2013-12-18 Balaji V. Iyer <balaji.v.iyer@intel.com>
1091
1092 * c-common.c (c_common_attribute_table): Added "cilk simd function"
1093 attribute.
1094 * c-pragma.h (enum pragma_cilk_clause): Remove.
1095 (enum pragma_omp_clause): Added the following fields:
1096 PRAGMA_CILK_CLAUSE_NOMASK, PRAGMA_CILK_CLAUSE_MASK,
1097 PRAGMA_CILK_CLAUSE_VECTORLENGTH, PRAGMA_CILK_CLAUSE_NONE,
1098 PRAGMA_CILK_CLAUSE_LINEAR, PRAGMA_CILK_CLAUSE_PRIVATE,
1099 PRAGMA_CILK_CLAUSE_FIRSTPRIVATE, PRAGMA_CILK_CLAUSE_LASTPRIVATE,
1100 PRAGMA_CILK_CLAUSE_UNIFORM.
1101
1102
1103 2013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com>
1104
1105 * cilk.c (cilk_outline): Made this function non-static.
1106 (gimplify_cilk_spawn): Removed pre_p and post_p arguments.
1107 (create_cilk_wrapper): Added a new parameter: a function pointer.
1108 (c_install_body_w_frame_cleanup): Remove
1109 (extract_free_variables): Added VEC_INIT_EXPR and CONSTRUCTOR case.
1110 * c-common.h (cilk_outline): New prototype.
1111 (gimplify_cilk_spawn): Removed two parameters.
1112 (cilk_install_body_with_frame_cleanup): New prototype.
1113 * c-gimplify.c (c_gimplify_expr): Added MODIFY_EXPR, CALL_EXPR and
1114 CILK_SPAWN_STMT case.
1115
1116 2013-12-11 Bernd Schmidt <bernds@codesourcery.com>
1117
1118 * c-common.c (c_fully_fold_internal): Handle ADDR_SPACE_CONVERT_EXPR.
1119
1120 * c-common.h (enum c_tree_index): Remove CTI_INT_ARRAY_TYPE.
1121 (int_array_type_node): Remove.
1122 * c-common.c (c_common_nodes_and_builtins): Don't build it.
1123
1124 2013-12-05 Marek Polacek <polacek@redhat.com>
1125
1126 PR c/52023
1127 * c-common.c (c_sizeof_or_alignof_type): Move a declaration into
1128 [ADJUST_FIELD_ALIGN].
1129
1130 2013-12-04 Joseph Myers <joseph@codesourcery.com>
1131
1132 PR c/52023
1133 * c-common.c (c_sizeof_or_alignof_type): Add parameter min_alignof
1134 and check field alignment if set.
1135 * c-common.h (c_sizeof_or_alignof_type): Update prototype.
1136 (c_sizeof, c_alignof): Update calls to c_sizeof_or_alignof_type.
1137
1138 2013-12-04 Jakub Jelinek <jakub@redhat.com>
1139 Marek Polacek <polacek@redhat.com>
1140
1141 * c-gimplify.c (c_gimplify_expr): If doing the integer-overflow
1142 sanitization, call unsigned_type_for only when !TYPE_OVERFLOW_WRAPS.
1143
1144 2013-11-29 H.J. Lu <hongjiu.lu@intel.com>
1145
1146 PR c/59309
1147 * cilk.c (gimplify_cilk_spawn): Properly handle function without
1148 arguments.
1149
1150 2013-11-29 Jakub Jelinek <jakub@redhat.com>
1151
1152 PR c/59280
1153 * c-common.c (get_priority): If TREE_VALUE (args) is IDENTIFIER_NODE,
1154 goto invalid. If it is error_mark_node, don't issue further
1155 diagnostics.
1156
1157 2013-11-28 Sergey Ostanevich <sergos.gnu@gmail.com>
1158
1159 * c.opt (Wopenmp-simd): New.
1160
1161 2013-11-22 Jakub Jelinek <jakub@redhat.com>
1162
1163 * c-ubsan.h (ubsan_instrument_return): New prototype.
1164 * c-ubsan.c (ubsan_instrument_return): New function.
1165
1166 2013-11-22 Andrew MacLeod <amacleod@redhat.com>
1167
1168 * c-common.c: Add required include files from gimple.h.
1169 * c-gimplify.c: Likewise
1170 * cilk.c: Likewise
1171
1172 2013-11-22 David Malcolm <dmalcolm@redhat.com>
1173
1174 * c-common.c (unsafe_conversion_p): Remove use of
1175 EXPR_LOC_OR_HERE macro.
1176 (conversion_warning): Likewise.
1177 (warnings_for_convert_and_check): Likewise.
1178 (warn_for_collisions_1): Likewise.
1179 (shorten_compare): Likewise, and remove use of in_system_header
1180 macro, using the location from the former.
1181 * c-lex.c (dump_one_header): Remove use of input_filename macro.
1182 (cb_def_pragma): Remove use of in_system_header macro.
1183 (lex_string): Likewise.
1184 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
1185
1186 2013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com>
1187 Mike Stump <mikestump@comcast.net>
1188 Richard Sandiford <rdsandiford@googlemail.com>
1189
1190 * c-ada-spec.c (is_simple_enum): Use tree_to_shwi and tree_to_uhwi
1191 instead of TREE_INT_CST_LOW, in cases where there is a protecting
1192 tree_fits_shwi_p or tree_fits_uhwi_p.
1193 (dump_generic_ada_node): Likewise.
1194 * c-format.c (check_format_arg): Likewise.
1195 * c-pretty-print.c (pp_c_integer_constant): Likewise.
1196
1197 2013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com>
1198
1199 * c-common.c (check_function_arguments_recurse): Use tree_to_uhwi.
1200
1201 2013-11-19 Joshua J Cogliati <jrincayc@yahoo.com>
1202
1203 PR c/53001
1204 * c-common.c (unsafe_conversion_p): Make this function
1205 return an enumeration with more detail.
1206 (conversion_warning): Use the new return type of
1207 unsafe_conversion_p to separately warn either about conversions
1208 that lower floating point number precision or about the other
1209 kinds of conversions.
1210 * c-common.h (enum conversion_safety): New enumeration.
1211 (unsafe_conversion_p): switching return type to
1212 conversion_safety enumeration.
1213 * c.opt: Adding new warning -Wfloat-conversion and
1214 enabling it with -Wconversion.
1215
1216 2013-11-19 Basile Starynkevitch <basile@starynkevitch.net>
1217
1218 * c-opts.c: Include plugin.h.
1219 (cb_file_change): Invoke plugin event PLUGIN_INCLUDE_FILE.
1220
1221 2013-11-19 Marek Polacek <polacek@redhat.com>
1222
1223 * c-ubsan.c (ubsan_instrument_division): Adjust ubsan_create_data
1224 call.
1225 (ubsan_instrument_shift): Likewise.
1226 (ubsan_instrument_vla): Likewise.
1227
1228 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1229
1230 * c-common.c (convert_vector_to_pointer_for_subscript): Remove
1231 cast to unsigned type.
1232
1233 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1234
1235 * c-common.c (fold_offsetof_1): Use tree_to_uhwi rather than
1236 tree_low_cst.
1237 (complete_array_type): Update comment to refer to tree_to_[su]hwi
1238 rather than tree_low_cst.
1239
1240 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1241
1242 * c-common.c, c-cppbuiltin.c: Replace tree_low_cst (..., 1) with
1243 tree_to_uhwi throughout.
1244
1245 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1246
1247 * c-common.c, c-format.c, c-omp.c, c-pretty-print.c: Replace
1248 tree_low_cst (..., 0) with tree_to_shwi throughout.
1249
1250 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1251
1252 * c-ada-spec.c, c-common.c, c-pretty-print.c: Replace
1253 host_integerp (..., 1) with tree_fits_uhwi_p throughout.
1254
1255 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1256
1257 * c-ada-spec.c, c-common.c, c-format.c, c-pretty-print.c: Replace
1258 host_integerp (..., 0) with tree_fits_shwi_p throughout.
1259
1260 2013-11-15 Aldy Hernandez <aldyh@redhat.com>
1261
1262 * c-cilkplus.c: New file.
1263 * c-common.c (readonly_error): Add location argument.
1264 * c-common.h (readonly_error): Same.
1265 (c_finish_cilk_clauses): Protoize.
1266 (c_check_cilk_loop): Same.
1267 c-omp.c (c_finish_omp_for): Handle CILK_SIMD nodes.
1268 Do not fail on error_mark_node.
1269 Abstract increment canonicalization to here...
1270 (c_omp_for_incr_canonicalize_ptr): New.
1271 c-pragma.c (init_pragma): Register "simd" pragma.
1272 c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_SIMD.
1273 (enum pragma_cilk_clause): New.
1274
1275 2013-11-15 Richard Sandiford <rdsandiford@googlemail.com>
1276
1277 * c-pretty-print.c (pp_c_character_constant): Remove unnecessary
1278 wchar_type and host_integerp checks.
1279
1280 2013-11-14 Andrew MacLeod <amacleod@redhat.com>
1281
1282 * c-common.c: Likewise.
1283 * c-gimplify.c: Likewise.
1284 * cilk.c: Likewise.
1285
1286 2013-11-14 Diego Novillo <dnovillo@google.com>
1287
1288 * c-common.c: Include fold-const.h.
1289 Include stor-layout.h.
1290 Include calls.h.
1291 Include stringpool.h.
1292 Include attribs.h.
1293 Include varasm.h.
1294 Include trans-mem.h.
1295 * c-cppbuiltin.c: Include stor-layout.h.
1296 Include stringpool.h.
1297 * c-format.c: Include stringpool.h.
1298 * c-lex.c: Include stringpool.h.
1299 Include stor-layout.h.
1300 * c-pragma.c: Include stringpool.h.
1301 Include attribs.h.
1302 Include varasm.h.
1303 Include gcc-symtab.h.
1304 * c-pretty-print.c: Include stor-layout.h.
1305 Include attribs.h.
1306 * cilk.c: Include stringpool.h.
1307 Include calls.h.
1308
1309 2013-11-13 Joseph Myers <joseph@codesourcery.com>
1310
1311 * c-common.h (enum rid): Add RID_AUTO_TYPE.
1312 * c-common.c (c_common_reswords): Add __auto_type.
1313 (keyword_begins_type_specifier): Handle RID_AUTO_TYPE.
1314
1315 2013-11-12 Andrew MacLeod <amacleod@redhat.com>
1316
1317 * c-common.c: Include gimplify.h.
1318 * c-gimplify.c: Likewise.
1319 * cilk.c: Likewise.
1320 * c-omp.c: Include gimple-expr.h instead of gimple.h.
1321 * c-ubsan.c: Don't include gimple.h.
1322
1323 2013-11-12 Joseph Myers <joseph@codesourcery.com>
1324
1325 * c-common.c (c_common_reswords): Add _Thread_local.
1326
1327 2013-11-09 Joseph Myers <joseph@codesourcery.com>
1328
1329 * c-common.c (atomic_size_supported_p): New function.
1330 (resolve_overloaded_atomic_exchange)
1331 (resolve_overloaded_atomic_compare_exchange)
1332 (resolve_overloaded_atomic_load, resolve_overloaded_atomic_store):
1333 Use it instead of comparing size with a local list of sizes.
1334
1335 2013-11-07 Andrew MacLeod <amacleod@redhat.com>
1336 Joseph Myers <joseph@codesourcery.com>
1337
1338 * c-common.h (enum rid): Add RID_ATOMIC.
1339 * c-common.c (c_common_reswords): Add _Atomic.
1340 (sync_resolve_params): Use TYPE_MAIN_VARIANT on pointer argument.
1341 (keyword_is_type_qualifier): Accept RID_ATOMIC.
1342 * c-format.c (check_format_types): Check for extra _Atomic
1343 qualifiers in format argument.
1344 * c-pretty-print.c (pp_c_cv_qualifiers): Handle atomic qualifier.
1345 (pp_c_type_qualifier_list): Mention _Atomic in comment.
1346
1347 2013-11-06 Tobias Burnus <burnus@net-b.de>
1348
1349 * c-common.c (reason_option_codes_t): Add CPP_W_DATE_TIME.
1350
1351 2013-11-06 Joseph Myers <joseph@codesourcery.com>
1352
1353 * c-opts.c (c_common_post_options): Set -ffp-contract=off in C
1354 standards modes.
1355 * c-cppbuiltin.c (cpp_iec_559_value): Consider -ffp-contract=fast
1356 to mean lack of IEEE 754 support.
1357
1358 2013-11-05 Tobias Burnus <burnus@net-b.de>
1359
1360 * c.opt (-Wdate-time): New option
1361 * c-opts.c (sanitize_cpp_opts): Pass on to libcpp.
1362
1363 2013-11-05 Joseph Myers <joseph@codesourcery.com>
1364
1365 * c-cppbuiltin.c (cpp_iec_559_value): Test
1366 flag_excess_precision_cmdline not flag_excess_precision.
1367
1368 2013-11-05 Tobias Burnus <burnus@net-b.de>
1369
1370 * c.opt (fopenmp-simd): New option.
1371 * c-pragma.c (omp_pragmas): Move pragmas which can contain simd to ...
1372 (omp_pragmas): ... this new struct.
1373 (c_pp_lookup_pragma): Also walk omp_pragmas.
1374 (init_pragma): Init pragmas for -fopenmp-simd.
1375
1376 2013-11-04 Marek Polacek <polacek@redhat.com>
1377
1378 PR c++/58979
1379 * c-common.c (invalid_indirection_error): Handle RO_ARROW_STAR case.
1380
1381 2013-11-04 Joseph Myers <joseph@codesourcery.com>
1382
1383 * c-cppbuiltin.c (cpp_iec_559_value, cpp_iec_559_complex_value):
1384 New functions.
1385 (c_cpp_builtins): Define __GCC_IEC_559 and __GCC_IEC_559_COMPLEX.
1386
1387 2013-11-04 Eric Botcazou <ebotcazou@adacore.com>
1388
1389 * c-ada-spec.h (cpp_operation): Add IS_TRIVIAL.
1390 (dump_ada_specs): Adjust prototype of second callback.
1391 * c-ada-spec.c (cpp_check): New global variable.
1392 (dump_ada_nodes): Remove cpp_check parameter and do not pass it down.
1393 (print_generic_ada_decl): Likewise.
1394 (has_static_fields): Change return type to bool and add guard.
1395 (has_nontrivial_methods): New predicate.
1396 (is_tagged_type): Change return type to bool.
1397 (separate_class_package): Call has_nontrivial_methods.
1398 (pp_ada_tree_identifier): Minor tweaks.
1399 (dump_ada_function_declaration): Adjust calls to dump_generic_ada_node.
1400 (dump_ada_array_domains): Likewise.
1401 (dump_ada_array_type): Likewise.
1402 (dump_template_types): Remove cpp_check parameter and do not pass it to
1403 dump_generic_ada_node.
1404 (dump_ada_template): Likewise.
1405 (dump_generic_ada_node): Remove cpp_check parameter and do not pass it
1406 recursively.
1407 (print_ada_methods): Change return type to integer. Remove cpp_check
1408 parameter and do not pass it down.
1409 (dump_nested_types): Remove cpp_check parameter and do not pass it to
1410 dump_generic_ada_node.
1411 (print_ada_declaration): Likewise. Test RECORD_OR_UNION_TYPE_P before
1412 accessing methods.
1413 (print_ada_struct_decl): Remove cpp_check parameter and do not pass it
1414 down. Use has_nontrivial_methods to recognize C++ classes. Use return
1415 value of print_ada_methods.
1416 (dump_ads): Rename cpp_check parameter to check and adjust prototype.
1417 Set cpp_check to it before invoking dump_ada_nodes.
1418 (dump_ada_specs): Likewise.
1419
1420 2013-11-03 Marek Polacek <polacek@redhat.com>
1421
1422 * c-ubsan.c: Don't include hash-table.h.
1423 (ubsan_instrument_vla): New function.
1424 * c-ubsan.h: Declare it.
1425
1426 2013-10-31 David Malcolm <dmalcolm@redhat.com>
1427
1428 Automated part of renaming of symtab_node_base to symtab_node.
1429
1430 Patch autogenerated by rename_symtab.py from
1431 https://github.com/davidmalcolm/gcc-refactoring-scripts
1432 revision 58bb219cc090b2f4516a9297d868c245495ee622
1433
1434 * c-pragma.c (maybe_apply_pending_pragma_weaks): Rename
1435 symtab_node_base to symtab_node.
1436
1437 2013-10-31 Edward Smith-Rowland <3dw4rd@verizon.net>
1438
1439 Implement C++14 digit separators.
1440 * c-lex.c (interpret_float): Remove digit separators from scratch string
1441 before building real literal.
1442
1443 2013-10-30 Jakub Jelinek <jakub@redhat.com>
1444
1445 * cilk.c (create_cilk_helper_decl): Use HOST_WIDE_INT_PRINT_DEC.
1446
1447 2013-10-29 Balaji V. Iyer <balaji.v.iyer@intel.com>
1448
1449 * c-common.c (c_common_reswords[]): Added _Cilk_spawn and _Cilk_sync
1450 fields.
1451 (c_define_builtins): Called cilk_init_builtins if Cilk Plus is
1452 enabled.
1453 * c-common.h (enum rid): Added RID_CILK_SPAWN and RID_CILK_SYNC.
1454 (insert_cilk_frame): New prototype.
1455 (cilk_init_builtins): Likewise.
1456 (gimplify_cilk_spawn): Likewise.
1457 (c_cilk_install_body_w_frame_cleanup): Likewise.
1458 (cilk_detect_spawn_and_unwrap): Likewise.
1459 (cilk_set_spawn_marker): Likewise.
1460 (build_cilk_sync): Likewise.
1461 (build_cilk_spawn): Likewise.
1462 * cilk.c: New file.
1463
1464 2013-10-29 David Malcolm <dmalcolm@redhat.com>
1465
1466 Patch autogenerated by refactor_symtab.py from
1467 https://github.com/davidmalcolm/gcc-refactoring-scripts
1468 revision 58bb219cc090b2f4516a9297d868c245495ee622
1469
1470 * c-gimplify.c (c_genericize): Update for conversion of symtab types
1471 to a true class hierarchy.
1472 * c-pragma.c (maybe_apply_pending_pragma_weaks): Likewise.
1473
1474 2013-10-27 Richard Sandiford <rdsandiford@googlemail.com>
1475
1476 * c-lex.c (interpret_integer): Remove call to cpp_num_sign_extend.
1477
1478 2013-10-26 Jeff Law <law@redhat.com>
1479
1480 * c-family/c-common.c (c_define_builtins): Remove mudflap support.
1481 * c-family/c.opt: Ignore and warn for mudflap options.
1482
1483 2013-10-24 Tobias Burnus <burnus@net-b.de>
1484
1485 PR other/33426
1486 * c-pragma.c (init_pragma) Add #pragma ivdep handling.
1487 * c-pragma.h (pragma_kind): Add PRAGMA_IVDEP.
1488
1489 2013-10-23 Jason Merrill <jason@redhat.com>
1490
1491 * c-format.c (gcc_cxxdiag_char_table): Add %X.
1492
1493 2013-10-11 Jakub Jelinek <jakub@redhat.com>
1494
1495 * c-common.h (omp_clause_mask::operator !=): New method.
1496 * c-omp.c (c_omp_split_clauses): Use if ((mask & something) != 0)
1497 instead of if (mask & something) tests everywhere.
1498
1499 * c-cppbuiltin.c (c_cpp_builtins): Predefine _OPENMP to
1500 201307 instead of 201107.
1501 * c-common.c (DEF_FUNCTION_TYPE_8): Define.
1502 (c_common_attribute_table): Add "omp declare target" and
1503 "omp declare simd" attributes.
1504 (handle_omp_declare_target_attribute,
1505 handle_omp_declare_simd_attribute): New functions.
1506 * c-omp.c: Include c-pragma.h.
1507 (c_finish_omp_taskgroup): New function.
1508 (c_finish_omp_atomic): Add swapped argument, if true,
1509 build the operation first with rhs, lhs arguments and use NOP_EXPR
1510 build_modify_expr.
1511 (c_finish_omp_for): Add code argument, pass it down to make_code.
1512 (c_omp_split_clauses): New function.
1513 (c_split_parallel_clauses): Removed.
1514 (c_omp_declare_simd_clause_cmp, c_omp_declare_simd_clauses_to_numbers,
1515 c_omp_declare_simd_clauses_to_decls): New functions.
1516 * c-common.h (omp_clause_mask): New type.
1517 (OMP_CLAUSE_MASK_1): Define.
1518 (omp_clause_mask::omp_clause_mask, omp_clause_mask::operator &=,
1519 omp_clause_mask::operator |=, omp_clause_mask::operator ~,
1520 omp_clause_mask::operator |, omp_clause_mask::operator &,
1521 omp_clause_mask::operator <<, omp_clause_mask::operator >>,
1522 omp_clause_mask::operator ==): New methods.
1523 (enum c_omp_clause_split): New.
1524 (c_finish_omp_taskgroup): New prototype.
1525 (c_finish_omp_atomic): Add swapped argument.
1526 (c_finish_omp_for): Add code argument.
1527 (c_omp_split_clauses): New prototype.
1528 (c_split_parallel_clauses): Removed.
1529 (c_omp_declare_simd_clauses_to_numbers,
1530 c_omp_declare_simd_clauses_to_decls): New prototypes.
1531 * c-pragma.c (omp_pragmas): Add new OpenMP 4.0 constructs.
1532 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_CANCEL,
1533 PRAGMA_OMP_CANCELLATION_POINT, PRAGMA_OMP_DECLARE_REDUCTION,
1534 PRAGMA_OMP_DISTRIBUTE, PRAGMA_OMP_END_DECLARE_TARGET, PRAGMA_OMP_SIMD,
1535 PRAGMA_OMP_TARGET, PRAGMA_OMP_TASKGROUP and PRAGMA_OMP_TEAMS.
1536 Remove PRAGMA_OMP_PARALLEL_FOR and PRAGMA_OMP_PARALLEL_SECTIONS.
1537 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_ALIGNED,
1538 PRAGMA_OMP_CLAUSE_DEPEND, PRAGMA_OMP_CLAUSE_DEVICE,
1539 PRAGMA_OMP_CLAUSE_DIST_SCHEDULE, PRAGMA_OMP_CLAUSE_FOR,
1540 PRAGMA_OMP_CLAUSE_FROM, PRAGMA_OMP_CLAUSE_INBRANCH,
1541 PRAGMA_OMP_CLAUSE_LINEAR, PRAGMA_OMP_CLAUSE_MAP,
1542 PRAGMA_OMP_CLAUSE_NOTINBRANCH, PRAGMA_OMP_CLAUSE_NUM_TEAMS,
1543 PRAGMA_OMP_CLAUSE_PARALLEL, PRAGMA_OMP_CLAUSE_PROC_BIND,
1544 PRAGMA_OMP_CLAUSE_SAFELEN, PRAGMA_OMP_CLAUSE_SECTIONS,
1545 PRAGMA_OMP_CLAUSE_SIMDLEN, PRAGMA_OMP_CLAUSE_TASKGROUP,
1546 PRAGMA_OMP_CLAUSE_THREAD_LIMIT, PRAGMA_OMP_CLAUSE_TO and
1547 PRAGMA_OMP_CLAUSE_UNIFORM.
1548
1549 2013-10-09 Marc Glisse <marc.glisse@inria.fr>
1550
1551 PR tree-optimization/20318
1552 * c-common.c (handle_returns_nonnull_attribute): New function.
1553 (c_common_attribute_table): Add returns_nonnull.
1554
1555 2013-10-03 Marc Glisse <marc.glisse@inria.fr>
1556
1557 PR c++/19476
1558 * c.opt (fcheck-new): Move to common.opt.
1559
1560 2013-09-25 Marek Polacek <polacek@redhat.com>
1561 Jakub Jelinek <jakub@redhat.com>
1562
1563 PR sanitizer/58413
1564 * c-ubsan.c (ubsan_instrument_shift): Don't instrument
1565 an expression if we can prove it is correct.
1566 (ubsan_instrument_division): Likewise. Remove unnecessary
1567 check.
1568
1569 2013-09-18 Marek Polacek <polacek@redhat.com>
1570
1571 PR sanitizer/58411
1572 * c-common.c (handle_no_sanitize_undefined_attribute): New function.
1573 Declare it.
1574 (struct attribute_spec c_common_att): Add no_sanitize_undefined.
1575
1576 2013-09-14 Iain Sandoe <iain@codesourcery.com>
1577
1578 PR target/48094
1579 * c.opt (fgnu-runtime, fnext-runtime, fobjc-abi-version,
1580 fobjc-gc, freplace-objc-classes): Accept for LTO.
1581
1582 2013-09-13 Jacek Caban <jacek@codeweavers.com>
1583
1584 * c-target.def: New hook
1585
1586 2013-09-09 Paolo Carlini <paolo.carlini@oracle.com>
1587
1588 PR c++/43452
1589 * c.opt (Wdelete-incomplete): Add.
1590
1591 2013-09-08 Joern Rennecke <joern.rennecke@embecosm.com>
1592
1593 * c-common.c (same_scalar_type_ignoring_signedness): Delete.
1594 (vector_types_compatible_elements_p): New function.
1595 * c-common.h: (same_scalar_type_ignoring_signedness): Delete
1596 declaration.
1597 (vector_types_compatible_elements_p): Declare.
1598
1599 2013-09-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
1600
1601 * c-pretty-print.h (c_pretty_printer::simple_type_specifier): Now
1602 a virtual member function.
1603 (pp_simple_type_specifier): Remove.
1604 (pp_c_type_specifier): Likewise.
1605 * c-pretty-print.c (c_pretty_printer::simple_type_specifier):
1606 Rename from pp_c_type_specifier. Adjust.
1607 (c_pretty_printer::c_pretty_printer): Do not assign to
1608 simple_type_specifier.
1609
1610 2013-09-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
1611
1612 * c-pretty-print.h (c_pretty_printer::type_id): Now a virtual
1613 member function.
1614 (c_pretty_printer::storage_class_specifier): Likewise.
1615 (c_pretty_printer::initializer): Likewise.
1616 (pp_declaration): Remove.
1617 (pp_declaration_specifiers): Likewise.
1618 (pp_abstract_declarator): Likewise.
1619 (pp_declarator): Likewise.
1620 (pp_type_id): Likewise.
1621 (pp_statement): Likewise.
1622 (pp_constant): Likewise.
1623 (pp_id_expression): Likewise.
1624 (pp_primary_expression): Likewise.
1625 (pp_unary_expression): Likewise.
1626 (pp_multiplicative_expression): Likewise.
1627 (pp_conditional_expression): Likewise.
1628 (pp_assignment_expression): Likewise.
1629 (pp_expression): Likewise.
1630 (pp_c_type_id): Likewise.
1631 (pp_c_storage_class_specifier): Likewise.
1632 * c-pretty-print.c (pp_c_type_cast): Tidy.
1633 (pp_c_pointer): Likewise.
1634 (pp_c_type_specifier): Likewise.
1635 (pp_c_parameter_type_list): Likewise.
1636 (pp_c_function_definition): Likewise.
1637 (pp_c_init_declarator): Likewise.
1638 (pp_c_initializer_list): Likewise.
1639 (pp_c_constructor_elts): Likewise.
1640 (c_pretty_printer::direct_abstract_declarator): Likewise.
1641 (c_pretty_printer::declaration_specifiers): Likewise.
1642 (c_pretty_printer::primary_expression): Likewise.
1643 (c_pretty_printer::postfix_expression): Likewise.
1644 (c_pretty_printer::type_id): Rename from pp_c_type_id.
1645 (c_pretty_printer::storage_class_specifier): Rename from
1646 pp_c_storage_class_specifier.
1647 (c_pretty_printer::initializer): Rename from pp_c_initializer.
1648 (c_pretty_printer::c_pretty_printer): Do not assign to type_id,
1649 storage_class_specifier, initializer, offset_list, flags.
1650
1651 2013-08-30 Marek Polacek <polacek@redhat.com>
1652
1653 * c-ubsan.c: New file.
1654 * c-ubsan.h: New file.
1655
1656 2013-08-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
1657
1658 * c-pretty-print.h (c_pretty_printer::declaration): Now a virtual
1659 member function.
1660 (c_pretty_printer::declaration_specifiers): Likewise.
1661 (c_pretty_printer::declarator): Likewise.
1662 (c_pretty_printer::abstract_declarator): Likewise.
1663 (c_pretty_printer::direct_abstract_declarator): Likewise.
1664 (c_pretty_printer::direct_declarator): Likewise.
1665 (c_pretty_printer::function_specifier): Likewise.
1666 (pp_declaration): Adjust.
1667 (pp_declaration_specifiers): Likewise.
1668 (pp_abstract_declarator): Likewise.
1669 (pp_direct_declarator): Likewise.
1670 (pp_function_specifier): Likewise.
1671 (pp_direct_abstract_declarator): Remove as unused.
1672 (pp_c_declaration): Remove.
1673 (pp_c_declaration_specifiers): Likewise.
1674 (pp_c_declarator): Likewise.
1675 (pp_c_direct_declarator): Likewise.
1676 (pp_c_function_specifier): Likewise.
1677 (pp_c_direct_abstract_declarator): Likewise.
1678 * c-pretty-print.c (c_pretty_printer::abstract_declarator): Rename
1679 from pp_c_abstract_declarator. Adjust.
1680 (c_pretty_printer::direct_abstract_declarator): Rename from
1681 pp_c_direct_abstract_declarator. Adjust.
1682 (c_pretty_printer::function_specifier): Rename from
1683 pp_c_function_specifier. Adjust.
1684 (c_pretty_printer::declaration_specifiers): Rename from
1685 pp_c_declaration_specifiers. Adjust.
1686 (c_pretty_printer::direct_declarator): Rename from
1687 pp_c_direct_declarator. Adjust.
1688 (c_pretty_printer::declarator): Rename from pp_c_declarator. Adjust.
1689 (c_pretty_printer::declaration): Rename from pp_c_declaration. Adjust.
1690 (c_pretty_printer::c_pretty_printer): Do not assign to
1691 declaration, declaration_specifiers, declarator,
1692 direct_declarator, direct_abstract_declarator, function_specifier.
1693
1694 2013-08-26 Gabriel Dos Reis <gdre@integrable-solutions.net>
1695
1696 * c-pretty-print.h (c_pretty_printer::unary_expression): Now a
1697 virtual member function.
1698 (c_pretty_printer::multiplicative_expression): Likewise.
1699 (c_pretty_printer::conditional_expression): Likewise.
1700 (c_pretty_printer::assignment_expression): Likewise.
1701 (c_pretty_printer::expression): Likewise.
1702 (pp_unary_expression): Adjust.
1703 (pp_multiplicative_expression): Likewise.
1704 (pp_assignment_expression): Likewise.
1705 (pp_conditional_expression): Likewise.
1706 (pp_expression): Likewise.
1707 * c-pretty-print.c (c_pretty_printer::unary_expression): Rename
1708 from pp_c_unary_expression. Adjust.
1709 (c_pretty_printer::multiplicative_expression): Rename from
1710 pp_c_multiplicative_expression. Adjust.
1711 (c_pretty_printer::conditional_expression): Rename from
1712 pp_c_conditional_expression. Adjust.
1713 (c_pretty_printer::assignment_expression): Rename from
1714 pp_c_assignment_expression. Adjust.
1715 (c_pretty_printer::expression): Rename from pp_c_expression. Adjust.
1716 (c_pretty_printer::c_pretty_printer): Do not assign to
1717 unary_expression, multiplicative_expression,
1718 conditional_expression, expression.
1719
1720 2013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
1721
1722 * c-pretty-print.h (c_pretty_printer::postfix_expression): Now a
1723 virtual member function.
1724 (pp_postfix_expression): Adjust.
1725 (pp_c_postfix_expression): Remove.
1726 * c-pretty-print.c (c_pretty_printer::postfix_expression): Rename
1727 from pp_c_postfix_expression. Adjust.
1728 (c_pretty_printer::c_pretty_printer): Do not assign to
1729 postfix_expression.
1730
1731 2013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
1732
1733 * c-pretty-print.h (c_pretty_printer::primary_expression): Now a
1734 virtua member function.
1735 (pp_primary_expression): Adjust.
1736 (pp_c_primary_expression): Remove.
1737 * c-pretty-print.c (c_pretty_printer::primary_expression): Rename
1738 from pp_c_primary_expression. Adjust.
1739 (pp_c_initializer_list): Use pp_primary_expression.
1740 (c_pretty_printer::c_pretty_printer): Do not assign to
1741 primary_expression.
1742
1743 2013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
1744
1745 * c-pretty-print.h (c_pretty_printer::translate_string): Declare.
1746 * c-pretty-print.c (M_): Remove.
1747 (c_pretty_printer::translate_string): Define.
1748 (pp_c_type_specifier): Use it.
1749 (pp_c_primary_expression): Likewise.
1750 (pp_c_expression): Likewise.
1751
1752 2013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
1753
1754 * c-pretty-print.h (c_pretty_printer::id_expression): Now a
1755 virtual function.
1756 (pp_c_id_expression): Remove.
1757 (pp_id_expression): Adjust.
1758 * c-pretty-print.c (c_pretty_printer::id_expression): Rename from
1759 pp_c_id_expression. Adjust.
1760 (pp_c_postfix_expression): Use pp_id_expression.
1761 (c_pretty_printer::c_pretty_printer): Do not assign to id_expression.
1762
1763 2013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
1764
1765 * c-pretty-print.h (c_pretty_printer::constant): Now a virtual
1766 member function.
1767 (pp_constant): Adjust.
1768 (pp_c_constant): Remove.
1769 * c-pretty-print.c (c_pretty_printer::constant): Rename from
1770 pp_c_constant. Adjust.
1771 (pp_c_constant)
1772 (pp_c_primary_expression): Call pp_constant in lieu of pp_c_constant.
1773 (c_pretty_printer::c_pretty_printer): Remove assignment to constant.
1774
1775 2013-08-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
1776
1777 * c-pretty-print.h (pp_c_pretty_printer_init): Remove.
1778 (c_pretty_printer::c_pretty_printer): Declare.
1779 * c-pretty-print.c (pretty_printer::c_pretty_printer): Rename from
1780 c_pretty_printer_init. Adjust.
1781 (print_c_tree): Do not call c_pretty_printer_init.
1782 * c-ada-spec.c (dump_ads): Remove call to pp_construct.
1783
1784 2013-08-09 Arnaud Charlet <charlet@adacore.com>
1785
1786 * c-ada-spec.c (print_ada_declaration): Prevent accessing null asm name
1787
1788 2013-08-05 Paolo Carlini <paolo.carlini@oracle.com>
1789
1790 PR c++/58080
1791 * c-common.c (pointer_int_sum): Add bool parameter.
1792 * c-common.h (pointer_int_sum): Adjust declaration.
1793
1794 2013-08-05 Gabriel Dos Reis <gdr@integrable-solutions.net>
1795
1796 * c-pretty-print.c (print_c_tree): Simplify. Use non-static local
1797 c_pretty_printer variable.
1798
1799 2013-08-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
1800
1801 * c-pretty-print.h (c_pretty_printer): Derive from pretty_printer.
1802 (pp_base): Remove.
1803 (pp_c_base): Likewise. Adjust users.
1804 * c-pretty-print.c (pp_c_maybe_whitespace): Adjust.
1805 (pp_c_whitespace): Do not call pp_base.
1806 (pp_c_left_paren): Likewise.
1807 (pp_c_right_paren): Likewise.
1808 (pp_c_left_brace): Likewise.
1809 (pp_c_right_brace): Likewise.
1810 (pp_c_left_bracket): Likewise.
1811 (pp_c_right_bracket): Likewise.
1812 (pp_c_dot): Likewise.
1813 (pp_c_ampersand): Likewise.
1814 (pp_c_star): Likewise.
1815 (pp_c_arrow): Likewise.
1816 (pp_c_semicolon): Likewise.
1817 (pp_c_complement): Likewise.
1818 (pp_c_exclamation): Likewise.
1819 (pp_c_direct_declarator): Likewise.
1820 (pp_c_ws_string): Likewise.
1821 (pp_c_identifier): Likewise.
1822 (pp_c_statement): Likewise.
1823 (print_c_tree): Likewise.
1824
1825 2013-08-04 Ed Smith-Rowland <3dw4rd@verizon.net>
1826
1827 PR c++/58072
1828 * c-common.c (c_parse_error): Catch user-defined literal tokens and
1829 provide useful error strings.
1830
1831 2013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
1832
1833 * c-ada-spec.c (pp_ada_tree_identifier): Use specialized pretty
1834 printer functions instead of pp_string or operators and punctuators.
1835 (dump_generic_ada_node): Likewise.
1836 * c-pretty-print.c (pp_c_type_specifier): Likewise.
1837 (pp_c_relational_expression): Likewise.
1838 (pp_c_logical_or_expression): Likewise.
1839
1840 2013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
1841
1842 * c-ada-spec.c (print_ada_macros): Use specialized pretty printer
1843 functions instead of pp_character.
1844 (pp_ada_tree_identifier): Likewise.
1845 (dump_ada_double_name): Likewise.
1846 (dump_ada_function_declaration): Likewise.
1847 (dump_ada_array_domains): Likewise.
1848 (dump_template_types): Likewise.
1849 (dump_generic_ada_node): Likewise.
1850 (print_ada_declaration): Likewise.
1851 (print_ada_struct_decl): Likewise.
1852 * c-pretty-print.c (pp_c_integer_constant): Likewise.
1853
1854 2013-07-23 Tom Tromey <tromey@redhat.com>
1855
1856 * c-common.h (enum rid) <RID_GENERIC>: New constant.
1857 * c-common.c (c_common_reswords): Add _Generic.
1858
1859 2013-07-21 OndÅ\99ej Bílka <neleai@seznam.cz>
1860
1861 * c-common.c: Fix typos.
1862 * c-common.h: Likewise.
1863
1864 2013-07-13 Lubos Lunak <l.lunak@suse.cz>
1865
1866 PR c++/55203
1867 * c-common.c (c_common_attribute_table): Add warn_unused.
1868 (handle_warn_unused_attribute): New.
1869
1870 2013-07-10 Jakub Jelinek <jakub@redhat.com>
1871
1872 * c-ppoutput.c (scan_translation_unit): Call account_for_newlines
1873 for all CPP_TOKEN_FLD_STR tokens, not just CPP_COMMENT.
1874
1875 2013-07-10 Paolo Carlini <paolo.carlini@oracle.com>
1876
1877 PR c++/57869
1878 * c.opt: Add Wconditionally-supported.
1879
1880 2013-07-08 Graham Stott <graham.stott@btinternet.com>
1881
1882 * c-family/array-notation-common.c (length_mismatch_in_expr_p): Delete
1883 unused variables l_length and l_node.
1884
1885 2013-07-04 Joern Rennecke <joern.rennecke@embecosm.com>
1886
1887 PR c/57821
1888 * c-common.c (complete_array_type): Delay folding first index
1889 like other indices. When folding, check for index overflow.
1890
1891 2013-06-27 Marc Glisse <marc.glisse@inria.fr>
1892
1893 PR c++/57509
1894 * c-common.h (c_build_vec_perm_expr): New complain argument.
1895 * c-common.c (c_build_vec_perm_expr): Likewise.
1896 Use save_expr also in C++.
1897
1898 2013-06-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
1899
1900 * c-common.c (c_common_nodes_and_builtins): Use cxx11 in lieu of cxx0x.
1901 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
1902 * c-opts.c (c_common_post_options): Likewise.
1903
1904 2013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
1905
1906 * array-notation-common.c (length_mismatch_in_expr): Changed the
1907 parameter type's from a dynamic array to a vec_tree. Also removed
1908 the size parameters.
1909 * c-common.h (length_mismatch_in_expr_p): Fixed prototype's as per
1910 the change above.
1911
1912 2013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
1913
1914 * c-common.h (struct cilkplus_an_parts): New structure.
1915 (struct cilkplus_an_loop_parts): Likewise.
1916 (cilkplus_extract_an_triplets): New prototype.
1917 (fix_sec_implicit_args): Likewise.
1918 * array-notation-common.c (cilkplus_extract_an_triplets): New function.
1919 (fix_sec_implicit_args): Likewise.
1920
1921 2013-06-20 Balaji V. Iyer <balaji.v.iyer@intel.com>
1922
1923 * array-notation-common.c (find_inv_trees): Removed an unwanted
1924 typecasting.
1925 * c-common.h (struct inv_list::additional_tcodes): Changed type from
1926 enum rid to enum tree_code.
1927
1928 2013-06-11 Jan Hubicka <jh@suse.cz>
1929
1930 * c-common.c (handle_alias_ifunc_attribute): Do not set
1931 DECL_EXTERNAL for weakref variables.
1932 * c-pragma.c (handle_pragma_weak): Make sure aliases
1933 are not declared as external.
1934
1935 2013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
1936
1937 * array-notation-common.c (length_mismatch_in_expr_p): Moved this
1938 function from c/c-array-notation.c.
1939 (is_cilkplus_reduce_builtin): Likewise.
1940 (find_rank): Likewise.
1941 (extract_array_notation_exprs): Likewise.
1942 (replace_array_notations): Likewise.
1943 (find_inv_trees): Likewise.
1944 (replace_inv_trees): Likewise.
1945 (contains_array_notation_expr): Likewise.
1946 (find_correct_array_notation_type): Likewise.
1947 * c-common.h (struct inv_list): Moved this struct from the file
1948 c/c-array-notation.c and added a new field called additional tcodes.
1949 (length_mismatch_in_expr_p): New prototype.
1950 (is_cilkplus_reduce_builtin): Likewise.
1951 (find_rank): Likewise.
1952 (extract_array_notation_exprs): Likewise.
1953 (replace_array_notation): Likewise.
1954 (find_inv_trees): Likewise.
1955 (replace_inv_trees): Likewise.
1956 (find_correct_array_notation_type): Likewise.
1957
1958 2013-05-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
1959
1960 * c-common.c (c_define_builtins): When cilkplus is enabled, the
1961 function array_notation_init_builtins is called.
1962 (c_common_init_ts): Added ARRAY_NOTATION_REF as typed.
1963 * c-common.def (ARRAY_NOTATION_REF): New tree.
1964 * c-common.h (build_array_notation_expr): New function declaration.
1965 (build_array_notation_ref): Likewise.
1966 (extract_sec_implicit_index_arg): New extern declaration.
1967 (is_sec_implicit_index_fn): Likewise.
1968 (ARRAY_NOTATION_CHECK): New define.
1969 (ARRAY_NOTATION_ARRAY): Likewise.
1970 (ARRAY_NOTATION_START): Likewise.
1971 (ARRAY_NOTATION_LENGTH): Likewise.
1972 (ARRAY_NOTATION_STRIDE): Likewise.
1973 * c-pretty-print.c (pp_c_postifix_expression): Added a new case for
1974 ARRAY_NOTATION_REF.
1975 (pp_c_expression): Likewise.
1976 * c.opt (flag_enable_cilkplus): New flag.
1977 * array-notation-common.c: New file.
1978
1979 2013-05-14 Jakub Jelinek <jakub@redhat.com>
1980
1981 PR c++/57274
1982 * c-common.c (verify_tree): Don't recurse into SIZEOF_EXPR.
1983
1984 2013-05-10 Marc Glisse <marc.glisse@inria.fr>
1985
1986 * c-common.c (vector_types_convertible_p): No TYPE_PRECISION for
1987 vectors.
1988
1989 2013-05-07 Han Shen <shenhan@google.com>
1990
1991 * c-cppbuiltin.c (c_cpp_builtins): Added "__SSP_STRONG__=3".
1992
1993 2013-04-29 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
1994
1995 * c-common.c (check_user_alignment): Emit error for negative values.
1996
1997 2013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
1998
1999 * c-opts.c (set_std_cxx11): Use CLK_CXX1Y and CLK_GNUCXX1Y.
2000
2001 2013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
2002
2003 * c-cppbuiltin.c (c_cpp_builtins): Do not define
2004 __GXX_EXPERIMENTAL_CXX1Y__.
2005
2006 2013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
2007 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
2008
2009 * c.opt ([Wpointer-arith]): Enabled by -Wpedantic, as documented.
2010 * c-common.c (pointer_int_sum): Change -Wpointer-arith pedwarns
2011 to simply use OPT_Wpointer_arith.
2012 (c_sizeof_or_alignof_type): Likewise.
2013
2014 2013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
2015
2016 * c-cppbuiltin.c (c_cpp_builtins): Define __GXX_EXPERIMENTAL_CXX1Y__.
2017
2018 2013-04-12 Jakub Jelinek <jakub@redhat.com>
2019
2020 * c-format.c (gcc_diag_char_table, gcc_tdiag_char_table,
2021 gcc_cdiag_char_table, gcc_cxxdiag_char_table): Add %r and %R format
2022 specifiers.
2023
2024 2013-04-07 Steven Bosscher <steven@gcc.gnu.org>
2025
2026 * c-pragma.c (add_to_renaming_pragma_list): Fix leading comment.
2027
2028 2013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
2029
2030 * c-common.c (pointer_int_sum): Remove dead code.
2031
2032 2013-03-09 Richard Sandiford <rdsandiford@googlemail.com>
2033
2034 PR middle-end/56524
2035 * c-common.c (handle_optimize_attribute): Don't call
2036 save_optabs_if_changed.
2037
2038 2013-03-05 Jakub Jelinek <jakub@redhat.com>
2039
2040 PR middle-end/56461
2041 * c-pch.c (pch_init): Free target_validity at the end.
2042
2043 2013-03-04 Jakub Jelinek <jakub@redhat.com>
2044
2045 * c-pretty-print.c (pp_c_pretty_printer_init): Clear pp->flags.
2046
2047 2013-02-28 Konstantin Serebryany <konstantin.s.serebryany@gmail.com>
2048 Jakub Jelinek <jakub@redhat.com>
2049
2050 PR sanitizer/56454
2051 * c-common.c (handle_no_sanitize_address_attribute): New function.
2052 (c_common_attribute_table): Add no_sanitize_address attribute.
2053 (handle_no_address_safety_analysis_attribute): Add
2054 no_sanitize_address attribute, not no_address_safety_analysis
2055 attribute.
2056
2057 2013-02-18 Aldy Hernandez <aldyh@redhat.com>
2058
2059 PR target/52555
2060 * c-common.c (handle_optimize_attribute): Call
2061 save_optabs_if_changed.
2062
2063 2013-02-18 Jakub Jelinek <jakub@redhat.com>
2064 Steven Bosscher <steven@gcc.gnu.org>
2065
2066 PR pch/54117
2067 * c-opts.c (c_common_post_options): If debug info is enabled
2068 and non-dwarf*, refuse to load PCH files and when writing PCH
2069 file warn.
2070
2071 2013-02-05 Jakub Jelinek <jakub@redhat.com>
2072
2073 PR middle-end/56167
2074 * c-common.c (handle_error_attribute): Fix condition.
2075
2076 2013-01-30 Jakub Jelinek <jakub@redhat.com>
2077
2078 PR c++/55742
2079 * c-common.c (handle_target_attribute): Revert 2012-12-26 change.
2080
2081 2013-01-18 Jason Merrill <jason@redhat.com>
2082
2083 PR target/54908
2084 * c.opt (-fextern-tls-init): New.
2085 * c-opts.c (c_common_post_options): Handle it.
2086
2087 2013-01-09 Jakub Jelinek <jakub@redhat.com>
2088
2089 PR c/48418
2090 * c-common.c (c_fully_fold_internal): Warn for LSHIFT_EXPR and
2091 RSHIFT_EXPR, if orig_op1 isn't INTEGER_CST, op1 is INTEGER_CST
2092 and is either negative or bigger or equal to type precision
2093 of the first operand.
2094
2095 2012-12-03 Marek Polacek <polacek@redhat.com>
2096
2097 PR c/55570
2098 * c-common.c (check_user_alignment): Swap order of tests,
2099 check TREE_CODE first.
2100
2101 2012-11-29 Ed Smith-Rowland <3dw4rd@verizon.net>
2102
2103 PR c++/52654
2104 * c-common.h (overflow_type): New enum.
2105 (build_userdef_literal): Add overflow_type argument.
2106 (tree_userdef_literal): Add overflow_type.
2107 (USERDEF_LITERAL_OVERFLOW): New access macro.
2108 * c-common.c (build_userdef_literal): Add overflow_type
2109 argument.
2110 * c-lex.c (c_lex_with_flags): Add overflow_type to
2111 build_userdef_literal calls.
2112 (interpret_integer, interpret_float): Add overflow_type argument.
2113
2114 2012-11-28 Richard Biener <rguenther@suse.de>
2115
2116 PR c/35634
2117 * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
2118 here and use a type with proper overflow behavior for types that would
2119 need to be promoted for the arithmetic.
2120
2121 2012-11-23 Jakub Jelinek <jakub@redhat.com>
2122
2123 PR sanitizer/55435
2124 * c-common.c (handle_no_address_safety_analysis_attribute): New
2125 function.
2126 (c_common_attribute_table): Add no_address_safety_analysis.
2127
2128 2012-11-16 Simon Baldwin <simonb@google.com>
2129
2130 * c.opt: Add f[no-]canonical-system-headers.
2131 * c-opts.c (c_common_handle_option): Handle
2132 OPT_fcanonical_system_headers.
2133
2134 2012-11-09 Ed Smith-Rowland <3dw4rd@verizon.net>
2135
2136 PR c++/54413
2137 * c-opts.c (c_common_handle_option): Set new flags.
2138 * c.opt: Describe new flags.
2139
2140 2012-11-09 Jason Merrill <jason@redhat.com>
2141
2142 * c.opt (Wabi-tag): New.
2143
2144 2012-11-09 Andi Kleen <ak@linux.intel.com>
2145
2146 PR 55139
2147 * c-common.c (get_atomic_generic_size): Mask with
2148 MEMMODEL_MASK
2149
2150 2012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
2151
2152 PR c/53063
2153 * c.opt (Wformat): Make it Alias Wformat=1.
2154 (Wformat-contains-nul,Wformat-extra-args,Wformat-nonliteral,
2155 Wformat-security,Wformat-y2k,Wformat-zero-length): Use
2156 LangEnabledBy.
2157 (Wformat=): RejectNegative. Use LangEnabledBy.
2158 (Wnonnull): Use LangEnabledBy.
2159 * c-opts.c (c_common_handle_option): Do not handle Wformat here.
2160 * c-format.c (set_Wformat): Delete.
2161 (decode_format_attr): Replace OPT_Wformat with OPT_Wformat_.
2162 (maybe_read_dollar_number): Likewise.
2163 (avoid_dollar_number): Likewise.
2164 (finish_dollar_format_checking): Likewise.
2165 (check_format_info): Likewise.
2166 (check_format_info_main): Likewise.
2167 (check_format_types): Likewise.
2168 (format_type_warning): Likewise.
2169 * c-common.c (int): Likewise.
2170 (check_function_sentinel): Likewise.
2171 * c-common.h (warn_format,set_Wformat): Do not declare here.
2172
2173 2012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
2174
2175 PR c/53063
2176 * c.opt(Warray-bounds,Wdelete-non-virtual-dtor,Wenum-compare,
2177 Wmain,Woverlength-strings, Wunknown-pragmas,Wunused-macros):
2178 Use LangEnabledBy.
2179 (Wswitch,Wswitch-default,Wswitch-enum): Likewise. Move here from
2180 common.opt.
2181 (Wvariadic-macros): Init(1).
2182 * c-opts.c (c_common_handle_option): Do not handle them
2183 explicitly.
2184 (c_common_post_options): Likewise.
2185 (sanitize_cpp_opts): warn_unused_macros is now
2186 cpp_warn_unused_macros.
2187 (push_command_line_include): Likewise.
2188 * c-common.c (warn_unknown_pragmas): Do not define.
2189 * c-common.h (warn_unknown_pragmas): Do not declare.
2190
2191 2012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
2192
2193 PR c/51294
2194 * c-common.c (conversion_warning): Handle conditional expressions.
2195
2196 2012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
2197
2198 PR c++/54930
2199 * c.opt (Wreturn_local_addr): Define new option.
2200
2201 2012-10-25 Jason Merrill <jason@redhat.com>
2202
2203 * c.opt (Wvirtual-move-assign): New.
2204
2205 * c.opt (Winherited-variadic-ctor): New.
2206
2207 2012-10-25 Marc Glisse <marc.glisse@inria.fr>
2208
2209 PR c++/54427
2210 * c-common.c (scalar_to_vector): Handle VEC_COND_EXPR.
2211
2212 2012-10-23 Joseph Myers <joseph@codesourcery.com>
2213
2214 * c-common.h (pch_cpp_save_state): Declare.
2215 * c-target.def (c_preinclude): New hook.
2216 * c-opts.c (done_preinclude): New.
2217 (push_command_line_include): Handle default preincluded header.
2218 (cb_file_change): Call pch_cpp_save_state when calling
2219 push_command_line_include.
2220 * c-pch.c (pch_ready_to_save_cpp_state, pch_cpp_state_saved)
2221 (pch_cpp_save_state): New.
2222 (pch_init): Call pch_cpp_save_state conditionally, instead of
2223 calling cpp_save_state.
2224
2225 2012-10-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
2226
2227 PR c/53063
2228 PR c/40989
2229 * c.opt (Waddress,Wchar-subscripts,Wsign-conversion,Wimplicit,
2230 Wimplicit-function-declaration,Wimplicit-int,Wsizeof-pointer-memaccess,
2231 Wnarrowing,Wparentheses,Wpointer-sign,Wreturn-type,Wsequence-point,
2232 Wsign-compare,Wuninitialized,Wmaybe-uninitialized,Wunused,
2233 Wvolatile-register-var): Add LangEnabledBy or EnabledBy.
2234 * c-opts.c (c_common_handle_option): Remove explicit handling from
2235 here.
2236 (c_common_post_options): Likewise.
2237
2238 2012-10-18 Eric Botcazou <ebotcazou@adacore.com>
2239
2240 * c-ada-spec.c (LOCATION_COL): Delete.
2241 (compare_location): New function.
2242 (compare_node): Use it.
2243 (compare_comment): Likewise.
2244
2245 2012-10-16 Manuel López-Ibáñez <manu@gcc.gnu.org>
2246
2247 PR c/53063
2248 PR c/40989
2249 * c.opt (Wstrict-aliasing=,Wstrict-overflow=): Use LangEnabledBy.
2250 * c-opts.c (c_common_handle_option): Do not set them here. Add
2251 comment.
2252 (c_common_post_options): Likewise.
2253
2254 2012-10-16 Eric Botcazou <ebotcazou@adacore.com>
2255
2256 * c-ada-spec.c (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Define.
2257 (dump_generic_ada_node) <INTEGER_CST>: Deal with sizetype specially.
2258 Remove POINTER_TYPE handling, add large unsigned handling and use
2259 ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX for big numbers.
2260
2261 2012-10-12 Jakub Jelinek <jakub@redhat.com>
2262
2263 PR c/54381
2264 * c-common.h (sizeof_pointer_memaccess_warning): Adjust prototype.
2265 * c-common.c (sizeof_pointer_memaccess_warning): Take array of 3
2266 locs and array of 3 trees instead of just single loc and single
2267 sizeof_arg tree. Handle __builtin___*_chk builtins too, and
2268 also stpncpy, bcopy, bcmp, bzero, snprintf and vsnprintf builtins.
2269 For *cmp* builtins that take two sources strings report warnings
2270 about first and second source, not about destination and source.
2271
2272 2012-10-12 Marc Glisse <marc.glisse@inria.fr>
2273
2274 PR c++/53055
2275 * c-common.h (enum ref_operator) [RO_ARROW_STAR]: New.
2276
2277 2012-10-11 Eric Botcazou <ebotcazou@adacore.com>
2278
2279 * c-ada-spec.c (dump_ada_template): Bail out for template declarations
2280 declaring something coming from another file.
2281
2282 2012-10-10 Arnaud Charlet <charlet@adacore.com>
2283
2284 PR ada/54845
2285 * c-ada-spec.c (print_ada_struct_decl): Increase buf size.
2286
2287 2012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
2288
2289 PR c++/54194
2290 * c-common.c (warn_about_parentheses): Add location_t parameter;
2291 use EXPR_LOC_OR_LOC.
2292 * c-common.h: Update declaration.
2293
2294 2012-10-09 Marc Glisse <marc.glisse@inria.fr>
2295
2296 PR c++/54427
2297 * c-common.c (scalar_to_vector): Moved from c-typeck.c. Support
2298 more operations. Make error messages optional.
2299 * c-common.h (enum stv_conv): Moved from c-typeck.c.
2300 (scalar_to_vector): Declare.
2301
2302 2012-10-08 Jason Merrill <jason@redhat.com>
2303
2304 * c-common.c (c_common_reswords): Add thread_local.
2305
2306 2012-10-08 Dodji Seketeli <dodji@redhat.com>
2307
2308 PR c++/53528 C++11 attribute support
2309 * c-common.h (bitfield_p, cxx_fundamental_alignment_p): Declare
2310 new functions.
2311 * c-common.c (check_cxx_fundamental_alignment_constraints): New
2312 static function.
2313 (handle_aligned_attribute): In choose strictest alignment
2314 among many. Use new check_cxx_fundamental_alignment_constraints.
2315 (handle_transparent_union_attribute): In c++11 attribute syntax,
2316 don't look through typedefs.
2317
2318 2012-10-04 Arnaud Charlet <charlet@adacore.com>
2319
2320 * c-ada-spec.c (print_ada_declaration): Remove handling of TDF_RAW.
2321 * c.opt (-fdump-ada-spec, -fdump-ada-spec-slim): Move switch definition
2322 out of dumpfile.h.
2323
2324 2012-09-25 Dehao Chen <dehao@google.com>
2325
2326 PR middle-end/54645
2327 * c-pch.c (c_common_read_pch): Rebuild the location_adhoc_data
2328 map when read in the pch.
2329
2330 2012-09-18 Arnaud Charlet <charlet@adacore.com>
2331
2332 * c-ada-spec.c: Style fixes.
2333
2334 2012-09-18 Thomas Quinot <quinot@adacore.com>
2335
2336 * c.opt (-fada-spec-parent): Define new command line switch.
2337 * c-ada-spec.c (get_ada_package): When -fada-spec-parent
2338 is specified, generate binding spec as a child of the specified unit.
2339
2340 2012-09-13 Paolo Carlini <paolo.carlini@oracle.com>
2341 Manuel López-Ibáñez <manu@gcc.gnu.org>
2342
2343 PR c++/53210
2344 * c.opt ([Winit-self]): Enabled by -Wall in C++.
2345
2346 2012-08-23 Arnaud Charlet <charlet@adacore.com>
2347
2348 * c-ada-spec.c (dump_generic_ada_node): Fix handling of name_only
2349 for pointers, and add missing Convention C pragma.
2350 (print_ada_struct_decl): Add missing aliased keyword.
2351 (dump_ads): Add pragma Ada_2005 and Style_Checks (Off).
2352
2353 2012-08-17 Jakub Jelinek <jakub@redhat.com>
2354
2355 * c-common.c (sizeof_pointer_memaccess_warning): New function.
2356 * c.opt (-Wsizeof-pointer-memaccess): Add new option.
2357 * c-opts.c (c_common_handle_option): Enable it for -Wall.
2358 * c-common.h (sizeof_pointer_memaccess_warning): Add prototype.
2359 * c-common.def (SIZEOF_EXPR): Moved here from cp-tree.def.
2360
2361 2012-08-10 Richard Guenther <rguenther@suse.de>
2362
2363 * c-pretty-print.c (pp_c_expression): Handle anonymous SSA names.
2364
2365 2012-08-07 Steven Bosscher <steven@gcc.gnu.org>
2366
2367 * c-pretty-print.c (pp_c_function_definition): Use pp_newline_and_flush
2368 instead of separate pp_newline and pp_flush.
2369 (print_c_tree): Likewise.
2370
2371 2012-07-26 Richard Henderson <rth@redhat.com>
2372
2373 * c-common.c (handle_hot_attribute): Allow labels.
2374 (handle_cold_attribute): Likewise.
2375
2376 2012-07-20 Jakub Jelinek <jakub@redhat.com>
2377
2378 PR c++/28656
2379 * c-common.c (check_function_nonnull): Handle multiple nonnull
2380 attributes properly.
2381
2382 2012-07-16 Steven Bosscher <steven@gcc.gnu.org>
2383
2384 * c-gimplify.c: Include dumpfile.h instead of tree-dump.h.
2385 * c-ada-spec.c: Likewise.
2386 * c-dump.c (dump_stmt): Move to cp/dump.c, the only user.
2387
2388 2012-07-14 Steven Bosscher <steven@gcc.gnu.org>
2389
2390 * c-pch.c (CHECK_NO_ASM_OUT_DURING_PCH): Do not define.
2391 Remove code conditional on it.
2392
2393 2012-07-11 Steven Bosscher <steven@gcc.gnu.org>
2394
2395 * c-gimplify.c: Do not include basic-block.h.
2396 * c-common.c: Do not include linfuncs.h.
2397
2398 2012-07-08 Steven Bosscher <steven@gcc.gnu.org>
2399
2400 * c-common.h: Include tree.h.
2401
2402 2012-07-02 Jason Merrill <jason@redhat.com>
2403
2404 PR c++/53524
2405 * c-common.c (get_priority): Call default_conversion.
2406
2407 2012-07-01 Uros Bizjak <ubizjak@gmail.com>
2408
2409 * c-pch.c (c_common_write_pch): Remove unused variables.
2410
2411 2012-06-29 Steven Bosscher <steven@gcc.gnu.org>
2412
2413 * cppspec.c: Moved from gcc/ to here.
2414
2415 2012-06-27 Kai Tietz <ktietz@redhat.com>
2416
2417 PR preprocessor/37215
2418 * c-ppoutput.c (preprocess_file): Check for nonempty buffer.
2419
2420 2012-06-21 Steven Bosscher <steven@gcc.gnu.org>
2421
2422 * c-common.h (c_common_print_pch_checksum): Remove.
2423 * c-pch.c: Do not include output.h.
2424 (CHECK_NO_ASM_OUT_DURING_PCH): Define and add FIXME.
2425 (asm_out_file): Define iff CHECK_NO_ASM_OUT_DURING_PCH isdefined.
2426 (asm_file_startpos): Define iff CHECK_NO_ASM_OUT_DURING_PCH is defined.
2427 (struct c_pch_header): Remove.
2428 (get_ident): Update gpch version.
2429 (pch_init): Do not print executable_checksum to asm_out_file.
2430 Do not fail if there is no asm_out_file to read back from. Set
2431 asm_file_startpos only if CHECK_NO_ASM_OUT_DURING_PCH is defined.
2432 (c_common_write_pch): Verify that nothing was written to asm_out_file
2433 since pch_init was called. Do not write a c_pch_header, and do not
2434 copy from asm_out_file to the PCH.
2435 (c_common_read_pch): Do not read a c_pch_header, and do not restore
2436 the content of asm_out_file from the PCH.
2437 (c_common_print_pch_checksum): Remove.
2438 * c-opts.c (c_common_init): Print out executable_checksum directly.
2439
2440 2012-06-19 Steven Bosscher <steven@gcc.gnu.org>
2441
2442 * c-target.def (objc_declare_unresolved_class_reference,
2443 objc_declare_class_definition): Add new hooks.
2444
2445 2012-06-19 Steven Bosscher <steven@gcc.gnu.org>
2446
2447 * c-lex.c: Do not include output.h.
2448 (cb_ident): Try to put out .ident with targetm.asm_out.output_ident.
2449 Remove uses of ASM_OUTPUT_IDENT.
2450
2451 2012-06-15 Marc Glisse <marc.glisse@inria.fr>
2452
2453 PR c++/51033
2454 * c-common.h (c_build_vec_perm_expr): Move decl here.
2455 * c-common.c (c_build_vec_perm_expr): Move definition
2456 here.
2457
2458 2012-06-06 Steven Bosscher <steven@gcc.gnu.org>
2459
2460 * c.opt (fconserve-space): Turn into a no-op.
2461
2462 2012-06-04 Sterling Augustine <saugustine@google.com>
2463
2464 * c-pretty-print.h (pp_c_flag_gnu_v3): New enumerator.
2465 * c-pretty-print.c (pp_c_specifier_qualifier_list): Check it at
2466 both the start and end of the function.
2467
2468 2012-06-04 Steven Bosscher <steven@gcc.gnu.org>
2469
2470 * c-common.c: Do not include output.h.
2471 * c-pragma.c: Likewise.
2472
2473 2012-06-04 Steven Bosscher <steven@gcc.gnu.org>
2474
2475 * error.c (dump_decl): Check pp_c_flag_gnu_v3.
2476 (decl_as_dwarf_string, lang_decl_dwarf_name): New functions.
2477 (lang_decl_name): Handle namespace decls.
2478
2479 2012-05-31 Steven Bosscher <steven@gcc.gnu.org>
2480
2481 * c-ada-spec.c: Do not include output.h.
2482 * c-semantics.c: Likewise.
2483
2484 2012-05-29 Joseph Myers <joseph@codesourcery.com>
2485
2486 * c-common.c: Fix typo.
2487
2488 2012-05-29 Michael Matz <matz@suse.de>
2489
2490 * c-common.h (c_expand_decl): Remove prototype.
2491
2492 2012-05-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
2493
2494 * c.opt (Wmissing-braces): Use LangEnabledBy(C ObjC,Wall).
2495 * c-opts.c (c_common_handle_option): Remove code handling
2496 warn_missing_braces.
2497
2498 2012-05-28 Paolo Carlini <paolo.carlini@oracle.com>
2499
2500 PR c++/25137
2501 * c-opts.c (c_common_handle_option): For C++ -Wall doesn't enable
2502 -Wmissing_braces.
2503
2504 2012-05-22 Dodji Seketeli <dodji@redhat.com>
2505
2506 PR c++/53322
2507 * c.opt (Wunused-local-typedefs): Use EnabledBy(Wunused).
2508
2509 2012-05-17 Manuel López-Ibáñez <manu@gcc.gnu.org>
2510
2511 * c.opt (--pedantic-errors,-pedantic-errors): Do not handle here.
2512 * c-opts.c (c_common_handle_option): Do not handle explicitly
2513 Wreturn-type, Wwrite-strings, warn_ecpp, and -pedantic-errors.
2514
2515 2012-05-16 Dodji Seketeli <dodji@redhat.com>
2516
2517 PR preprocessor/7263
2518 * c-lex.c (c_lex_with_flags): Pass a virtual location to the call
2519 to cpp_classify_number. For diagnostics, use the precise location
2520 instead of the global input_location.
2521
2522 2012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
2523
2524 PR c++/11856
2525 * c-common.c (shorten_compare): Check c_inhibit_evaluation_warnings.
2526
2527 2012-05-14 Bernd Schmidt <bernds@codesourcery.com>
2528
2529 * c-common.c (DEF_ATTR_STRING): Define and undefine as necessary.
2530
2531 2012-05-14 Manuel López-Ibáñez <manu@gcc.gnu.org>
2532
2533 PR 53063
2534 * c.opt (Wc++0X-compat,Wdelete-non-virtual-dtor,Wjump-misses-init,
2535 Wreorder): Use LangEnabledBy.
2536 * c-opts.c (c_common_handle_option): Do not enable them
2537 explicitly. Call lang-specific generated functions.
2538 (c_common_post_options): Do not set them here.
2539
2540 2012-05-13 Manuel López-Ibáñez <manu@gcc.gnu.org>
2541
2542 * c.opt (Wclobbered,Wempty-body,Wignored-qualifiers,
2543 Wmissing-field-initializers,Wmissing-parameter-type,
2544 Wold-style-declaration,Woverride-init): Use EnabledBy.
2545 * c-opts.c (c_common_post_options): Do not set here explicitly.
2546
2547 2012-05-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
2548
2549 PR 53063
2550 * c-opts.c (c_common_handle_option): Use handle_generated_option
2551 to enable sub-options.
2552
2553 2012-05-10 Paolo Carlini <paolo.carlini@oracle.com>
2554
2555 PR c++/53158
2556 * c-common.c (warnings_for_convert_and_check): Use warning_at.
2557
2558 2012-05-10 Richard Guenther <rguenther@suse.de>
2559
2560 * c-common.c (c_sizeof_or_alignof_type): Remove assert and
2561 adjust commentary about TYPE_IS_SIZETYPE types.
2562
2563 2012-05-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
2564
2565 PR c++/53261
2566 * c-common.c (warn_logical_operator): Check that argument of
2567 integer_zerop is not NULL.
2568
2569 2012-05-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
2570
2571 PR c/43772
2572 * c-common.c (warn_logical_operator): Do not warn if either side
2573 is already true or false.
2574
2575 2012-05-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
2576
2577 PR c/51712
2578 * c-common.c (expr_original_type): New.
2579 (shorten_compare): Do not warn for enumeration types.
2580
2581 2012-05-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
2582
2583 * c.opt (fpermissive): Add Var(flag_permissive).
2584
2585 2012-04-30 Marc Glisse <marc.glisse@inria.fr>
2586
2587 PR c++/51033
2588 * c-common.c (convert_vector_to_pointer_for_subscript): New function.
2589 * c-common.h (convert_vector_to_pointer_for_subscript): Declare it.
2590
2591 2012-04-30 Dodji Seketeli <dodji@redhat.com>
2592
2593 Add -Wvarargs option
2594 * c.opt (Wvarargs): Define new option.
2595
2596 2012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
2597
2598 * c-common.c (check_function_arguments): Replace
2599 Wmissing-format-attribute with Wsuggest-attribute=format.
2600
2601 2012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
2602
2603 * c.opt (Wsuggest-attribute=format): New. Alias of
2604 Wmissing-format-attribute.
2605 * c-format.c (decode_format_type): Replace
2606 Wmissing-format-attribute with Wsuggest-attribute=format.
2607 (check_function_format): Likewise.
2608
2609 2012-04-27 Ollie Wild <aaw@google.com>
2610
2611 * c-common.c: Add CPP_W_LITERAL_SUFFIX mapping.
2612 * c-opts.c (c_common_handle_option): Handle OPT_Wliteral_suffix.
2613 * c.opt: Add Wliteral-suffix.
2614
2615 2012-04-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
2616
2617 PR c/44774
2618 * c.opt (Wpedantic): New.
2619 (pedantic): Alias Wpedantic.
2620 * c-opts.c (c_common_handle_option): Replace -pedantic with -Wpedantic.
2621 (c_common_post_options): Likewise.
2622 (sanitize_cpp_opts): Likewise.
2623 * c-lex.c (interpret_float): Likewise.
2624 * c-format.c (check_format_types): Likewise.
2625 * c-common.c (pointer_int_sum): Likewise.
2626 (c_sizeof_or_alignof_type): Likewise.
2627 (c_add_case_label): Likewise.
2628 (c_do_switch_warnings): Likewise.
2629 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
2630
2631 2012-04-15 Jason Merrill <jason@redhat.com>
2632
2633 PR c++/52818
2634 * c-format.c (CPLUSPLUS_STD_VER): C++11 inherits from C99.
2635 (C_STD_NAME): Distinguish between C++98 and C++11.
2636
2637 2012-04-11 Eric Botcazou <ebotcazou@adacore.com>
2638
2639 PR target/52624
2640 * c-common.h (uint16_type_node): Rename into...
2641 (c_uint16_type_node): ...this.
2642 * c-common.c (c_common_nodes_and_builtins): Adjust for above renaming.
2643 * c-cppbuiltin.c (builtin_define_stdint_macros): Likewise.
2644
2645 2012-04-10 Manuel López-Ibáñez <manu@gcc.gnu.org>
2646
2647 * c-common.c (warn_if_unused_value): Move definition to here.
2648 * c-common.h (warn_if_unused_value): Move declaration to here.
2649
2650 2012-03-23 William Bader <williambader@hotmail.com>
2651
2652 * c-lex.c (c_lex_with_flags): Avoid declarations after stmts.
2653
2654 2012-03-20 Jason Merrill <jason@redhat.com>
2655
2656 * c-common.h (enum cxx_dialect): Add cxx1y.
2657 * c-common.c (c_common_nodes_and_builtins): Use >= for cxx_dialect
2658 test.
2659 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
2660 * c-opts.c (c_common_post_options): Likewise.
2661 (set_std_cxx1y): New.
2662 (c_common_handle_option): Call it.
2663 * c.opt (-std=c++1y, -std=gnu++1y): New flags.
2664
2665 2012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
2666
2667 PR c++/14710
2668 * c.opt ([Wuseless-cast]): Add.
2669
2670 2012-03-16 Richard Guenther <rguenther@suse.de>
2671
2672 * c-pretty-print.c (pp_c_initializer_list): Adjust.
2673
2674 2012-03-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
2675
2676 PR c++/44783
2677 * c.opt (ftemplate-backtrace-limit) Add.
2678
2679 2012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2680
2681 * c-cppbuiltin.c (c_cpp_builtins): Remove #pragma extern_prefix
2682 handling.
2683 * c-pragma.c (handle_pragma_extern_prefix): Remove.
2684 (init_pragma): Don't register extern_prefix.
2685
2686 2012-03-12 Richard Guenther <rguenther@suse.de>
2687
2688 * c-common.c (c_common_get_narrower): Use c_common_type_for_size.
2689 (builtin_type_for_size): Likewise.
2690
2691 2012-02-13 Jakub Jelinek <jakub@redhat.com>
2692
2693 PR c++/52215
2694 * c-common.c (sync_resolve_params): Don't decide whether to convert
2695 or not based on TYPE_SIZE comparison, convert whenever arg_type
2696 is unsigned INTEGER_TYPE.
2697
2698 2012-02-06 Paolo Carlini <paolo.carlini@oracle.com>
2699
2700 PR c/52118
2701 * c.opt ([Wunused-local-typedefs]): Fix description.
2702
2703 2012-01-24 Mike Stump <mikestump@comcast.net>
2704
2705 * c-common.c (c_common_type_for_mode): Match signed/unsigned types
2706 exactly.
2707
2708 2012-01-18 Richard Guenther <rguenther@suse.de>
2709
2710 * c-opts.c (c_common_post_options): Reset LTO flags if
2711 we are about to generate a PCH.
2712
2713 2012-01-17 Paolo Carlini <paolo.carlini@oracle.com>
2714
2715 PR c++/51777
2716 * c-pretty-print.c (pp_c_integer_constant): For unsigned constants
2717 use pp_unsigned_wide_integer.
2718
2719 2012-01-10 Richard Guenther <rguenther@suse.de>
2720
2721 PR middle-end/51806
2722 * c-opts.c (c_common_handle_option): Move -Werror handling
2723 to language independent code.
2724
2725 2012-01-05 Richard Guenther <rguenther@suse.de>
2726
2727 PR middle-end/51764
2728 * c.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move here
2729 from common.opt.
2730
2731 2011-12-30 Paolo Carlini <paolo.carlini@oracle.com>
2732
2733 PR c++/51316
2734 * c-common.c (c_sizeof_or_alignof_type): In C++ allow for alignof
2735 of array types with an unknown bound.
2736
2737 2011-12-20 Joseph Myers <joseph@codesourcery.com>
2738
2739 * c-common.c (flag_isoc99): Update comment to refer to C11.
2740 (flag_isoc1x): Change to flag_isoc11.
2741 * c-common.h (flag_isoc99): Update comment to refer to C11.
2742 (flag_isoc1x): Change to flag_isoc11.
2743 * c-cppbuiltin.c (cpp_atomic_builtins): Change comment to refer to
2744 C11.
2745 * c-opts.c (set_std_c1x): Change to set_std_c11.
2746 (c_common_handle_option): Handle OPT_std_c11 and OPT_std_gnu11.
2747 Call set_std_c11.
2748 (set_std_c89, set_std_c99, set_std_c11): Use flag_isoc11.
2749 (set_std_c1): Use CLK_STDC11 and CLK_GNUC11.
2750 * c.opt (std=c1x): Change to std=c11. Document as non-draft
2751 standard.
2752 (std=c1x, std=iso9899:2011): Add as aliases of std=c11.
2753 (std=gnu1x): Change to std=gnu11. Refer to non-draft standard.
2754 (std=gnu1x): Make alias of std=gnu11.
2755
2756 2011-12-19 Jason Merrill <jason@redhat.com>
2757
2758 PR c++/51228
2759 * c-common.c (handle_transparent_union_attribute): Check the first
2760 field if the type is complete.
2761
2762 2011-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
2763
2764 PR libstdc++/51365
2765 * c-common.c (RID_IS_FINAL): Add.
2766 * c-common.h (RID_IS_FINAL): Add.
2767
2768 2011-11-30 Iain Sandoe <iains@gcc.gnu.org>
2769
2770 * c.opt (fgnu-runtime): Provide full description.
2771 (fnext-runtime): Likewise.
2772 * c-opts.c (OPT_fgnu_runtime, OPT_fnext_runtime) Remove.
2773
2774 2011-11-28 Andrew MacLeod <amacleod@redhat.com>
2775
2776 * c-cpp-builtin.c (cpp_atomic_builtins):New. Emit all atomic
2777 predefines in one place. Add LOCK_FREE predefines.
2778 (c_cpp_builtins): Move Legacy HAVE_SYNC predefines to
2779 new func.
2780
2781 2011-11-24 Andrew MacLeod <amacleod@redhat.com>
2782
2783 PR c/51256
2784 * c-common.c (get_atomic_generic_size): Check for various error
2785 conditions
2786 (resolve_overloaded_atomic_exchange,
2787 resolve_overloaded_atomic_compare_exchange,
2788 resolve_overloaded_atomic_load, resolve_overloaded_atomic_store): Return
2789 error_mark_node for error conditions.
2790
2791 2011-11-08 Richard Guenther <rguenther@suse.de>
2792
2793 PR middle-end/51010
2794 c-family/
2795
2796 2011-11-07 Richard Henderson <rth@redhat.com>
2797 Aldy Hernandez <aldyh@redhat.com>
2798 Torvald Riegel <triegel@redhat.com>
2799
2800 Merged from transactional-memory.
2801
2802 * c-common.c (handle_tm_wrap_attribute,
2803 handle_tm_attribute, ignore_attribute, parse_tm_stmt_attr): New.
2804 (struct c_common_reswords): Added __transaction* keywords.
2805 (struct c_common_attribute_table): Added transaction* and tm_regparm
2806 attributes.
2807 * c-common.h: Added RID_TRANSACTION*. Added TM_ATTR* and TM_STMT*
2808 masks.
2809 (parse_tm_stmt_attr, tm_attr_to_mask, tm_mask_to_attr,
2810 find_tm_attribute): Declare.
2811
2812 2011-11-07 Jason Merrill <jason@redhat.com>
2813
2814 PR c++/35688
2815 * c-common.c, c-common.h: Revert yesterday's changes.
2816
2817 2011-11-06 Jason Merrill <jason@redhat.com>
2818
2819 PR c++/35688
2820 * c-common.c (decl_has_visibility_attr): Split out from...
2821 (c_determine_visibility): ...here.
2822 * c-common.h: Declare it.
2823
2824 2011-11-06 Joseph Myers <joseph@codesourcery.com>
2825
2826 * c-common.c (c_common_reswords): Add _Alignas and _Alignof.
2827 (c_sizeof_or_alignof_type): Diagnose alignof applied to a function
2828 type.
2829 (check_user_alignment): New. Split out of
2830 handle_aligned_attribute. Disallow integer constants with
2831 noninteger types. Conditionally allow zero.
2832 (handle_aligned_attribute): Use check_user_alignment.
2833 * c-common.h (RID_ALIGNAS, check_user_alignment): New.
2834
2835 2011-11-06 Andrew MacLeod <amacleod@redhat.com>
2836 Richard Henderson <rth@redhat.com>
2837
2838 Merged from cxx-mem-model.
2839
2840 * c-cppbuiltin.c (c_cpp_builtins): Test both atomic and sync patterns.
2841 * c-common.c (sync_resolve_params, sync_resolve_return): Only tweak
2842 parameters that are the same type size.
2843 (get_atomic_generic_size): New. Find size of generic
2844 atomic function parameters and do typechecking.
2845 (add_atomic_size_parameter): New. Insert size into parameter list.
2846 (resolve_overloaded_atomic_exchange): Restructure __atomic_exchange to
2847 either __atomic_exchange_n or external library call.
2848 (resolve_overloaded_atomic_compare_exchange): Restructure
2849 __atomic_compare_exchange to either _n variant or external library call.
2850 (resolve_overloaded_atomic_load): Restructure __atomic_load to either
2851 __atomic_load_n or an external library call.
2852 (resolve_overloaded_atomic_store): Restructure __atomic_store to either
2853 __atomic_store_n or an external library call.
2854 (resolve_overloaded_builtin): Handle new __atomic builtins.
2855
2856 2011-11-04 Eric Botcazou <ebotcazou@adacore.com>
2857
2858 PR c++/50608
2859 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1.
2860 (fold_offsetof_1): Make global. Remove STOP_REF argument and adjust.
2861 <INDIRECT_REF>: Return the argument.
2862 <ARRAY_REF>: Remove special code for negative offset.
2863 Call fold_build_pointer_plus instead of size_binop.
2864 (fold_offsetof): Remove STOP_REF argument and adjust.
2865 * c-common.h (fold_offsetof_1): Declare.
2866 (fold_offsetof): Remove STOP_REF argument.
2867
2868 2011-11-02 Paolo Carlini <paolo.carlini@oracle.com>
2869
2870 PR c++/50810
2871 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
2872 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
2873 Wnarrowing for C++0x and C++98.
2874 * c.opt ([Wnarrowing]): Update.
2875
2876 2011-11-01 Paolo Carlini <paolo.carlini@oracle.com>
2877
2878 PR c++/44277
2879 * c.opt: Add Wzero-as-null-pointer-constant.
2880
2881 2011-10-31 Jason Merrill <jason@redhat.com>
2882
2883 * c.opt (-fdeduce-init-list): Off by default.
2884
2885 PR c++/50920
2886 * c-common.h (cxx_dialect): Add cxx11 and cxx03.
2887 * c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03,
2888 and -Wc++11-compat.
2889 * c-opts.c (set_std_cxx11): Rename from set_std_cxx0x.
2890
2891 2011-10-27 Roberto Agostino Vitillo <ravitillo@lbl.gov>
2892
2893 PR c++/30066
2894 * c.opt (fvisibility-inlines-hidden): Description change.
2895
2896 2011-10-26 Ed Smith-Rowland <3dw4rd@verizon.net>
2897
2898 Implement C++11 user-defined literals.
2899 * c-common.c (build_userdef_literal): New.
2900 * c-common.def: New tree code.
2901 * c-common.h (tree_userdef_literal): New tree struct and accessors.
2902 * c-lex.c (interpret_float): Add suffix parm.
2903 (c_lex_with_flags): Build literal tokens.
2904
2905 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
2906
2907 PR c++/50841
2908 Revert:
2909 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
2910
2911 PR c++/50810
2912 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
2913 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
2914 Wnarrowing for C++0x and C++98.
2915 * c.opt ([Wnarrowing]): Update.
2916
2917 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
2918
2919 PR c++/50810
2920 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
2921 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
2922 Wnarrowing for C++0x and C++98.
2923 * c.opt ([Wnarrowing]): Update.
2924
2925 2011-10-21 Paolo Carlini <paolo.carlini@oracle.com>
2926
2927 PR c++/45385
2928 * c-common.c (conversion_warning): Remove code looking for
2929 artificial operands.
2930
2931 2011-10-18 Dodji Seketeli <dodji@redhat.com>
2932
2933 PR bootstrap/50760
2934 * c-lex.c (fe_file_change): Use LINEMAP_SYSP when
2935 !NO_IMPLICIT_EXTERN_C.
2936
2937 2011-10-17 Michael Spertus <mike_spertus@symantec.com>
2938
2939 * c-common.c (c_common_reswords): Add __bases,
2940 __direct_bases.
2941 * c-common.h: Add RID_BASES and RID_DIRECT_BASES.
2942
2943 2011-10-17 Paolo Carlini <paolo.carlini@oracle.com>
2944
2945 PR c++/50757
2946 * c.opt ([Wnonnull]): Add C++ and Objective-C++.
2947
2948 2011-10-15 Tom Tromey <tromey@redhat.com>
2949 Dodji Seketeli <dodji@redhat.com>
2950
2951 * c.opt (fdebug-cpp): New option.
2952 * c-opts.c (c_common_handle_option): Handle the option.
2953 * c-ppoutput.c (maybe_print_line_1): New static function. Takes an
2954 output stream in parameter. Factorized from ...
2955 (maybe_print_line): ... this. Dump location debug information when
2956 -fdebug-cpp is in effect.
2957 (print_line_1): New static function. Takes an output stream in
2958 parameter. Factorized from ...
2959 (print_line): ... here. Dump location information when -fdebug-cpp
2960 is in effect.
2961 (scan_translation_unit): Dump location information when
2962 -fdebug-cpp is in effect.
2963
2964 2011-10-15 Tom Tromey <tromey@redhat.com>
2965 Dodji Seketeli <dodji@redhat.com>
2966
2967 * c.opt (ftrack-macro-expansion): New option. Handle it with and
2968 without argument.
2969 * c-opts.c (c_common_handle_option)<case
2970 OPT_ftrack_macro_expansion_, case OPT_ftrack_macro_expansion>: New
2971 cases. Handle -ftrack-macro-expansion with and without argument.
2972
2973 2011-10-15 Tom Tromey <tromey@redhat.com>
2974 Dodji Seketeli <dodji@redhat.com>
2975
2976 * c-ppoutput.c (scan_translation_unit, maybe_print_line)
2977 (print_line, cb_define, do_line_change): Adjust to avoid touching
2978 the internals of struct line_map. Use the public API instead.
2979 * c-pch.c (c_common_read_pch): Likewise.
2980 * c-lex.c (fe_file_change): Likewise.
2981
2982 2011-10-14 Paolo Carlini <paolo.carlini@oracle.com>
2983
2984 PR c++/17212
2985 * c.opt ([Wformat-zero-length]): Add C++ and Objective-C++.
2986
2987 2011-10-11 Paolo Carlini <paolo.carlini@oracle.com>
2988
2989 PR c++/33067
2990 * c-pretty-print.c (pp_c_floating_constant): Output
2991 max_digits10 (in the ISO C++ WG N1822 sense) decimal digits.
2992
2993 2011-10-11 Michael Meissner <meissner@linux.vnet.ibm.com>
2994
2995 * c-common.c (def_builtin_1): Delete old interface with two
2996 parallel arrays to hold standard builtin declarations, and replace
2997 it with a function based interface that can support creating
2998 builtins on the fly in the future. Change all uses, and poison
2999 the old names. Make sure 0 is not a legitimate builtin index.
3000 * c-omp.c (c_finish_omp_barrier): Ditto.
3001 (c_finish_omp_taskwait): Ditto.
3002 (c_finish_omp_flush): Ditto.
3003
3004 2011-10-11 Tristan Gingold <gingold@adacore.com>
3005
3006 * c.opt: (fallow-parameterless-variadic-functions): New.
3007
3008 2011-09-08 Dodji Seketeli <dodji@redhat.com>
3009
3010 PR c++/33255 - Support -Wunused-local-typedefs warning
3011 * c-common.h (struct c_language_function::local_typedefs): New
3012 field.
3013 (record_locally_defined_typedef, maybe_record_typedef_use)
3014 (maybe_warn_unused_local_typedefs): Declare new functions.
3015 * c-common.c (record_locally_defined_typedef)
3016 (maybe_record_typedef_use)
3017 (maybe_warn_unused_local_typedefs): Define new functions.
3018 * c.opt: Declare new -Wunused-local-typedefs flag.
3019
3020 2011-09-06 Eric Botcazou <ebotcazou@adacore.com>
3021
3022 PR middle-end/50266
3023 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Fold offsetof-like
3024 computations.
3025
3026 2011-09-05 Richard Guenther <rguenther@suse.de>
3027
3028 * c-common.c (complete_array_type): Use ssize_int (-1) instead
3029 of integer_minus_one_node for empty array upper bounds.
3030
3031 2011-08-28 Dodji Seketeli <dodji@redhat.com>
3032
3033 * c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as
3034 it's the first time it's being called on this main TU.
3035
3036 2011-08-24 Richard Guenther <rguenther@suse.de>
3037
3038 PR c/49396
3039 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional.
3040
3041 2011-08-22 Gabriel Charette <gchare@google.com>
3042
3043 * c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens
3044 defined in cpp_init_builtins and c_cpp_builtins.
3045
3046 2011-08-19 Joseph Myers <joseph@codesourcery.com>
3047
3048 * c-common.c (c_common_reswords): Add __builtin_complex.
3049 * c-common.h (RID_BUILTIN_COMPLEX): New.
3050
3051 2011-08-18 Joseph Myers <joseph@codesourcery.com>
3052
3053 * c-common.c (c_common_reswords): Add _Noreturn.
3054 (keyword_is_function_specifier): Handle RID_NORETURN.
3055 * c-common.h (RID_NORETURN): New.
3056
3057 2011-08-10 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
3058
3059 * c-common.c (unsafe_conversion_p): New function. Check if it is
3060 unsafe to convert an expression to the type.
3061 (conversion_warning): Adjust, use unsafe_conversion_p.
3062 * c-common.h (unsafe_conversion_p): New function declaration.
3063
3064 2011-08-02 Jakub Jelinek <jakub@redhat.com>
3065
3066 * c-common.h (c_finish_omp_atomic): Adjust prototype.
3067 (c_finish_omp_taskyield): New prototype.
3068 * c-omp.c (c_finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1
3069 arguments. Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and
3070 OMP_ATOMIC_CAPTURE_NEW in addition to OMP_ATOMIC. If LHS1
3071 or RHS1 have side-effects, evaluate those too in the right spot,
3072 if it is a decl and LHS is also a decl, error out if they
3073 aren't the same.
3074 (c_finish_omp_taskyield): New function.
3075 * c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP to 201107.
3076 * c-pragma.c (omp_pragmas): Add taskyield.
3077 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKYIELD.
3078 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FINAL and
3079 PRAGMA_OMP_CLAUSE_MERGEABLE.
3080
3081 2011-07-25 Dodji Seketeli <dodji@redhat.com>
3082
3083 * c-common.h (set_underlying_type): Remove parm name from
3084 declaration.
3085
3086 2011-07-25 Romain Geissler <romain.geissler@gmail.com>
3087
3088 * c-pretty-print.h: Search c-common.h in c-family.
3089
3090 2011-07-22 Jason Merrill <jason@redhat.com>
3091
3092 PR c++/49793
3093 * c.opt (Wnarrowing): New.
3094
3095 PR c++/30112
3096 * c-common.h: Declare c_linkage_bindings.
3097 * c-pragma.c (handle_pragma_redefine_extname): Use it.
3098
3099 PR c++/49813
3100 * c-opts.c (set_std_cxx0x): Set flag_isoc94 and flag_isoc99.
3101 * c-pretty-print.c (pp_c_cv_qualifiers): Check c_dialect_cxx as well
3102 as flag_isoc99 for 'restrict'.
3103 (pp_c_specifier_qualifier_list): Likewise for _Complex.
3104
3105 2011-07-21 Ian Lance Taylor <iant@google.com>
3106
3107 PR middle-end/49705
3108 * c-common.c (c_disable_warnings): New static function.
3109 (c_enable_warnings): New static function.
3110 (c_fully_fold_internal): Change local unused_p to bool. Call
3111 c_disable_warnings and c_enable_warnings rather than change
3112 c_inhibit_evaluation_warnings.
3113
3114 2011-07-20 Jason Merrill <jason@redhat.com>
3115
3116 PR c++/6709 (DR 743)
3117 PR c++/42603 (DR 950)
3118 * c-common.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move from cp/parser.h.
3119 (CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise.
3120 (CPP_DECLTYPE): New.
3121 * c-common.c (c_parse_error): Handle CPP_DECLTYPE.
3122
3123 2011-07-19 Richard Guenther <rguenther@suse.de>
3124
3125 * c-common.c (pointer_int_sum): Use fold_build_pointer_plus.
3126 * c-omp.c (c_finish_omp_for): Likewise.
3127
3128 2011-07-12 Eric Botcazou <ebotcazou@adacore.com>
3129
3130 * c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop
3131 body on the next line.
3132
3133 2011-07-08 Jason Merrill <jason@redhat.com>
3134
3135 PR c++/45437
3136 * c-omp.c (check_omp_for_incr_expr): Handle preevaluation.
3137
3138 PR c++/49673
3139 * c-common.c (c_apply_type_quals_to_decl): Don't check
3140 TYPE_NEEDS_CONSTRUCTING.
3141
3142 2011-07-06 Richard Guenther <rguenther@suse.de>
3143
3144 * c-common.c (c_common_nodes_and_builtins):
3145 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
3146
3147 2011-07-05 Richard Guenther <rguenther@suse.de>
3148
3149 * c-common.c (c_common_nodes_and_builtins): Build all common
3150 tree nodes first.
3151
3152 2011-06-27 Jakub Jelinek <jakub@redhat.com>
3153
3154 * c-common.h (c_tree_chain_next): New static inline function.
3155
3156 * c-common.c (check_builtin_function_arguments): Handle
3157 BUILT_IN_ASSUME_ALIGNED.
3158
3159 2011-06-21 Andrew MacLeod <amacleod@redhat.com>
3160
3161 * c-common.c: Add sync_ or SYNC__ to builtin names.
3162 * c-omp.c: Add sync_ or SYNC__ to builtin names.
3163
3164 2011-06-20 Pierre Vittet <piervit@pvittet.com>
3165
3166 * c-pragma.h (pragma_handler_1arg, pragma_handler_2arg): New
3167 handler.
3168 (gen_pragma_handler): New union.
3169 (internal_pragma_handler): New type.
3170 (c_register_pragma_with_data)
3171 (c_register_pragma_with_expansion_and_data): New functions.
3172
3173 * c-pragma.c (registered_pragmas, c_register_pragma_1)
3174 (c_register_pragma, c_register_pragma_with_expansion)
3175 (c_invoke_pragma_handler): Changed to work with
3176 internal_pragma_handler.
3177 (c_register_pragma_with_data)
3178 (c_register_pragma_with_expansion_and_data): New functions.
3179
3180 2011-06-14 Joseph Myers <joseph@codesourcery.com>
3181
3182 * c-common.c: Include common/common-target.h.
3183 (handle_section_attribute): Use
3184 targetm_common.have_named_sections.
3185 * c-cppbuiltin.c: Include common/common-target.h.
3186 (c_cpp_builtins): Use targetm_common.except_unwind_info.
3187
3188 2011-06-10 Richard Guenther <rguenther@suse.de>
3189
3190 * c-pretty-print.c (pp_c_type_specifier): Use pp_c_identifier
3191 to print a IDENTIFIER_NODE.
3192
3193 2011-06-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3194 Joseph Myers <joseph@codesourcery.com>
3195
3196 * c.opt (fbuilding-libgcc): New option.
3197 * c-cppbuiltin.c (c_cpp_builtins): Define
3198 __LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc.
3199
3200 2011-06-07 Jason Merrill <jason@redhat.com>
3201
3202 * c-common.c (max_tinst_depth): Lower default to 900.
3203
3204 * c-format.c (gcc_cxxdiag_char_table): Add 'S' format.
3205
3206 2011-06-07 Richard Guenther <rguenther@suse.de>
3207
3208 * c-common.c (c_common_nodes_and_builtins): Do not set
3209 size_type_node or call set_sizetype.
3210
3211 2011-06-07 Dodji Seketeli <dodji@redhat.com>
3212
3213 PR debug/49130
3214 * c-pretty-print.c (pp_c_integer_constant): Consider the canonical
3215 type when using pointer comparison to compare types.
3216
3217 2011-06-02 Jonathan Wakely <jwakely.gcc@gmail.com>
3218
3219 * c.opt: Add -Wdelete-non-virtual-dtor.
3220 * c-opts.c (c_common_handle_option): Include it in -Wall.
3221
3222 2011-05-30 Nathan Froyd <froydnj@gcc.gnu.org>
3223
3224 PR bootstrap/49190
3225
3226 Revert:
3227 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
3228
3229 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
3230 not tree_common.
3231
3232 2011-05-27 Jakub Jelinek <jakub@redhat.com>
3233
3234 PR c++/49165
3235 * c-common.c (c_common_truthvalue_conversion) <case COND_EXPR>: For
3236 C++ don't call c_common_truthvalue_conversion on void type arms.
3237
3238 2011-05-27 Nathan Froyd <froydnj@codesourcery.com>
3239
3240 * c-common.h (struct stmt_tree_s) [x_cur_stmt_list]: Change to a VEC.
3241 (stmt_list_stack): Define.
3242 (cur_stmt_list): Adjust for new type of x_cur_stmt_list.
3243 * c-semantics.c (push_stmt_list, pop_stmt_list): Likewise.
3244
3245 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
3246
3247 * c-common.c (warning_candidate_p): Check for BLOCKs.
3248
3249 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
3250
3251 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
3252 not tree_common.
3253
3254 2011-05-25 Jakub Jelinek <jakub@redhat.com>
3255
3256 * c-common.c (def_fn_type): Remove extra va_end.
3257
3258 2011-05-23 Jason Merrill <jason@redhat.com>
3259
3260 PR c++/48106
3261 * c-common.c (c_common_get_narrower): New.
3262 (shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.
3263
3264 2011-05-23 Nathan Froyd <froydnj@codesourcery.com>
3265
3266 * c-common.h (check_function_arguments): Tweak prototype of
3267 check_function_arguments.
3268 * c-common.c (check_function_arguments): Likewise. Adjust
3269 calls to check_function_nonnull, check_function_format, and
3270 check_function_sentinel.
3271 (check_function_sentinel): Take a FUNCTION_TYPE rather than
3272 separate attributes and typelist arguments. Use
3273 FOREACH_FUNCTION_ARGS to iterate over argument types.
3274
3275 2011-05-15 Paolo Carlini <paolo.carlini@oracle.com>
3276
3277 * c-common.c (c_common_reswords): Reorder.
3278 * c-common.h (rid): Likewise.
3279
3280 2011-05-10 Nathan Froyd <froydnj@codesourcery.com>
3281
3282 * c-common.c (def_fn_type): Don't call build_function_type, call
3283 build_function_type_array or build_varargs_function_type_array
3284 instead.
3285 (c_common_nodes_and_builtins): Likewise.
3286
3287 2011-05-05 Nathan Froyd <froydnj@codesourcery.com>
3288
3289 * c-common.c (c_add_case_label): Omit the loc argument to
3290 build_case_label.
3291 * c-common.h (build_case_label): Remove.
3292 * c-semantics.c (build_case_label): Remove.
3293
3294 2011-05-05 Joseph Myers <joseph@codesourcery.com>
3295
3296 * c-objc.h (objc_start_method_definition): Update prototype.
3297 * stub-objc.c (objc_start_method_definition): Add extra parameter.
3298
3299 2011-05-04 Nathan Froyd <froydnj@codesourcery.com>
3300
3301 * c-common.c (check_main_parameter_types): Reindent. Don't use
3302 TYPE_ARG_TYPES directly.
3303 (handle_nonnull_attribute): Likewise.
3304 (sync_resolve_params): Likewise.
3305 * c-format.c (handle_format_arg_attribute): Likewise. Adjust call
3306 to check_format_string.
3307 (handle_format_attribute): Likewise.
3308 (check_format_string): Take a function type to examine instead of
3309 a type list. Use a function_arg_iterator to step through argument
3310 types.
3311
3312 2011-05-04 Richard Guenther <rguenther@suse.de>
3313
3314 * c-common.c (fix_string_type): Use size_int for index type bounds.
3315 (start_fname_decls): Do not pass NULL to build_int_cst.
3316 (c_init_attributes): Likewise.
3317 * c-lex.c (c_lex_with_flags): Likewise.
3318
3319 2011-04-27 Jason Merrill <jason@redhat.com>
3320
3321 * c-common.c (make_tree_vector_from_list): New.
3322 * c-common.h: Declare it.
3323
3324 2011-04-26 Richard Guenther <rguenther@suse.de>
3325
3326 PR preprocessor/48248
3327 * c-ppoutput.c (maybe_print_line): Always optimize newlines
3328 for output size with -P.
3329
3330 2011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
3331
3332 * c-common.c (struct c_common_resword): Add __underlying_type.
3333 * c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
3334
3335 2011-04-20 Jim Meyering <meyering@redhat.com>
3336
3337 * c-format.c (init_dollar_format_checking): Remove useless
3338 if-before-free.
3339
3340 2011-04-15 Nicola Pero <nicola.pero@meta-innovation.com>
3341
3342 * c-objc.h (objc_get_interface_ivars): Removed.
3343 (objc_detect_field_duplicates): New.
3344 * stub-objc.c: Likewise.
3345
3346 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
3347
3348 * stub-objc.c (objc_declare_protocols): Renamed to
3349 objc_declare_protocol.
3350 * c-objc.h: Likewise.
3351
3352 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
3353
3354 * stub-objc.c (objc_declare_class): Updated argument name.
3355
3356 2011-04-12 Nathan Froyd <froydnj@codesourcery.com>
3357
3358 * c-common.h (c_common_init_ts): Declare.
3359 * c-common.c (c_common_init_ts): Define.
3360
3361 2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
3362
3363 * c-objc.h (objc_build_message_expr): Updated prototype.
3364 * stub-objc.c (objc_build_message_expr): Likewise.
3365
3366 2011-04-12 Martin Jambor <mjambor@suse.cz>
3367
3368 * c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
3369 of cgraph_node.
3370
3371 2011-04-11 Richard Guenther <rguenther@suse.de>
3372
3373 * c-common.c (complete_array_type): Build a range type of
3374 proper type.
3375
3376 2011-04-08 Nathan Froyd <froydnj@codesourcery.com>
3377
3378 * c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
3379 (handle_type_generic_attribute): Likewise.
3380
3381 2011-04-07 Jason Merrill <jason@redhat.com>
3382
3383 PR c++/48450
3384 * c-common.c (c_common_truthvalue_conversion): Don't ignore
3385 conversion from C++0x scoped enum.
3386
3387 2011-04-06 Joseph Myers <joseph@codesourcery.com>
3388
3389 * c-target-def.h: New file.
3390 * c-target.def: New file.
3391 * c-target.h: New file.
3392 * c-common.c (targetcm): Don't define here.
3393 * c-common.h (default_handle_c_option): Declare.
3394 * c-format.c: Include c-target.h instead of target.h.
3395 * c-opts.c: Include c-target.h instead of target.h. Explicitly
3396 include tm.h.
3397 (default_handle_c_option): Move from targhooks.c.
3398
3399 2011-03-29 Jakub Jelinek <jakub@redhat.com>
3400
3401 PR preprocessor/48248
3402 * c-ppoutput.c (print): Add src_file field.
3403 (init_pp_output): Initialize it.
3404 (maybe_print_line): Don't optimize by adding up to 8 newlines
3405 if map->to_file and print.src_file are different file.
3406 (print_line): Update print.src_file.
3407
3408 2011-03-25 Kai Tietz <ktietz@redhat.com>
3409
3410 * c-ada-spec.c (compare_comment): Use filename_cmp
3411 instead of strcmp for filename.
3412
3413 2011-03-25 Jeff Law <law@redhat.com>
3414
3415 * c-family/c-common.c (def_fn_type): Add missing va_end.
3416
3417 2011-03-25 Jason Merrill <jason@redhat.com>
3418
3419 * c.opt: Add -std=c++03.
3420
3421 2011-03-22 Eric Botcazou <ebotcazou@adacore.com>
3422
3423 * c-ada-spec.c (dump_ada_template): Skip non-class instances.
3424
3425 2011-03-17 Kai Tietz
3426
3427 PR target/12171
3428 * c-pretty-print.c (pp_c_specifier_qualifier_list):
3429 Display allowed attributes for function pointer types.
3430 (pp_c_attributes_display): New function to display
3431 attributes having affects_type_identity flag set to true.
3432 * c-pretty-print.h (pp_c_attributes_display): New prototype.
3433
3434 * c-common.c (c_common_attribute_table):
3435 Add new element.
3436 (c_common_format_attribute_table): Likewise.
3437
3438 2011-03-18 Jason Merrill <jason@redhat.com>
3439
3440 * c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
3441 * c-common.h: Don't declare it here.
3442 * c-common.c: Or define it here.
3443 * c-opts.c (c_common_handle_option): Or set it here.
3444
3445 PR c++/35315
3446 * c-common.c (handle_transparent_union_attribute): Don't
3447 make a duplicate type in C++.
3448
3449 2011-03-15 Jason Merrill <jason@redhat.com>
3450
3451 * c-common.c (max_constexpr_depth): New.
3452 * c-common.h: Declare it.
3453 * c-opts.c (c_common_handle_option): Set it.
3454 * c.opt (fconstexpr-depth): New option.
3455
3456 2011-03-11 Jason Merrill <jason@redhat.com>
3457
3458 * c-common.c (attribute_takes_identifier_p): Add missing const.
3459
3460 PR c++/46803
3461 * c-common.c (attribute_takes_identifier_p): Assume that an
3462 unknown attribute takes an identifier.
3463
3464 2011-03-07 Nathan Froyd <froydnj@codesourcery.com>
3465
3466 PR c/47786
3467 * c-common.c (c_type_hash): Call list_length instead of iterating
3468 through DECL_CHAIN. Rename 'i' to 'n_elements'.
3469
3470 2011-02-19 Jakub Jelinek <jakub@redhat.com>
3471
3472 PR c/47809
3473 * c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
3474
3475 2011-02-17 Iain Sandoe <iains@gcc.gnu.org>
3476
3477 * c.opt (fobjc-abi-version=) New.
3478 (fobjc-nilcheck): New.
3479
3480 2011-02-03 Nathan Froyd <froydnj@codesourcery.com>
3481
3482 PR c++/46890
3483 * c-common.h (keyword_is_decl_specifier): Declare.
3484 * c-common.c (keyword_is_decl_specifier): Define.
3485 (keyword_is_function_specifier): New function.
3486
3487 2011-01-26 Jakub Jelinek <jakub@redhat.com>
3488
3489 PR c/47473
3490 * c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
3491 EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
3492 REAL_TYPE.
3493
3494 2011-01-26 Arnaud Charlet <charlet@adacore.com>
3495
3496 * c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type.
3497
3498 2011-01-26 Jakub Jelinek <jakub@redhat.com>
3499
3500 PR pch/47430
3501 * c-opts.c (c_common_post_options): Call c_common_no_more_pch
3502 after init_c_lex if pch_file is set.
3503
3504 2011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
3505
3506 PR c++/43601
3507 * c.opt (-fkeep-inline-dllexport): New switch.
3508
3509 2011-01-12 Richard Guenther <rguenther@suse.de>
3510
3511 PR middle-end/32511
3512 * c-common.c (handle_weak_attribute): Warn instead of error
3513 on declaring an inline function weak.
3514
3515 2011-01-05 Tom Tromey <tromey@redhat.com>
3516
3517 * c-common.h (lvalue_error): Update.
3518 * c-common.c (lvalue_error): Add 'loc' argument. Call error_at,
3519 not error.
3520
3521 2010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
3522
3523 PR objc/47075
3524 * c-objc.h (objc_finish_message_expr): Added argument to
3525 prototype.
3526
3527 2010-12-22 Nathan Froyd <froydnj@codesourcery.com>
3528
3529 * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute):
3530 Use prototype_p.
3531
3532 2010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
3533
3534 * c-objc.h (objc_maybe_warn_exceptions): New.
3535 * stub-objc.c (objc_maybe_warn_exceptions): New.
3536
3537 2010-12-10 Nathan Froyd <froydnj@codesourcery.com>
3538
3539 * c-common.h (readonly_error): Declare.
3540 * c-common.c (readonly_error): Define.
3541
3542 2010-12-09 Nathan Froyd <froydnj@codesourcery.com>
3543
3544 * c-common.h (invalid_indirection_error): Declare.
3545 * c-common.c (invalid_indirection_error): Define.
3546
3547 2010-12-03 Richard Guenther <rguenther@suse.de>
3548
3549 PR c/46745
3550 * c-pretty-print.c (pp_c_postfix_expression): Handle MEM_REF.
3551 (pp_c_unary_expression): Likewise.
3552 (pp_c_expression): Likewise.
3553
3554 2010-11-30 Nicola Pero <nicola.pero@meta-innovation.com>
3555
3556 * c-common.h (objc_finish_function): New.
3557 (objc_non_volatilized_type): Removed.
3558 (objc_type_quals_match): Removed.
3559 * stub-objc.c (objc_finish_function): New.
3560 (objc_non_volatilized_type): Removed.
3561 (objc_type_quals_match): Removed.
3562
3563 2010-11-30 Joseph Myers <joseph@codesourcery.com>
3564
3565 * c-common.h (parse_optimize_options): Declare.
3566 * c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c,
3567 c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h.
3568
3569 2010-11-29 Joseph Myers <joseph@codesourcery.com>
3570
3571 * c-opts.c (check_deps_environment_vars): Use getenv instead of
3572 GET_ENVIRONMENT.
3573 * c-pch.c (O_BINARY): Don't define here.
3574 * c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
3575
3576 2010-11-25 Joseph Myers <joseph@codesourcery.com>
3577
3578 * c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
3579 targetm.except_unwind_info.
3580
3581 2010-11-23 Joseph Myers <joseph@codesourcery.com>
3582
3583 * c-opts.c (c_common_handle_option): Pass location to
3584 set_struct_debug_option.
3585
3586 2010-11-23 Joseph Myers <joseph@codesourcery.com>
3587
3588 * c-common.c (visibility_options): Move from ../opts.c.
3589 * c-common.h (struct visibility_flags, visibility_options):
3590 Declare here.
3591 * c-opts.c (finish_options): Rename to c_finish_options.
3592 (c_common_init): Update call to finish_options.
3593
3594 2010-11-22 Nicola Pero <nicola.pero@meta-innovation.com>
3595
3596 PR objc/34033
3597 * c-lex.c (lex_string): Check that each string in an Objective-C
3598 string concat sequence starts with either one or zero '@', and
3599 that there are no spurious '@' signs at the end.
3600
3601 2010-11-20 Joseph Myers <joseph@codesourcery.com>
3602
3603 * c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
3604 HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
3605 HANDLE_PRAGMA_VISIBILITY.
3606 * c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
3607 HANDLE_PRAGMA_VISIBILITY): Don't define.
3608 (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.
3609
3610 2010-11-20 Nathan Froyd <froydnj@codesourcery.com>
3611
3612 PR c++/16189
3613 PR c++/36888
3614 PR c++/45331
3615 * c-common.h (keyword_begins_type_specifier): Declare.
3616 (keyword_is_storage_class_specifier): Declare.
3617 (keyword_is_type_qualifier): Declare.
3618 * c-common.c (keyword_begins_type_specifier): New function.
3619 (keyword_is_storage_class_specifier): New function.
3620 (keyword_is_type_qualifier): Declare.
3621
3622 2010-11-19 Joseph Myers <joseph@codesourcery.com>
3623
3624 PR c/46547
3625 * c-common.c (in_late_binary_op): Define.
3626 (c_common_truthvalue_conversion): Check in_late_binary_op before
3627 calling c_save_expr.
3628 * c-common.h (in_late_binary_op): Declare.
3629
3630 2010-11-19 Joseph Myers <joseph@codesourcery.com>
3631
3632 * c-opts.c (c_common_handle_option): Update calls to
3633 set_struct_debug_option.
3634
3635 2010-11-19 Nicola Pero <nicola.pero@meta-innovation.com>
3636
3637 * c-common.h (objc_declare_protocols): Added additional argument.
3638 * stub-objc.c (objc_declare_protocol): Same change.
3639
3640 2010-11-18 Nathan Froyd <froydnj@codesourcery.com>
3641
3642 PR c/33193
3643 * c-common.h (build_real_imag_expr): Declare.
3644 * c-semantics.c (build_real_imag_expr): Define.
3645
3646 2010-11-17 Joseph Myers <joseph@codesourcery.com>
3647
3648 * c-opts.c (c_common_parse_file): Take no arguments.
3649 * c-common.h (c_common_parse_file): Update prototype.
3650
3651 2010-11-16 Jakub Jelinek <jakub@redhat.com>
3652
3653 PR c++/46401
3654 * c-common.c (warning_candidate_p): Don't track non-const calls
3655 or STRING_CSTs.
3656
3657 2010-11-15 Ian Lance Taylor <iant@google.com>
3658
3659 * c-lex.c (init_c_lex): Set macro debug callbacks if
3660 flag_dump_go_spec is set.
3661
3662 2010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
3663
3664 * c-common.h (objc_build_incr_expr_for_property_ref): New.
3665 * stub-objc.c (objc_build_incr_expr_for_property_ref): New.
3666
3667 2010-11-15 Nathan Froyd <froydnj@codesourcery.com>
3668
3669 PR preprocessor/45038
3670 * c-cppbuiltin.c (c_cpp_builtins): Use different format for C++
3671 dialects.
3672
3673 2010-11-12 Joseph Myers <joseph@codesourcery.com>
3674
3675 * c-common.h (c_family_lang_mask): Declare.
3676 * c-opts.c (c_family_lang_mask): Make extern.
3677 * c-pragma.c (handle_pragma_diagnostic): Use
3678 control_warning_option.
3679
3680 2010-11-12 Joseph Myers <joseph@codesourcery.com>
3681
3682 * c-common.c (parse_optimize_options): Update call to
3683 decode_options.
3684 * c-common.h (c_common_handle_option): Update prototype.
3685 * c-opts.c (c_common_handle_option): Take location_t parameter and
3686 pass it to other functions.
3687
3688 2010-11-11 Joseph Myers <joseph@codesourcery.com>
3689
3690 * c-opts.c (warning_as_error_callback): Remove.
3691 (c_common_initialize_diagnostics): Don't call
3692 register_warning_as_error_callback.
3693 (c_common_handle_option): Handle -Werror=normalized= here.
3694
3695 2010-11-10 Joseph Myers <joseph@codesourcery.com>
3696
3697 * c-common.c (handle_mode_attribute): Use %' and word "signedness"
3698 in diagnostic.
3699 * c-opts.c (c_common_parse_file): Start diagnostics with lowercase
3700 letter.
3701 * c-pragma.c (handle_pragma_target, handle_pragma_optimize):
3702 Remove trailing '.' from diagnostics.
3703 * c.opt (Wwrite-strings_: Avoid '`' in help text.
3704
3705 2010-11-10 Joseph Myers <joseph@codesourcery.com>
3706
3707 * c-common.c (parse_optimize_options): Pass global_dc to
3708 decode_options.
3709 * c-opts.c (c_common_handle_option): Pass &global_options to
3710 set_Wstrict_aliasing.
3711 * c.opt (v): Don't mark Common or document here.
3712
3713 2010-11-06 Iain Sandoe <iains@gcc.gnu.org>
3714
3715 PR target/44981
3716 * c-format.c (format_type): New type gcc_objc_string_format_type.
3717 (valid_stringptr_type_p): New.
3718 (handle_format_arg_attribute): Use valid_stringptr_type_p ().
3719 (check_format_string): Pass expected type, use
3720 valid_stringptr_type_p (), check that the format string types are
3721 consistent with the format specification.
3722 (decode_format_attr): Warn if NSString is used outside objective-c.
3723 (format_types_orig): Add NSString.
3724 (format_name): New.
3725 (format_flags): New.
3726 (check_format_arg): Handle format strings requiring an external parser.
3727 first_target_format_type: New variable.
3728 (handle_format_attribute): Set up first_target_format_type, pass the
3729 expected format arg string type to check_format_string().
3730 * c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL): New flag.
3731 * stub-objc.c (objc_string_ref_type_p): New.
3732 (objc_check_format_arg): New.
3733
3734 2010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
3735
3736 Fixed using the Objective-C 2.0 dot-syntax with class names.
3737 * c-common.h (objc_build_class_component_ref): New.
3738 * stub-objc.c (objc_build_class_component_ref): New.
3739
3740 2010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
3741
3742 * c.opt (Wproperty-assign-default): New option.
3743
3744 2010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
3745
3746 Implemented -fobjc-std=objc1 flag.
3747 * c.opt (fobjc-std=objc1): New option.
3748
3749 2010-11-01 Nicola Pero <nicola.pero@meta-innovation.com>
3750
3751 Implemented format and noreturn attributes for Objective-C methods.
3752 * c-common.c (handle_noreturn_attribute): Recognize 'noreturn'
3753 attribute for Objective-C methods.
3754
3755 2010-10-31 Jason Merrill <jason@redhat.com>
3756
3757 * c-common.c (conversion_warning, warn_for_collisions_1): Use
3758 EXPR_LOC_OR_HERE.
3759
3760 2010-10-30 Nicola Pero <nicola.pero@meta-innovation.com>
3761
3762 Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
3763 * c-common.h (enum rid): Removed RID_COPIES and RID_IVAR.
3764 (objc_add_property_declaration): Removed arguments for copies and
3765 ivar.
3766 (objc_build_getter_call): Renamed to
3767 objc_maybe_build_component_ref.
3768 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
3769 (objc_is_property_ref): New.
3770 * c-common.c (c_common_reswords): Removed copies and ivar.
3771 * stub-objc.c (objc_add_property_declaration): Removed arguments
3772 for copies and ivar.
3773 (objc_build_getter_call): Renamed to
3774 objc_maybe_build_component_ref.
3775 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
3776 (objc_is_property_ref): New.
3777
3778 2010-10-29 Arnaud Charlet <charlet@adacore.com>
3779 Matthew Gingell <gingell@adacore.com>
3780
3781 * c-ada-spec.c (separate_class_package): New function.
3782 (pp_ada_tree_identifier): Prefix references to C++ classes with the
3783 name of their enclosing package.
3784 (print_ada_declaration): Use separate_class_package.
3785
3786 2010-10-27 Jason Merrill <jason@redhat.com>
3787
3788 * c-common.c (c_common_reswords): Add __is_literal_type.
3789 * c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
3790
3791 * c-common.c (check_case_value): Remove special C++ code.
3792
3793 2010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
3794
3795 * c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN,
3796 RID_RETAIN, RID_COPY and RID_NONATOMIC. Updated RID_FIRST_PATTR
3797 and RID_LAST_PATTR.
3798 (objc_add_property_declaration): Added additional arguments.
3799 (objc_property_attribute_kind): Removed.
3800 (objc_set_property_attr): Removed.
3801 * c-common.c (c_common_reswords): Added readwrite, assign, retain,
3802 copy and nonatomic.
3803 * stub-objc.c (objc_add_property_declaration): Added additional
3804 arguments.
3805 (objc_set_property_attr): Removed.
3806
3807 2010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
3808
3809 * c-common.h (objc_add_property_variable): Renamed to
3810 objc_add_property_declaration. Added location argument.
3811 * stub-objc.c (objc_add_property_variable): Same change.
3812
3813 2010-10-23 Nicola Pero <nicola.pero@meta-innovation.com>
3814
3815 * c-common.h (objc_maybe_printable_name): New.
3816 * stub-objc.c (objc_maybe_printable_name): New.
3817
3818 2010-10-22 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
3819 Andrew Pinski <pinskia@gmail.com>
3820
3821 * c-common.h (c_common_mark_addressable_vec): Declare.
3822 * c-common.c (c_common_mark_addressable_vec): New function.
3823
3824 2010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
3825
3826 * c-common.h (objc_set_method_type): Removed.
3827 (objc_add_method_declaration): Added boolean argument.
3828 (objc_start_method_definition): Same change.
3829 (objc_build_method_signature): Same change.
3830 * stub-objc.c (objc_set_method_type): Removed.
3831 (objc_add_method_declaration): Added boolean argument.
3832 (objc_start_method_definition): Same change.
3833 (objc_build_method_signature): Same change.
3834
3835 2010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
3836
3837 * c-common.h (finish_file): Removed.
3838 (objc_write_global_declarations): New.
3839 * c-opts.c (c_common_parse_file): Do not call finish_file.
3840 * stub-objc.c (objc_write_global_declarations): New.
3841
3842 2010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
3843
3844 Implemented parsing @synthesize and @dynamic for
3845 Objective-C/Objective-C++.
3846 * c-common.h (enum rid): Add RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
3847 (objc_add_synthesize_declaration): New.
3848 (objc_add_dynamic_declaration): New.
3849 * c-common.c (c_common_reswords): Add synthesize and dynamic.
3850 * stub-objc.c (objc_add_synthesize_declaration): New.
3851 (objc_add_dynamic_declaration): New.
3852
3853 2010-10-18 Michael Meissner <meissner@linux.vnet.ibm.com>
3854
3855 PR target/46041
3856 * c-cppbuiltin.c (mode_has_fma): Move function here from
3857 builtins.c. Don't use the fma optab, instead just use the
3858 HAVE_fma* macros, so that __FP_FAST_FMA* will be defined when
3859 using -save-temps.
3860
3861 2010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
3862
3863 Merge from 'apple/trunk' branch on FSF servers.
3864
3865 2005-11-08 Fariborz Jahanian <fjahanian@apple.com>
3866
3867 Radar 4330422
3868 * c-common.h (objc_non_volatilized_type): New declaration
3869 * stub-objc.c (objc_non_volatilized_type): New stub.
3870
3871 2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
3872
3873 Merge from 'apple/trunk' branch on FSF servers.
3874
3875 2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
3876
3877 Radar 4133425
3878 * c-common.h (objc_diagnose_private_ivar): New decl.
3879 * stub-objc.c (objc_diagnose_private_ivar): New stub.
3880
3881 2010-10-17 Iain Sandoe <iains@gcc.gnu.org>
3882
3883 * c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
3884 * c-common.h (enum rid): Add RID_AT_PACKAGE.
3885 (objc_ivar_visibility_kind): New enum.
3886 (objc_set_visibility): Adjust prototype to use visibility enum.
3887 * stub-objc.c (objc_set_visibility): Adjust stub to use
3888 visibility enum.
3889
3890 2010-10-14 Michael Meissner <meissner@linux.vnet.ibm.com>
3891
3892 * c-cppbuiltin.c (builtin_define_float_constants): Emit
3893 __FP_FAST_FMA, __FP_FAST_FMAF, and __FP_FAST_FMAL if the machine
3894 has the appropriate fma builtins.
3895 (c_cpp_builtins): Adjust call to builtin_define_float_constants.
3896
3897 2010-10-14 Iain Sandoe <iains@gcc.gnu.org>
3898
3899 merge from FSF apple 'trunk' branch.
3900 2006 Fariborz Jahanian <fjahanian@apple.com>
3901
3902 Radars 4436866, 4505126, 4506903, 4517826
3903 * c-common.c (c_common_resword): Define @property and its attributes.
3904 * c-common.h: Define property attribute enum entries.
3905 (OBJC_IS_PATTR_KEYWORD): New.
3906 (objc_property_attribute_kind): New enum.
3907 Declare objc_set_property_attr (), objc_add_property_variable (),
3908 objc_build_getter_call () and objc_build_setter_call ().
3909 * stub-objc.c (objc_set_property_attr): New stub.
3910 (objc_add_property_variable): Likewise.
3911 (objc_build_getter_call): Likewise.
3912 (objc_build_setter_call) Likewise.
3913
3914 2010-10-13 Iain Sandoe <iains@gcc.gnu.org>
3915
3916 merge from FSF apple 'trunk' branch.
3917 2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
3918
3919 Radar 3803157 (method attributes)
3920 * c-common.c (handle_deprecated_attribute): Recognize
3921 objc methods as valid declarations.
3922 * c-common.h: Declare objc_method_decl ().
3923 * stub-objc.c (objc_method_decl): New stub.
3924
3925 2010-10-08 Joseph Myers <joseph@codesourcery.com>
3926
3927 * c-common.c (parse_optimize_options): Call
3928 decode_cmdline_options_to_array_default_mask before
3929 decode_options. Update arguments to decode_options.
3930 * c-common.h (c_common_init_options_struct): Declare.
3931 * c-opts.c (c_common_init_options_struct): New. Split out from
3932 c_common_init_options.
3933
3934 2010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
3935
3936 Implemented fast enumeration for Objective-C.
3937 * c-common.h (objc_finish_foreach_loop): New.
3938 * stub-objc.c (objc_finish_foreach_loop): New.
3939
3940 2010-10-05 Joseph Myers <joseph@codesourcery.com>
3941
3942 * c-common.h (struct diagnostic_context): Don't declare here.
3943 (c_common_initialize_diagnostics): Declare using
3944 diagnostic_context typedef.
3945 * c-opts.c (c_common_handle_option): Pass global_dc to
3946 handle_generated_option.
3947
3948 2010-10-04 Joseph Myers <joseph@codesourcery.com>
3949
3950 * c-opts.c (c_common_handle_option): Pass &global_options_set to
3951 handle_generated_option.
3952
3953 2010-10-03 Ian Lance Taylor <iant@google.com>
3954
3955 * c.opt (-fplan9-extensions): New option.
3956
3957 2010-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
3958
3959 * c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision):
3960 Remove.
3961 (c_cpp_builtins): Call functions from cppbuiltin.c instead
3962 of duplicating code.
3963
3964 2010-09-30 Iain Sandoe <iains@gcc.gnu.org>
3965
3966 * c-common.c: Add two new entries for @optional
3967 and @required keywords.
3968
3969 merge from FSF 'apple/trunk' branch.
3970 2006-01-30 Fariborz Jahanian <fjahanian@apple.com>
3971
3972 Radar 4386773
3973 * c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new
3974 objective-c keywords.
3975 (objc_set_method_opt): New declaration.
3976 * stub-objc.c (objc_set_method_opt): New stub.
3977
3978 2010-09-30 Joseph Myers <joseph@codesourcery.com>
3979
3980 * c-common.c (handle_optimize_attribute): Pass &global_options to
3981 cl_optimization_save and cl_optimization_restore.
3982 * c-opts.c (c_common_handle_option): Pass &global_options to
3983 handle_generated_option.
3984 * c-pragma.c (handle_pragma_diagnostic): Use option_flag_var.
3985 (handle_pragma_pop_options, handle_pragma_reset_options): Pass
3986 &global_options to cl_optimization_restore.
3987
3988 2010-09-30 Nicola Pero <nicola.pero@meta-innovation.com>
3989
3990 * c-lex.c (c_lex_with_flags): Updated comments for CPP_AT_NAME
3991 Objective-C/Objective-C++ keywords.
3992
3993 2010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
3994
3995 Merge from 'apple/trunk' branch on FSF servers.
3996
3997 2005-10-04 Fariborz Jahanian <fjahanian@apple.com>
3998
3999 Radar 4281748
4000 * c-common.h (objc_check_global_decl): New declaration.
4001 * stub-objc.c (objc_check_global_decl): New stub.
4002
4003 2010-09-29 Joseph Myers <joseph@codesourcery.com>
4004
4005 * c.opt: Don't use VarExists.
4006
4007 2010-09-29 Joseph Myers <joseph@codesourcery.com>
4008
4009 * c-common.c (c_cpp_error): Update names of diagnostic_context
4010 members.
4011 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of
4012 cl_optimization members.
4013 * c-opts.c (warning_as_error_callback, c_common_handle_option,
4014 sanitize_cpp_opts, finish_options): Update names of cpp_options
4015 members.
4016
4017 2010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
4018
4019 * c-common.h (OBJC_IS_CXX_KEYWORD): New macro. Updated comments.
4020 (objc_is_reserved_word): Removed.
4021 * c-common.c: Updated comments.
4022 * c-lex.c (c_lex_with_flags): Use OBJC_IS_CXX_KEYWORD instead of
4023 objc_is_reserved_word.
4024 * stub-objc.c (objc_is_reserved_word): Removed.
4025
4026 2010-09-28 Iain Sandoe <iains@gcc.gnu.org>
4027
4028 * c-common.h (objc_add_method_declaration): Adjust prototype to
4029 include attributes.
4030 (objc_start_method_definition): Likewise.
4031 (objc_build_keyword_decl): Likewise.
4032 * stub-objc.c:(objc_add_method_declaration): Handle attributes.
4033 (objc_start_method_definition): Likewise.
4034 (objc_build_keyword_decl): Likewise.
4035
4036 2010-09-28 Iain Sandoe <iains@gcc.gnu.org>
4037
4038 * c-common.h (objc_start_class_interface): Adjust prototype.
4039 (objc_start_category_interface): Likewise.
4040 (objc_start_protocol): Likewise.
4041 * stub-objc.c (objc_start_protocol): Adjust for extra argument.
4042 (objc_start_class_interface): Likewise.
4043 (objc_start_category_interface): Likewise.
4044
4045 2010-09-27 Ian Lance Taylor <iant@google.com>
4046
4047 * c-common.c (c_common_attribute_table): Add no_split_stack.
4048 (handle_no_split_stack_attribute): New static function.
4049
4050 2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
4051
4052 Merge from 'apple/trunk' branch on FSF servers.
4053
4054 2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
4055
4056 Radar 4229905
4057 * c-common.h (objc_have_common_type): New declaration.
4058 * stub-objc.c (objc_have_common_type): New stub.
4059
4060 2005-06-22 Ziemowit Laski <zlaski@apple.com>
4061
4062 Radar 4154928
4063 * c-common.h (objc_common_type): New prototype.
4064 * stub-objc.c (objc_common_type): New stub.
4065
4066 2010-09-24 Jan Hubicka <jh@suse.cz>
4067
4068 * c-common.c (handle_leaf_attribute): New function.
4069 (struct attribute_spec c_common_att): Add leaf.
4070
4071 2010-09-22 Joseph Myers <joseph@codesourcery.com>
4072
4073 * c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
4074 -comments-in-macros, -define-macro, -define-macro=, -dependencies,
4075 -dump, -dump=, -imacros, -imacros=, -include, -include=,
4076 -include-barrier, -include-directory, -include-directory=,
4077 -include-directory-after, -include-directory-after=,
4078 -include-prefix, -include-prefix=, -include-with-prefix,
4079 -include-with-prefix=, -include-with-prefix-after,
4080 -include-with-prefix-after=, -include-with-prefix-before,
4081 -include-with-prefix-before=, -no-integrated-cpp,
4082 -no-line-commands, -no-standard-includes, -no-warnings, -output,
4083 -output=, -pedantic, -pedantic-errors, -preprocess,
4084 -print-missing-file-dependencies, -trace-includes, -traditional,
4085 -traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
4086 -user-dependencies, -verbose, -write-dependencies,
4087 -write-user-dependencies, no-integrated-cpp, traditional): New.
4088
4089 2010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
4090
4091 PR objc/23710
4092 * c-common.h (objc_start_method_definition): Return bool instead
4093 of void.
4094 * stub-objc.c (objc_start_method_definition): Return bool instead
4095 of void.
4096
4097 2010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
4098
4099 PR objc/25965
4100 * c-common.h (objc_get_interface_ivars): New declaration.
4101 * stub-objc.c (objc_get_interface_ivars): New stub.
4102
4103 2010-09-15 Ian Lance Taylor <iant@google.com>
4104
4105 * c-common.c (parse_optimize_options): Do not capitalize warning
4106 messages. Remove period at end of warning message.
4107
4108 2010-09-09 Nathan Sidwell <nathan@codesourcery.com>
4109
4110 * c-common.c (handle_alias_ifunc_attribute): New, broken out of ...
4111 (handle_alias_attribute): ... here.
4112 (handle_ifunc_attribute): New.
4113
4114 2010-09-06 Mark Mitchell <mark@codesourcery.com>
4115
4116 * c-common.h (do_warn_double_promotion): Declare.
4117 * c-common.c (do_warn_double_promotion): Define.
4118
4119 2010-09-05 Mark Mitchell <mark@codesourcery.com>
4120
4121 * c.opt (Wdouble-promotion): New.
4122
4123 2010-09-02 Joseph Myers <joseph@codesourcery.com>
4124
4125 * c.opt (falt-external-templates, fhuge-objects, fvtable-gc,
4126 fvtable-thunks, fxref): Mark no longer supported in help text.
4127
4128 2010-09-02 Joseph Myers <joseph@codesourcery.com>
4129
4130 * c.opt (Wimport, fall-virtual, falt-external-templates,
4131 fdefault-inline, fenum-int-equiv, fexternal-templates,
4132 fguiding-decls, fhonor-std, fhuge-objects, flabels-ok,
4133 fname-mangling-version-, fnew-abi, fnonnull-objects,
4134 foptional-diags, fsquangle, fstrict-prototype, fthis-is-variable,
4135 fvtable-gc, fvtable-thunks, fxref): Mark with Ignore and Warn as
4136 applicable.
4137 (fhandle-exceptions): Mark with Alias and Warn.
4138 * c-opts.c (c_common_handle_option): Don't handle options marked
4139 as ignored.
4140
4141 2010-09-02 Joseph Myers <joseph@codesourcery.com>
4142
4143 * c.opt (Wcomments, Werror-implicit-function-declaration,
4144 ftemplate-depth-, std=c89, std=c9x, std=gnu89, std=gnu9x,
4145 std=iso9899:1990, std=iso9899:1999, std=iso9899:199x): Mark as
4146 aliases.
4147 * c-common.c (option_codes): Use OPT_Wcomment instead of
4148 OPT_Wcomments.
4149 * c-opts.c (warning_as_error_callback, c_common_handle_option):
4150 Don't handle options marked as aliases.
4151
4152 2010-08-25 Richard Guenther <rguenther@suse.de>
4153
4154 * c-common.c (c_common_get_alias_set): Remove special
4155 handling for pointers.
4156
4157 2010-08-20 Nathan Froyd <froydnj@codesourcery.com>
4158
4159 * c-common.c: Use FOR_EACH_VEC_ELT.
4160 * c-gimplify.c: Likewise.
4161 * c-pragma.c: Likewise.
4162
4163 2010-08-16 Joseph Myers <joseph@codesourcery.com>
4164
4165 * c.opt (MDX): Change back to MD. Mark NoDriverArg instead of
4166 RejectDriver.
4167 (MMDX): Change back to MMD. Mark NoDriverArg instead of
4168 RejectDriver.
4169 * c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
4170 instead of OPT_MDX and OPT_MMDX.
4171
4172 2010-08-16 Joseph Myers <joseph@codesourcery.com>
4173
4174 * c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.
4175
4176 2010-08-12 Joseph Myers <joseph@codesourcery.com>
4177
4178 * c.opt (MD, MMD): Change to MDX and MMDX.
4179 * c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX.
4180
4181 2010-08-11 Joseph Myers <joseph@codesourcery.com>
4182
4183 * c-opts.c (c_common_handle_option): Call handle_generated_option
4184 instead of handle_option.
4185
4186 2010-08-08 Nathan Froyd <froydnj@codesourcery.com>
4187
4188 * c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
4189 (maybe_apply_renaming_pragma): Delete unneeded declarations.
4190
4191 2010-08-08 Nathan Froyd <froydnj@codesourcery.com>
4192
4193 * c-pragma.c (pending_redefinition): Declare. Declare a VEC of it.
4194 (pending_redefine_extname): Change type to a VEC.
4195 (add_to_renaming_pragma_list): Update for new type of
4196 pending_redefine_extname.
4197 (maybe_apply_renaming_pragma): Likewise.
4198
4199 2010-08-04 Arnaud Charlet <charlet@adacore.com>
4200
4201 * c-ada-spec.c (dump_ada_template): Mark underlying instance type as
4202 visited.
4203 (dump_generic_ada_node): Code clean up. Use TREE_VISITED flag to
4204 decide whether a type has already been declared/seen.
4205 Do not go to the original type.
4206 (dump_nested_types): New parameter forward.
4207 Generate forward declaration if needed and mark type as visited.
4208 (print_ada_declaration): Call dump_nested_types if not already done.
4209 Mark types as visited.
4210
4211 2010-08-03 Joseph Myers <joseph@codesourcery.com>
4212
4213 * c.opt (-print-pch-checksum): Remove option.
4214 * c-opts.c (c_common_handle_option): Don't handle
4215 OPT_print_pch_checksum.
4216
4217 2010-07-27 Joseph Myers <joseph@codesourcery.com>
4218
4219 * c-common.h (c_common_handle_option): Update prototype and return
4220 value type.
4221 * c-opts.c (c_common_handle_option): Update prototype and return
4222 value type. Update calls to handle_option and
4223 enable_warning_as_error.
4224
4225 2010-07-27 Jakub Jelinek <jakub@redhat.com>
4226
4227 PR c/45079
4228 * c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
4229
4230 2010-07-27 Joseph Myers <joseph@codesourcery.com>
4231
4232 * c-common.h (c_common_missing_argument): Remove.
4233 * c-opts.c (c_common_missing_argument): Remove.
4234 * c.opt (A, D, F, I, MD, MMD, MQ, MT, U, fconstant-string-class=,
4235 idirafter, imacros, include, isysroot, isystem, iquote): Add
4236 MissingArgError.
4237 * c-objc-common.h (LANG_HOOKS_MISSING_ARGUMENT): Remove.
4238
4239 2010-07-27 Joseph Myers <joseph@codesourcery.com>
4240
4241 * c-common.h (c_common_option_lang_mask,
4242 c_common_initialize_diagnostics, c_common_complain_wrong_lang_p):
4243 New.
4244 (c_common_init_options): Update prototype.
4245 * c-opts.c (c_common_option_lang_mask): New.
4246 (c_common_initialize_diagnostics): Split out of
4247 c_common_init_options.
4248 (accept_all_c_family_options, c_common_complain_wrong_lang_p):
4249 New.
4250 (c_common_init_options): Update prototype. Use decoded options in
4251 search for -lang-asm.
4252
4253 2010-07-15 Nathan Froyd <froydnj@codesourcery.com>
4254
4255 * c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
4256 * c-format.c: Likewise.
4257
4258 2010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
4259
4260 * c-common.h: Include diagnostic-core.h. Error if already
4261 included.
4262 * c-semantics.c: Do not define GCC_DIAG_STYLE here.
4263
4264 2010-07-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
4265
4266 * c-family/c-common.c (IN_GCC_FRONTEND): Do not undef.
4267 Do not include expr.h
4268 (vector_mode_valid_p): Move here.
4269
4270 2010-06-21 DJ Delorie <dj@redhat.com>
4271
4272 * c-pragma.c (handle_pragma_diagnostic): Add push/pop,
4273 allow these pragmas anywhere.
4274
4275 2010-06-14 Jakub Jelinek <jakub@redhat.com>
4276
4277 PR bootstrap/44509
4278 * c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
4279 (lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
4280 (lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
4281 ggc_strdup instead of xstrdup.
4282
4283 2010-06-10 Jakub Jelinek <jakub@redhat.com>
4284
4285 * c-cppbuiltin.c: Include cpp-id-data.h.
4286 (lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
4287 (lazy_hex_fp_value): New function.
4288 (builtin_define_with_hex_fp_value): Provide definitions lazily.
4289
4290 2010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
4291
4292 * c-gimplify.c: Do not include tree-flow.h
4293
4294 2010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
4295
4296 PR other/44034
4297 * c-common.c: Rename targetm member:
4298 targetm.enum_va_list -> targetm.enum_va_list_p
4299
4300 2010-06-28 Anatoly Sokolov <aesok@post.ru>
4301
4302 * c-common.c (shorten_compare): Adjust call to force_fit_type_double.
4303
4304 2010-06-28 Steven Bosscher <steven@gcc.gnu.org>
4305
4306 * c-cppbuiltin.c: Do not include except.h.
4307
4308 2010-06-24 Andi Kleen <ak@linux.intel.com>
4309
4310 * c-common.c (warn_for_omitted_condop): New.
4311 * c-common.h (warn_for_omitted_condop): Add prototype.
4312
4313 2010-06-21 Joseph Myers <joseph@codesourcery.com>
4314
4315 * c.opt (lang-objc): Remove.
4316 * c-opts.c (c_common_handle_option): Don't handle OPT_lang_objc.
4317
4318 2010-06-21 Joern Rennecke <joern.rennecke@embecosm.com>
4319
4320 * c-opts.c: Include "tm_p.h".
4321
4322 2010-06-20 Joseph Myers <joseph@codesourcery.com>
4323
4324 * c-common.c (parse_optimize_options): Update call to
4325 decode_options.
4326
4327 2010-06-18 Nathan Froyd <froydnj@codesourcery.com>
4328
4329 * c-common.c (record_types_used_by_current_var_decl): Adjust for
4330 new type of types_used_by_cur_var_decl.
4331
4332 2010-06-17 Joern Rennecke <joern.rennecke@embecosm.com>
4333
4334 PR bootstrap/44512
4335 * c-cppbuiltin.c (builtin_define_with_hex_fp_value): Add cast
4336 for C++ standard compliance.
4337
4338 2010-06-16 Jason Merrill <jason@redhat.com>
4339
4340 * c.opt: Add -Wnoexcept.
4341
4342 2010-06-16 Richard Guenther <rguenther@suse.de>
4343
4344 PR c/44555
4345 * c-common.c (c_common_truthvalue_conversion): Remove
4346 premature and wrong optimization concering ADDR_EXPRs.
4347
4348 2010-06-15 Arnaud Charlet <charlet@adacore.com>
4349
4350 * c-ada-spec.c (dump_sloc): Remove column info.
4351 (is_simple_enum): New function.
4352 (dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada
4353 enum types when relevant.
4354
4355 2010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
4356
4357 * c-common.c (conversion_warning): Warn at expression
4358 location.
4359
4360 2010-06-10 Joseph Myers <joseph@codesourcery.com>
4361
4362 * c-opts.c (c_common_handle_option): Don't handle
4363 OPT_fshow_column.
4364
4365 2010-06-08 Laurynas Biveinis <laurynas.biveinis@gmail.com>
4366
4367 * c-pragma.c (push_alignment): Use typed GC allocation.
4368 (handle_pragma_push_options): Likewise.
4369
4370 * c-common.c (parse_optimize_options): Likewise.
4371
4372 * c-common.h (struct sorted_fields_type): Add variable_size GTY
4373 option.
4374
4375 2010-06-07 Joseph Myers <joseph@codesourcery.com>
4376
4377 * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
4378 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
4379 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
4380 flag_signed_bitfields, warn_strict_null_sentinel,
4381 flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
4382 flag_gen_declaration, flag_no_gnu_keywords,
4383 flag_implement_inlines, flag_implicit_templates,
4384 flag_implicit_inline_templates, flag_optional_diags,
4385 flag_elide_constructors, flag_default_inline, flag_rtti,
4386 flag_conserve_space, flag_access_control, flag_check_new,
4387 flag_new_for_scope, flag_weak, flag_working_directory,
4388 flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
4389 flag_enforce_eh_specs, flag_threadsafe_statics,
4390 flag_pretty_templates): Remove.
4391 * c-common.h (flag_preprocess_only, flag_nil_receivers,
4392 flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
4393 flag_replace_objc_classes, flag_undef, flag_no_builtin,
4394 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
4395 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
4396 flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
4397 flag_no_gnu_keywords, flag_implement_inlines,
4398 flag_implicit_templates, flag_implicit_inline_templates,
4399 flag_optional_diags, flag_elide_constructors, flag_default_inline,
4400 flag_rtti, flag_conserve_space, flag_access_control,
4401 flag_check_new, flag_new_for_scope, flag_weak,
4402 flag_working_directory, flag_use_cxa_atexit,
4403 flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
4404 flag_threadsafe_statics, flag_pretty_templates,
4405 warn_strict_null_sentinel): Remove.
4406 * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
4407 fbuiltin, fcheck-new, fconserve-space, felide-constructors,
4408 fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
4409 fimplicit-inline-templates, fimplicit-templates,
4410 flax-vector-conversions, fms-extensions, fnil-receivers,
4411 fnonansi-builtins, fpretty-templates, freplace-objc-classes,
4412 frtti, fshort-double, fshort-enums, fshort-wchar,
4413 fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
4414 funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
4415 fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
4416 gen-decls, undef): Use Var.
4417 (fdefault-inline, foptional-diags): Document as doing nothing.
4418 * c-opts.c (c_common_handle_option): Remove cases for options now
4419 using Var. Mark ignored options as such.
4420
4421 2010-06-05 Steven Bosscher <steven@gcc.gnu.org>
4422
4423 * c-common.c: Moved to here from parent directory.
4424 * c-common.def: Likewise.
4425 * c-common.h: Likewise.
4426 * c-cppbuiltin.c: Likewise.
4427 * c-dump.c: Likewise.
4428 * c-format.c: Likewise.
4429 * c-format.h : Likewise.
4430 * c-gimplify.c: Likewise.
4431 * c-lex.c: Likewise.
4432 * c-omp.c: Likewise.
4433 * c.opt: Likewise.
4434 * c-opts.c: Likewise.
4435 * c-pch.c: Likewise.
4436 * c-ppoutput.c: Likewise.
4437 * c-pragma.c: Likewise.
4438 * c-pragma.h: Likewise.
4439 * c-pretty-print.c: Likewise.
4440 * c-pretty-print.h: Likewise.
4441 * c-semantics.c: Likewise.
4442 * stub-objc.c: Likewise.
4443
4444 * c-common.c: Include gt-c-family-c-common.h.
4445 * c-pragma.c: Include gt-c-family-c-pragma.h.
4446 \f
4447 Copyright (C) 2010-2014 Free Software Foundation, Inc.
4448
4449 Copying and distribution of this file, with or without modification,
4450 are permitted in any medium without royalty provided the copyright
4451 notice and this notice are preserved.