]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/c-family/ChangeLog
[multiple changes]
[thirdparty/gcc.git] / gcc / c-family / ChangeLog
CommitLineData
92574c7c
MP
12014-10-17 Marek Polacek <polacek@redhat.com>
2
3 * c-opts.c (c_common_post_options): Set warn_implicit_int.
4 * c.opt (Wimplicit-int): Initialize to -1.
5
83685514
AM
62014-10-16 Andrew MacLeod <amacleod@redhat.com>
7
8 * c-pragma.c: Adjust include files.
9 * c-semantics.c: Likewise.
10
5b8300ea
DD
112014-10-16 DJ Delorie <dj@redhat.com>
12
13 * c-cppbuiltin.c (cpp_atomic_builtins): Don't assume pointers are
14 multiples of bytes.
15
5f83e90b
JM
162014-10-14 Jason Merrill <jason@redhat.com>
17
18 PR c++/63455
19 * c-common.h (CPP_PREPARSED_EXPR): New.
20 (N_CP_TTYPES): Adjust.
21
d73326ca
MP
222014-10-15 Marek Polacek <polacek@redhat.com>
23
24 * c-opts.c (c_common_init_options): Make -std=gnu11 the default for C.
25
78a7c317
DD
262014-10-14 DJ Delorie <dj@redhat.com>
27
28 * c-pretty-print.c (pp_c_integer_constant): Check for all __intN
29 types, not just __int128.
30 * c-cppbuiltin.c (c_cpp_builtins): Add builtins for all __intN
31 types, not just __int128.
32 (cpp_atomic_builtins): Round pointer sizes up.
33 (type_suffix): Use type precision, not specific types.
34 * c-common.c (c_common_reswords): Remove __int128 special case.
35 (c_common_type_for_size): Check for all __intN types, not just
36 __int128.
37 (c_common_type_for_mode): Likewise.
38 (c_common_signed_or_unsigned_type): Likewise.
39 (c_build_bitfield_integer_type): Likewise.
40 (c_common_nodes_and_builtins): Likewise.
41 (keyword_begins_type_specifier): Likewise.
42 * c-common.h (rid): Remove RID_INT128 and add RID_INT_N_* for all
43 __intN variants.
44
2a22f99c
TS
452014-10-12 Trevor Saunders <tsaunders@mozilla.com>
46
47 * c-common.c: Use hash_table instead of hashtab.
48
2a8ef767
ESR
492014-10-06 Edward Smith-Rowland <3dw4rd@verizon.net>
50
51 * c-family/c-cppbuiltin.c: Move __cpp_attribute_deprecated to the
52 C++11 section.
53
3c9aabbd
MG
542014-10-03 Marc Glisse <marc.glisse@inria.fr>
55
56 PR c++/54427
57 PR c++/57198
58 PR c++/58845
59 * c-common.c (warn_logical_operator): Punt for vectors.
60
a15f7cb8
ESR
612014-10-01 Edward Smith-Rowland <3dw4rd@verizon.net>
62
63 Implement SD-6: SG10 Feature Test Recommendations
64 * c-cppbuiltin.c (c_cpp_builtins()): Define language feature
65 macros and the __has_header macro.
66
8d0cf15e
JM
672014-09-30 Jason Merrill <jason@redhat.com>
68
dd5d5481
JM
69 * c-common.h (enum rid): Add RID_IS_TRIVIALLY_ASSIGNABLE and
70 RID_IS_TRIVIALLY_CONSTRUCTIBLE.
71 * c-common.c (c_common_reswords): Add __is_trivially_copyable.
72
b752325e
JM
73 * c-common.h (enum rid): Add RID_IS_TRIVIALLY_COPYABLE.
74 * c-common.c (c_common_reswords): Add __is_trivially_copyable.
75
8d0cf15e
JM
76 * c-common.h (enum rid): Remove RID_IS_CONVERTIBLE_TO.
77 * c-common.c (c_common_reswords): Remove __is_convertible_to.
78
083e891e
MP
792014-09-24 Marek Polacek <polacek@redhat.com>
80
81 PR c/61405
82 PR c/53874
83 * c-common.h (struct c_common_resword): Don't define CPP_KEYWORD.
84
7861b648
AK
852014-09-23 Andi Kleen <ak@linux.intel.com>
86
87 * c-common.c (handle_no_reorder_attribute): New function.
88 (c_common_attribute_table): Add no_reorder attribute.
89
9a79452d
JM
902014-09-22 Joseph Myers <joseph@codesourcery.com>
91
92 * c-cppbuiltin.c (c_cpp_builtins): Define
93 __LIBGCC_*_EXCESS_PRECISION__ macros for supported floating-point
94 modes.
95
dd69f047
JM
962014-09-18 Joseph Myers <joseph@codesourcery.com>
97
98 * c-cppbuiltin.c (c_cpp_builtins): Define __LIBGCC_*_FUNC_EXT__
99 for supported floating-point modes.
100
737a4826
MLI
1012014-09-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
102
103 * c.opt (Wpsabi): Use LangEnabledBy.
104 * c-opts.c (c_common_handle_option): Do not handle here.
105
8cc4b7a2
JM
1062014-09-12 Joseph Myers <joseph@codesourcery.com>
107
108 * c-cppbuiltin.c (c_cpp_builtins): Define __LIBGCC_HAS_%s_MODE__
109 macros for floating-point modes.
110
179b5a55
MG
1112014-09-11 Marc Glisse <marc.glisse@inria.fr>
112
113 PR target/58757
114 * c-cppbuiltin.c (builtin_define_float_constants): Correct
115 __*_DENORM_MIN__ without denormals.
116
570a11fe
JJ
1172014-09-10 Jakub Jelinek <jakub@redhat.com>
118
119 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
120 ubsan_instrument_vla, ubsan_instrument_return): Adjust
121 ubsan_create_data callers.
122 (ubsan_instrument_bounds): Don't emit UBSAN_BOUNDS at all if
123 index is constant or BIT_AND_EXPR with constant mask and is
124 small enough for the bound.
125 * c-gimplify.c (ubsan_walk_array_refs_r): For ADDR_EXPR of
126 ARRAY_REF, make sure the inner ARRAY_REF is not walked again.
127
b559c810
MLI
1282014-09-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
129
130 * c.opt: Add CppReason to various flags.
131 (Wdate-time): Re-sort.
132 * c-common.c: Include c-common.h earlier.
133 (struct reason_option_codes_t): Delete.
134 (c_option_controlling_cpp_error): Prefix global type and struct
135 with cpp_.
136
1ef33fd4
MLI
1372014-09-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
138
139 * c.opt (Wnormalized): New.
140 (Wnormalized=): Use Enum and Reject Negative.
141 * c-opts.c (c_common_handle_option): Do not handle Wnormalized here.
142
66bb34c0
JM
1432014-09-08 Joseph Myers <joseph@codesourcery.com>
144
145 * c-cppbuiltin.c (c_cpp_builtins): Define macros for mantissa
146 digits of floating-point modes if -fbuilding-libgcc.
147
53d68b9f
JM
1482014-09-05 Joseph Myers <joseph@codesourcery.com>
149
150 * c-cppbuiltin.c (c_cpp_builtins): Also define
151 __LIBGCC_EH_TABLES_CAN_BE_READ_ONLY__,
152 __LIBGCC_EH_FRAME_SECTION_NAME__, __LIBGCC_JCR_SECTION_NAME__,
153 __LIBGCC_CTORS_SECTION_ASM_OP__, __LIBGCC_DTORS_SECTION_ASM_OP__,
154 __LIBGCC_TEXT_SECTION_ASM_OP__, __LIBGCC_INIT_SECTION_ASM_OP__,
155 __LIBGCC_INIT_ARRAY_SECTION_ASM_OP__,
156 __LIBGCC_STACK_GROWS_DOWNWARD__,
157 __LIBGCC_DONT_USE_BUILTIN_SETJMP__,
158 __LIBGCC_DWARF_ALT_FRAME_RETURN_COLUMN__,
159 __LIBGCC_DWARF_FRAME_REGISTERS__,
160 __LIBGCC_EH_RETURN_STACKADJ_RTX__, __LIBGCC_JMP_BUF_SIZE__,
161 __LIBGCC_STACK_POINTER_REGNUM__ and
162 __LIBGCC_VTABLE_USES_DESCRIPTORS__ for -fbuilding-libgcc.
163 (builtin_define_with_value): Handle backslash-escaping in string
164 macro values.
165
f65586dc
RB
1662014-09-05 Richard Biener <rguenther@suse.de>
167
168 PR middle-end/63148
169 * c-format.c (check_format_arg): Properly handle
170 effectively signed POINTER_PLUS_EXPR offset.
171
2b71f4a4
MLI
1722014-09-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
173
174 * c.opt (Wc90-c99-compat,Wc++-compat,Wcomment,Wendif-labels,
175 Winvalid-pch,Wlong-long,Wmissing-include-dirs,Wmultichar,Wpedantic,
176 (Wdate-time,Wtraditional,Wundef,Wvariadic-macros): Add CPP, Var
177 and Init.
178 * c-opts.c (c_common_handle_option): Do not handle here.
179 (sanitize_cpp_opts): Likewise.
180 * c-common.c (struct reason_option_codes_t): Handle
181 CPP_W_C90_C99_COMPAT and CPP_W_PEDANTIC.
182
d2e4feca
MP
1832014-09-03 Marek Polacek <polacek@redhat.com>
184
185 * c.opt (Wlogical-not-parentheses): Enable by -Wall.
186
9a771876
JJ
1872014-09-02 Jakub Jelinek <jakub@redhat.com>
188 Balaji V. Iyer <balaji.v.iyer@intel.com>
189 Igor Zamyatin <igor.zamyatin@intel.com>
190
191 * c-cilkplus.c (cilk_for_number_of_iterations): New function.
192 * c-common.c (c_common_reswords): Added _Cilk_for.
193 * c-common.h (enum rid): Added RID_CILK_FOR.
194 (cilk_for_number_of_iterations): Add declaration.
195 * c-omp.c (c_finish_omp_for): Added checks for CILK_SIMD and
196 CILK_FOR.
197 * c-pragma.c (init_pragma): Register "grainsize" pragma.
198 * c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_GRAINSIZE.
199
81b5d104
MLI
2002014-08-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
201
202 * c.opt (Wbuiltin-macro-redefined,Wdeprecated,Wendif-labels,
203 Winvalid-pch,Wliteral-suffix,Wmissing-include-dirs,Wtrigraphs,
204 Wundef): Use CPP, Var and Init.
205 * c-opts.c (c_common_handle_option): Do not handle the above flags here.
206
b753b37b
MLI
2072014-08-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
208
209 * c.opt (Wbuiltin-macro-redefined): Use CPP, Var and Init.
210 * c-opts.c (c_common_handle_option): Do not handle here.
211
028aee17
JM
2122014-08-25 Jason Merrill <jason@redhat.com>
213
214 * c.opt: Change -std=c++1y and -std=gnu++1y to be aliases for
215 -std=c++14 and -std=gnu++14, rather than the reverse.
216 * c-opts.c (c_common_handle_option): Change OPT_std_c__1y and
217 OPT_std_gnu__1y to OPT_std_c__14 and OPT_std_gnu__14.
218 * c-common.h (cxx_dialect): Remove cxx1y.
219
e4276ba5
ESR
2202014-08-23 Edward Smith-Rowland <3dw4rd@verizon.net>
221
222 * c-common.h (enum cxx_dialect): Add cxx14.
223 * c-opts.c (set_std_cxx1y): Rename to set_std_cxx14; Use cxx14.
224 * c-ubsan.c (ubsan_instrument_shift): Change comment and logic from
225 cxx_dialect == cxx11 || cxx_dialect == cxx1y to cxx_dialect >= cxx11.
226
a545cacd
JM
2272014-08-22 Jason Merrill <jason@redhat.com>
228
229 * c.opt (std=gnu++17): Fix alias.
230
59ea0364
MP
2312014-08-22 Marek Polacek <polacek@redhat.com>
232
233 PR c++/62199
234 * c-common.c (warn_logical_not_parentheses): Don't check LHS. Don't
235 check for vector types. Drop LHS argument.
236 * c-common.h (warn_logical_not_parentheses): Adjust.
237
596e808c
MLI
2382014-08-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
239
240 * c.opt (Wcomment): Use CPP, Var and LangEnabledBy.
241 (Wmultichar): Likewise.
242 (Wdate-time): Use C-family languages instead of Common. Use CPP
243 and Var.
244 * c-opts.c (c_common_handle_option): Do not handle the above
245 options here.
246 (sanitize_cpp_opts): Likewise.
247
18767f65
MLI
2482014-08-21 Manuel López-Ibáñez <manu@gcc.gnu.org>
249
250 PR fortran/44054
251 * c-opts.c: Include tree-diagnostics.h.
252 (c_diagnostic_finalizer): New.
253 (c_common_initialize_diagnostics): Use it.
254
b4413594
MLI
2552014-08-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
256
257 PR preprocessor/51303
258 * c-common.c (struct reason_option_codes_t option_codes):
259 Add CPP_W_MISSING_INCLUDE_DIRS. Sort alphabetically.
260
43f9a13c
MLI
2612014-08-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
262
263 PR c/60975
264 PR c/53063
265 * c.opt (Wvariadic-macros): Use CPP and LangEnabledBy.
266 * c-opts.c (c_common_handle_option): Call cpp_handle_option_auto.
267 (c_common_post_options): Call init_global_opts_from_cpp.
268 (sanitize_cpp_opts): Do not handle Wvariadic-macros here.
269
04159acf
MP
2702014-08-19 Marek Polacek <polacek@redhat.com>
271
272 PR c++/62153
273 * c-common.c (maybe_warn_bool_compare): New function.
274 * c-common.h (maybe_warn_bool_compare): Declare.
275 * c.opt (Wbool-compare): New option.
276
35aff4fb
MP
2772014-08-19 Marek Polacek <polacek@redhat.com>
278
279 * c.opt (Wc99-c11-compat): New option.
280
177cce46
MP
2812014-08-19 Marek Polacek <polacek@redhat.com>
282
283 * c-opts.c (sanitize_cpp_opts): Make warn_long_long be set according
284 to warn_c90_c99_compat.
285 * c.opt (Wc90-c99-compat, Wdeclaration-after-statement): Initialize
286 to -1.
287
6ae9194f
MLI
2882014-08-19 Manuel López-Ibáñez <manu@gcc.gnu.org>
289 Steven Bosscher <steven@gcc.gnu.org>
290
291 PR c/52952
292 * c-format.c: Add extra_arg_loc and format_string_loc to struct
293 format_check_results.
294 (check_function_format): Use true and add comment for boolean
295 argument.
296 (finish_dollar_format_checking): Use explicit location when warning.
297 (check_format_info): Likewise.
298 (check_format_arg): Set extra_arg_loc and format_string_loc.
299 (check_format_info_main): Use explicit location when warning.
300 (check_format_types): Pass explicit location.
301 (format_type_warning): Likewise.
302
8e54f6d3
MLI
3032014-08-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
304
305 PR fortran/44054
306 * c-format.c: Handle Fortran flags.
307
cd4e76fc
IZ
3082014-08-12 Igor Zamyatin <igor.zamyatin@intel.com>
309
310 PR other/61962
311 * array-notation-common.c (find_rank): Added handling for other
312 types of references.
313
f3bede71
MP
3142014-08-10 Marek Polacek <polacek@redhat.com>
315
316 PR c/51849
317 * c-opts.c (sanitize_cpp_opts): Pass warn_c90_c99_compat to libcpp.
318 * c.opt (Wc90-c99-compat): Add option.
319
9f25a338
TS
3202014-08-07 Trevor Saunders <tsaunders@mozilla.com>
321
322 * c-gimplify.c, cilk.c: Remove includes of pointer-set.h.
323
62e4eb35
MP
3242014-08-03 Marek Polacek <polacek@redhat.com>
325
326 * c-common.c (check_case_value): Add location_t parameter. Use it.
327 (c_add_case_label): Pass loc to check_case_value.
328
b787e7a2
TS
3292014-08-02 Trevor Saunders <tsaunders@mozilla.com>
330
331 * cilk.c: Use hash_map instead of pointer_map.
332
6e2830c3
TS
3332014-08-02 Trevor Saunders <tsaunders@mozilla.com>
334
335 * c-gimplify.c: Use hash_set instead of pointer_set.
336
a7ee52fb
IZ
3372014-08-01 Igor Zamyatin <igor.zamyatin@intel.com>
338
339 PR middle-end/61455
340 * array-notation-common.c (extract_array_notation_exprs): Handling
341 of DECL_EXPR added.
342
944fa280
JJ
3432014-08-01 Jakub Jelinek <jakub@redhat.com>
344
345 * c-common.h (min_align_of_type): Removed prototype.
346 * c-common.c (min_align_of_type): Removed.
347 * c-ubsan.h (ubsan_maybe_instrument_reference,
348 ubsan_maybe_instrument_member_call): New prototypes.
349 * c-ubsan.c: Include stor-layout.h and builtins.h.
350 (ubsan_maybe_instrument_reference_or_call,
351 ubsan_maybe_instrument_reference, ubsan_maybe_instrument_call): New
352 functions.
353
b4dfdc11
MG
3542014-07-31 Marc Glisse <marc.glisse@inria.fr>
355
356 PR c++/60517
357 * c.opt (-Wreturn-local-addr): Move to common.opt.
358
a41844e5
JM
3592014-07-30 Jason Merrill <jason@redhat.com>
360
361 PR c++/61659
362 PR c++/61687
363 Revert:
364 * c.opt (-fuse-all-virtuals): New.
365
976d5a22
TT
3662014-07-30 Tom Tromey <tromey@redhat.com>
367
368 PR c/59855
369 * c.opt (Wdesignated-init): New option.
370 * c-common.c (c_common_attribute_table): Add "designated_init".
371 (handle_designated_init): New function.
372
cdc94aca
MP
3732014-07-24 Marek Polacek <polacek@redhat.com>
374
375 PR c/57653
376 * c-opts.c (c_finish_options): If -imacros is in effect, return.
377
f41373b6
DS
3782014-07-16 Dodji Seketeli <dodji@redhat.com>
379
380 PR preprocessor/60723 - missing system-ness marks for macro tokens
381 * c-ppoutput.c (struct print::prev_was_system_token): New data
382 member.
383 (init_pp_output): Initialize it.
384 (maybe_print_line_1, maybe_print_line, print_line_1, print_line)
385 (do_line_change): Return a flag saying if a line marker was
386 emitted or not.
387 (scan_translation_unit): Detect if the system-ness of the token we
388 are about to emit is different from the one of the previously
389 emitted token. If so, emit a line marker. Avoid emitting useless
390 adjacent line markers. Avoid emitting line markers for tokens
391 originating from the expansion of built-in macros.
392 (scan_translation_unit_directives_only): Adjust.
393
4d661eaa
MP
3942014-07-15 Marek Polacek <polacek@redhat.com>
395
396 * c-ubsan.c (ubsan_instrument_bounds): Don't instrument if
397 TYPE_MAX_VALUE is NULL.
398
b108f48f
JJ
3992014-07-14 Jakub Jelinek <jakub@redhat.com>
400
401 PR middle-end/61294
402 * c.opt (Wmemset-transposed-args): New warning.
403
c0221884
JM
4042014-07-10 Jason Merrill <jason@redhat.com>
405
406 PR c++/61659
407 PR c++/61687
408 * c.opt (-fuse-all-virtuals): New.
409
63dfbb95
RB
4102014-07-09 Richard Biener <rguenther@suse.de>
411
412 PR c-family/61741
413 * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
414 using unsigned arithmetic if overflow does not wrap instead of
415 if overflow is undefined.
416
773ec47f
MP
4172014-07-06 Marek Polacek <polacek@redhat.com>
418
419 PR c/6940
420 * c.opt (Wsizeof-array-argument): New option.
421
00a7ba58
JJ
4222014-07-03 Jakub Jelinek <jakub@redhat.com>
423
424 * c-ada-spec.c (dump_ada_nodes): Don't call qsort if
425 comments->count <= 1, as comments->entries might be NULL.
426
52ec0ea3
MP
4272014-07-01 Marek Polacek <polacek@redhat.com>
428
429 * c.opt (Wint-conversion): New option.
430
d5c3d343
MP
4312014-07-01 Marek Polacek <polacek@redhat.com>
432
433 PR c/58286
434 * c.opt (Wincompatible-pointer-types): New option.
435
6e7ceb17
PC
4362014-06-30 Paolo Carlini <paolo.carlini@oracle.com>
437
438 PR c++/51400
439 * c-common.c (handle_noreturn_attribute, handle_const_attribute):
440 Do not discard TYPE_QUALS of type.
441
da73100b
JM
4422014-06-26 Jason Merrill <jason@redhat.com>
443
444 * c-common.h (enum cxx_dialect): Add cxx1z.
445 * c.opt (std=c++1z, std=c++17, std=gnu++1z, std=gnu++17): New.
446 * c-opts.c (c_common_handle_option, set_std_cxx1z): Handle it.
447
08eedf75
TJ
4482014-06-26 Teresa Johnson <tejohnson@google.com>
449
450 * c-common.h (get_dump_info): Declare.
451 * c-gimplify.c (c_genericize): Use saved dump files.
452 * c-opts.c (c_common_parse_file): Begin and end dumps
453 once around parsing invocation.
454 (get_dump_info): New function.
455
7b56b2f8
MP
4562014-06-23 Marek Polacek <polacek@redhat.com>
457 Andrew MacLeod <amacleod@redhat.com>
458
459 PR c/61553
460 * c-common.c (get_atomic_generic_size): Don't segfault if the
461 type doesn't have a size.
462
0e37a2f3
MP
4632014-06-20 Marek Polacek <polacek@redhat.com>
464
465 * c-gimplify.c: Include "c-ubsan.h" and "pointer-set.h".
466 (ubsan_walk_array_refs_r): New function.
467 (c_genericize): Instrument array bounds.
468 * c-ubsan.c: Include "internal-fn.h".
469 (ubsan_instrument_division): Mark instrumented arrays as having
470 side effects. Adjust ubsan_type_descriptor call.
471 (ubsan_instrument_shift): Likewise.
472 (ubsan_instrument_vla): Adjust ubsan_type_descriptor call.
473 (ubsan_instrument_bounds): New function.
474 (ubsan_array_ref_instrumented_p): New function.
475 (ubsan_maybe_instrument_array_ref): New function.
476 * c-ubsan.h (ubsan_instrument_bounds): Declare.
477 (ubsan_array_ref_instrumented_p): Declare.
478 (ubsan_maybe_instrument_array_ref): Declare.
479
4802014-06-20 Hale Wang <hale.wang@arm.com>
dd6fe7d4
HW
481
482 PR lto/61123
483 * c.opt (fshort-enums): Add to LTO.
484 * c.opt (fshort-wchar): Likewise.
485
5c3d09f7
MP
4862014-06-16 Marek Polacek <polacek@redhat.com>
487
488 PR c/60439
489 * c.opt (Wswitch-bool): Add Var.
490
9cf32741
JJ
4912014-06-12 Jakub Jelinek <jakub@redhat.com>
492
493 PR middle-end/61486
494 * c-omp.c (c_omp_split_clauses): Don't crash on firstprivate in
495 #pragma omp target teams or
496 #pragma omp {,target }teams distribute simd.
497
62984918
JM
4982014-06-12 Jason Merrill <jason@redhat.com>
499
500 * c.opt (Wabi=, fabi-compat-version): New.
501 * c-opts.c (c_common_handle_option): Handle -Wabi=.
502 (c_common_post_options): Handle flag_abi_compat_version default.
503 Disallow -fabi-compat-version=1.
504 * c-common.h (abi_version_crosses): New.
505
f961457f
JH
5062014-06-11 Jan Hubicka <hubicka@ucw.cz>
507
508 * c-family/c-common.c (handle_section_attribute): Update handling for
509 section names that are no longer trees.
510
92d28cbb
JJ
5112014-06-10 Jakub Jelinek <jakub@redhat.com>
512
513 PR fortran/60928
514 * c-pragma.c (omp_pragmas_simd): Move PRAGMA_OMP_TASK...
515 (omp_pragmas): ... back here.
516
742938c9
MP
5172014-06-05 Marek Polacek <polacek@redhat.com>
518
519 PR c/49706
520 * c-common.c (warn_logical_not_parentheses): New function.
521 * c-common.h (warn_logical_not_parentheses): Declare.
522 * c.opt (Wlogical-not-parentheses): New option.
523
9d548dfb
MP
5242014-06-04 Marek Polacek <polacek@redhat.com>
525
526 PR c/30020
527 * c-common.c (check_case_bounds): Add location parameter.
528 Use it.
529 (c_add_case_label): Pass loc to check_case_bounds.
530
fedfecef
MP
5312014-06-03 Marek Polacek <polacek@redhat.com>
532
533 PR c/60439
534 * c.opt (Wswitch-bool): New option.
535
f6a7cffc
TS
5362014-05-22 Thomas Schwinge <thomas@codesourcery.com>
537
040d18b6
TS
538 * c-common.h (c_omp_sharing_predetermined, c_omp_remap_decl):
539 Remove prototypes.
540 (record_types_used_by_current_var_decl): Move prototype to where
541 it belongs.
542
f6a7cffc
TS
543 * c-common.c (DEF_FUNCTION_TYPE_0, DEF_FUNCTION_TYPE_6)
544 (DEF_FUNCTION_TYPE_7, DEF_FUNCTION_TYPE_8)
545 (DEF_FUNCTION_TYPE_VAR_5): Cosmetic fixes.
546
632f2871
RS
5472014-05-21 Richard Sandiford <rsandifo@linux.vnet.ibm.com>
548
549 * c-common.h (CTI_VOID_ZERO, void_zero_node): Delete.
550 * c-common.c (c_common_nodes_and_builtins): Don't initialize
551 void_zero_node.
552 * c-pretty-print.c (pp_c_void_constant): New function.
553 (c_pretty_printer::constant, c_pretty_printer::primary_expression)
554 (c_pretty_printer::expression): Handle VOID_CST.
555 * cilk.c (extract_free_variables): Likewise.
556 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift)
557 (ubsan_instrument_vla): Use void_node instead of void_zero_node.
558
766090c2
TS
5592014-05-17 Trevor Saunders <tsaunders@mozilla.com>
560
561 * c-common.h (sorted_fields_type): Remove variable_size GTY attribute.
562 * c-pragma.c (push_alignment): Adjust.
563 (handle_pragma_push_options): Likewise.
564
661a0813
MP
5652014-05-09 Marek Polacek <polacek@redhat.com>
566
567 PR c/50459
568 * c-common.c (check_user_alignment): Return -1 if alignment is error
569 node.
570 (handle_aligned_attribute): Don't call default_conversion on
571 FUNCTION_DECLs.
572 (handle_vector_size_attribute): Likewise.
573 (handle_tm_wrap_attribute): Handle case when wrap_decl is error node.
574 (handle_sentinel_attribute): Call default_conversion and allow even
575 integral types as an argument.
576
2793eeab
MP
5772014-05-08 Marek Polacek <polacek@redhat.com>
578
579 PR c/61053
580 * c-common.c (min_align_of_type): New function factored out from...
581 (c_sizeof_or_alignof_type): ...here.
582 * c-common.h (min_align_of_type): Declare.
583
f827930a
MP
5842014-05-08 Marek Polacek <polacek@redhat.com>
585
586 PR c/61077
587 * c-common.c (check_main_parameter_types): Warn for _Atomic-qualified
588 parameter type of main.
589
ca49b74e
DD
5902014-05-07 DJ Delorie <dj@redhat.com>
591
592 * c-cppbuiltin.c (print_bits_of_hex): New.
593 (builtin_define_type_minmax): Print values using hex so as not to
594 require a pre-computed list of string values.
595
1d60af08
KZ
5962014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
597 Mike Stump <mikestump@comcast.net>
598 Richard Sandiford <rdsandiford@googlemail.com>
599
600 * c-ada-spec.c: Include wide-int.h.
601 (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Remove.
602 (dump_generic_ada_node): Use wide-int interfaces.
603 * c-common.c: Include wide-int-print.h.
604 (shorten_compare): Use wide-int interfaces and tree_int_cst_lt.
605 (pointer_int_sum): Use wide-int interfaces.
606 (c_common_nodes_and_builtins): Use make_int_cst.
607 (match_case_to_enum_1): Use tree_fits_uhwi_p and tree_fits_shwi_p.
608 (handle_alloc_size_attribute): Use wide-int interfaces.
609 (get_nonnull_operand): Likewise.
610 * c-format.c (get_constant): Use tree_fits_uhwi_p.
611 * c-lex.c: Include wide-int.h.
612 (narrowest_unsigned_type): Take a widest_int rather than two
613 HOST_WIDE_INTs.
614 (narrowest_signed_type): Likewise.
615 (interpret_integer): Update accordingly. Use wide-int interfaces.
616 (lex_charconst): Use wide-int interfaces.
617 * c-pretty-print.c: Include wide-int.h.
618 (pp_c_integer_constant): Use wide-int interfaces.
619 * cilk.c (declare_one_free_variable): Use tree_int_cst_lt instead of
620 INT_CST_LT_UNSIGNED.
621
b15458be
RB
6222014-05-06 Richard Biener <rguenther@suse.de>
623
624 * c-opts.c (c_common_post_options): For -freestanding,
625 -fno-hosted and -fno-builtin disable pattern recognition
626 if not enabled explicitely.
627
6577374e
MP
6282014-05-02 Marek Polacek <polacek@redhat.com>
629
630 * c.opt (Wsizeof-pointer-memaccess): Describe option.
631
d00887e8
MP
6322014-05-01 Marek Polacek <polacek@redhat.com>
633
634 PR c/43245
635 * c.opt (Wdiscarded-qualifiers): Add.
636
f8ed5150
MP
6372014-04-30 Marek Polacek <polacek@redhat.com>
638
639 * c-ubsan.c (ubsan_instrument_division): Handle REAL_TYPEs. Perform
640 INT_MIN / -1 sanitization only for integer types.
641
45484dcf
MP
6422014-04-25 Marek Polacek <polacek@redhat.com>
643
644 PR c/18079
645 * c-common.c (handle_noinline_attribute): Warn if the attribute
646 conflicts with always_inline attribute.
647 (handle_always_inline_attribute): Warn if the attribute conflicts
648 with noinline attribute.
649
38e514c0
MP
6502014-04-25 Marek Polacek <polacek@redhat.com>
651
652 PR c/60156
653 * c-common.c (check_main_parameter_types): Warn about variadic main.
654
44875f92
MS
6552014-04-24 Mike Stump <mikestump@comcast.net>
656
657 * c.opt (Wshadow-ivar): Default to on.
658
dcaaa5a0
DP
6592014-04-24 Dimitris Papavasiliou <dpapavas@gmail.com>
660
661 * c.opt (Wshadow-ivar, flocal-ivars, fivar-visibility): Add.
662
c07d7c02
MP
6632014-04-23 Marek Polacek <polacek@redhat.com>
664
665 * c-common.c (handle_tm_wrap_attribute): Tweak error message.
666
1c33c9b7
JJ
6672014-04-22 Jakub Jelinek <jakub@redhat.com>
668
669 PR sanitizer/60275
670 * c-ubsan.c (ubsan_instrument_return): Return __builtin_trap ()
671 if flag_sanitize_undefined_trap_on_error.
672 (ubsan_instrument_division, ubsan_instrument_shift,
673 ubsan_instrument_vla): Likewise. Use __ubsan_handle_*_abort ()
674 if !flag_sanitize_recover.
675
793c625f
MG
6762014-04-22 Marc Glisse <marc.glisse@inria.fr>
677
678 PR libstdc++/43622
679 * c-common.c (registered_builtin_types): Make non-static.
680 * c-common.h (registered_builtin_types): Declare.
681
b0f1bf36
RB
6822014-04-14 Richard Biener <rguenther@suse.de>
683 Marc Glisse <marc.glisse@inria.fr>
684
685 PR c/60819
686 * c-common.c (convert_vector_to_pointer_for_subscript): Properly
687 apply may-alias the scalar pointer type when applicable.
688
3b07fa4a
IZ
6892014-04-12 Igor Zamyatin <igor.zamyatin@intel.com>
690
691 PR middle-end/60467
692 * cilk.c (cilk_set_spawn_marker): Remove FUNCTION_DECL
693 as possible argument for Cilk_spawn.
694
cbbd2b1c
TB
6952014-04-11 Tobias Burnus <burnus@net-b.de>
696
697 PR c/60194
698 * c.opt (Wformat-signedness): Add
699 * c-format.c(check_format_types): Use it.
700
6415bd5d
JM
7012014-04-11 Jason Merrill <jason@redhat.com>
702
703 PR c++/57926
704 * c-common.c (sync_resolve_size, get_atomic_generic_size): Call
705 default_conversion for an array argument.
706
6525783a
MP
7072014-04-08 Marek Polacek <polacek@redhat.com>
708
709 PR sanitizer/60745
710 * c-ubsan.c: Include asan.h.
711 (ubsan_instrument_return): Call initialize_sanitizer_builtins.
712
880a467b
NS
7132014-04-03 Nathan Sidwell <nathan@codesourcery.com>
714
715 * c.opt (Wnon-virtual-dtor): Auto set when Weffc++.
716
7b59ff2d
MP
7172014-04-02 Marek Polacek <polacek@redhat.com>
718
719 * c-common.h (c_expand_expr): Remove declaration.
720
8edbfaa6
JJ
7212014-03-28 Jakub Jelinek <jakub@redhat.com>
722
723 PR c++/60689
724 * c-common.c (add_atomic_size_parameter): When creating new
725 params vector, push the size argument first.
726
07d72e1d
JJ
7272014-03-26 Jakub Jelinek <jakub@redhat.com>
728
729 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
730 ubsan_instrument_vla, ubsan_instrument_return): Adjust
731 ubsan_create_data callers.
732
b35e0fa0
JJ
7332014-03-22 Jakub Jelinek <jakub@redhat.com>
734
735 PR debug/60603
736 * c-opts.c (c_finish_options): Restore cb_file_change call to
737 <built-in>.
738
39a1ebb3
JJ
7392014-03-13 Jakub Jelinek <jakub@redhat.com>
740
741 PR middle-end/36282
742 * c-pragma.c (apply_pragma_weak): Only look at
743 TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl)) if
744 DECL_ASSEMBLER_NAME_SET_P (decl).
745 (maybe_apply_pending_pragma_weaks): Exit early if
746 vec_safe_is_empty (pending_weaks) rather than only when
747 !pending_weaks.
748 (maybe_apply_pragma_weak): Likewise. If !DECL_ASSEMBLER_NAME_SET_P,
749 set assembler name back to NULL afterwards.
750
a07f6ed2
JM
7512014-03-11 Jason Merrill <jason@redhat.com>
752
753 * c.opt: Add -std=gnu++14.
754
75b107f5
IB
7552014-03-11 Ian Bolton <ian.bolton@arm.com>
756
757 * c-opts.c (c_common_post_options): Don't override
758 -ffp-contract=fast if unsafe-math-optimizations is on.
759
f42c637e
PM
7602014-03-08 Paulo Matos <paulo@matos-sorge.com>
761
762 * c.opt: Enable LTO FE for fshort-double.
763
70e24808
JM
7642014-03-07 Jason Merrill <jason@redhat.com>
765
766 * c.opt: Add -std=c++14.
767
3af9c5e9
MP
7682014-03-06 Marek Polacek <polacek@redhat.com>
769
770 PR c/60197
771 * cilk.c (contains_cilk_spawn_stmt): New function.
772 (contains_cilk_spawn_stmt_walker): Likewise.
773 (recognize_spawn): Give error on invalid use of _Cilk_spawn.
774 * c-common.h (contains_cilk_spawn_stmt): Add declaration.
775
b3bdf019
JJ
7762014-03-03 Jakub Jelinek <jakub@redhat.com>
777
778 * c-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_SIMD.
779 (init_pragma): Call cpp_register_deferred_pragma for PRAGMA_CILK_SIMD
780 even when flag_preprocess_only.
781
ca7e759d
JM
7822014-02-26 Jason Merrill <jason@redhat.com>
783
784 PR c++/59231
785 PR c++/11586
786 * c-common.c (shorten_compare): Don't check
787 c_inhibit_evaluation_warnings.
788
28e41874
JJ
7892014-02-19 Jakub Jelinek <jakub@redhat.com>
790
cca615af
JJ
791 PR c/37743
792 * c-common.c (c_common_nodes_and_builtins): When initializing
793 c_uint{16,32,64}_type_node, also set corresponding
794 uint{16,32,64}_type_node to the same value.
795
28e41874
JJ
796 PR c++/60267
797 * c-pragma.c (init_pragma): Don't call cpp_register_deferred_pragma
798 for PRAGMA_IVDEP if flag_preprocess_only.
799
c2bf53a1
JJ
8002014-02-12 Jakub Jelinek <jakub@redhat.com>
801
802 PR c/60101
803 * c-common.c (merge_tlist): If copy is true, call new_tlist,
804 if false, add ADD itself, rather than vice versa.
805 (verify_tree): For COND_EXPR, don't call merge_tlist with non-zero
806 copy. For SAVE_EXPR, only call merge_tlist once.
807
8fcbce72
JJ
8082014-02-08 Jakub Jelinek <jakub@redhat.com>
809
810 PR middle-end/60092
811 * c-common.c (handle_alloc_size_attribute): Use tree_fits_uhwi_p
812 and tree_to_uhwi.
813 (handle_alloc_align_attribute, handle_assume_aligned_attribute): New
814 functions.
815 (c_common_attribute_table): Add alloc_align and assume_aligned
816 attributes.
817
0a756a3f
MP
8182014-02-06 Marek Polacek <polacek@redhat.com>
819
820 PR c/60087
821 * c-common.c (warn_for_sign_compare): Call warning_at with location
822 instead of warning.
823
7ec4847a
MP
8242014-02-05 Marek Polacek <polacek@redhat.com>
825
826 PR c/53123
827 * c-omp.c (c_finish_omp_atomic): Remove unreachable return
828 statement.
829
66f20604
MP
8302014-02-04 Marek Polacek <polacek@redhat.com>
831
832 PR c/60036
833 * c-common.c (conversion_warning): Unwrap C_MAYBE_CONST_EXPR and/or
834 SAVE_EXPR.
835
5d77fb19
MG
8362014-02-03 Marc Glisse <marc.glisse@inria.fr>
837
838 PR c++/53017
839 PR c++/59211
840 * c-common.c (handle_aligned_attribute, handle_alloc_size_attribute,
841 handle_vector_size_attribute, handle_nonnull_attribute): Call
842 default_conversion on the attribute argument.
843 (handle_nonnull_attribute): Increment the argument number.
844
81e5eca8
MP
8452014-01-31 Marek Polacek <polacek@redhat.com>
846
847 PR c/59963
848 * c-common.c (add_atomic_size_parameter): Pass vNULL to
849 build_function_call_vec.
850 (resolve_overloaded_builtin): Likewise.
851 * c-common.h (build_function_call_vec): Adjust declaration.
852
68fca595
MP
8532014-01-30 Marek Polacek <polacek@redhat.com>
854
855 PR c/59940
856 * c-common.h (unsafe_conversion_p): Adjust declaration.
857 (warnings_for_convert_and_check): Likewise.
858 (convert_and_check): Likewise.
859 * c-common.c (unsafe_conversion_p): Add location parameter. Call
860 expansion_point_location_if_in_system_header on it.
861 (warnings_for_convert_and_check): Add location parameter. Call
862 expansion_point_location_if_in_system_header on it. Use it.
863 (convert_and_check): Add location parameter. Use it.
864 (conversion_warning): Likewise.
865 (c_add_case_label): Adjust convert_and_check calls.
866 (scalar_to_vector): Adjust unsafe_conversion_p calls.
867
b72271b9
BI
8682014-01-24 Balaji V. Iyer <balaji.v.iyer@intel.com>
869
870 * c-common.c (c_define_builtins): Replaced flag_enable_cilkplus with
871 flag_cilkplus.
872 * c-pragma.c (init_pragma): Likewise.
873 * c.opt: Likewise.
874
393e8e8b
MP
8752014-01-23 Marek Polacek <polacek@redhat.com>
876
877 PR c/59846
878 * c-common.c (shorten_compare): Add location_t parameter.
879 * c-common.h (shorten_binary_op): Adjust declaration.
880
f04dda30
MP
8812014-01-23 Marek Polacek <polacek@redhat.com>
882
883 PR c/58346
884 * c-common.c (pointer_to_zero_sized_aggr_p): New function.
885 * c-common.h: Declare it.
886
621955cb
EB
8872014-01-20 Eric Botcazou <ebotcazou@adacore.com>
888
889 * c-ada-spec.h (dump_ada_specs): Revert prototype change.
890 * c-ada-spec.c (dump_ads): Likewise.
891 (cpp_check): Likewise.
892 (dump_ada_specs): Likewise.
893
8942014-01-15 Laurent Alfonsi <laurent.alfonsi@st.com>
67bf2939
LA
895
896 PR c++/49718
897 * c-common.c (handle_no_instrument_function_attribute): Allow
898 no_instrument_function attribute in class member
899 definition/declaration.
900
241f845a
JJ
9012014-01-15 Jakub Jelinek <jakub@redhat.com>
902
903 PR c/58943
904 * c-omp.c (c_finish_omp_atomic): Set in_late_binary_op around
905 build_modify_expr with non-NOP_EXPR opcode. Handle return from it
906 being COMPOUND_EXPR.
907 (c_finish_omp_for): Handle incr being COMPOUND_EXPR with first
908 operand a SAVE_EXPR and second MODIFY_EXPR.
909
e83b8e2e
JJ
9102014-01-09 Jakub Jelinek <jakub@redhat.com>
911
912 PR target/58115
913 * c-pch.c (c_common_write_pch): Call
914 prepare_target_option_nodes_for_pch.
915
23a5b65a
RS
9162014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
917
918 Update copyright years
919
f9030485
RS
9202014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
921
922 * array-notation-common.c, c-cilkplus.c: Use the standard form for
923 the copyright notice.
924
f2aa696b
EB
9252013-12-28 Eric Botcazou <ebotcazou@adacore.com>
926
927 * c-ada-spec.c (print_constructor): New function.
928 (print_destructor): Retrieve the origin of the destructor.
929 (print_ada_declaration): Revamp handling of constructors/destructors.
930
1f26ac87
JM
9312013-12-23 Stuart Hastings <stuart@apple.com>
932 Bill Maddox <maddox@google.com>
933 Jason Merrill <jason@redhat.com>
934
935 * c.opt: Add -fdeclone-ctor-dtor.
936 * c-opts.c (c_common_post_options): Default to on iff -Os.
937
41958c28
BI
9382013-12-18 Balaji V. Iyer <balaji.v.iyer@intel.com>
939
940 * c-common.c (c_common_attribute_table): Added "cilk simd function"
941 attribute.
942 * c-pragma.h (enum pragma_cilk_clause): Remove.
943 (enum pragma_omp_clause): Added the following fields:
944 PRAGMA_CILK_CLAUSE_NOMASK, PRAGMA_CILK_CLAUSE_MASK,
945 PRAGMA_CILK_CLAUSE_VECTORLENGTH, PRAGMA_CILK_CLAUSE_NONE,
946 PRAGMA_CILK_CLAUSE_LINEAR, PRAGMA_CILK_CLAUSE_PRIVATE,
947 PRAGMA_CILK_CLAUSE_FIRSTPRIVATE, PRAGMA_CILK_CLAUSE_LASTPRIVATE,
948 PRAGMA_CILK_CLAUSE_UNIFORM.
949
950
12893402
BI
9512013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com>
952
953 * cilk.c (cilk_outline): Made this function non-static.
954 (gimplify_cilk_spawn): Removed pre_p and post_p arguments.
955 (create_cilk_wrapper): Added a new parameter: a function pointer.
956 (c_install_body_w_frame_cleanup): Remove
957 (extract_free_variables): Added VEC_INIT_EXPR and CONSTRUCTOR case.
958 * c-common.h (cilk_outline): New prototype.
959 (gimplify_cilk_spawn): Removed two parameters.
960 (cilk_install_body_with_frame_cleanup): New prototype.
961 * c-gimplify.c (c_gimplify_expr): Added MODIFY_EXPR, CALL_EXPR and
962 CILK_SPAWN_STMT case.
963
085b42ed
BS
9642013-12-11 Bernd Schmidt <bernds@codesourcery.com>
965
2ce064c3
BS
966 * c-common.c (c_fully_fold_internal): Handle ADDR_SPACE_CONVERT_EXPR.
967
085b42ed
BS
968 * c-common.h (enum c_tree_index): Remove CTI_INT_ARRAY_TYPE.
969 (int_array_type_node): Remove.
970 * c-common.c (c_common_nodes_and_builtins): Don't build it.
971
9e36c9ed
MP
9722013-12-05 Marek Polacek <polacek@redhat.com>
973
974 PR c/52023
975 * c-common.c (c_sizeof_or_alignof_type): Move a declaration into
976 [ADJUST_FIELD_ALIGN].
977
296674db
JM
9782013-12-04 Joseph Myers <joseph@codesourcery.com>
979
980 PR c/52023
981 * c-common.c (c_sizeof_or_alignof_type): Add parameter min_alignof
982 and check field alignment if set.
983 * c-common.h (c_sizeof_or_alignof_type): Update prototype.
984 (c_sizeof, c_alignof): Update calls to c_sizeof_or_alignof_type.
985
31e071ae
MP
9862013-12-04 Jakub Jelinek <jakub@redhat.com>
987 Marek Polacek <polacek@redhat.com>
988
989 * c-gimplify.c (c_gimplify_expr): If doing the integer-overflow
990 sanitization, call unsigned_type_for only when !TYPE_OVERFLOW_WRAPS.
991
d7947e19
L
9922013-11-29 H.J. Lu <hongjiu.lu@intel.com>
993
994 PR c/59309
995 * cilk.c (gimplify_cilk_spawn): Properly handle function without
996 arguments.
997
fad7652e
JJ
9982013-11-29 Jakub Jelinek <jakub@redhat.com>
999
1000 PR c/59280
1001 * c-common.c (get_priority): If TREE_VALUE (args) is IDENTIFIER_NODE,
1002 goto invalid. If it is error_mark_node, don't issue further
1003 diagnostics.
1004
8b5e1202
SO
10052013-11-28 Sergey Ostanevich <sergos.gnu@gmail.com>
1006
1007 * c.opt (Wopenmp-simd): New.
1008
0a508bb6
JJ
10092013-11-22 Jakub Jelinek <jakub@redhat.com>
1010
1011 * c-ubsan.h (ubsan_instrument_return): New prototype.
1012 * c-ubsan.c (ubsan_instrument_return): New function.
1013
2fb9a547
AM
10142013-11-22 Andrew MacLeod <amacleod@redhat.com>
1015
1016 * c-common.c: Add required include files from gimple.h.
1017 * c-gimplify.c: Likewise
1018 * cilk.c: Likewise
1019
8400e75e
DM
10202013-11-22 David Malcolm <dmalcolm@redhat.com>
1021
1022 * c-common.c (unsafe_conversion_p): Remove use of
1023 EXPR_LOC_OR_HERE macro.
1024 (conversion_warning): Likewise.
1025 (warnings_for_convert_and_check): Likewise.
1026 (warn_for_collisions_1): Likewise.
1027 (shorten_compare): Likewise, and remove use of in_system_header
1028 macro, using the location from the former.
1029 * c-lex.c (dump_one_header): Remove use of input_filename macro.
1030 (cb_def_pragma): Remove use of in_system_header macro.
1031 (lex_string): Likewise.
1032 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
1033
eb1ce453
KZ
10342013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com>
1035 Mike Stump <mikestump@comcast.net>
1036 Richard Sandiford <rdsandiford@googlemail.com>
1037
1038 * c-ada-spec.c (is_simple_enum): Use tree_to_shwi and tree_to_uhwi
1039 instead of TREE_INT_CST_LOW, in cases where there is a protecting
1040 tree_fits_shwi_p or tree_fits_uhwi_p.
1041 (dump_generic_ada_node): Likewise.
1042 * c-format.c (check_format_arg): Likewise.
1043 * c-pretty-print.c (pp_c_integer_constant): Likewise.
1044
6b3b8c27
KZ
10452013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com>
1046
1047 * c-common.c (check_function_arguments_recurse): Use tree_to_uhwi.
1048
49b0aa18
JC
10492013-11-19 Joshua J Cogliati <jrincayc@yahoo.com>
1050
1051 PR c/53001
1052 * c-common.c (unsafe_conversion_p): Make this function
1053 return an enumeration with more detail.
1054 (conversion_warning): Use the new return type of
1055 unsafe_conversion_p to separately warn either about conversions
1056 that lower floating point number precision or about the other
1057 kinds of conversions.
1058 * c-common.h (enum conversion_safety): New enumeration.
1059 (unsafe_conversion_p): switching return type to
1060 conversion_safety enumeration.
1061 * c.opt: Adding new warning -Wfloat-conversion and
1062 enabling it with -Wconversion.
1063
b826515a
BS
10642013-11-19 Basile Starynkevitch <basile@starynkevitch.net>
1065
1066 * c-opts.c: Include plugin.h.
1067 (cb_file_change): Invoke plugin event PLUGIN_INCLUDE_FILE.
1068
b9a55b13
MP
10692013-11-19 Marek Polacek <polacek@redhat.com>
1070
1071 * c-ubsan.c (ubsan_instrument_division): Adjust ubsan_create_data
1072 call.
1073 (ubsan_instrument_shift): Likewise.
1074 (ubsan_instrument_vla): Likewise.
1075
7d362f6c
RS
10762013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1077
1078 * c-common.c (convert_vector_to_pointer_for_subscript): Remove
1079 cast to unsigned type.
1080
386b1f1f
RS
10812013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1082
1083 * c-common.c (fold_offsetof_1): Use tree_to_uhwi rather than
1084 tree_low_cst.
1085 (complete_array_type): Update comment to refer to tree_to_[su]hwi
1086 rather than tree_low_cst.
1087
ae7e9ddd
RS
10882013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1089
1090 * c-common.c, c-cppbuiltin.c: Replace tree_low_cst (..., 1) with
1091 tree_to_uhwi throughout.
1092
9439e9a1
RS
10932013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1094
1095 * c-common.c, c-format.c, c-omp.c, c-pretty-print.c: Replace
1096 tree_low_cst (..., 0) with tree_to_shwi throughout.
1097
cc269bb6
RS
10982013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1099
1100 * c-ada-spec.c, c-common.c, c-pretty-print.c: Replace
1101 host_integerp (..., 1) with tree_fits_uhwi_p throughout.
1102
9541ffee
RS
11032013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1104
1105 * c-ada-spec.c, c-common.c, c-format.c, c-pretty-print.c: Replace
1106 host_integerp (..., 0) with tree_fits_shwi_p throughout.
1107
c02065fc
AH
11082013-11-15 Aldy Hernandez <aldyh@redhat.com>
1109
1110 * c-cilkplus.c: New file.
1111 * c-common.c (readonly_error): Add location argument.
1112 * c-common.h (readonly_error): Same.
1113 (c_finish_cilk_clauses): Protoize.
1114 (c_check_cilk_loop): Same.
1115 c-omp.c (c_finish_omp_for): Handle CILK_SIMD nodes.
1116 Do not fail on error_mark_node.
1117 Abstract increment canonicalization to here...
1118 (c_omp_for_incr_canonicalize_ptr): New.
1119 c-pragma.c (init_pragma): Register "simd" pragma.
1120 c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_SIMD.
1121 (enum pragma_cilk_clause): New.
1122
9cc65f15
RS
11232013-11-15 Richard Sandiford <rdsandiford@googlemail.com>
1124
1125 * c-pretty-print.c (pp_c_character_constant): Remove unnecessary
1126 wchar_type and host_integerp checks.
1127
18f429e2
AM
11282013-11-14 Andrew MacLeod <amacleod@redhat.com>
1129
1130 * c-common.c: Likewise.
1131 * c-gimplify.c: Likewise.
1132 * cilk.c: Likewise.
1133
d8a2d370
DN
11342013-11-14 Diego Novillo <dnovillo@google.com>
1135
1136 * c-common.c: Include fold-const.h.
1137 Include stor-layout.h.
1138 Include calls.h.
1139 Include stringpool.h.
1140 Include attribs.h.
1141 Include varasm.h.
1142 Include trans-mem.h.
1143 * c-cppbuiltin.c: Include stor-layout.h.
1144 Include stringpool.h.
1145 * c-format.c: Include stringpool.h.
1146 * c-lex.c: Include stringpool.h.
1147 Include stor-layout.h.
1148 * c-pragma.c: Include stringpool.h.
1149 Include attribs.h.
1150 Include varasm.h.
1151 Include gcc-symtab.h.
1152 * c-pretty-print.c: Include stor-layout.h.
1153 Include attribs.h.
1154 * cilk.c: Include stringpool.h.
1155 Include calls.h.
1156
38b7bc7f
JM
11572013-11-13 Joseph Myers <joseph@codesourcery.com>
1158
1159 * c-common.h (enum rid): Add RID_AUTO_TYPE.
1160 * c-common.c (c_common_reswords): Add __auto_type.
1161 (keyword_begins_type_specifier): Handle RID_AUTO_TYPE.
1162
45b0be94
AM
11632013-11-12 Andrew MacLeod <amacleod@redhat.com>
1164
18f429e2
AM
1165 * c-common.c: Include gimplify.h.
1166 * c-gimplify.c: Likewise.
1167 * cilk.c: Likewise.
1168 * c-omp.c: Include gimple-expr.h instead of gimple.h.
1169 * c-ubsan.c: Don't include gimple.h.
45b0be94 1170
582d9b50
JM
11712013-11-12 Joseph Myers <joseph@codesourcery.com>
1172
1173 * c-common.c (c_common_reswords): Add _Thread_local.
1174
6b28e197
JM
11752013-11-09 Joseph Myers <joseph@codesourcery.com>
1176
1177 * c-common.c (atomic_size_supported_p): New function.
1178 (resolve_overloaded_atomic_exchange)
1179 (resolve_overloaded_atomic_compare_exchange)
1180 (resolve_overloaded_atomic_load, resolve_overloaded_atomic_store):
1181 Use it instead of comparing size with a local list of sizes.
1182
267bac10
JM
11832013-11-07 Andrew MacLeod <amacleod@redhat.com>
1184 Joseph Myers <joseph@codesourcery.com>
1185
1186 * c-common.h (enum rid): Add RID_ATOMIC.
1187 * c-common.c (c_common_reswords): Add _Atomic.
1188 (sync_resolve_params): Use TYPE_MAIN_VARIANT on pointer argument.
1189 (keyword_is_type_qualifier): Accept RID_ATOMIC.
1190 * c-format.c (check_format_types): Check for extra _Atomic
1191 qualifiers in format argument.
1192 * c-pretty-print.c (pp_c_cv_qualifiers): Handle atomic qualifier.
1193 (pp_c_type_qualifier_list): Mention _Atomic in comment.
1194
5157b91e
TB
11952013-11-06 Tobias Burnus <burnus@net-b.de>
1196
1197 * c-common.c (reason_option_codes_t): Add CPP_W_DATE_TIME.
1198
6dbe0958
JM
11992013-11-06 Joseph Myers <joseph@codesourcery.com>
1200
1201 * c-opts.c (c_common_post_options): Set -ffp-contract=off in C
1202 standards modes.
1203 * c-cppbuiltin.c (cpp_iec_559_value): Consider -ffp-contract=fast
1204 to mean lack of IEEE 754 support.
1205
e8ff5196
TB
12062013-11-05 Tobias Burnus <burnus@net-b.de>
1207
1208 * c.opt (-Wdate-time): New option
1209 * c-opts.c (sanitize_cpp_opts): Pass on to libcpp.
1210
254a0760
JM
12112013-11-05 Joseph Myers <joseph@codesourcery.com>
1212
1213 * c-cppbuiltin.c (cpp_iec_559_value): Test
1214 flag_excess_precision_cmdline not flag_excess_precision.
1215
6d7f7e0a
TB
12162013-11-05 Tobias Burnus <burnus@net-b.de>
1217
1218 * c.opt (fopenmp-simd): New option.
1219 * c-pragma.c (omp_pragmas): Move pragmas which can contain simd to ...
1220 (omp_pragmas): ... this new struct.
1221 (c_pp_lookup_pragma): Also walk omp_pragmas.
1222 (init_pragma): Init pragmas for -fopenmp-simd.
1223
55a7f02f
MP
12242013-11-04 Marek Polacek <polacek@redhat.com>
1225
1226 PR c++/58979
1227 * c-common.c (invalid_indirection_error): Handle RO_ARROW_STAR case.
1228
9193fb05
JM
12292013-11-04 Joseph Myers <joseph@codesourcery.com>
1230
1231 * c-cppbuiltin.c (cpp_iec_559_value, cpp_iec_559_complex_value):
1232 New functions.
1233 (c_cpp_builtins): Define __GCC_IEC_559 and __GCC_IEC_559_COMPLEX.
1234
94159ecf
EB
12352013-11-04 Eric Botcazou <ebotcazou@adacore.com>
1236
1237 * c-ada-spec.h (cpp_operation): Add IS_TRIVIAL.
1238 (dump_ada_specs): Adjust prototype of second callback.
1239 * c-ada-spec.c (cpp_check): New global variable.
1240 (dump_ada_nodes): Remove cpp_check parameter and do not pass it down.
1241 (print_generic_ada_decl): Likewise.
1242 (has_static_fields): Change return type to bool and add guard.
1243 (has_nontrivial_methods): New predicate.
1244 (is_tagged_type): Change return type to bool.
1245 (separate_class_package): Call has_nontrivial_methods.
1246 (pp_ada_tree_identifier): Minor tweaks.
1247 (dump_ada_function_declaration): Adjust calls to dump_generic_ada_node.
1248 (dump_ada_array_domains): Likewise.
1249 (dump_ada_array_type): Likewise.
1250 (dump_template_types): Remove cpp_check parameter and do not pass it to
1251 dump_generic_ada_node.
1252 (dump_ada_template): Likewise.
1253 (dump_generic_ada_node): Remove cpp_check parameter and do not pass it
1254 recursively.
1255 (print_ada_methods): Change return type to integer. Remove cpp_check
1256 parameter and do not pass it down.
1257 (dump_nested_types): Remove cpp_check parameter and do not pass it to
1258 dump_generic_ada_node.
1259 (print_ada_declaration): Likewise. Test RECORD_OR_UNION_TYPE_P before
1260 accessing methods.
1261 (print_ada_struct_decl): Remove cpp_check parameter and do not pass it
1262 down. Use has_nontrivial_methods to recognize C++ classes. Use return
1263 value of print_ada_methods.
1264 (dump_ads): Rename cpp_check parameter to check and adjust prototype.
1265 Set cpp_check to it before invoking dump_ada_nodes.
1266 (dump_ada_specs): Likewise.
1267
b906f4ca
MP
12682013-11-03 Marek Polacek <polacek@redhat.com>
1269
1270 * c-ubsan.c: Don't include hash-table.h.
1271 (ubsan_instrument_vla): New function.
1272 * c-ubsan.h: Declare it.
1273
5e20cdc9
DM
12742013-10-31 David Malcolm <dmalcolm@redhat.com>
1275
1276 Automated part of renaming of symtab_node_base to symtab_node.
1277
1278 Patch autogenerated by rename_symtab.py from
1279 https://github.com/davidmalcolm/gcc-refactoring-scripts
1280 revision 58bb219cc090b2f4516a9297d868c245495ee622
1281
1282 * c-pragma.c (maybe_apply_pending_pragma_weaks): Rename
1283 symtab_node_base to symtab_node.
1284
7057e645
ESR
12852013-10-31 Edward Smith-Rowland <3dw4rd@verizon.net>
1286
1287 Implement C++14 digit separators.
1288 * c-lex.c (interpret_float): Remove digit separators from scratch string
1289 before building real literal.
1290
193ea7bc
JJ
12912013-10-30 Jakub Jelinek <jakub@redhat.com>
1292
1293 * cilk.c (create_cilk_helper_decl): Use HOST_WIDE_INT_PRINT_DEC.
1294
939b37da
BI
12952013-10-29 Balaji V. Iyer <balaji.v.iyer@intel.com>
1296
1297 * c-common.c (c_common_reswords[]): Added _Cilk_spawn and _Cilk_sync
1298 fields.
1299 (c_define_builtins): Called cilk_init_builtins if Cilk Plus is
1300 enabled.
1301 * c-common.h (enum rid): Added RID_CILK_SPAWN and RID_CILK_SYNC.
1302 (insert_cilk_frame): New prototype.
1303 (cilk_init_builtins): Likewise.
1304 (gimplify_cilk_spawn): Likewise.
1305 (c_cilk_install_body_w_frame_cleanup): Likewise.
1306 (cilk_detect_spawn_and_unwrap): Likewise.
1307 (cilk_set_spawn_marker): Likewise.
1308 (build_cilk_sync): Likewise.
1309 (build_cilk_spawn): Likewise.
1310 * cilk.c: New file.
1311
67348ccc
DM
13122013-10-29 David Malcolm <dmalcolm@redhat.com>
1313
1314 Patch autogenerated by refactor_symtab.py from
1315 https://github.com/davidmalcolm/gcc-refactoring-scripts
1316 revision 58bb219cc090b2f4516a9297d868c245495ee622
1317
1318 * c-gimplify.c (c_genericize): Update for conversion of symtab types
1319 to a true class hierarchy.
1320 * c-pragma.c (maybe_apply_pending_pragma_weaks): Likewise.
1321
d570872d
RS
13222013-10-27 Richard Sandiford <rdsandiford@googlemail.com>
1323
1324 * c-lex.c (interpret_integer): Remove call to cpp_num_sign_extend.
1325
98906124
JL
13262013-10-26 Jeff Law <law@redhat.com>
1327
1328 * c-family/c-common.c (c_define_builtins): Remove mudflap support.
1329 * c-family/c.opt: Ignore and warn for mudflap options.
1330
d73749df 13312013-10-24 Tobias Burnus <burnus@net-b.de>
8170608b
TB
1332
1333 PR other/33426
1334 * c-pragma.c (init_pragma) Add #pragma ivdep handling.
1335 * c-pragma.h (pragma_kind): Add PRAGMA_IVDEP.
1336
3f04b1bb
JM
13372013-10-23 Jason Merrill <jason@redhat.com>
1338
1339 * c-format.c (gcc_cxxdiag_char_table): Add %X.
1340
acf0174b
JJ
13412013-10-11 Jakub Jelinek <jakub@redhat.com>
1342
acd15a28
JJ
1343 * c-common.h (omp_clause_mask::operator !=): New method.
1344 * c-omp.c (c_omp_split_clauses): Use if ((mask & something) != 0)
1345 instead of if (mask & something) tests everywhere.
1346
acf0174b
JJ
1347 * c-cppbuiltin.c (c_cpp_builtins): Predefine _OPENMP to
1348 201307 instead of 201107.
1349 * c-common.c (DEF_FUNCTION_TYPE_8): Define.
1350 (c_common_attribute_table): Add "omp declare target" and
1351 "omp declare simd" attributes.
1352 (handle_omp_declare_target_attribute,
1353 handle_omp_declare_simd_attribute): New functions.
1354 * c-omp.c: Include c-pragma.h.
1355 (c_finish_omp_taskgroup): New function.
1356 (c_finish_omp_atomic): Add swapped argument, if true,
1357 build the operation first with rhs, lhs arguments and use NOP_EXPR
1358 build_modify_expr.
1359 (c_finish_omp_for): Add code argument, pass it down to make_code.
1360 (c_omp_split_clauses): New function.
1361 (c_split_parallel_clauses): Removed.
1362 (c_omp_declare_simd_clause_cmp, c_omp_declare_simd_clauses_to_numbers,
1363 c_omp_declare_simd_clauses_to_decls): New functions.
1364 * c-common.h (omp_clause_mask): New type.
1365 (OMP_CLAUSE_MASK_1): Define.
1366 (omp_clause_mask::omp_clause_mask, omp_clause_mask::operator &=,
1367 omp_clause_mask::operator |=, omp_clause_mask::operator ~,
1368 omp_clause_mask::operator |, omp_clause_mask::operator &,
1369 omp_clause_mask::operator <<, omp_clause_mask::operator >>,
1370 omp_clause_mask::operator ==): New methods.
1371 (enum c_omp_clause_split): New.
1372 (c_finish_omp_taskgroup): New prototype.
1373 (c_finish_omp_atomic): Add swapped argument.
1374 (c_finish_omp_for): Add code argument.
1375 (c_omp_split_clauses): New prototype.
1376 (c_split_parallel_clauses): Removed.
1377 (c_omp_declare_simd_clauses_to_numbers,
1378 c_omp_declare_simd_clauses_to_decls): New prototypes.
1379 * c-pragma.c (omp_pragmas): Add new OpenMP 4.0 constructs.
1380 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_CANCEL,
1381 PRAGMA_OMP_CANCELLATION_POINT, PRAGMA_OMP_DECLARE_REDUCTION,
1382 PRAGMA_OMP_DISTRIBUTE, PRAGMA_OMP_END_DECLARE_TARGET, PRAGMA_OMP_SIMD,
1383 PRAGMA_OMP_TARGET, PRAGMA_OMP_TASKGROUP and PRAGMA_OMP_TEAMS.
1384 Remove PRAGMA_OMP_PARALLEL_FOR and PRAGMA_OMP_PARALLEL_SECTIONS.
1385 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_ALIGNED,
1386 PRAGMA_OMP_CLAUSE_DEPEND, PRAGMA_OMP_CLAUSE_DEVICE,
1387 PRAGMA_OMP_CLAUSE_DIST_SCHEDULE, PRAGMA_OMP_CLAUSE_FOR,
1388 PRAGMA_OMP_CLAUSE_FROM, PRAGMA_OMP_CLAUSE_INBRANCH,
1389 PRAGMA_OMP_CLAUSE_LINEAR, PRAGMA_OMP_CLAUSE_MAP,
1390 PRAGMA_OMP_CLAUSE_NOTINBRANCH, PRAGMA_OMP_CLAUSE_NUM_TEAMS,
1391 PRAGMA_OMP_CLAUSE_PARALLEL, PRAGMA_OMP_CLAUSE_PROC_BIND,
1392 PRAGMA_OMP_CLAUSE_SAFELEN, PRAGMA_OMP_CLAUSE_SECTIONS,
1393 PRAGMA_OMP_CLAUSE_SIMDLEN, PRAGMA_OMP_CLAUSE_TASKGROUP,
1394 PRAGMA_OMP_CLAUSE_THREAD_LIMIT, PRAGMA_OMP_CLAUSE_TO and
1395 PRAGMA_OMP_CLAUSE_UNIFORM.
1396
826cacfe
MG
13972013-10-09 Marc Glisse <marc.glisse@inria.fr>
1398
1399 PR tree-optimization/20318
1400 * c-common.c (handle_returns_nonnull_attribute): New function.
1401 (c_common_attribute_table): Add returns_nonnull.
1402
2284b034
MG
14032013-10-03 Marc Glisse <marc.glisse@inria.fr>
1404
1405 PR c++/19476
1406 * c.opt (fcheck-new): Move to common.opt.
1407
b56e9788
MP
14082013-09-25 Marek Polacek <polacek@redhat.com>
1409 Jakub Jelinek <jakub@redhat.com>
1410
1411 PR sanitizer/58413
1412 * c-ubsan.c (ubsan_instrument_shift): Don't instrument
1413 an expression if we can prove it is correct.
1414 (ubsan_instrument_division): Likewise. Remove unnecessary
1415 check.
1416
ce6923c5
MP
14172013-09-18 Marek Polacek <polacek@redhat.com>
1418
1419 PR sanitizer/58411
1420 * c-common.c (handle_no_sanitize_undefined_attribute): New function.
1421 Declare it.
1422 (struct attribute_spec c_common_att): Add no_sanitize_undefined.
1423
fb5610fb
IS
14242013-09-14 Iain Sandoe <iain@codesourcery.com>
1425
1426 PR target/48094
1427 * c.opt (fgnu-runtime, fnext-runtime, fobjc-abi-version,
1428 fobjc-gc, freplace-objc-classes): Accept for LTO.
1429
88b0e79e
JC
14302013-09-13 Jacek Caban <jacek@codeweavers.com>
1431
1432 * c-target.def: New hook
1433
c9b0866a
PC
14342013-09-09 Paolo Carlini <paolo.carlini@oracle.com>
1435
1436 PR c++/43452
1437 * c.opt (Wdelete-incomplete): Add.
1438
0af94e6f
JR
14392013-09-08 Joern Rennecke <joern.rennecke@embecosm.com>
1440
1441 * c-common.c (same_scalar_type_ignoring_signedness): Delete.
1442 (vector_types_compatible_elements_p): New function.
1443 * c-common.h: (same_scalar_type_ignoring_signedness): Delete
1444 declaration.
1445 (vector_types_compatible_elements_p): Declare.
1446
7c26172c
GDR
14472013-09-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
1448
1449 * c-pretty-print.h (c_pretty_printer::simple_type_specifier): Now
1450 a virtual member function.
1451 (pp_simple_type_specifier): Remove.
1452 (pp_c_type_specifier): Likewise.
1453 * c-pretty-print.c (c_pretty_printer::simple_type_specifier):
1454 Rename from pp_c_type_specifier. Adjust.
1455 (c_pretty_printer::c_pretty_printer): Do not assign to
1456 simple_type_specifier.
1457
20059c8b
GDR
14582013-09-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
1459
1460 * c-pretty-print.h (c_pretty_printer::type_id): Now a virtual
1461 member function.
1462 (c_pretty_printer::storage_class_specifier): Likewise.
1463 (c_pretty_printer::initializer): Likewise.
1464 (pp_declaration): Remove.
1465 (pp_declaration_specifiers): Likewise.
1466 (pp_abstract_declarator): Likewise.
1467 (pp_declarator): Likewise.
1468 (pp_type_id): Likewise.
1469 (pp_statement): Likewise.
1470 (pp_constant): Likewise.
1471 (pp_id_expression): Likewise.
1472 (pp_primary_expression): Likewise.
1473 (pp_unary_expression): Likewise.
1474 (pp_multiplicative_expression): Likewise.
1475 (pp_conditional_expression): Likewise.
1476 (pp_assignment_expression): Likewise.
1477 (pp_expression): Likewise.
1478 (pp_c_type_id): Likewise.
1479 (pp_c_storage_class_specifier): Likewise.
1480 * c-pretty-print.c (pp_c_type_cast): Tidy.
1481 (pp_c_pointer): Likewise.
1482 (pp_c_type_specifier): Likewise.
1483 (pp_c_parameter_type_list): Likewise.
1484 (pp_c_function_definition): Likewise.
1485 (pp_c_init_declarator): Likewise.
1486 (pp_c_initializer_list): Likewise.
1487 (pp_c_constructor_elts): Likewise.
1488 (c_pretty_printer::direct_abstract_declarator): Likewise.
1489 (c_pretty_printer::declaration_specifiers): Likewise.
1490 (c_pretty_printer::primary_expression): Likewise.
1491 (c_pretty_printer::postfix_expression): Likewise.
1492 (c_pretty_printer::type_id): Rename from pp_c_type_id.
1493 (c_pretty_printer::storage_class_specifier): Rename from
1494 pp_c_storage_class_specifier.
1495 (c_pretty_printer::initializer): Rename from pp_c_initializer.
1496 (c_pretty_printer::c_pretty_printer): Do not assign to type_id,
1497 storage_class_specifier, initializer, offset_list, flags.
1498
de5a5fa1
MP
14992013-08-30 Marek Polacek <polacek@redhat.com>
1500
1501 * c-ubsan.c: New file.
1502 * c-ubsan.h: New file.
1503
8f0e4d72
GDR
15042013-08-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
1505
1506 * c-pretty-print.h (c_pretty_printer::declaration): Now a virtual
1507 member function.
1508 (c_pretty_printer::declaration_specifiers): Likewise.
1509 (c_pretty_printer::declarator): Likewise.
1510 (c_pretty_printer::abstract_declarator): Likewise.
1511 (c_pretty_printer::direct_abstract_declarator): Likewise.
1512 (c_pretty_printer::direct_declarator): Likewise.
1513 (c_pretty_printer::function_specifier): Likewise.
1514 (pp_declaration): Adjust.
1515 (pp_declaration_specifiers): Likewise.
1516 (pp_abstract_declarator): Likewise.
1517 (pp_direct_declarator): Likewise.
1518 (pp_function_specifier): Likewise.
1519 (pp_direct_abstract_declarator): Remove as unused.
1520 (pp_c_declaration): Remove.
1521 (pp_c_declaration_specifiers): Likewise.
1522 (pp_c_declarator): Likewise.
1523 (pp_c_direct_declarator): Likewise.
1524 (pp_c_function_specifier): Likewise.
1525 (pp_c_direct_abstract_declarator): Likewise.
1526 * c-pretty-print.c (c_pretty_printer::abstract_declarator): Rename
1527 from pp_c_abstract_declarator. Adjust.
1528 (c_pretty_printer::direct_abstract_declarator): Rename from
1529 pp_c_direct_abstract_declarator. Adjust.
1530 (c_pretty_printer::function_specifier): Rename from
1531 pp_c_function_specifier. Adjust.
1532 (c_pretty_printer::declaration_specifiers): Rename from
1533 pp_c_declaration_specifiers. Adjust.
1534 (c_pretty_printer::direct_declarator): Rename from
1535 pp_c_direct_declarator. Adjust.
1536 (c_pretty_printer::declarator): Rename from pp_c_declarator. Adjust.
1537 (c_pretty_printer::declaration): Rename from pp_c_declaration. Adjust.
1538 (c_pretty_printer::c_pretty_printer): Do not assign to
1539 declaration, declaration_specifiers, declarator,
1540 direct_declarator, direct_abstract_declarator, function_specifier.
1541
00d34d3a
GDR
15422013-08-26 Gabriel Dos Reis <gdre@integrable-solutions.net>
1543
1544 * c-pretty-print.h (c_pretty_printer::unary_expression): Now a
1545 virtual member function.
1546 (c_pretty_printer::multiplicative_expression): Likewise.
1547 (c_pretty_printer::conditional_expression): Likewise.
1548 (c_pretty_printer::assignment_expression): Likewise.
1549 (c_pretty_printer::expression): Likewise.
1550 (pp_unary_expression): Adjust.
1551 (pp_multiplicative_expression): Likewise.
1552 (pp_assignment_expression): Likewise.
1553 (pp_conditional_expression): Likewise.
1554 (pp_expression): Likewise.
1555 * c-pretty-print.c (c_pretty_printer::unary_expression): Rename
1556 from pp_c_unary_expression. Adjust.
1557 (c_pretty_printer::multiplicative_expression): Rename from
1558 pp_c_multiplicative_expression. Adjust.
1559 (c_pretty_printer::conditional_expression): Rename from
1560 pp_c_conditional_expression. Adjust.
1561 (c_pretty_printer::assignment_expression): Rename from
1562 pp_c_assignment_expression. Adjust.
1563 (c_pretty_printer::expression): Rename from pp_c_expression. Adjust.
1564 (c_pretty_printer::c_pretty_printer): Do not assign to
1565 unary_expression, multiplicative_expression,
1566 conditional_expression, expression.
1567
fb22178f
GDR
15682013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
1569
1570 * c-pretty-print.h (c_pretty_printer::postfix_expression): Now a
1571 virtual member function.
1572 (pp_postfix_expression): Adjust.
1573 (pp_c_postfix_expression): Remove.
1574 * c-pretty-print.c (c_pretty_printer::postfix_expression): Rename
1575 from pp_c_postfix_expression. Adjust.
1576 (c_pretty_printer::c_pretty_printer): Do not assign to
1577 postfix_expression.
1578
7ecc2600
GDR
15792013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
1580
1581 * c-pretty-print.h (c_pretty_printer::primary_expression): Now a
1582 virtua member function.
1583 (pp_primary_expression): Adjust.
1584 (pp_c_primary_expression): Remove.
1585 * c-pretty-print.c (c_pretty_printer::primary_expression): Rename
1586 from pp_c_primary_expression. Adjust.
1587 (pp_c_initializer_list): Use pp_primary_expression.
1588 (c_pretty_printer::c_pretty_printer): Do not assign to
1589 primary_expression.
1590
0691175f
GDR
15912013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
1592
1593 * c-pretty-print.h (c_pretty_printer::translate_string): Declare.
1594 * c-pretty-print.c (M_): Remove.
1595 (c_pretty_printer::translate_string): Define.
1596 (pp_c_type_specifier): Use it.
1597 (pp_c_primary_expression): Likewise.
1598 (pp_c_expression): Likewise.
1599
66dfe4c4
GDR
16002013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
1601
1602 * c-pretty-print.h (c_pretty_printer::id_expression): Now a
1603 virtual function.
1604 (pp_c_id_expression): Remove.
1605 (pp_id_expression): Adjust.
1606 * c-pretty-print.c (c_pretty_printer::id_expression): Rename from
1607 pp_c_id_expression. Adjust.
1608 (pp_c_postfix_expression): Use pp_id_expression.
1609 (c_pretty_printer::c_pretty_printer): Do not assign to id_expression.
1610
ca43e9d5
GDR
16112013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
1612
1613 * c-pretty-print.h (c_pretty_printer::constant): Now a virtual
1614 member function.
1615 (pp_constant): Adjust.
1616 (pp_c_constant): Remove.
1617 * c-pretty-print.c (c_pretty_printer::constant): Rename from
1618 pp_c_constant. Adjust.
1619 (pp_c_constant)
1620 (pp_c_primary_expression): Call pp_constant in lieu of pp_c_constant.
1621 (c_pretty_printer::c_pretty_printer): Remove assignment to constant.
1622
da6ca2b5
GDR
16232013-08-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
1624
1625 * c-pretty-print.h (pp_c_pretty_printer_init): Remove.
1626 (c_pretty_printer::c_pretty_printer): Declare.
1627 * c-pretty-print.c (pretty_printer::c_pretty_printer): Rename from
1628 c_pretty_printer_init. Adjust.
1629 (print_c_tree): Do not call c_pretty_printer_init.
1630 * c-ada-spec.c (dump_ads): Remove call to pp_construct.
1631
65a372f4
AC
16322013-08-09 Arnaud Charlet <charlet@adacore.com>
1633
1634 * c-ada-spec.c (print_ada_declaration): Prevent accessing null asm name
1635
fd9b0f32
PC
16362013-08-05 Paolo Carlini <paolo.carlini@oracle.com>
1637
1638 PR c++/58080
1639 * c-common.c (pointer_int_sum): Add bool parameter.
1640 * c-common.h (pointer_int_sum): Adjust declaration.
1641
e0aec1e9
GDR
16422013-08-05 Gabriel Dos Reis <gdr@integrable-solutions.net>
1643
1644 * c-pretty-print.c (print_c_tree): Simplify. Use non-static local
1645 c_pretty_printer variable.
1646
b066401f
GDR
16472013-08-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
1648
1649 * c-pretty-print.h (c_pretty_printer): Derive from pretty_printer.
1650 (pp_base): Remove.
1651 (pp_c_base): Likewise. Adjust users.
1652 * c-pretty-print.c (pp_c_maybe_whitespace): Adjust.
1653 (pp_c_whitespace): Do not call pp_base.
1654 (pp_c_left_paren): Likewise.
1655 (pp_c_right_paren): Likewise.
1656 (pp_c_left_brace): Likewise.
1657 (pp_c_right_brace): Likewise.
1658 (pp_c_left_bracket): Likewise.
1659 (pp_c_right_bracket): Likewise.
1660 (pp_c_dot): Likewise.
1661 (pp_c_ampersand): Likewise.
1662 (pp_c_star): Likewise.
1663 (pp_c_arrow): Likewise.
1664 (pp_c_semicolon): Likewise.
1665 (pp_c_complement): Likewise.
1666 (pp_c_exclamation): Likewise.
1667 (pp_c_direct_declarator): Likewise.
1668 (pp_c_ws_string): Likewise.
1669 (pp_c_identifier): Likewise.
1670 (pp_c_statement): Likewise.
1671 (print_c_tree): Likewise.
1672
65e5a578
ESR
16732013-08-04 Ed Smith-Rowland <3dw4rd@verizon.net>
1674
1675 PR c++/58072
1676 * c-common.c (c_parse_error): Catch user-defined literal tokens and
1677 provide useful error strings.
1678
137a1a27
GDR
16792013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
1680
1681 * c-ada-spec.c (pp_ada_tree_identifier): Use specialized pretty
1682 printer functions instead of pp_string or operators and punctuators.
1683 (dump_generic_ada_node): Likewise.
1684 * c-pretty-print.c (pp_c_type_specifier): Likewise.
1685 (pp_c_relational_expression): Likewise.
1686 (pp_c_logical_or_expression): Likewise.
1687
07838b13
GDR
16882013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
1689
1690 * c-ada-spec.c (print_ada_macros): Use specialized pretty printer
1691 functions instead of pp_character.
1692 (pp_ada_tree_identifier): Likewise.
1693 (dump_ada_double_name): Likewise.
1694 (dump_ada_function_declaration): Likewise.
1695 (dump_ada_array_domains): Likewise.
1696 (dump_template_types): Likewise.
1697 (dump_generic_ada_node): Likewise.
1698 (print_ada_declaration): Likewise.
1699 (print_ada_struct_decl): Likewise.
1700 * c-pretty-print.c (pp_c_integer_constant): Likewise.
1701
433cc7b0
TT
17022013-07-23 Tom Tromey <tromey@redhat.com>
1703
1704 * c-common.h (enum rid) <RID_GENERIC>: New constant.
1705 * c-common.c (c_common_reswords): Add _Generic.
1706
688010ba
OB
17072013-07-21 OndÅ\99ej Bílka <neleai@seznam.cz>
1708
1709 * c-common.c: Fix typos.
1710 * c-common.h: Likewise.
1711
2a99e5e6
LL
17122013-07-13 Lubos Lunak <l.lunak@suse.cz>
1713
1714 PR c++/55203
1715 * c-common.c (c_common_attribute_table): Add warn_unused.
1716 (handle_warn_unused_attribute): New.
1717
c26302d5
JJ
17182013-07-10 Jakub Jelinek <jakub@redhat.com>
1719
1720 * c-ppoutput.c (scan_translation_unit): Call account_for_newlines
1721 for all CPP_TOKEN_FLD_STR tokens, not just CPP_COMMENT.
1722
dfeadaa0
PC
17232013-07-10 Paolo Carlini <paolo.carlini@oracle.com>
1724
1725 PR c++/57869
1726 * c.opt: Add Wconditionally-supported.
1727
6a2fa4b2
GS
17282013-07-08 Graham Stott <graham.stott@btinternet.com>
1729
1730 * c-family/array-notation-common.c (length_mismatch_in_expr_p): Delete
1731 unused variables l_length and l_node.
1732
ecdbd01a 17332013-07-04 Joern Rennecke <joern.rennecke@embecosm.com>
40d3d530
JR
1734
1735 PR c/57821
1736 * c-common.c (complete_array_type): Delay folding first index
1737 like other indices. When folding, check for index overflow.
1738
bedc293e
MG
17392013-06-27 Marc Glisse <marc.glisse@inria.fr>
1740
1741 PR c++/57509
1742 * c-common.h (c_build_vec_perm_expr): New complain argument.
1743 * c-common.c (c_build_vec_perm_expr): Likewise.
1744 Use save_expr also in C++.
1745
604b2bfc
GDR
17462013-06-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
1747
1748 * c-common.c (c_common_nodes_and_builtins): Use cxx11 in lieu of cxx0x.
1749 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
1750 * c-opts.c (c_common_post_options): Likewise.
1751
dfeadaa0 17522013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
713b46fa
BI
1753
1754 * array-notation-common.c (length_mismatch_in_expr): Changed the
1755 parameter type's from a dynamic array to a vec_tree. Also removed
1756 the size parameters.
1757 * c-common.h (length_mismatch_in_expr_p): Fixed prototype's as per
1758 the change above.
1759
2ce86d2e
BI
17602013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
1761
1762 * c-common.h (struct cilkplus_an_parts): New structure.
1763 (struct cilkplus_an_loop_parts): Likewise.
1764 (cilkplus_extract_an_triplets): New prototype.
1765 (fix_sec_implicit_args): Likewise.
1766 * array-notation-common.c (cilkplus_extract_an_triplets): New function.
1767 (fix_sec_implicit_args): Likewise.
604b2bfc 1768
07a6825b
BI
17692013-06-20 Balaji V. Iyer <balaji.v.iyer@intel.com>
1770
1771 * array-notation-common.c (find_inv_trees): Removed an unwanted
1772 typecasting.
1773 * c-common.h (struct inv_list::additional_tcodes): Changed type from
1774 enum rid to enum tree_code.
1775
08346abd
JH
17762013-06-11 Jan Hubicka <jh@suse.cz>
1777
1778 * c-common.c (handle_alias_ifunc_attribute): Do not set
1779 DECL_EXTERNAL for weakref variables.
1780 * c-pragma.c (handle_pragma_weak): Make sure aliases
1781 are not declared as external.
1782
d60f1706
BI
17832013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
1784
1785 * array-notation-common.c (length_mismatch_in_expr_p): Moved this
1786 function from c/c-array-notation.c.
1787 (is_cilkplus_reduce_builtin): Likewise.
1788 (find_rank): Likewise.
1789 (extract_array_notation_exprs): Likewise.
1790 (replace_array_notations): Likewise.
1791 (find_inv_trees): Likewise.
1792 (replace_inv_trees): Likewise.
1793 (contains_array_notation_expr): Likewise.
1794 (find_correct_array_notation_type): Likewise.
1795 * c-common.h (struct inv_list): Moved this struct from the file
1796 c/c-array-notation.c and added a new field called additional tcodes.
1797 (length_mismatch_in_expr_p): New prototype.
1798 (is_cilkplus_reduce_builtin): Likewise.
1799 (find_rank): Likewise.
1800 (extract_array_notation_exprs): Likewise.
1801 (replace_array_notation): Likewise.
1802 (find_inv_trees): Likewise.
1803 (replace_inv_trees): Likewise.
1804 (find_correct_array_notation_type): Likewise.
dfeadaa0 1805
36536d79
BI
18062013-05-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
1807
1808 * c-common.c (c_define_builtins): When cilkplus is enabled, the
1809 function array_notation_init_builtins is called.
1810 (c_common_init_ts): Added ARRAY_NOTATION_REF as typed.
1811 * c-common.def (ARRAY_NOTATION_REF): New tree.
1812 * c-common.h (build_array_notation_expr): New function declaration.
1813 (build_array_notation_ref): Likewise.
1814 (extract_sec_implicit_index_arg): New extern declaration.
1815 (is_sec_implicit_index_fn): Likewise.
1816 (ARRAY_NOTATION_CHECK): New define.
1817 (ARRAY_NOTATION_ARRAY): Likewise.
1818 (ARRAY_NOTATION_START): Likewise.
1819 (ARRAY_NOTATION_LENGTH): Likewise.
1820 (ARRAY_NOTATION_STRIDE): Likewise.
1821 * c-pretty-print.c (pp_c_postifix_expression): Added a new case for
1822 ARRAY_NOTATION_REF.
1823 (pp_c_expression): Likewise.
1824 * c.opt (flag_enable_cilkplus): New flag.
1825 * array-notation-common.c: New file.
1826
f7716d57
JJ
18272013-05-14 Jakub Jelinek <jakub@redhat.com>
1828
1829 PR c++/57274
1830 * c-common.c (verify_tree): Don't recurse into SIZEOF_EXPR.
1831
a5e0cd1d
MG
18322013-05-10 Marc Glisse <marc.glisse@inria.fr>
1833
1834 * c-common.c (vector_types_convertible_p): No TYPE_PRECISION for
1835 vectors.
1836
f6bc1c4a
HS
18372013-05-07 Han Shen <shenhan@google.com>
1838
1839 * c-cppbuiltin.c (c_cpp_builtins): Added "__SSP_STRONG__=3".
1840
3f12f6e9
SKS
18412013-04-29 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
1842
1843 * c-common.c (check_user_alignment): Emit error for negative values.
1844
61949153
PC
18452013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
1846
1847 * c-opts.c (set_std_cxx11): Use CLK_CXX1Y and CLK_GNUCXX1Y.
1848
e93e18e9
PC
18492013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
1850
1851 * c-cppbuiltin.c (c_cpp_builtins): Do not define
1852 __GXX_EXPERIMENTAL_CXX1Y__.
1853
44d90fe1
PC
18542013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
1855 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
1856
1857 * c.opt ([Wpointer-arith]): Enabled by -Wpedantic, as documented.
1858 * c-common.c (pointer_int_sum): Change -Wpointer-arith pedwarns
1859 to simply use OPT_Wpointer_arith.
1860 (c_sizeof_or_alignof_type): Likewise.
1861
13f39b2e
PC
18622013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
1863
1864 * c-cppbuiltin.c (c_cpp_builtins): Define __GXX_EXPERIMENTAL_CXX1Y__.
1865
4b84d650
JJ
18662013-04-12 Jakub Jelinek <jakub@redhat.com>
1867
1868 * c-format.c (gcc_diag_char_table, gcc_tdiag_char_table,
1869 gcc_cdiag_char_table, gcc_cxxdiag_char_table): Add %r and %R format
1870 specifiers.
1871
fb037b5d
SB
18722013-04-07 Steven Bosscher <steven@gcc.gnu.org>
1873
1874 * c-pragma.c (add_to_renaming_pragma_list): Fix leading comment.
1875
4e856798
PC
18762013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
1877
1878 * c-common.c (pointer_int_sum): Remove dead code.
1879
4b1baac8
RS
18802013-03-09 Richard Sandiford <rdsandiford@googlemail.com>
1881
1882 PR middle-end/56524
1883 * c-common.c (handle_optimize_attribute): Don't call
1884 save_optabs_if_changed.
1885
0b50e654
JJ
18862013-03-05 Jakub Jelinek <jakub@redhat.com>
1887
1888 PR middle-end/56461
1889 * c-pch.c (pch_init): Free target_validity at the end.
1890
48c41403
JJ
18912013-03-04 Jakub Jelinek <jakub@redhat.com>
1892
1893 * c-pretty-print.c (pp_c_pretty_printer_init): Clear pp->flags.
1894
e664c61c
KS
18952013-02-28 Konstantin Serebryany <konstantin.s.serebryany@gmail.com>
1896 Jakub Jelinek <jakub@redhat.com>
1897
1898 PR sanitizer/56454
1899 * c-common.c (handle_no_sanitize_address_attribute): New function.
1900 (c_common_attribute_table): Add no_sanitize_address attribute.
1901 (handle_no_address_safety_analysis_attribute): Add
1902 no_sanitize_address attribute, not no_address_safety_analysis
1903 attribute.
1904
a475fd3d 19052013-02-18 Aldy Hernandez <aldyh@redhat.com>
135204dd
AH
1906
1907 PR target/52555
1908 * c-common.c (handle_optimize_attribute): Call
1909 save_optabs_if_changed.
1910
f6007d99
JJ
19112013-02-18 Jakub Jelinek <jakub@redhat.com>
1912 Steven Bosscher <steven@gcc.gnu.org>
1913
1914 PR pch/54117
1915 * c-opts.c (c_common_post_options): If debug info is enabled
1916 and non-dwarf*, refuse to load PCH files and when writing PCH
1917 file warn.
1918
cf35e2b1
JJ
19192013-02-05 Jakub Jelinek <jakub@redhat.com>
1920
1921 PR middle-end/56167
1922 * c-common.c (handle_error_attribute): Fix condition.
1923
32887460
JJ
19242013-01-30 Jakub Jelinek <jakub@redhat.com>
1925
1926 PR c++/55742
1927 * c-common.c (handle_target_attribute): Revert 2012-12-26 change.
1928
5af057d8
JM
19292013-01-18 Jason Merrill <jason@redhat.com>
1930
1931 PR target/54908
1932 * c.opt (-fextern-tls-init): New.
1933 * c-opts.c (c_common_post_options): Handle it.
1934
cc83c823
JJ
19352013-01-09 Jakub Jelinek <jakub@redhat.com>
1936
1937 PR c/48418
1938 * c-common.c (c_fully_fold_internal): Warn for LSHIFT_EXPR and
1939 RSHIFT_EXPR, if orig_op1 isn't INTEGER_CST, op1 is INTEGER_CST
1940 and is either negative or bigger or equal to type precision
1941 of the first operand.
1942
a859517f
MP
19432012-12-03 Marek Polacek <polacek@redhat.com>
1944
1945 PR c/55570
1946 * c-common.c (check_user_alignment): Swap order of tests,
1947 check TREE_CODE first.
1948
2d7aa578
ESR
19492012-11-29 Ed Smith-Rowland <3dw4rd@verizon.net>
1950
1951 PR c++/52654
1952 * c-common.h (overflow_type): New enum.
1953 (build_userdef_literal): Add overflow_type argument.
1954 (tree_userdef_literal): Add overflow_type.
1955 (USERDEF_LITERAL_OVERFLOW): New access macro.
1956 * c-common.c (build_userdef_literal): Add overflow_type
1957 argument.
1958 * c-lex.c (c_lex_with_flags): Add overflow_type to
1959 build_userdef_literal calls.
1960 (interpret_integer, interpret_float): Add overflow_type argument.
1961
cc3c4f62
RB
19622012-11-28 Richard Biener <rguenther@suse.de>
1963
1964 PR c/35634
1965 * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
1966 here and use a type with proper overflow behavior for types that would
1967 need to be promoted for the arithmetic.
1968
77bc5132
JJ
19692012-11-23 Jakub Jelinek <jakub@redhat.com>
1970
1971 PR sanitizer/55435
1972 * c-common.c (handle_no_address_safety_analysis_attribute): New
1973 function.
1974 (c_common_attribute_table): Add no_address_safety_analysis.
1975
5dc99c46
SB
19762012-11-16 Simon Baldwin <simonb@google.com>
1977
1978 * c.opt: Add f[no-]canonical-system-headers.
1979 * c-opts.c (c_common_handle_option): Handle
1980 OPT_fcanonical_system_headers.
1981
a4a0016d
ESR
19822012-11-09 Ed Smith-Rowland <3dw4rd@verizon.net>
1983
1984 PR c++/54413
1985 * c-opts.c (c_common_handle_option): Set new flags.
1986 * c.opt: Describe new flags.
1987
7dbb85a7
JM
19882012-11-09 Jason Merrill <jason@redhat.com>
1989
1990 * c.opt (Wabi-tag): New.
1991
ad7bac31
AK
19922012-11-09 Andi Kleen <ak@linux.intel.com>
1993
1994 PR 55139
1995 * c-common.c (get_atomic_generic_size): Mask with
1996 MEMMODEL_MASK
1997
7332899a
MLI
19982012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
1999
2000 PR c/53063
2001 * c.opt (Wformat): Make it Alias Wformat=1.
2002 (Wformat-contains-nul,Wformat-extra-args,Wformat-nonliteral,
2003 Wformat-security,Wformat-y2k,Wformat-zero-length): Use
2004 LangEnabledBy.
2005 (Wformat=): RejectNegative. Use LangEnabledBy.
2006 (Wnonnull): Use LangEnabledBy.
2007 * c-opts.c (c_common_handle_option): Do not handle Wformat here.
2008 * c-format.c (set_Wformat): Delete.
2009 (decode_format_attr): Replace OPT_Wformat with OPT_Wformat_.
2010 (maybe_read_dollar_number): Likewise.
2011 (avoid_dollar_number): Likewise.
2012 (finish_dollar_format_checking): Likewise.
2013 (check_format_info): Likewise.
2014 (check_format_info_main): Likewise.
2015 (check_format_types): Likewise.
2016 (format_type_warning): Likewise.
2017 * c-common.c (int): Likewise.
2018 (check_function_sentinel): Likewise.
2019 * c-common.h (warn_format,set_Wformat): Do not declare here.
2020
34a180a6
MLI
20212012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
2022
2023 PR c/53063
2024 * c.opt(Warray-bounds,Wdelete-non-virtual-dtor,Wenum-compare,
2025 Wmain,Woverlength-strings, Wunknown-pragmas,Wunused-macros):
2026 Use LangEnabledBy.
2027 (Wswitch,Wswitch-default,Wswitch-enum): Likewise. Move here from
2028 common.opt.
2029 (Wvariadic-macros): Init(1).
2030 * c-opts.c (c_common_handle_option): Do not handle them
2031 explicitly.
2032 (c_common_post_options): Likewise.
2033 (sanitize_cpp_opts): warn_unused_macros is now
2034 cpp_warn_unused_macros.
2035 (push_command_line_include): Likewise.
2036 * c-common.c (warn_unknown_pragmas): Do not define.
2037 * c-common.h (warn_unknown_pragmas): Do not declare.
2038
3f46d6a5
MLI
20392012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
2040
2041 PR c/51294
2042 * c-common.c (conversion_warning): Handle conditional expressions.
2043
880661a4
JW
20442012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
2045
2046 PR c++/54930
2047 * c.opt (Wreturn_local_addr): Define new option.
2048
4514a96b
JM
20492012-10-25 Jason Merrill <jason@redhat.com>
2050
f14edc1a
JM
2051 * c.opt (Wvirtual-move-assign): New.
2052
4514a96b
JM
2053 * c.opt (Winherited-variadic-ctor): New.
2054
93100c6b
MG
20552012-10-25 Marc Glisse <marc.glisse@inria.fr>
2056
2057 PR c++/54427
2058 * c-common.c (scalar_to_vector): Handle VEC_COND_EXPR.
2059
1efcb8c6
JM
20602012-10-23 Joseph Myers <joseph@codesourcery.com>
2061
2062 * c-common.h (pch_cpp_save_state): Declare.
2063 * c-target.def (c_preinclude): New hook.
2064 * c-opts.c (done_preinclude): New.
2065 (push_command_line_include): Handle default preincluded header.
2066 (cb_file_change): Call pch_cpp_save_state when calling
2067 push_command_line_include.
2068 * c-pch.c (pch_ready_to_save_cpp_state, pch_cpp_state_saved)
2069 (pch_cpp_save_state): New.
2070 (pch_init): Call pch_cpp_save_state conditionally, instead of
2071 calling cpp_save_state.
2072
4a0ae68e
MLI
20732012-10-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
2074
2075 PR c/53063
2076 PR c/40989
2077 * c.opt (Waddress,Wchar-subscripts,Wsign-conversion,Wimplicit,
2078 Wimplicit-function-declaration,Wimplicit-int,Wsizeof-pointer-memaccess,
2079 Wnarrowing,Wparentheses,Wpointer-sign,Wreturn-type,Wsequence-point,
2080 Wsign-compare,Wuninitialized,Wmaybe-uninitialized,Wunused,
2081 Wvolatile-register-var): Add LangEnabledBy or EnabledBy.
2082 * c-opts.c (c_common_handle_option): Remove explicit handling from
2083 here.
2084 (c_common_post_options): Likewise.
2085
67e4210b
EB
20862012-10-18 Eric Botcazou <ebotcazou@adacore.com>
2087
2088 * c-ada-spec.c (LOCATION_COL): Delete.
2089 (compare_location): New function.
2090 (compare_node): Use it.
2091 (compare_comment): Likewise.
2092
65d4f2cd
MLI
20932012-10-16 Manuel López-Ibáñez <manu@gcc.gnu.org>
2094
2095 PR c/53063
2096 PR c/40989
2097 * c.opt (Wstrict-aliasing=,Wstrict-overflow=): Use LangEnabledBy.
2098 * c-opts.c (c_common_handle_option): Do not set them here. Add
2099 comment.
2100 (c_common_post_options): Likewise.
2101
909881cb
EB
21022012-10-16 Eric Botcazou <ebotcazou@adacore.com>
2103
2104 * c-ada-spec.c (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Define.
2105 (dump_generic_ada_node) <INTEGER_CST>: Deal with sizetype specially.
2106 Remove POINTER_TYPE handling, add large unsigned handling and use
2107 ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX for big numbers.
2108
3a785c97
JJ
21092012-10-12 Jakub Jelinek <jakub@redhat.com>
2110
2111 PR c/54381
2112 * c-common.h (sizeof_pointer_memaccess_warning): Adjust prototype.
2113 * c-common.c (sizeof_pointer_memaccess_warning): Take array of 3
2114 locs and array of 3 trees instead of just single loc and single
2115 sizeof_arg tree. Handle __builtin___*_chk builtins too, and
2116 also stpncpy, bcopy, bcmp, bzero, snprintf and vsnprintf builtins.
2117 For *cmp* builtins that take two sources strings report warnings
2118 about first and second source, not about destination and source.
2119
5e54f81d
MG
21202012-10-12 Marc Glisse <marc.glisse@inria.fr>
2121
2122 PR c++/53055
2123 * c-common.h (enum ref_operator) [RO_ARROW_STAR]: New.
2124
f5b02f1e
EB
21252012-10-11 Eric Botcazou <ebotcazou@adacore.com>
2126
2127 * c-ada-spec.c (dump_ada_template): Bail out for template declarations
2128 declaring something coming from another file.
2129
b46dbc6c
AC
21302012-10-10 Arnaud Charlet <charlet@adacore.com>
2131
f5b02f1e 2132 PR ada/54845
b46dbc6c
AC
2133 * c-ada-spec.c (print_ada_struct_decl): Increase buf size.
2134
5d9de0d0
PC
21352012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
2136
2137 PR c++/54194
2138 * c-common.c (warn_about_parentheses): Add location_t parameter;
2139 use EXPR_LOC_OR_LOC.
2140 * c-common.h: Update declaration.
2141
a212e43f
MG
21422012-10-09 Marc Glisse <marc.glisse@inria.fr>
2143
2144 PR c++/54427
2145 * c-common.c (scalar_to_vector): Moved from c-typeck.c. Support
2146 more operations. Make error messages optional.
2147 * c-common.h (enum stv_conv): Moved from c-typeck.c.
2148 (scalar_to_vector): Declare.
2149
b1db7f91
JM
21502012-10-08 Jason Merrill <jason@redhat.com>
2151
2152 * c-common.c (c_common_reswords): Add thread_local.
2153
e28d52cf
DS
21542012-10-08 Dodji Seketeli <dodji@redhat.com>
2155
2156 PR c++/53528 C++11 attribute support
2157 * c-common.h (bitfield_p, cxx_fundamental_alignment_p): Declare
2158 new functions.
2159 * c-common.c (check_cxx_fundamental_alignment_constraints): New
2160 static function.
2161 (handle_aligned_attribute): In choose strictest alignment
2162 among many. Use new check_cxx_fundamental_alignment_constraints.
2163 (handle_transparent_union_attribute): In c++11 attribute syntax,
2164 don't look through typedefs.
2165
3b78de56
AC
21662012-10-04 Arnaud Charlet <charlet@adacore.com>
2167
2168 * c-ada-spec.c (print_ada_declaration): Remove handling of TDF_RAW.
2169 * c.opt (-fdump-ada-spec, -fdump-ada-spec-slim): Move switch definition
2170 out of dumpfile.h.
2171
6040bb5f
DC
21722012-09-25 Dehao Chen <dehao@google.com>
2173
2174 PR middle-end/54645
3b78de56 2175 * c-pch.c (c_common_read_pch): Rebuild the location_adhoc_data
6040bb5f
DC
2176 map when read in the pch.
2177
0b07a57e
AC
21782012-09-18 Arnaud Charlet <charlet@adacore.com>
2179
2180 * c-ada-spec.c: Style fixes.
2181
da5182be
TQ
21822012-09-18 Thomas Quinot <quinot@adacore.com>
2183
2184 * c.opt (-fada-spec-parent): Define new command line switch.
2185 * c-ada-spec.c (get_ada_package): When -fada-spec-parent
2186 is specified, generate binding spec as a child of the specified unit.
2187
0ccb505d
PC
21882012-09-13 Paolo Carlini <paolo.carlini@oracle.com>
2189 Manuel López-Ibáñez <manu@gcc.gnu.org>
2190
2191 PR c++/53210
2192 * c.opt ([Winit-self]): Enabled by -Wall in C++.
2193
c583af79
AC
21942012-08-23 Arnaud Charlet <charlet@adacore.com>
2195
2196 * c-ada-spec.c (dump_generic_ada_node): Fix handling of name_only
2197 for pointers, and add missing Convention C pragma.
2198 (print_ada_struct_decl): Add missing aliased keyword.
2199 (dump_ads): Add pragma Ada_2005 and Style_Checks (Off).
2200
1a4049e7
JJ
22012012-08-17 Jakub Jelinek <jakub@redhat.com>
2202
2203 * c-common.c (sizeof_pointer_memaccess_warning): New function.
2204 * c.opt (-Wsizeof-pointer-memaccess): Add new option.
2205 * c-opts.c (c_common_handle_option): Enable it for -Wall.
2206 * c-common.h (sizeof_pointer_memaccess_warning): Add prototype.
2207 * c-common.def (SIZEOF_EXPR): Moved here from cp-tree.def.
2208
70b5e7dc
RG
22092012-08-10 Richard Guenther <rguenther@suse.de>
2210
2211 * c-pretty-print.c (pp_c_expression): Handle anonymous SSA names.
2212
f8923f7e
SB
22132012-08-07 Steven Bosscher <steven@gcc.gnu.org>
2214
2215 * c-pretty-print.c (pp_c_function_definition): Use pp_newline_and_flush
2216 instead of separate pp_newline and pp_flush.
2217 (print_c_tree): Likewise.
2218
e45abe1f
RH
22192012-07-26 Richard Henderson <rth@redhat.com>
2220
2221 * c-common.c (handle_hot_attribute): Allow labels.
2222 (handle_cold_attribute): Likewise.
2223
332f1d24
JJ
22242012-07-20 Jakub Jelinek <jakub@redhat.com>
2225
2226 PR c++/28656
2227 * c-common.c (check_function_nonnull): Handle multiple nonnull
2228 attributes properly.
2229
7ee2468b
SB
22302012-07-16 Steven Bosscher <steven@gcc.gnu.org>
2231
2232 * c-gimplify.c: Include dumpfile.h instead of tree-dump.h.
2233 * c-ada-spec.c: Likewise.
2234 * c-dump.c (dump_stmt): Move to cp/dump.c, the only user.
2235
ee7b28eb
SB
22362012-07-14 Steven Bosscher <steven@gcc.gnu.org>
2237
2238 * c-pch.c (CHECK_NO_ASM_OUT_DURING_PCH): Do not define.
2239 Remove code conditional on it.
2240
6bdf3519
SB
22412012-07-11 Steven Bosscher <steven@gcc.gnu.org>
2242
2243 * c-gimplify.c: Do not include basic-block.h.
2244 * c-common.c: Do not include linfuncs.h.
2245
532aafad
SB
22462012-07-08 Steven Bosscher <steven@gcc.gnu.org>
2247
2248 * c-common.h: Include tree.h.
2249
8d0d1915
JM
22502012-07-02 Jason Merrill <jason@redhat.com>
2251
2252 PR c++/53524
2253 * c-common.c (get_priority): Call default_conversion.
2254
fbc873ad
UB
22552012-07-01 Uros Bizjak <ubizjak@gmail.com>
2256
2257 * c-pch.c (c_common_write_pch): Remove unused variables.
2258
d4a10d0a
SB
22592012-06-29 Steven Bosscher <steven@gcc.gnu.org>
2260
2261 * cppspec.c: Moved from gcc/ to here.
2262
6f3a2e23
KT
22632012-06-27 Kai Tietz <ktietz@redhat.com>
2264
2265 PR preprocessor/37215
2266 * c-ppoutput.c (preprocess_file): Check for nonempty buffer.
2267
8ca92d04
SB
22682012-06-21 Steven Bosscher <steven@gcc.gnu.org>
2269
2270 * c-common.h (c_common_print_pch_checksum): Remove.
2271 * c-pch.c: Do not include output.h.
2272 (CHECK_NO_ASM_OUT_DURING_PCH): Define and add FIXME.
2273 (asm_out_file): Define iff CHECK_NO_ASM_OUT_DURING_PCH isdefined.
2274 (asm_file_startpos): Define iff CHECK_NO_ASM_OUT_DURING_PCH is defined.
2275 (struct c_pch_header): Remove.
2276 (get_ident): Update gpch version.
2277 (pch_init): Do not print executable_checksum to asm_out_file.
2278 Do not fail if there is no asm_out_file to read back from. Set
2279 asm_file_startpos only if CHECK_NO_ASM_OUT_DURING_PCH is defined.
2280 (c_common_write_pch): Verify that nothing was written to asm_out_file
2281 since pch_init was called. Do not write a c_pch_header, and do not
2282 copy from asm_out_file to the PCH.
2283 (c_common_read_pch): Do not read a c_pch_header, and do not restore
2284 the content of asm_out_file from the PCH.
2285 (c_common_print_pch_checksum): Remove.
2286 * c-opts.c (c_common_init): Print out executable_checksum directly.
2287
70f42967
SB
22882012-06-19 Steven Bosscher <steven@gcc.gnu.org>
2289
2290 * c-target.def (objc_declare_unresolved_class_reference,
2291 objc_declare_class_definition): Add new hooks.
2292
a8781821
SB
22932012-06-19 Steven Bosscher <steven@gcc.gnu.org>
2294
2295 * c-lex.c: Do not include output.h.
2296 (cb_ident): Try to put out .ident with targetm.asm_out.output_ident.
2297 Remove uses of ASM_OUTPUT_IDENT.
2298
9e1a8dd1
RR
22992012-06-15 Marc Glisse <marc.glisse@inria.fr>
2300
2301 PR c++/51033
2302 * c-common.h (c_build_vec_perm_expr): Move decl here.
2303 * c-common.c (c_build_vec_perm_expr): Move definition
2304 here.
2305
6f07a821
SB
23062012-06-06 Steven Bosscher <steven@gcc.gnu.org>
2307
2308 * c.opt (fconserve-space): Turn into a no-op.
2309
9faeb493 23102012-06-04 Sterling Augustine <saugustine@google.com>
c265f413
SA
2311
2312 * c-pretty-print.h (pp_c_flag_gnu_v3): New enumerator.
2313 * c-pretty-print.c (pp_c_specifier_qualifier_list): Check it at
2314 both the start and end of the function.
2315
a4b7d13c
SB
23162012-06-04 Steven Bosscher <steven@gcc.gnu.org>
2317
2318 * c-common.c: Do not include output.h.
2319 * c-pragma.c: Likewise.
2320
c265f413
SA
23212012-06-04 Steven Bosscher <steven@gcc.gnu.org>
2322
2323 * error.c (dump_decl): Check pp_c_flag_gnu_v3.
2324 (decl_as_dwarf_string, lang_decl_dwarf_name): New functions.
2325 (lang_decl_name): Handle namespace decls.
2326
be7a421e
SB
23272012-05-31 Steven Bosscher <steven@gcc.gnu.org>
2328
2329 * c-ada-spec.c: Do not include output.h.
2330 * c-semantics.c: Likewise.
2331
65de6659
JM
23322012-05-29 Joseph Myers <joseph@codesourcery.com>
2333
2334 * c-common.c: Fix typo.
2335
ca5f4331
MM
23362012-05-29 Michael Matz <matz@suse.de>
2337
2338 * c-common.h (c_expand_decl): Remove prototype.
2339
4f7f7aca
MLI
23402012-05-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
2341
2342 * c.opt (Wmissing-braces): Use LangEnabledBy(C ObjC,Wall).
2343 * c-opts.c (c_common_handle_option): Remove code handling
2344 warn_missing_braces.
2345
4a792f9b
PC
23462012-05-28 Paolo Carlini <paolo.carlini@oracle.com>
2347
2348 PR c++/25137
2349 * c-opts.c (c_common_handle_option): For C++ -Wall doesn't enable
2350 -Wmissing_braces.
2351
650dc14a
DS
23522012-05-22 Dodji Seketeli <dodji@redhat.com>
2353
2354 PR c++/53322
2355 * c.opt (Wunused-local-typedefs): Use EnabledBy(Wunused).
2356
9b095bf1
MLI
23572012-05-17 Manuel López-Ibáñez <manu@gcc.gnu.org>
2358
2359 * c.opt (--pedantic-errors,-pedantic-errors): Do not handle here.
2360 * c-opts.c (c_common_handle_option): Do not handle explicitly
2361 Wreturn-type, Wwrite-strings, warn_ecpp, and -pedantic-errors.
2362
0b2c4be5
DS
23632012-05-16 Dodji Seketeli <dodji@redhat.com>
2364
2365 PR preprocessor/7263
2366 * c-lex.c (c_lex_with_flags): Pass a virtual location to the call
2367 to cpp_classify_number. For diagnostics, use the precise location
2368 instead of the global input_location.
2369
a1bde5af
PC
23702012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
2371
d02924ef 2372 PR c++/11856
a1bde5af
PC
2373 * c-common.c (shorten_compare): Check c_inhibit_evaluation_warnings.
2374
d1ede5f4
BS
23752012-05-14 Bernd Schmidt <bernds@codesourcery.com>
2376
a1bde5af 2377 * c-common.c (DEF_ATTR_STRING): Define and undefine as necessary.
d1ede5f4 2378
f2bc201f
MLI
23792012-05-14 Manuel López-Ibáñez <manu@gcc.gnu.org>
2380
2381 PR 53063
2382 * c.opt (Wc++0X-compat,Wdelete-non-virtual-dtor,Wjump-misses-init,
2383 Wreorder): Use LangEnabledBy.
2384 * c-opts.c (c_common_handle_option): Do not enable them
2385 explicitly. Call lang-specific generated functions.
2386 (c_common_post_options): Do not set them here.
2387
95744782
MLI
23882012-05-13 Manuel López-Ibáñez <manu@gcc.gnu.org>
2389
2390 * c.opt (Wclobbered,Wempty-body,Wignored-qualifiers,
2391 Wmissing-field-initializers,Wmissing-parameter-type,
2392 Wold-style-declaration,Woverride-init): Use EnabledBy.
2393 * c-opts.c (c_common_post_options): Do not set here explicitly.
2394
7d5a5747
MLI
23952012-05-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
2396
2397 PR 53063
2398 * c-opts.c (c_common_handle_option): Use handle_generated_option
2399 to enable sub-options.
2400
5a3c9cf2
PC
24012012-05-10 Paolo Carlini <paolo.carlini@oracle.com>
2402
2403 PR c++/53158
2404 * c-common.c (warnings_for_convert_and_check): Use warning_at.
2405
3ac8781c
RG
24062012-05-10 Richard Guenther <rguenther@suse.de>
2407
2408 * c-common.c (c_sizeof_or_alignof_type): Remove assert and
2409 adjust commentary about TYPE_IS_SIZETYPE types.
2410
1e537948
MLI
24112012-05-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
2412
2413 PR c++/53261
2414 * c-common.c (warn_logical_operator): Check that argument of
2415 integer_zerop is not NULL.
2416
f2c4a785
MLI
24172012-05-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
2418
2419 PR c/43772
2420 * c-common.c (warn_logical_operator): Do not warn if either side
2421 is already true or false.
2422
50f305ca
MLI
24232012-05-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
2424
2425 PR c/51712
2426 * c-common.c (expr_original_type): New.
2427 (shorten_compare): Do not warn for enumeration types.
2428
0c3641b0
MLI
24292012-05-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
2430
2431 * c.opt (fpermissive): Add Var(flag_permissive).
2432
7edaa4d2
MG
24332012-04-30 Marc Glisse <marc.glisse@inria.fr>
2434
2435 PR c++/51033
2436 * c-common.c (convert_vector_to_pointer_for_subscript): New function.
2437 * c-common.h (convert_vector_to_pointer_for_subscript): Declare it.
2438
b9c8da34
DS
24392012-04-30 Dodji Seketeli <dodji@redhat.com>
2440
2441 Add -Wvarargs option
2442 * c.opt (Wvarargs): Define new option.
2443
e6c69da0
MLI
24442012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
2445
2446 * c-common.c (check_function_arguments): Replace
2447 Wmissing-format-attribute with Wsuggest-attribute=format.
2448
90137d8f
MLI
24492012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
2450
2451 * c.opt (Wsuggest-attribute=format): New. Alias of
2452 Wmissing-format-attribute.
2453 * c-format.c (decode_format_type): Replace
2454 Wmissing-format-attribute with Wsuggest-attribute=format.
2455 (check_function_format): Likewise.
2456
9faeb493 24572012-04-27 Ollie Wild <aaw@google.com>
7f5f5f98
OW
2458
2459 * c-common.c: Add CPP_W_LITERAL_SUFFIX mapping.
2460 * c-opts.c (c_common_handle_option): Handle OPT_Wliteral_suffix.
2461 * c.opt: Add Wliteral-suffix.
2462
c1771a20
MLI
24632012-04-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
2464
2465 PR c/44774
2466 * c.opt (Wpedantic): New.
2467 (pedantic): Alias Wpedantic.
2468 * c-opts.c (c_common_handle_option): Replace -pedantic with -Wpedantic.
2469 (c_common_post_options): Likewise.
2470 (sanitize_cpp_opts): Likewise.
2471 * c-lex.c (interpret_float): Likewise.
2472 * c-format.c (check_format_types): Likewise.
2473 * c-common.c (pointer_int_sum): Likewise.
2474 (c_sizeof_or_alignof_type): Likewise.
2475 (c_add_case_label): Likewise.
2476 (c_do_switch_warnings): Likewise.
2477 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
2478
04b391c1
JM
24792012-04-15 Jason Merrill <jason@redhat.com>
2480
2481 PR c++/52818
2482 * c-format.c (CPLUSPLUS_STD_VER): C++11 inherits from C99.
2483 (C_STD_NAME): Distinguish between C++98 and C++11.
2484
ac868f29
EB
24852012-04-11 Eric Botcazou <ebotcazou@adacore.com>
2486
2487 PR target/52624
2488 * c-common.h (uint16_type_node): Rename into...
2489 (c_uint16_type_node): ...this.
2490 * c-common.c (c_common_nodes_and_builtins): Adjust for above renaming.
2491 * c-cppbuiltin.c (builtin_define_stdint_macros): Likewise.
2492
fd4116f4
MLI
24932012-04-10 Manuel López-Ibáñez <manu@gcc.gnu.org>
2494
2495 * c-common.c (warn_if_unused_value): Move definition to here.
2496 * c-common.h (warn_if_unused_value): Move declaration to here.
2497
573ac65e
WB
24982012-03-23 William Bader <williambader@hotmail.com>
2499
2500 * c-lex.c (c_lex_with_flags): Avoid declarations after stmts.
2501
552b8185
JM
25022012-03-20 Jason Merrill <jason@redhat.com>
2503
2504 * c-common.h (enum cxx_dialect): Add cxx1y.
2505 * c-common.c (c_common_nodes_and_builtins): Use >= for cxx_dialect
2506 test.
2507 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
2508 * c-opts.c (c_common_post_options): Likewise.
2509 (set_std_cxx1y): New.
2510 (c_common_handle_option): Call it.
2511 * c.opt (-std=c++1y, -std=gnu++1y): New flags.
2512
04398fa8
PC
25132012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
2514
2515 PR c++/14710
2516 * c.opt ([Wuseless-cast]): Add.
2517
d2a12ae7
RG
25182012-03-16 Richard Guenther <rguenther@suse.de>
2519
2520 * c-pretty-print.c (pp_c_initializer_list): Adjust.
2521
a12bf402
MLI
25222012-03-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
2523
2524 PR c++/44783
2525 * c.opt (ftemplate-backtrace-limit) Add.
2526
5c30094f
RO
25272012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2528
2529 * c-cppbuiltin.c (c_cpp_builtins): Remove #pragma extern_prefix
2530 handling.
2531 * c-pragma.c (handle_pragma_extern_prefix): Remove.
2532 (init_pragma): Don't register extern_prefix.
2533
21fa2faf
RG
25342012-03-12 Richard Guenther <rguenther@suse.de>
2535
2536 * c-common.c (c_common_get_narrower): Use c_common_type_for_size.
2537 (builtin_type_for_size): Likewise.
2538
e3793c6f
JJ
25392012-02-13 Jakub Jelinek <jakub@redhat.com>
2540
2541 PR c++/52215
2542 * c-common.c (sync_resolve_params): Don't decide whether to convert
2543 or not based on TYPE_SIZE comparison, convert whenever arg_type
2544 is unsigned INTEGER_TYPE.
2545
93286335
PC
25462012-02-06 Paolo Carlini <paolo.carlini@oracle.com>
2547
2548 PR c/52118
2549 * c.opt ([Wunused-local-typedefs]): Fix description.
2550
7a421706
MS
25512012-01-24 Mike Stump <mikestump@comcast.net>
2552
2553 * c-common.c (c_common_type_for_mode): Match signed/unsigned types
2554 exactly.
2555
ba9b1f11
RG
25562012-01-18 Richard Guenther <rguenther@suse.de>
2557
2558 * c-opts.c (c_common_post_options): Reset LTO flags if
2559 we are about to generate a PCH.
2560
465406be
PC
25612012-01-17 Paolo Carlini <paolo.carlini@oracle.com>
2562
2563 PR c++/51777
2564 * c-pretty-print.c (pp_c_integer_constant): For unsigned constants
2565 use pp_unsigned_wide_integer.
2566
aee15221
RG
25672012-01-10 Richard Guenther <rguenther@suse.de>
2568
2569 PR middle-end/51806
2570 * c-opts.c (c_common_handle_option): Move -Werror handling
2571 to language independent code.
2572
5720c0dc
RG
25732012-01-05 Richard Guenther <rguenther@suse.de>
2574
2575 PR middle-end/51764
2576 * c.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move here
2577 from common.opt.
2578
73ac190a
PC
25792011-12-30 Paolo Carlini <paolo.carlini@oracle.com>
2580
2581 PR c++/51316
2582 * c-common.c (c_sizeof_or_alignof_type): In C++ allow for alignof
2583 of array types with an unknown bound.
2584
48b0b196
JM
25852011-12-20 Joseph Myers <joseph@codesourcery.com>
2586
2587 * c-common.c (flag_isoc99): Update comment to refer to C11.
2588 (flag_isoc1x): Change to flag_isoc11.
2589 * c-common.h (flag_isoc99): Update comment to refer to C11.
2590 (flag_isoc1x): Change to flag_isoc11.
2591 * c-cppbuiltin.c (cpp_atomic_builtins): Change comment to refer to
2592 C11.
2593 * c-opts.c (set_std_c1x): Change to set_std_c11.
2594 (c_common_handle_option): Handle OPT_std_c11 and OPT_std_gnu11.
2595 Call set_std_c11.
2596 (set_std_c89, set_std_c99, set_std_c11): Use flag_isoc11.
2597 (set_std_c1): Use CLK_STDC11 and CLK_GNUC11.
2598 * c.opt (std=c1x): Change to std=c11. Document as non-draft
2599 standard.
2600 (std=c1x, std=iso9899:2011): Add as aliases of std=c11.
2601 (std=gnu1x): Change to std=gnu11. Refer to non-draft standard.
2602 (std=gnu1x): Make alias of std=gnu11.
2603
d58d6eb5
JM
26042011-12-19 Jason Merrill <jason@redhat.com>
2605
2606 PR c++/51228
2607 * c-common.c (handle_transparent_union_attribute): Check the first
2608 field if the type is complete.
2609
b3908fcc
JW
26102011-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
2611
2612 PR libstdc++/51365
2613 * c-common.c (RID_IS_FINAL): Add.
2614 * c-common.h (RID_IS_FINAL): Add.
2615
fea3ca91
IS
26162011-11-30 Iain Sandoe <iains@gcc.gnu.org>
2617
2618 * c.opt (fgnu-runtime): Provide full description.
2619 (fnext-runtime): Likewise.
2620 * c-opts.c (OPT_fgnu_runtime, OPT_fnext_runtime) Remove.
2621
62bad7cd
AM
26222011-11-28 Andrew MacLeod <amacleod@redhat.com>
2623
2624 * c-cpp-builtin.c (cpp_atomic_builtins):New. Emit all atomic
2625 predefines in one place. Add LOCK_FREE predefines.
2626 (c_cpp_builtins): Move Legacy HAVE_SYNC predefines to
2627 new func.
2628
c466c4ff
AM
26292011-11-24 Andrew MacLeod <amacleod@redhat.com>
2630
2631 PR c/51256
9faeb493 2632 * c-common.c (get_atomic_generic_size): Check for various error
c466c4ff 2633 conditions
9faeb493
UB
2634 (resolve_overloaded_atomic_exchange,
2635 resolve_overloaded_atomic_compare_exchange,
c466c4ff
AM
2636 resolve_overloaded_atomic_load, resolve_overloaded_atomic_store): Return
2637 error_mark_node for error conditions.
9faeb493 2638
a5952633
RG
26392011-11-08 Richard Guenther <rguenther@suse.de>
2640
2641 PR middle-end/51010
2642 c-family/
2643
0a35513e
AH
26442011-11-07 Richard Henderson <rth@redhat.com>
2645 Aldy Hernandez <aldyh@redhat.com>
2646 Torvald Riegel <triegel@redhat.com>
2647
2648 Merged from transactional-memory.
2649
2650 * c-common.c (handle_tm_wrap_attribute,
2651 handle_tm_attribute, ignore_attribute, parse_tm_stmt_attr): New.
2652 (struct c_common_reswords): Added __transaction* keywords.
2653 (struct c_common_attribute_table): Added transaction* and tm_regparm
2654 attributes.
2655 * c-common.h: Added RID_TRANSACTION*. Added TM_ATTR* and TM_STMT*
2656 masks.
2657 (parse_tm_stmt_attr, tm_attr_to_mask, tm_mask_to_attr,
2658 find_tm_attribute): Declare.
2659
6d87092d
JM
26602011-11-07 Jason Merrill <jason@redhat.com>
2661
2662 PR c++/35688
2663 * c-common.c, c-common.h: Revert yesterday's changes.
2664
8e7860a1
JM
26652011-11-06 Jason Merrill <jason@redhat.com>
2666
2667 PR c++/35688
2668 * c-common.c (decl_has_visibility_attr): Split out from...
2669 (c_determine_visibility): ...here.
2670 * c-common.h: Declare it.
2671
d19fa6b5
JM
26722011-11-06 Joseph Myers <joseph@codesourcery.com>
2673
2674 * c-common.c (c_common_reswords): Add _Alignas and _Alignof.
2675 (c_sizeof_or_alignof_type): Diagnose alignof applied to a function
2676 type.
2677 (check_user_alignment): New. Split out of
2678 handle_aligned_attribute. Disallow integer constants with
2679 noninteger types. Conditionally allow zero.
2680 (handle_aligned_attribute): Use check_user_alignment.
2681 * c-common.h (RID_ALIGNAS, check_user_alignment): New.
2682
86951993
AM
26832011-11-06 Andrew MacLeod <amacleod@redhat.com>
2684 Richard Henderson <rth@redhat.com>
2685
2686 Merged from cxx-mem-model.
2687
2688 * c-cppbuiltin.c (c_cpp_builtins): Test both atomic and sync patterns.
9faeb493 2689 * c-common.c (sync_resolve_params, sync_resolve_return): Only tweak
86951993
AM
2690 parameters that are the same type size.
2691 (get_atomic_generic_size): New. Find size of generic
2692 atomic function parameters and do typechecking.
2693 (add_atomic_size_parameter): New. Insert size into parameter list.
2694 (resolve_overloaded_atomic_exchange): Restructure __atomic_exchange to
2695 either __atomic_exchange_n or external library call.
9faeb493 2696 (resolve_overloaded_atomic_compare_exchange): Restructure
86951993 2697 __atomic_compare_exchange to either _n variant or external library call.
9faeb493 2698 (resolve_overloaded_atomic_load): Restructure __atomic_load to either
86951993
AM
2699 __atomic_load_n or an external library call.
2700 (resolve_overloaded_atomic_store): Restructure __atomic_store to either
2701 __atomic_store_n or an external library call.
2702 (resolve_overloaded_builtin): Handle new __atomic builtins.
2703
cf9e9959
EB
27042011-11-04 Eric Botcazou <ebotcazou@adacore.com>
2705
2706 PR c++/50608
2707 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1.
2708 (fold_offsetof_1): Make global. Remove STOP_REF argument and adjust.
2709 <INDIRECT_REF>: Return the argument.
2710 <ARRAY_REF>: Remove special code for negative offset.
2711 Call fold_build_pointer_plus instead of size_binop.
2712 (fold_offsetof): Remove STOP_REF argument and adjust.
2713 * c-common.h (fold_offsetof_1): Declare.
2714 (fold_offsetof): Remove STOP_REF argument.
2715
25339f10
JM
27162011-11-02 Paolo Carlini <paolo.carlini@oracle.com>
2717
2718 PR c++/50810
2719 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
2720 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
2721 Wnarrowing for C++0x and C++98.
2722 * c.opt ([Wnarrowing]): Update.
2723
89401152
PC
27242011-11-01 Paolo Carlini <paolo.carlini@oracle.com>
2725
2726 PR c++/44277
2727 * c.opt: Add Wzero-as-null-pointer-constant.
2728
97e3ad20
JM
27292011-10-31 Jason Merrill <jason@redhat.com>
2730
15694fdd
JM
2731 * c.opt (-fdeduce-init-list): Off by default.
2732
97e3ad20
JM
2733 PR c++/50920
2734 * c-common.h (cxx_dialect): Add cxx11 and cxx03.
2735 * c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03,
2736 and -Wc++11-compat.
2737 * c-opts.c (set_std_cxx11): Rename from set_std_cxx0x.
2738
fb9120e3
RAV
27392011-10-27 Roberto Agostino Vitillo <ravitillo@lbl.gov>
2740
2741 PR c++/30066
2742 * c.opt (fvisibility-inlines-hidden): Description change.
2743
3ce4f9e4
ESR
27442011-10-26 Ed Smith-Rowland <3dw4rd@verizon.net>
2745
2746 Implement C++11 user-defined literals.
2747 * c-common.c (build_userdef_literal): New.
2748 * c-common.def: New tree code.
2749 * c-common.h (tree_userdef_literal): New tree struct and accessors.
2750 * c-lex.c (interpret_float): Add suffix parm.
2751 (c_lex_with_flags): Build literal tokens.
2752
5f53c243
PC
27532011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
2754
2755 PR c++/50841
2756 Revert:
2757 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
2758
2759 PR c++/50810
2760 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
2761 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
2762 Wnarrowing for C++0x and C++98.
2763 * c.opt ([Wnarrowing]): Update.
2764
263734e1
PC
27652011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
2766
2767 PR c++/50810
2768 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
2769 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
2770 Wnarrowing for C++0x and C++98.
2771 * c.opt ([Wnarrowing]): Update.
2772
d2e312d7
PC
27732011-10-21 Paolo Carlini <paolo.carlini@oracle.com>
2774
2775 PR c++/45385
2776 * c-common.c (conversion_warning): Remove code looking for
2777 artificial operands.
2778
d17687f6
DS
27792011-10-18 Dodji Seketeli <dodji@redhat.com>
2780
2781 PR bootstrap/50760
2782 * c-lex.c (fe_file_change): Use LINEMAP_SYSP when
9faeb493 2783 !NO_IMPLICIT_EXTERN_C.
d17687f6 2784
fc8396e9
PC
27852011-10-17 Michael Spertus <mike_spertus@symantec.com>
2786
2787 * c-common.c (c_common_reswords): Add __bases,
2788 __direct_bases.
2789 * c-common.h: Add RID_BASES and RID_DIRECT_BASES.
2790
27912011-10-17 Paolo Carlini <paolo.carlini@oracle.com>
2792
2793 PR c++/50757
2794 * c.opt ([Wnonnull]): Add C++ and Objective-C++.
2795
847e697a
TT
27962011-10-15 Tom Tromey <tromey@redhat.com>
2797 Dodji Seketeli <dodji@redhat.com>
2798
2799 * c.opt (fdebug-cpp): New option.
2800 * c-opts.c (c_common_handle_option): Handle the option.
2801 * c-ppoutput.c (maybe_print_line_1): New static function. Takes an
2802 output stream in parameter. Factorized from ...
2803 (maybe_print_line): ... this. Dump location debug information when
2804 -fdebug-cpp is in effect.
2805 (print_line_1): New static function. Takes an output stream in
2806 parameter. Factorized from ...
2807 (print_line): ... here. Dump location information when -fdebug-cpp
2808 is in effect.
2809 (scan_translation_unit): Dump location information when
2810 -fdebug-cpp is in effect.
2811
92582b75
TT
28122011-10-15 Tom Tromey <tromey@redhat.com>
2813 Dodji Seketeli <dodji@redhat.com>
2814
2815 * c.opt (ftrack-macro-expansion): New option. Handle it with and
2816 without argument.
2817 * c-opts.c (c_common_handle_option)<case
2818 OPT_ftrack_macro_expansion_, case OPT_ftrack_macro_expansion>: New
2819 cases. Handle -ftrack-macro-expansion with and without argument.
2820
46427374
TT
28212011-10-15 Tom Tromey <tromey@redhat.com>
2822 Dodji Seketeli <dodji@redhat.com>
2823
2824 * c-ppoutput.c (scan_translation_unit, maybe_print_line)
2825 (print_line, cb_define, do_line_change): Adjust to avoid touching
2826 the internals of struct line_map. Use the public API instead.
2827 * c-pch.c (c_common_read_pch): Likewise.
2828 * c-lex.c (fe_file_change): Likewise.
2829
fc8396e9
PC
28302011-10-14 Paolo Carlini <paolo.carlini@oracle.com>
2831
2832 PR c++/17212
2833 * c.opt ([Wformat-zero-length]): Add C++ and Objective-C++.
2834
28352011-10-11 Paolo Carlini <paolo.carlini@oracle.com>
2836
2837 PR c++/33067
2838 * c-pretty-print.c (pp_c_floating_constant): Output
2839 max_digits10 (in the ISO C++ WG N1822 sense) decimal digits.
2840
e79983f4
MM
28412011-10-11 Michael Meissner <meissner@linux.vnet.ibm.com>
2842
2843 * c-common.c (def_builtin_1): Delete old interface with two
2844 parallel arrays to hold standard builtin declarations, and replace
2845 it with a function based interface that can support creating
2846 builtins on the fly in the future. Change all uses, and poison
2847 the old names. Make sure 0 is not a legitimate builtin index.
2848 * c-omp.c (c_finish_omp_barrier): Ditto.
2849 (c_finish_omp_taskwait): Ditto.
2850 (c_finish_omp_flush): Ditto.
2851
6637388f
TG
28522011-10-11 Tristan Gingold <gingold@adacore.com>
2853
2854 * c.opt: (fallow-parameterless-variadic-functions): New.
2855
3797cb21
DS
28562011-09-08 Dodji Seketeli <dodji@redhat.com>
2857
2858 PR c++/33255 - Support -Wunused-local-typedefs warning
2859 * c-common.h (struct c_language_function::local_typedefs): New
2860 field.
9faeb493
UB
2861 (record_locally_defined_typedef, maybe_record_typedef_use)
2862 (maybe_warn_unused_local_typedefs): Declare new functions.
3797cb21 2863 * c-common.c (record_locally_defined_typedef)
9faeb493
UB
2864 (maybe_record_typedef_use)
2865 (maybe_warn_unused_local_typedefs): Define new functions.
3797cb21
DS
2866 * c.opt: Declare new -Wunused-local-typedefs flag.
2867
693ddb1b
EB
28682011-09-06 Eric Botcazou <ebotcazou@adacore.com>
2869
2870 PR middle-end/50266
2871 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Fold offsetof-like
2872 computations.
2873
830c740f
RG
28742011-09-05 Richard Guenther <rguenther@suse.de>
2875
2876 * c-common.c (complete_array_type): Use ssize_int (-1) instead
2877 of integer_minus_one_node for empty array upper bounds.
2878
892a371f
DS
28792011-08-28 Dodji Seketeli <dodji@redhat.com>
2880
2881 * c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as
2882 it's the first time it's being called on this main TU.
2883
0e3fdb48
RB
28842011-08-24 Richard Guenther <rguenther@suse.de>
2885
2886 PR c/49396
2887 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional.
2888
28892011-08-22 Gabriel Charette <gchare@google.com>
e3dfef44
GC
2890
2891 * c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens
2892 defined in cpp_init_builtins and c_cpp_builtins.
2893
d4a83c10
JM
28942011-08-19 Joseph Myers <joseph@codesourcery.com>
2895
2896 * c-common.c (c_common_reswords): Add __builtin_complex.
2897 * c-common.h (RID_BUILTIN_COMPLEX): New.
2898
bbceee64
JM
28992011-08-18 Joseph Myers <joseph@codesourcery.com>
2900
2901 * c-common.c (c_common_reswords): Add _Noreturn.
2902 (keyword_is_function_specifier): Handle RID_NORETURN.
2903 * c-common.h (RID_NORETURN): New.
2904
0e3a99ae
AS
29052011-08-10 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
2906
2907 * c-common.c (unsafe_conversion_p): New function. Check if it is
2908 unsafe to convert an expression to the type.
2909 (conversion_warning): Adjust, use unsafe_conversion_p.
2910 * c-common.h (unsafe_conversion_p): New function declaration.
2911
20906c66
JJ
29122011-08-02 Jakub Jelinek <jakub@redhat.com>
2913
2914 * c-common.h (c_finish_omp_atomic): Adjust prototype.
2915 (c_finish_omp_taskyield): New prototype.
2916 * c-omp.c (c_finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1
2917 arguments. Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and
2918 OMP_ATOMIC_CAPTURE_NEW in addition to OMP_ATOMIC. If LHS1
2919 or RHS1 have side-effects, evaluate those too in the right spot,
2920 if it is a decl and LHS is also a decl, error out if they
2921 aren't the same.
2922 (c_finish_omp_taskyield): New function.
2923 * c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP to 201107.
2924 * c-pragma.c (omp_pragmas): Add taskyield.
2925 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKYIELD.
2926 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FINAL and
2927 PRAGMA_OMP_CLAUSE_MERGEABLE.
2928
770e5a2e
DS
29292011-07-25 Dodji Seketeli <dodji@redhat.com>
2930
2931 * c-common.h (set_underlying_type): Remove parm name from
2932 declaration.
2933
1baae426
RG
29342011-07-25 Romain Geissler <romain.geissler@gmail.com>
2935
2936 * c-pretty-print.h: Search c-common.h in c-family.
9faeb493 2937
fcb21722
JM
29382011-07-22 Jason Merrill <jason@redhat.com>
2939
76f86d00
JM
2940 PR c++/49793
2941 * c.opt (Wnarrowing): New.
2942
3a636414
JM
2943 PR c++/30112
2944 * c-common.h: Declare c_linkage_bindings.
2945 * c-pragma.c (handle_pragma_redefine_extname): Use it.
2946
fcb21722
JM
2947 PR c++/49813
2948 * c-opts.c (set_std_cxx0x): Set flag_isoc94 and flag_isoc99.
2949 * c-pretty-print.c (pp_c_cv_qualifiers): Check c_dialect_cxx as well
2950 as flag_isoc99 for 'restrict'.
2951 (pp_c_specifier_qualifier_list): Likewise for _Complex.
2952
02614448
ILT
29532011-07-21 Ian Lance Taylor <iant@google.com>
2954
2955 PR middle-end/49705
2956 * c-common.c (c_disable_warnings): New static function.
2957 (c_enable_warnings): New static function.
2958 (c_fully_fold_internal): Change local unused_p to bool. Call
2959 c_disable_warnings and c_enable_warnings rather than change
2960 c_inhibit_evaluation_warnings.
2961
34429675
JM
29622011-07-20 Jason Merrill <jason@redhat.com>
2963
2964 PR c++/6709 (DR 743)
2965 PR c++/42603 (DR 950)
2966 * c-common.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move from cp/parser.h.
2967 (CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise.
2968 (CPP_DECLTYPE): New.
2969 * c-common.c (c_parse_error): Handle CPP_DECLTYPE.
2970
5d49b6a7
RG
29712011-07-19 Richard Guenther <rguenther@suse.de>
2972
2973 * c-common.c (pointer_int_sum): Use fold_build_pointer_plus.
2974 * c-omp.c (c_finish_omp_for): Likewise.
2975
e84a58ff
EB
29762011-07-12 Eric Botcazou <ebotcazou@adacore.com>
2977
2978 * c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop
2979 body on the next line.
2980
329af3c7
JM
29812011-07-08 Jason Merrill <jason@redhat.com>
2982
4063e61b
JM
2983 PR c++/45437
2984 * c-omp.c (check_omp_for_incr_expr): Handle preevaluation.
2985
329af3c7
JM
2986 PR c++/49673
2987 * c-common.c (c_apply_type_quals_to_decl): Don't check
2988 TYPE_NEEDS_CONSTRUCTING.
2989
1a072294
RG
29902011-07-06 Richard Guenther <rguenther@suse.de>
2991
2992 * c-common.c (c_common_nodes_and_builtins):
2993 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
2994
fce5dddd
RG
29952011-07-05 Richard Guenther <rguenther@suse.de>
2996
2997 * c-common.c (c_common_nodes_and_builtins): Build all common
2998 tree nodes first.
2999
45d439ac
JJ
30002011-06-27 Jakub Jelinek <jakub@redhat.com>
3001
56300785
JJ
3002 * c-common.h (c_tree_chain_next): New static inline function.
3003
45d439ac
JJ
3004 * c-common.c (check_builtin_function_arguments): Handle
3005 BUILT_IN_ASSUME_ALIGNED.
3006
e0a8ecf2
AM
30072011-06-21 Andrew MacLeod <amacleod@redhat.com>
3008
3009 * c-common.c: Add sync_ or SYNC__ to builtin names.
3010 * c-omp.c: Add sync_ or SYNC__ to builtin names.
dfb43cd5
PV
3011
30122011-06-20 Pierre Vittet <piervit@pvittet.com>
3013
3014 * c-pragma.h (pragma_handler_1arg, pragma_handler_2arg): New
3015 handler.
3016 (gen_pragma_handler): New union.
3017 (internal_pragma_handler): New type.
3018 (c_register_pragma_with_data)
3019 (c_register_pragma_with_expansion_and_data): New functions.
3020
3021 * c-pragma.c (registered_pragmas, c_register_pragma_1)
3022 (c_register_pragma, c_register_pragma_with_expansion)
3023 (c_invoke_pragma_handler): Changed to work with
3024 internal_pragma_handler.
3025 (c_register_pragma_with_data)
3026 (c_register_pragma_with_expansion_and_data): New functions.
3027
677f3fa8
JM
30282011-06-14 Joseph Myers <joseph@codesourcery.com>
3029
3030 * c-common.c: Include common/common-target.h.
3031 (handle_section_attribute): Use
3032 targetm_common.have_named_sections.
3033 * c-cppbuiltin.c: Include common/common-target.h.
3034 (c_cpp_builtins): Use targetm_common.except_unwind_info.
3035
d7fc8c14
RG
30362011-06-10 Richard Guenther <rguenther@suse.de>
3037
3038 * c-pretty-print.c (pp_c_type_specifier): Use pp_c_identifier
3039 to print a IDENTIFIER_NODE.
3040
10e48e39
RO
30412011-06-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3042 Joseph Myers <joseph@codesourcery.com>
3043
3044 * c.opt (fbuilding-libgcc): New option.
3045 * c-cppbuiltin.c (c_cpp_builtins): Define
3046 __LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc.
3047
6976ae51
JM
30482011-06-07 Jason Merrill <jason@redhat.com>
3049
3ff60975
JM
3050 * c-common.c (max_tinst_depth): Lower default to 900.
3051
6976ae51
JM
3052 * c-format.c (gcc_cxxdiag_char_table): Add 'S' format.
3053
009db074
RG
30542011-06-07 Richard Guenther <rguenther@suse.de>
3055
3056 * c-common.c (c_common_nodes_and_builtins): Do not set
3057 size_type_node or call set_sizetype.
3058
b4592b92
DS
30592011-06-07 Dodji Seketeli <dodji@redhat.com>
3060
3061 PR debug/49130
3062 * c-pretty-print.c (pp_c_integer_constant): Consider the canonical
9faeb493 3063 type when using pointer comparison to compare types.
b4592b92 3064
014ab419
JW
30652011-06-02 Jonathan Wakely <jwakely.gcc@gmail.com>
3066
3067 * c.opt: Add -Wdelete-non-virtual-dtor.
3068 * c-opts.c (c_common_handle_option): Include it in -Wall.
3069
4f60111f
NF
30702011-05-30 Nathan Froyd <froydnj@gcc.gnu.org>
3071
3072 PR bootstrap/49190
3073
3074 Revert:
3075 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
3076
3077 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
3078 not tree_common.
3079
4cc4f2f4
JJ
30802011-05-27 Jakub Jelinek <jakub@redhat.com>
3081
3082 PR c++/49165
3083 * c-common.c (c_common_truthvalue_conversion) <case COND_EXPR>: For
3084 C++ don't call c_common_truthvalue_conversion on void type arms.
3085
38e01f9e
NF
30862011-05-27 Nathan Froyd <froydnj@codesourcery.com>
3087
3088 * c-common.h (struct stmt_tree_s) [x_cur_stmt_list]: Change to a VEC.
3089 (stmt_list_stack): Define.
3090 (cur_stmt_list): Adjust for new type of x_cur_stmt_list.
3091 * c-semantics.c (push_stmt_list, pop_stmt_list): Likewise.
3092
92e948a8
NF
30932011-05-26 Nathan Froyd <froydnj@codesourcery.com>
3094
3095 * c-common.c (warning_candidate_p): Check for BLOCKs.
3096
a2fc3e63
NF
30972011-05-26 Nathan Froyd <froydnj@codesourcery.com>
3098
3099 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
3100 not tree_common.
3101
0957c029
JJ
31022011-05-25 Jakub Jelinek <jakub@redhat.com>
3103
3104 * c-common.c (def_fn_type): Remove extra va_end.
3105
828fb3ba
JM
31062011-05-23 Jason Merrill <jason@redhat.com>
3107
3108 PR c++/48106
3109 * c-common.c (c_common_get_narrower): New.
3110 (shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.
3111
dde05067
NF
31122011-05-23 Nathan Froyd <froydnj@codesourcery.com>
3113
3114 * c-common.h (check_function_arguments): Tweak prototype of
3115 check_function_arguments.
3116 * c-common.c (check_function_arguments): Likewise. Adjust
3117 calls to check_function_nonnull, check_function_format, and
3118 check_function_sentinel.
3119 (check_function_sentinel): Take a FUNCTION_TYPE rather than
3120 separate attributes and typelist arguments. Use
3121 FOREACH_FUNCTION_ARGS to iterate over argument types.
3122
3c0d13bf
PC
31232011-05-15 Paolo Carlini <paolo.carlini@oracle.com>
3124
3125 * c-common.c (c_common_reswords): Reorder.
3126 * c-common.h (rid): Likewise.
3127
8242dd04
NF
31282011-05-10 Nathan Froyd <froydnj@codesourcery.com>
3129
3130 * c-common.c (def_fn_type): Don't call build_function_type, call
3131 build_function_type_array or build_varargs_function_type_array
3132 instead.
3133 (c_common_nodes_and_builtins): Likewise.
3134
3d528853
NF
31352011-05-05 Nathan Froyd <froydnj@codesourcery.com>
3136
3137 * c-common.c (c_add_case_label): Omit the loc argument to
3138 build_case_label.
3139 * c-common.h (build_case_label): Remove.
3140 * c-semantics.c (build_case_label): Remove.
3141
a04a722b
JM
31422011-05-05 Joseph Myers <joseph@codesourcery.com>
3143
3144 * c-objc.h (objc_start_method_definition): Update prototype.
3145 * stub-objc.c (objc_start_method_definition): Add extra parameter.
3146
e19a18d4
NF
31472011-05-04 Nathan Froyd <froydnj@codesourcery.com>
3148
3149 * c-common.c (check_main_parameter_types): Reindent. Don't use
3150 TYPE_ARG_TYPES directly.
3151 (handle_nonnull_attribute): Likewise.
3152 (sync_resolve_params): Likewise.
3153 * c-format.c (handle_format_arg_attribute): Likewise. Adjust call
3154 to check_format_string.
3155 (handle_format_attribute): Likewise.
3156 (check_format_string): Take a function type to examine instead of
3157 a type list. Use a function_arg_iterator to step through argument
3158 types.
3159
c62c040f
RG
31602011-05-04 Richard Guenther <rguenther@suse.de>
3161
3162 * c-common.c (fix_string_type): Use size_int for index type bounds.
3163 (start_fname_decls): Do not pass NULL to build_int_cst.
3164 (c_init_attributes): Likewise.
3165 * c-lex.c (c_lex_with_flags): Likewise.
3166
c12ff9d8
JM
31672011-04-27 Jason Merrill <jason@redhat.com>
3168
3169 * c-common.c (make_tree_vector_from_list): New.
3170 * c-common.h: Declare it.
3171
304dfbe3
RG
31722011-04-26 Richard Guenther <rguenther@suse.de>
3173
3174 PR preprocessor/48248
3175 * c-ppoutput.c (maybe_print_line): Always optimize newlines
3176 for output size with -P.
3177
3c0d13bf
PC
31782011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
3179
3180 * c-common.c (struct c_common_resword): Add __underlying_type.
3181 * c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
3182
04695783
JM
31832011-04-20 Jim Meyering <meyering@redhat.com>
3184
3185 * c-format.c (init_dollar_format_checking): Remove useless
3186 if-before-free.
3187
0dc33c3c
NP
31882011-04-15 Nicola Pero <nicola.pero@meta-innovation.com>
3189
3190 * c-objc.h (objc_get_interface_ivars): Removed.
3c0d13bf 3191 (objc_detect_field_duplicates): New.
0dc33c3c 3192 * stub-objc.c: Likewise.
3c0d13bf 3193
c59633d9
NP
31942011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
3195
3196 * stub-objc.c (objc_declare_protocols): Renamed to
3197 objc_declare_protocol.
3198 * c-objc.h: Likewise.
3c0d13bf 3199
32dabdaf
NP
32002011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
3201
3202 * stub-objc.c (objc_declare_class): Updated argument name.
3203
81f653d6
NF
32042011-04-12 Nathan Froyd <froydnj@codesourcery.com>
3205
3206 * c-common.h (c_common_init_ts): Declare.
3207 * c-common.c (c_common_init_ts): Define.
3208
eb345401
NP
32092011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
3210
3211 * c-objc.h (objc_build_message_expr): Updated prototype.
3212 * stub-objc.c (objc_build_message_expr): Likewise.
9faeb493 3213
a358e188
MJ
32142011-04-12 Martin Jambor <mjambor@suse.cz>
3215
3216 * c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
3217 of cgraph_node.
3218
e6313a78
RG
32192011-04-11 Richard Guenther <rguenther@suse.de>
3220
3221 * c-common.c (complete_array_type): Build a range type of
3222 proper type.
3223
dcf0c47e
NF
32242011-04-08 Nathan Froyd <froydnj@codesourcery.com>
3225
3226 * c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
3227 (handle_type_generic_attribute): Likewise.
3228
1ee44b26
JM
32292011-04-07 Jason Merrill <jason@redhat.com>
3230
3231 PR c++/48450
3232 * c-common.c (c_common_truthvalue_conversion): Don't ignore
3233 conversion from C++0x scoped enum.
3234
acce4e77
JM
32352011-04-06 Joseph Myers <joseph@codesourcery.com>
3236
3237 * c-target-def.h: New file.
3238 * c-target.def: New file.
3239 * c-target.h: New file.
3240 * c-common.c (targetcm): Don't define here.
3241 * c-common.h (default_handle_c_option): Declare.
3242 * c-format.c: Include c-target.h instead of target.h.
3243 * c-opts.c: Include c-target.h instead of target.h. Explicitly
3244 include tm.h.
3245 (default_handle_c_option): Move from targhooks.c.
3246
e2eefb55
JJ
32472011-03-29 Jakub Jelinek <jakub@redhat.com>
3248
3249 PR preprocessor/48248
3250 * c-ppoutput.c (print): Add src_file field.
3251 (init_pp_output): Initialize it.
3252 (maybe_print_line): Don't optimize by adding up to 8 newlines
3253 if map->to_file and print.src_file are different file.
3254 (print_line): Update print.src_file.
3255
ba78087b
KT
32562011-03-25 Kai Tietz <ktietz@redhat.com>
3257
3258 * c-ada-spec.c (compare_comment): Use filename_cmp
3259 instead of strcmp for filename.
3260
0edf1bb2
JL
32612011-03-25 Jeff Law <law@redhat.com>
3262
3263 * c-family/c-common.c (def_fn_type): Add missing va_end.
3264
c7dc8804
JM
32652011-03-25 Jason Merrill <jason@redhat.com>
3266
3267 * c.opt: Add -std=c++03.
3268
d1d879b1
EB
32692011-03-22 Eric Botcazou <ebotcazou@adacore.com>
3270
3271 * c-ada-spec.c (dump_ada_template): Skip non-class instances.
3272
62d784f7
KT
32732011-03-17 Kai Tietz
3274
3275 PR target/12171
5050afdf
KT
3276 * c-pretty-print.c (pp_c_specifier_qualifier_list):
3277 Display allowed attributes for function pointer types.
3278 (pp_c_attributes_display): New function to display
3279 attributes having affects_type_identity flag set to true.
3280 * c-pretty-print.h (pp_c_attributes_display): New prototype.
3281
62d784f7
KT
3282 * c-common.c (c_common_attribute_table):
3283 Add new element.
3284 (c_common_format_attribute_table): Likewise.
3285
82d37118
JM
32862011-03-18 Jason Merrill <jason@redhat.com>
3287
49a000c3
JM
3288 * c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
3289 * c-common.h: Don't declare it here.
3290 * c-common.c: Or define it here.
3291 * c-opts.c (c_common_handle_option): Or set it here.
3292
82d37118
JM
3293 PR c++/35315
3294 * c-common.c (handle_transparent_union_attribute): Don't
3295 make a duplicate type in C++.
3296
17bc631c
JM
32972011-03-15 Jason Merrill <jason@redhat.com>
3298
3299 * c-common.c (max_constexpr_depth): New.
3300 * c-common.h: Declare it.
3301 * c-opts.c (c_common_handle_option): Set it.
3302 * c.opt (fconstexpr-depth): New option.
3303
1b9b91a6
JM
33042011-03-11 Jason Merrill <jason@redhat.com>
3305
f231b5ff
JM
3306 * c-common.c (attribute_takes_identifier_p): Add missing const.
3307
1b9b91a6
JM
3308 PR c++/46803
3309 * c-common.c (attribute_takes_identifier_p): Assume that an
3310 unknown attribute takes an identifier.
3311
a19e4d44
NF
33122011-03-07 Nathan Froyd <froydnj@codesourcery.com>
3313
3314 PR c/47786
3315 * c-common.c (c_type_hash): Call list_length instead of iterating
3316 through DECL_CHAIN. Rename 'i' to 'n_elements'.
3317
982d62f6
JJ
33182011-02-19 Jakub Jelinek <jakub@redhat.com>
3319
3320 PR c/47809
3321 * c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
3322
0a256240
NP
33232011-02-17 Iain Sandoe <iains@gcc.gnu.org>
3324
3325 * c.opt (fobjc-abi-version=) New.
3326 (fobjc-nilcheck): New.
3327
ba9e6dd5
NF
33282011-02-03 Nathan Froyd <froydnj@codesourcery.com>
3329
3330 PR c++/46890
3331 * c-common.h (keyword_is_decl_specifier): Declare.
3332 * c-common.c (keyword_is_decl_specifier): Define.
3333 (keyword_is_function_specifier): New function.
3334
7273813a
JJ
33352011-01-26 Jakub Jelinek <jakub@redhat.com>
3336
3337 PR c/47473
3338 * c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
3339 EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
3340 REAL_TYPE.
3341
908ef79b
AC
33422011-01-26 Arnaud Charlet <charlet@adacore.com>
3343
3344 * c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type.
3345
237e9384
JJ
33462011-01-26 Jakub Jelinek <jakub@redhat.com>
3347
3348 PR pch/47430
3349 * c-opts.c (c_common_post_options): Call c_common_no_more_pch
3350 after init_c_lex if pch_file is set.
3351
47ea1edf
DK
33522011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
3353
d4dba752 3354 PR c++/43601
47ea1edf
DK
3355 * c.opt (-fkeep-inline-dllexport): New switch.
3356
2aa9c6ae
RG
33572011-01-12 Richard Guenther <rguenther@suse.de>
3358
3359 PR middle-end/32511
3360 * c-common.c (handle_weak_attribute): Warn instead of error
3361 on declaring an inline function weak.
3362
7bd11157
TT
33632011-01-05 Tom Tromey <tromey@redhat.com>
3364
3365 * c-common.h (lvalue_error): Update.
3366 * c-common.c (lvalue_error): Add 'loc' argument. Call error_at,
3367 not error.
3368
0e66e494 33692010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
9faeb493 3370
b4f588c4
NP
3371 PR objc/47075
3372 * c-objc.h (objc_finish_message_expr): Added argument to
3373 prototype.
3374
f4da8dce
NF
33752010-12-22 Nathan Froyd <froydnj@codesourcery.com>
3376
3377 * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute):
3378 Use prototype_p.
3379
46270f14
NP
33802010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
3381
3382 * c-objc.h (objc_maybe_warn_exceptions): New.
9faeb493 3383 * stub-objc.c (objc_maybe_warn_exceptions): New.
46270f14 3384
4816c593
NF
33852010-12-10 Nathan Froyd <froydnj@codesourcery.com>
3386
3387 * c-common.h (readonly_error): Declare.
3388 * c-common.c (readonly_error): Define.
3389
7a6daeb0
NF
33902010-12-09 Nathan Froyd <froydnj@codesourcery.com>
3391
3392 * c-common.h (invalid_indirection_error): Declare.
3393 * c-common.c (invalid_indirection_error): Define.
3394
892f6119
RG
33952010-12-03 Richard Guenther <rguenther@suse.de>
3396
3397 PR c/46745
3398 * c-pretty-print.c (pp_c_postfix_expression): Handle MEM_REF.
3399 (pp_c_unary_expression): Likewise.
3400 (pp_c_expression): Likewise.
3401
6c39e757
NP
34022010-11-30 Nicola Pero <nicola.pero@meta-innovation.com>
3403
3404 * c-common.h (objc_finish_function): New.
3405 (objc_non_volatilized_type): Removed.
3406 (objc_type_quals_match): Removed.
3407 * stub-objc.c (objc_finish_function): New.
3408 (objc_non_volatilized_type): Removed.
3409 (objc_type_quals_match): Removed.
9faeb493 3410
7c475d11
JM
34112010-11-30 Joseph Myers <joseph@codesourcery.com>
3412
3413 * c-common.h (parse_optimize_options): Declare.
3414 * c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c,
3415 c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h.
3416
71f3e391
JM
34172010-11-29 Joseph Myers <joseph@codesourcery.com>
3418
3419 * c-opts.c (check_deps_environment_vars): Use getenv instead of
3420 GET_ENVIRONMENT.
3421 * c-pch.c (O_BINARY): Don't define here.
3422 * c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
3423
d5fabb58
JM
34242010-11-25 Joseph Myers <joseph@codesourcery.com>
3425
3426 * c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
3427 targetm.except_unwind_info.
3428
299404a1
JM
34292010-11-23 Joseph Myers <joseph@codesourcery.com>
3430
3431 * c-opts.c (c_common_handle_option): Pass location to
3432 set_struct_debug_option.
3433
c98cd5bf
JM
34342010-11-23 Joseph Myers <joseph@codesourcery.com>
3435
3436 * c-common.c (visibility_options): Move from ../opts.c.
3437 * c-common.h (struct visibility_flags, visibility_options):
3438 Declare here.
3439 * c-opts.c (finish_options): Rename to c_finish_options.
3440 (c_common_init): Update call to finish_options.
3441
a9546771
NP
34422010-11-22 Nicola Pero <nicola.pero@meta-innovation.com>
3443
3444 PR objc/34033
3445 * c-lex.c (lex_string): Check that each string in an Objective-C
3446 string concat sequence starts with either one or zero '@', and
3447 that there are no spurious '@' signs at the end.
3448
24a57808
JM
34492010-11-20 Joseph Myers <joseph@codesourcery.com>
3450
3451 * c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
3452 HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
3453 HANDLE_PRAGMA_VISIBILITY.
3454 * c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
3455 HANDLE_PRAGMA_VISIBILITY): Don't define.
3456 (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.
3457
a9aa2c3a
NF
34582010-11-20 Nathan Froyd <froydnj@codesourcery.com>
3459
3460 PR c++/16189
3461 PR c++/36888
3462 PR c++/45331
3463 * c-common.h (keyword_begins_type_specifier): Declare.
3464 (keyword_is_storage_class_specifier): Declare.
3465 (keyword_is_type_qualifier): Declare.
3466 * c-common.c (keyword_begins_type_specifier): New function.
3467 (keyword_is_storage_class_specifier): New function.
3468 (keyword_is_type_qualifier): Declare.
3469
5386338c
JM
34702010-11-19 Joseph Myers <joseph@codesourcery.com>
3471
3472 PR c/46547
3473 * c-common.c (in_late_binary_op): Define.
3474 (c_common_truthvalue_conversion): Check in_late_binary_op before
3475 calling c_save_expr.
3476 * c-common.h (in_late_binary_op): Declare.
3477
69ccdddb
JM
34782010-11-19 Joseph Myers <joseph@codesourcery.com>
3479
3480 * c-opts.c (c_common_handle_option): Update calls to
3481 set_struct_debug_option.
3482
6b192a09
NP
34832010-11-19 Nicola Pero <nicola.pero@meta-innovation.com>
3484
3485 * c-common.h (objc_declare_protocols): Added additional argument.
3486 * stub-objc.c (objc_declare_protocol): Same change.
9faeb493 3487
fb52b50a
NF
34882010-11-18 Nathan Froyd <froydnj@codesourcery.com>
3489
3490 PR c/33193
3491 * c-common.h (build_real_imag_expr): Declare.
3492 * c-semantics.c (build_real_imag_expr): Define.
3493
b37421c6
JM
34942010-11-17 Joseph Myers <joseph@codesourcery.com>
3495
3496 * c-opts.c (c_common_parse_file): Take no arguments.
3497 * c-common.h (c_common_parse_file): Update prototype.
3498
07078664
JJ
34992010-11-16 Jakub Jelinek <jakub@redhat.com>
3500
3501 PR c++/46401
3502 * c-common.c (warning_candidate_p): Don't track non-const calls
3503 or STRING_CSTs.
3504
c6a13190
ILT
35052010-11-15 Ian Lance Taylor <iant@google.com>
3506
3507 * c-lex.c (init_c_lex): Set macro debug callbacks if
3508 flag_dump_go_spec is set.
3509
925e8657
NP
35102010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
3511
3512 * c-common.h (objc_build_incr_expr_for_property_ref): New.
3513 * stub-objc.c (objc_build_incr_expr_for_property_ref): New.
3514
bb0a9581
NF
35152010-11-15 Nathan Froyd <froydnj@codesourcery.com>
3516
3517 PR preprocessor/45038
3518 * c-cppbuiltin.c (c_cpp_builtins): Use different format for C++
3519 dialects.
3520
c5fa0890
JM
35212010-11-12 Joseph Myers <joseph@codesourcery.com>
3522
3523 * c-common.h (c_family_lang_mask): Declare.
3524 * c-opts.c (c_family_lang_mask): Make extern.
3525 * c-pragma.c (handle_pragma_diagnostic): Use
3526 control_warning_option.
3527
a4d8c676
JM
35282010-11-12 Joseph Myers <joseph@codesourcery.com>
3529
3530 * c-common.c (parse_optimize_options): Update call to
3531 decode_options.
3532 * c-common.h (c_common_handle_option): Update prototype.
3533 * c-opts.c (c_common_handle_option): Take location_t parameter and
3534 pass it to other functions.
3535
f954bd2c
JM
35362010-11-11 Joseph Myers <joseph@codesourcery.com>
3537
3538 * c-opts.c (warning_as_error_callback): Remove.
3539 (c_common_initialize_diagnostics): Don't call
3540 register_warning_as_error_callback.
3541 (c_common_handle_option): Handle -Werror=normalized= here.
3542
d8a07487
JM
35432010-11-10 Joseph Myers <joseph@codesourcery.com>
3544
3545 * c-common.c (handle_mode_attribute): Use %' and word "signedness"
3546 in diagnostic.
3547 * c-opts.c (c_common_parse_file): Start diagnostics with lowercase
3548 letter.
3549 * c-pragma.c (handle_pragma_target, handle_pragma_optimize):
3550 Remove trailing '.' from diagnostics.
3551 * c.opt (Wwrite-strings_: Avoid '`' in help text.
3552
d5478783
JM
35532010-11-10 Joseph Myers <joseph@codesourcery.com>
3554
3555 * c-common.c (parse_optimize_options): Pass global_dc to
3556 decode_options.
3557 * c-opts.c (c_common_handle_option): Pass &global_options to
3558 set_Wstrict_aliasing.
3559 * c.opt (v): Don't mark Common or document here.
3560
91ebb981
IS
35612010-11-06 Iain Sandoe <iains@gcc.gnu.org>
3562
3563 PR target/44981
3564 * c-format.c (format_type): New type gcc_objc_string_format_type.
3565 (valid_stringptr_type_p): New.
3566 (handle_format_arg_attribute): Use valid_stringptr_type_p ().
9faeb493 3567 (check_format_string): Pass expected type, use
91ebb981
IS
3568 valid_stringptr_type_p (), check that the format string types are
3569 consistent with the format specification.
3570 (decode_format_attr): Warn if NSString is used outside objective-c.
3571 (format_types_orig): Add NSString.
3572 (format_name): New.
3573 (format_flags): New.
3574 (check_format_arg): Handle format strings requiring an external parser.
3575 first_target_format_type: New variable.
3576 (handle_format_attribute): Set up first_target_format_type, pass the
3577 expected format arg string type to check_format_string().
3578 * c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL): New flag.
3579 * stub-objc.c (objc_string_ref_type_p): New.
3580 (objc_check_format_arg): New.
3581
bede2adc
NP
35822010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
3583
9faeb493 3584 Fixed using the Objective-C 2.0 dot-syntax with class names.
bede2adc
NP
3585 * c-common.h (objc_build_class_component_ref): New.
3586 * stub-objc.c (objc_build_class_component_ref): New.
3587
9a179d01
NP
35882010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
3589
3590 * c.opt (Wproperty-assign-default): New option.
3591
22d8d616
NP
35922010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
3593
3594 Implemented -fobjc-std=objc1 flag.
3595 * c.opt (fobjc-std=objc1): New option.
3596
2debdb4f
NP
35972010-11-01 Nicola Pero <nicola.pero@meta-innovation.com>
3598
3599 Implemented format and noreturn attributes for Objective-C methods.
3600 * c-common.c (handle_noreturn_attribute): Recognize 'noreturn'
3601 attribute for Objective-C methods.
3602
ec52b111
JM
36032010-10-31 Jason Merrill <jason@redhat.com>
3604
3605 * c-common.c (conversion_warning, warn_for_collisions_1): Use
3606 EXPR_LOC_OR_HERE.
3607
46a88c12
NP
36082010-10-30 Nicola Pero <nicola.pero@meta-innovation.com>
3609
3610 Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
3611 * c-common.h (enum rid): Removed RID_COPIES and RID_IVAR.
3612 (objc_add_property_declaration): Removed arguments for copies and
3613 ivar.
3614 (objc_build_getter_call): Renamed to
3615 objc_maybe_build_component_ref.
3616 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
3617 (objc_is_property_ref): New.
3618 * c-common.c (c_common_reswords): Removed copies and ivar.
3619 * stub-objc.c (objc_add_property_declaration): Removed arguments
3620 for copies and ivar.
3621 (objc_build_getter_call): Renamed to
3622 objc_maybe_build_component_ref.
3623 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
3624 (objc_is_property_ref): New.
9faeb493 3625
1e4bf85b
AC
36262010-10-29 Arnaud Charlet <charlet@adacore.com>
3627 Matthew Gingell <gingell@adacore.com>
3628
3629 * c-ada-spec.c (separate_class_package): New function.
3630 (pp_ada_tree_identifier): Prefix references to C++ classes with the
3631 name of their enclosing package.
3632 (print_ada_declaration): Use separate_class_package.
3633
81f0bab2
JM
36342010-10-27 Jason Merrill <jason@redhat.com>
3635
2b08f2c5
JM
3636 * c-common.c (c_common_reswords): Add __is_literal_type.
3637 * c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
3638
81f0bab2
JM
3639 * c-common.c (check_case_value): Remove special C++ code.
3640
200290f2
NP
36412010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
3642
3643 * c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN,
3644 RID_RETAIN, RID_COPY and RID_NONATOMIC. Updated RID_FIRST_PATTR
3645 and RID_LAST_PATTR.
3646 (objc_add_property_declaration): Added additional arguments.
3647 (objc_property_attribute_kind): Removed.
3648 (objc_set_property_attr): Removed.
3649 * c-common.c (c_common_reswords): Added readwrite, assign, retain,
3650 copy and nonatomic.
3651 * stub-objc.c (objc_add_property_declaration): Added additional
3652 arguments.
3653 (objc_set_property_attr): Removed.
9faeb493 3654
f614132b
NP
36552010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
3656
3657 * c-common.h (objc_add_property_variable): Renamed to
3658 objc_add_property_declaration. Added location argument.
3659 * stub-objc.c (objc_add_property_variable): Same change.
3660
b8a18805
NP
36612010-10-23 Nicola Pero <nicola.pero@meta-innovation.com>
3662
3663 * c-common.h (objc_maybe_printable_name): New.
3664 * stub-objc.c (objc_maybe_printable_name): New.
3665
30cd1c5d
AS
36662010-10-22 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
3667 Andrew Pinski <pinskia@gmail.com>
3668
3669 * c-common.h (c_common_mark_addressable_vec): Declare.
3670 * c-common.c (c_common_mark_addressable_vec): New function.
3671
249a82c4
NP
36722010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
3673
3674 * c-common.h (objc_set_method_type): Removed.
3675 (objc_add_method_declaration): Added boolean argument.
3676 (objc_start_method_definition): Same change.
3677 (objc_build_method_signature): Same change.
3678 * stub-objc.c (objc_set_method_type): Removed.
3679 (objc_add_method_declaration): Added boolean argument.
3680 (objc_start_method_definition): Same change.
3681 (objc_build_method_signature): Same change.
3682
977e30bc
NP
36832010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
3684
3685 * c-common.h (finish_file): Removed.
3686 (objc_write_global_declarations): New.
3687 * c-opts.c (c_common_parse_file): Do not call finish_file.
3688 * stub-objc.c (objc_write_global_declarations): New.
9faeb493 3689
da57d1b9
NP
36902010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
3691
3692 Implemented parsing @synthesize and @dynamic for
3693 Objective-C/Objective-C++.
3694 * c-common.h (enum rid): Add RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
3695 (objc_add_synthesize_declaration): New.
3696 (objc_add_dynamic_declaration): New.
3697 * c-common.c (c_common_reswords): Add synthesize and dynamic.
3698 * stub-objc.c (objc_add_synthesize_declaration): New.
3699 (objc_add_dynamic_declaration): New.
9faeb493 3700
0069111f
MM
37012010-10-18 Michael Meissner <meissner@linux.vnet.ibm.com>
3702
3703 PR target/46041
3704 * c-cppbuiltin.c (mode_has_fma): Move function here from
3705 builtins.c. Don't use the fma optab, instead just use the
3706 HAVE_fma* macros, so that __FP_FAST_FMA* will be defined when
3707 using -save-temps.
3708
e426b47b
NP
37092010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
3710
3711 Merge from 'apple/trunk' branch on FSF servers.
0069111f 3712
e426b47b
NP
3713 2005-11-08 Fariborz Jahanian <fjahanian@apple.com>
3714
9faeb493 3715 Radar 4330422
e426b47b
NP
3716 * c-common.h (objc_non_volatilized_type): New declaration
3717 * stub-objc.c (objc_non_volatilized_type): New stub.
3718
90fbfdc3
NP
37192010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
3720
e426b47b 3721 Merge from 'apple/trunk' branch on FSF servers.
90fbfdc3
NP
3722
3723 2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
3724
9faeb493 3725 Radar 4133425
90fbfdc3 3726 * c-common.h (objc_diagnose_private_ivar): New decl.
0069111f 3727 * stub-objc.c (objc_diagnose_private_ivar): New stub.
90fbfdc3 3728
c37d8c30
IS
37292010-10-17 Iain Sandoe <iains@gcc.gnu.org>
3730
3731 * c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
3732 * c-common.h (enum rid): Add RID_AT_PACKAGE.
3733 (objc_ivar_visibility_kind): New enum.
3734 (objc_set_visibility): Adjust prototype to use visibility enum.
0069111f 3735 * stub-objc.c (objc_set_visibility): Adjust stub to use
c37d8c30
IS
3736 visibility enum.
3737
1b1562a5
MM
37382010-10-14 Michael Meissner <meissner@linux.vnet.ibm.com>
3739
3740 * c-cppbuiltin.c (builtin_define_float_constants): Emit
3741 __FP_FAST_FMA, __FP_FAST_FMAF, and __FP_FAST_FMAL if the machine
3742 has the appropriate fma builtins.
3743 (c_cpp_builtins): Adjust call to builtin_define_float_constants.
3744
668ea4b1
IS
37452010-10-14 Iain Sandoe <iains@gcc.gnu.org>
3746
1b1562a5 3747 merge from FSF apple 'trunk' branch.
668ea4b1 3748 2006 Fariborz Jahanian <fjahanian@apple.com>
1b1562a5 3749
668ea4b1
IS
3750 Radars 4436866, 4505126, 4506903, 4517826
3751 * c-common.c (c_common_resword): Define @property and its attributes.
3752 * c-common.h: Define property attribute enum entries.
3753 (OBJC_IS_PATTR_KEYWORD): New.
3754 (objc_property_attribute_kind): New enum.
3755 Declare objc_set_property_attr (), objc_add_property_variable (),
3756 objc_build_getter_call () and objc_build_setter_call ().
3757 * stub-objc.c (objc_set_property_attr): New stub.
3758 (objc_add_property_variable): Likewise.
3759 (objc_build_getter_call): Likewise.
3760 (objc_build_setter_call) Likewise.
1b1562a5 3761
a1178b30
IS
37622010-10-13 Iain Sandoe <iains@gcc.gnu.org>
3763
1b1562a5 3764 merge from FSF apple 'trunk' branch.
a1178b30
IS
3765 2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
3766
3767 Radar 3803157 (method attributes)
3768 * c-common.c (handle_deprecated_attribute): Recognize
3769 objc methods as valid declarations.
3770 * c-common.h: Declare objc_method_decl ().
1b1562a5 3771 * stub-objc.c (objc_method_decl): New stub.
a1178b30 3772
a75bfaa6
JM
37732010-10-08 Joseph Myers <joseph@codesourcery.com>
3774
3775 * c-common.c (parse_optimize_options): Call
3776 decode_cmdline_options_to_array_default_mask before
3777 decode_options. Update arguments to decode_options.
3778 * c-common.h (c_common_init_options_struct): Declare.
3779 * c-opts.c (c_common_init_options_struct): New. Split out from
3780 c_common_init_options.
3781
f05b9d93
NP
37822010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
3783
3784 Implemented fast enumeration for Objective-C.
3785 * c-common.h (objc_finish_foreach_loop): New.
3786 * stub-objc.c (objc_finish_foreach_loop): New.
3787
1ebe4b4f
JM
37882010-10-05 Joseph Myers <joseph@codesourcery.com>
3789
3790 * c-common.h (struct diagnostic_context): Don't declare here.
3791 (c_common_initialize_diagnostics): Declare using
3792 diagnostic_context typedef.
3793 * c-opts.c (c_common_handle_option): Pass global_dc to
3794 handle_generated_option.
3795
d4d24ba4
JM
37962010-10-04 Joseph Myers <joseph@codesourcery.com>
3797
3798 * c-opts.c (c_common_handle_option): Pass &global_options_set to
3799 handle_generated_option.
3800
478a1c5b
ILT
38012010-10-03 Ian Lance Taylor <iant@google.com>
3802
3803 * c.opt (-fplan9-extensions): New option.
3804
82a1c2fe
FXC
38052010-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
3806
3807 * c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision):
3808 Remove.
3809 (c_cpp_builtins): Call functions from cppbuiltin.c instead
3810 of duplicating code.
3811
92902b1b
IS
38122010-09-30 Iain Sandoe <iains@gcc.gnu.org>
3813
3814 * c-common.c: Add two new entries for @optional
3815 and @required keywords.
3816
3817 merge from FSF 'apple/trunk' branch.
3818 2006-01-30 Fariborz Jahanian <fjahanian@apple.com>
3819
3820 Radar 4386773
3821 * c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new
3822 objective-c keywords.
3823 (objc_set_method_opt): New declaration.
3824 * stub-objc.c (objc_set_method_opt): New stub.
9faeb493 3825
46625112
JM
38262010-09-30 Joseph Myers <joseph@codesourcery.com>
3827
3828 * c-common.c (handle_optimize_attribute): Pass &global_options to
3829 cl_optimization_save and cl_optimization_restore.
3830 * c-opts.c (c_common_handle_option): Pass &global_options to
3831 handle_generated_option.
3832 * c-pragma.c (handle_pragma_diagnostic): Use option_flag_var.
3833 (handle_pragma_pop_options, handle_pragma_reset_options): Pass
3834 &global_options to cl_optimization_restore.
3835
49b91f05
NP
38362010-09-30 Nicola Pero <nicola.pero@meta-innovation.com>
3837
3838 * c-lex.c (c_lex_with_flags): Updated comments for CPP_AT_NAME
3839 Objective-C/Objective-C++ keywords.
3840
13ed556f 38412010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
a6341d57 3842
9faeb493
UB
3843 Merge from 'apple/trunk' branch on FSF servers.
3844
a6341d57
NP
3845 2005-10-04 Fariborz Jahanian <fjahanian@apple.com>
3846
3847 Radar 4281748
3848 * c-common.h (objc_check_global_decl): New declaration.
3849 * stub-objc.c (objc_check_global_decl): New stub.
3850
f0036cca
JM
38512010-09-29 Joseph Myers <joseph@codesourcery.com>
3852
3853 * c.opt: Don't use VarExists.
3854
e3339d0f
JM
38552010-09-29 Joseph Myers <joseph@codesourcery.com>
3856
3857 * c-common.c (c_cpp_error): Update names of diagnostic_context
3858 members.
3859 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of
3860 cl_optimization members.
3861 * c-opts.c (warning_as_error_callback, c_common_handle_option,
3862 sanitize_cpp_opts, finish_options): Update names of cpp_options
3863 members.
3864
1973201f
NP
38652010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
3866
3867 * c-common.h (OBJC_IS_CXX_KEYWORD): New macro. Updated comments.
3868 (objc_is_reserved_word): Removed.
3869 * c-common.c: Updated comments.
3870 * c-lex.c (c_lex_with_flags): Use OBJC_IS_CXX_KEYWORD instead of
3871 objc_is_reserved_word.
3872 * stub-objc.c (objc_is_reserved_word): Removed.
3873
f7e71da5
IS
38742010-09-28 Iain Sandoe <iains@gcc.gnu.org>
3875
9faeb493 3876 * c-common.h (objc_add_method_declaration): Adjust prototype to
f7e71da5
IS
3877 include attributes.
3878 (objc_start_method_definition): Likewise.
3879 (objc_build_keyword_decl): Likewise.
3880 * stub-objc.c:(objc_add_method_declaration): Handle attributes.
3881 (objc_start_method_definition): Likewise.
3882 (objc_build_keyword_decl): Likewise.
3883
c165dca7
IS
38842010-09-28 Iain Sandoe <iains@gcc.gnu.org>
3885
3886 * c-common.h (objc_start_class_interface): Adjust prototype.
3887 (objc_start_category_interface): Likewise.
3888 (objc_start_protocol): Likewise.
3889 * stub-objc.c (objc_start_protocol): Adjust for extra argument.
3890 (objc_start_class_interface): Likewise.
3891 (objc_start_category_interface): Likewise.
3892
7458026b
ILT
38932010-09-27 Ian Lance Taylor <iant@google.com>
3894
3895 * c-common.c (c_common_attribute_table): Add no_split_stack.
3896 (handle_no_split_stack_attribute): New static function.
3897
b581b85b
NP
38982010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
3899
9faeb493 3900 Merge from 'apple/trunk' branch on FSF servers.
b581b85b
NP
3901
3902 2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
3903
9faeb493 3904 Radar 4229905
b581b85b
NP
3905 * c-common.h (objc_have_common_type): New declaration.
3906 * stub-objc.c (objc_have_common_type): New stub.
3907
3908 2005-06-22 Ziemowit Laski <zlaski@apple.com>
3909
3910 Radar 4154928
3911 * c-common.h (objc_common_type): New prototype.
9faeb493 3912 * stub-objc.c (objc_common_type): New stub.
b581b85b 3913
46a4da10
JH
39142010-09-24 Jan Hubicka <jh@suse.cz>
3915
3916 * c-common.c (handle_leaf_attribute): New function.
3917 (struct attribute_spec c_common_att): Add leaf.
3918
e200444e
JM
39192010-09-22 Joseph Myers <joseph@codesourcery.com>
3920
3921 * c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
3922 -comments-in-macros, -define-macro, -define-macro=, -dependencies,
3923 -dump, -dump=, -imacros, -imacros=, -include, -include=,
3924 -include-barrier, -include-directory, -include-directory=,
3925 -include-directory-after, -include-directory-after=,
3926 -include-prefix, -include-prefix=, -include-with-prefix,
3927 -include-with-prefix=, -include-with-prefix-after,
3928 -include-with-prefix-after=, -include-with-prefix-before,
3929 -include-with-prefix-before=, -no-integrated-cpp,
3930 -no-line-commands, -no-standard-includes, -no-warnings, -output,
3931 -output=, -pedantic, -pedantic-errors, -preprocess,
3932 -print-missing-file-dependencies, -trace-includes, -traditional,
3933 -traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
3934 -user-dependencies, -verbose, -write-dependencies,
3935 -write-user-dependencies, no-integrated-cpp, traditional): New.
3936
29a80ea6
NP
39372010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
3938
3939 PR objc/23710
ac1fc2fc
NP
3940 * c-common.h (objc_start_method_definition): Return bool instead
3941 of void.
3942 * stub-objc.c (objc_start_method_definition): Return bool instead
3943 of void.
3944
39452010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
3946
3947 PR objc/25965
3948 * c-common.h (objc_get_interface_ivars): New declaration.
3949 * stub-objc.c (objc_get_interface_ivars): New stub.
29a80ea6 3950
de621752
ILT
39512010-09-15 Ian Lance Taylor <iant@google.com>
3952
3953 * c-common.c (parse_optimize_options): Do not capitalize warning
06730c5d 3954 messages. Remove period at end of warning message.
de621752 3955
ba885ec5
NS
39562010-09-09 Nathan Sidwell <nathan@codesourcery.com>
3957
3958 * c-common.c (handle_alias_ifunc_attribute): New, broken out of ...
3959 (handle_alias_attribute): ... here.
3960 (handle_ifunc_attribute): New.
3961
c5ee1358
MM
39622010-09-06 Mark Mitchell <mark@codesourcery.com>
3963
3964 * c-common.h (do_warn_double_promotion): Declare.
3965 * c-common.c (do_warn_double_promotion): Define.
3966
0a0b3574
MM
39672010-09-05 Mark Mitchell <mark@codesourcery.com>
3968
3969 * c.opt (Wdouble-promotion): New.
3970
d1779886
JM
39712010-09-02 Joseph Myers <joseph@codesourcery.com>
3972
3973 * c.opt (falt-external-templates, fhuge-objects, fvtable-gc,
3974 fvtable-thunks, fxref): Mark no longer supported in help text.
3975
2d2bd949
JM
39762010-09-02 Joseph Myers <joseph@codesourcery.com>
3977
3978 * c.opt (Wimport, fall-virtual, falt-external-templates,
3979 fdefault-inline, fenum-int-equiv, fexternal-templates,
3980 fguiding-decls, fhonor-std, fhuge-objects, flabels-ok,
3981 fname-mangling-version-, fnew-abi, fnonnull-objects,
3982 foptional-diags, fsquangle, fstrict-prototype, fthis-is-variable,
3983 fvtable-gc, fvtable-thunks, fxref): Mark with Ignore and Warn as
3984 applicable.
3985 (fhandle-exceptions): Mark with Alias and Warn.
3986 * c-opts.c (c_common_handle_option): Don't handle options marked
3987 as ignored.
3988
5de8299c
JM
39892010-09-02 Joseph Myers <joseph@codesourcery.com>
3990
3991 * c.opt (Wcomments, Werror-implicit-function-declaration,
3992 ftemplate-depth-, std=c89, std=c9x, std=gnu89, std=gnu9x,
3993 std=iso9899:1990, std=iso9899:1999, std=iso9899:199x): Mark as
3994 aliases.
3995 * c-common.c (option_codes): Use OPT_Wcomment instead of
3996 OPT_Wcomments.
3997 * c-opts.c (warning_as_error_callback, c_common_handle_option):
3998 Don't handle options marked as aliases.
3999
0ceb0201
RG
40002010-08-25 Richard Guenther <rguenther@suse.de>
4001
4002 * c-common.c (c_common_get_alias_set): Remove special
4003 handling for pointers.
4004
ac47786e
NF
40052010-08-20 Nathan Froyd <froydnj@codesourcery.com>
4006
4007 * c-common.c: Use FOR_EACH_VEC_ELT.
4008 * c-gimplify.c: Likewise.
4009 * c-pragma.c: Likewise.
4010
c878765b
JM
40112010-08-16 Joseph Myers <joseph@codesourcery.com>
4012
4013 * c.opt (MDX): Change back to MD. Mark NoDriverArg instead of
4014 RejectDriver.
4015 (MMDX): Change back to MMD. Mark NoDriverArg instead of
4016 RejectDriver.
4017 * c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
4018 instead of OPT_MDX and OPT_MMDX.
4019
603349bf
JM
40202010-08-16 Joseph Myers <joseph@codesourcery.com>
4021
4022 * c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.
4023
644fa7ac
JM
40242010-08-12 Joseph Myers <joseph@codesourcery.com>
4025
4026 * c.opt (MD, MMD): Change to MDX and MMDX.
4027 * c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX.
4028
481e1176
JM
40292010-08-11 Joseph Myers <joseph@codesourcery.com>
4030
4031 * c-opts.c (c_common_handle_option): Call handle_generated_option
4032 instead of handle_option.
4033
ac8dc9f7
NF
40342010-08-08 Nathan Froyd <froydnj@codesourcery.com>
4035
4036 * c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
4037 (maybe_apply_renaming_pragma): Delete unneeded declarations.
4038
4f8c876d
NF
40392010-08-08 Nathan Froyd <froydnj@codesourcery.com>
4040
4041 * c-pragma.c (pending_redefinition): Declare. Declare a VEC of it.
4042 (pending_redefine_extname): Change type to a VEC.
4043 (add_to_renaming_pragma_list): Update for new type of
4044 pending_redefine_extname.
ac8dc9f7 4045 (maybe_apply_renaming_pragma): Likewise.
4f8c876d 4046
3b0c690e
AC
40472010-08-04 Arnaud Charlet <charlet@adacore.com>
4048
4049 * c-ada-spec.c (dump_ada_template): Mark underlying instance type as
4050 visited.
4051 (dump_generic_ada_node): Code clean up. Use TREE_VISITED flag to
4052 decide whether a type has already been declared/seen.
4053 Do not go to the original type.
4054 (dump_nested_types): New parameter forward.
4055 Generate forward declaration if needed and mark type as visited.
4056 (print_ada_declaration): Call dump_nested_types if not already done.
4057 Mark types as visited.
4058
1890bccc
JM
40592010-08-03 Joseph Myers <joseph@codesourcery.com>
4060
4061 * c.opt (-print-pch-checksum): Remove option.
4062 * c-opts.c (c_common_handle_option): Don't handle
4063 OPT_print_pch_checksum.
4064
5f20c657
JM
40652010-07-27 Joseph Myers <joseph@codesourcery.com>
4066
4067 * c-common.h (c_common_handle_option): Update prototype and return
4068 value type.
4069 * c-opts.c (c_common_handle_option): Update prototype and return
4070 value type. Update calls to handle_option and
4071 enable_warning_as_error.
4072
f551f80c
JJ
40732010-07-27 Jakub Jelinek <jakub@redhat.com>
4074
4075 PR c/45079
4076 * c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
4077
61ff2bdc
JM
40782010-07-27 Joseph Myers <joseph@codesourcery.com>
4079
4080 * c-common.h (c_common_missing_argument): Remove.
4081 * c-opts.c (c_common_missing_argument): Remove.
4082 * c.opt (A, D, F, I, MD, MMD, MQ, MT, U, fconstant-string-class=,
4083 idirafter, imacros, include, isysroot, isystem, iquote): Add
4084 MissingArgError.
4085 * c-objc-common.h (LANG_HOOKS_MISSING_ARGUMENT): Remove.
4086
7a9bf9a4
JM
40872010-07-27 Joseph Myers <joseph@codesourcery.com>
4088
4089 * c-common.h (c_common_option_lang_mask,
4090 c_common_initialize_diagnostics, c_common_complain_wrong_lang_p):
4091 New.
4092 (c_common_init_options): Update prototype.
4093 * c-opts.c (c_common_option_lang_mask): New.
4094 (c_common_initialize_diagnostics): Split out of
4095 c_common_init_options.
4096 (accept_all_c_family_options, c_common_complain_wrong_lang_p):
4097 New.
4098 (c_common_init_options): Update prototype. Use decoded options in
4099 search for -lang-asm.
4100
910ad8de
NF
41012010-07-15 Nathan Froyd <froydnj@codesourcery.com>
4102
4103 * c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
4104 * c-format.c: Likewise.
4105
718f9c0f
MLI
41062010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
4107
4108 * c-common.h: Include diagnostic-core.h. Error if already
4109 included.
4110 * c-semantics.c: Do not define GCC_DIAG_STYLE here.
4111
4d451982
MLI
41122010-07-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
4113
4114 * c-family/c-common.c (IN_GCC_FRONTEND): Do not undef.
4115 Do not include expr.h
4116 (vector_mode_valid_p): Move here.
4117
119fe915
SB
41182010-06-21 DJ Delorie <dj@redhat.com>
4119
4120 * c-pragma.c (handle_pragma_diagnostic): Add push/pop,
4121 allow these pragmas anywhere.
4122
41232010-06-14 Jakub Jelinek <jakub@redhat.com>
4124
4125 PR bootstrap/44509
4126 * c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
4127 (lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
4128 (lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
4129 ggc_strdup instead of xstrdup.
4130
41312010-06-10 Jakub Jelinek <jakub@redhat.com>
4132
4133 * c-cppbuiltin.c: Include cpp-id-data.h.
4134 (lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
4135 (lazy_hex_fp_value): New function.
4136 (builtin_define_with_hex_fp_value): Provide definitions lazily.
4137
6662d794
MLI
41382010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
4139
4140 * c-gimplify.c: Do not include tree-flow.h
4141
38f8b050
JR
41422010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
4143
4144 PR other/44034
4145 * c-common.c: Rename targetm member:
4146 targetm.enum_va_list -> targetm.enum_va_list_p
4147
9589f23e
AS
41482010-06-28 Anatoly Sokolov <aesok@post.ru>
4149
4150 * c-common.c (shorten_compare): Adjust call to force_fit_type_double.
4151
3b06d379
SB
41522010-06-28 Steven Bosscher <steven@gcc.gnu.org>
4153
4154 * c-cppbuiltin.c: Do not include except.h.
4155
d166d4c3
AK
41562010-06-24 Andi Kleen <ak@linux.intel.com>
4157
9faeb493
UB
4158 * c-common.c (warn_for_omitted_condop): New.
4159 * c-common.h (warn_for_omitted_condop): Add prototype.
d166d4c3 4160
70cb8be6
JM
41612010-06-21 Joseph Myers <joseph@codesourcery.com>
4162
4163 * c.opt (lang-objc): Remove.
4164 * c-opts.c (c_common_handle_option): Don't handle OPT_lang_objc.
4165
a4c97feb
JR
41662010-06-21 Joern Rennecke <joern.rennecke@embecosm.com>
4167
4168 * c-opts.c: Include "tm_p.h".
4169
6e2f1956
JM
41702010-06-20 Joseph Myers <joseph@codesourcery.com>
4171
4172 * c-common.c (parse_optimize_options): Update call to
4173 decode_options.
4174
bc87224e
NF
41752010-06-18 Nathan Froyd <froydnj@codesourcery.com>
4176
4177 * c-common.c (record_types_used_by_current_var_decl): Adjust for
4178 new type of types_used_by_cur_var_decl.
4179
b49cf425
JR
41802010-06-17 Joern Rennecke <joern.rennecke@embecosm.com>
4181
4182 PR bootstrap/44512
4183 * c-cppbuiltin.c (builtin_define_with_hex_fp_value): Add cast
4184 for C++ standard compliance.
4185
59f9c2ed
JM
41862010-06-16 Jason Merrill <jason@redhat.com>
4187
4188 * c.opt: Add -Wnoexcept.
4189
33766b66
RG
41902010-06-16 Richard Guenther <rguenther@suse.de>
4191
4192 PR c/44555
4193 * c-common.c (c_common_truthvalue_conversion): Remove
4194 premature and wrong optimization concering ADDR_EXPRs.
4195
eff7e30c
AC
41962010-06-15 Arnaud Charlet <charlet@adacore.com>
4197
4198 * c-ada-spec.c (dump_sloc): Remove column info.
4199 (is_simple_enum): New function.
4200 (dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada
4201 enum types when relevant.
4202
6312e84d
MLI
42032010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
4204
9faeb493 4205 * c-common.c (conversion_warning): Warn at expression
6312e84d
MLI
4206 location.
4207
1cb42611
JM
42082010-06-10 Joseph Myers <joseph@codesourcery.com>
4209
4210 * c-opts.c (c_common_handle_option): Don't handle
4211 OPT_fshow_column.
4212
a9429e29
LB
42132010-06-08 Laurynas Biveinis <laurynas.biveinis@gmail.com>
4214
4215 * c-pragma.c (push_alignment): Use typed GC allocation.
4216 (handle_pragma_push_options): Likewise.
4217
4218 * c-common.c (parse_optimize_options): Likewise.
4219
4220 * c-common.h (struct sorted_fields_type): Add variable_size GTY
4221 option.
4222
5498f011
JM
42232010-06-07 Joseph Myers <joseph@codesourcery.com>
4224
4225 * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
4226 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
4227 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
4228 flag_signed_bitfields, warn_strict_null_sentinel,
4229 flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
4230 flag_gen_declaration, flag_no_gnu_keywords,
4231 flag_implement_inlines, flag_implicit_templates,
4232 flag_implicit_inline_templates, flag_optional_diags,
4233 flag_elide_constructors, flag_default_inline, flag_rtti,
4234 flag_conserve_space, flag_access_control, flag_check_new,
4235 flag_new_for_scope, flag_weak, flag_working_directory,
4236 flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
4237 flag_enforce_eh_specs, flag_threadsafe_statics,
4238 flag_pretty_templates): Remove.
4239 * c-common.h (flag_preprocess_only, flag_nil_receivers,
4240 flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
4241 flag_replace_objc_classes, flag_undef, flag_no_builtin,
4242 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
4243 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
4244 flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
4245 flag_no_gnu_keywords, flag_implement_inlines,
4246 flag_implicit_templates, flag_implicit_inline_templates,
4247 flag_optional_diags, flag_elide_constructors, flag_default_inline,
4248 flag_rtti, flag_conserve_space, flag_access_control,
4249 flag_check_new, flag_new_for_scope, flag_weak,
4250 flag_working_directory, flag_use_cxa_atexit,
4251 flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
4252 flag_threadsafe_statics, flag_pretty_templates,
4253 warn_strict_null_sentinel): Remove.
4254 * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
4255 fbuiltin, fcheck-new, fconserve-space, felide-constructors,
4256 fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
4257 fimplicit-inline-templates, fimplicit-templates,
4258 flax-vector-conversions, fms-extensions, fnil-receivers,
4259 fnonansi-builtins, fpretty-templates, freplace-objc-classes,
4260 frtti, fshort-double, fshort-enums, fshort-wchar,
4261 fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
4262 funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
4263 fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
4264 gen-decls, undef): Use Var.
4265 (fdefault-inline, foptional-diags): Document as doing nothing.
4266 * c-opts.c (c_common_handle_option): Remove cases for options now
4267 using Var. Mark ignored options as such.
4268
39dabefd
SB
42692010-06-05 Steven Bosscher <steven@gcc.gnu.org>
4270
9faeb493 4271 * c-common.c: Moved to here from parent directory.
39dabefd
SB
4272 * c-common.def: Likewise.
4273 * c-common.h: Likewise.
4274 * c-cppbuiltin.c: Likewise.
4275 * c-dump.c: Likewise.
4276 * c-format.c: Likewise.
4277 * c-format.h : Likewise.
4278 * c-gimplify.c: Likewise.
4279 * c-lex.c: Likewise.
4280 * c-omp.c: Likewise.
4281 * c.opt: Likewise.
4282 * c-opts.c: Likewise.
4283 * c-pch.c: Likewise.
4284 * c-ppoutput.c: Likewise.
4285 * c-pragma.c: Likewise.
4286 * c-pragma.h: Likewise.
4287 * c-pretty-print.c: Likewise.
4288 * c-pretty-print.h: Likewise.
4289 * c-semantics.c: Likewise.
4290 * stub-objc.c: Likewise.
4291
4292 * c-common.c: Include gt-c-family-c-common.h.
4293 * c-pragma.c: Include gt-c-family-c-pragma.h.
4294\f
23a5b65a 4295Copyright (C) 2010-2014 Free Software Foundation, Inc.
39dabefd
SB
4296
4297Copying and distribution of this file, with or without modification,
4298are permitted in any medium without royalty provided the copyright
4299notice and this notice are preserved.