]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/c-family/ChangeLog
Handle recursive restrict in function parameter
[thirdparty/gcc.git] / gcc / c-family / ChangeLog
CommitLineData
aeaccb75 12015-11-03 Bernd Schmidt <bschmidt@redhat.com>
2
3 PR c++-common/67882
4 * c-family/c-common.h (fold_offsetof_1): Add argument.
5 * c-family/c-common.c (fold_offsetof_1): Diagnose more invalid
6 offsetof expressions that reference elements past the end of
7 an array.
8
9e10bfb7 92015-11-03 Thomas Schwinge <thomas@codesourcery.com>
10 Chung-Lin Tang <cltang@codesourcery.com>
11
12 * c-pragma.c (oacc_pragmas): Add "atomic".
13 * c-pragma.h (pragma_kind): Add PRAGMA_OACC_ATOMIC.
14
ab50af2a 152015-10-30 Evgeny Stupachenko <evstupac@gmail.com>
16
17 * c-common.c (handle_target_clones_attribute): New.
18 (c_common_attribute_table): Add handle_target_clones_attribute.
19 (handle_always_inline_attribute): Add check on target_clones attribute.
20 (handle_target_attribute): Ditto.
21
4cba6f60 222015-10-29 Andrew MacLeod <amacleod@redhat.com>
23
24 * array-notation-common.c: Reorder #include's and remove duplicates.
25 * c-ada-spec.c: Likewise.
26 * c-cilkplus.c: Likewise.
27 * c-common.c: Likewise.
28 * c-cppbuiltin.c: Likewise.
29 * c-dump.c: Likewise.
30 * c-format.c: Likewise.
31 * c-gimplify.c: Likewise.
32 * c-indentation.c: Likewise.
33 * c-lex.c: Likewise.
34 * c-omp.c: Likewise.
35 * c-opts.c: Likewise.
36 * c-pch.c: Likewise.
37 * c-ppoutput.c: Likewise.
38 * c-pragma.c: Likewise.
39 * c-pretty-print.c: Likewise.
40 * c-semantics.c: Likewise.
41 * c-ubsan.c: Likewise.
42 * cilk.c: Likewise.
43 * stub-objc.c: Likewise.
44
f576a2e4 452015-10-28 Jason Merrill <jason@redhat.com>
46
47 * c-common.c (pointer_int_sum): Fold the MULT_EXPR.
48
2c4c8725 492015-10-27 Thomas Schwinge <thomas@codesourcery.com>
50 James Norris <jnorris@codesourcery.com>
51 Cesar Philippidis <cesar@codesourcery.com>
52
53 PR c/64765
54 PR c/64880
55 * c-common.h (c_oacc_split_loop_clauses): Declare function.
56 * c-omp.c (c_oacc_split_loop_clauses): New function.
57
8204c077 582015-10-21 Martin Sebor <msebor@redhat.com>
59
60 PR driver/68043
61 * c.opt: End each sentence that describes an option with a period.
62
8523243e 632015-10-20 Marek Polacek <polacek@redhat.com>
64
65 * array-notation-common.c (is_cilkplus_vector_p): Define.
66 * c-common.h (is_cilkplus_vector_p): Declare.
67
08881cb8 682015-10-20 Marek Polacek <polacek@redhat.com>
69
70 * c.opt (std=gnu++11): Do not describe as experimental.
71 (std=gnu++14): Likewise.
72
a36e5e5e 732015-10-19 Jason Merrill <jason@redhat.com>
74
75 * c-cppbuiltin.c (c_cpp_builtins): Define
76 __cpp_nontype_template_args.
77
a349de0a 782015-10-19 Jason Merrill <jason@redhat.com>
79
80 * c-cppbuiltin.c (c_cpp_builtins): Define
81 __cpp_enumerator_attributes, __cpp_fold_expressions,
82 __cpp_unicode_characters.
83
43895be5 842015-10-13 Jakub Jelinek <jakub@redhat.com>
85 Aldy Hernandez <aldyh@redhat.com>
86
87 * c-common.c (enum c_builtin_type): Define DEF_FUNCTION_TYPE_9,
88 DEF_FUNCTION_TYPE_10 and DEF_FUNCTION_TYPE_11.
89 (c_define_builtins): Likewise.
90 * c-common.h (enum c_omp_clause_split): Add
91 C_OMP_CLAUSE_SPLIT_TASKLOOP.
92 (c_finish_omp_critical, c_finish_omp_ordered): Add CLAUSES argument.
93 (c_finish_omp_for): Add ORIG_DECLV argument.
94 * c-cppbuiltin.c (c_cpp_builtins): Predefine _OPENMP as
95 201511 instead of 201307.
96 * c-omp.c (c_finish_omp_critical): Add CLAUSES argument, set
97 OMP_CRITICAL_CLAUSES to it.
98 (c_finish_omp_ordered): Add CLAUSES argument, set
99 OMP_ORDERED_CLAUSES to it.
100 (c_finish_omp_for): Add ORIG_DECLV argument, set OMP_FOR_ORIG_DECLS
101 to it if OMP_FOR. Clear DECL_INITIAL on the IVs.
102 (c_omp_split_clauses): Handle OpenMP 4.5 combined/composite
103 constructs and new OpenMP 4.5 clauses. Clear
104 OMP_CLAUSE_SCHEDULE_SIMD if not combined with OMP_SIMD. Add
105 verification code.
106 * c-pragma.c (omp_pragmas_simd): Add taskloop.
107 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKLOOP.
108 (enum pragma_omp_clause): Add
109 PRAGMA_OMP_CLAUSE_{DEFAULTMAP,GRAINSIZE,HINT,{IS,USE}_DEVICE_PTR}
110 and PRAGMA_OMP_CLAUSE_{LINK,NOGROUP,NUM_TASKS,PRIORITY,SIMD,THREADS}.
111
20cb53c9 1122015-10-05 Richard Sandiford <richard.sandiford@arm.com>
113
114 * c-lex.c (interpret_float): Use real_equal instead of
115 REAL_VALUES_EQUAL.
116
6d02e6b2 1172015-10-04 Jason Merrill <jason@redhat.com>
118
119 Implement N4514, C++ Extensions for Transactional Memory.
120 * c-common.c (c_common_reswords): Add C++ TM TS keywords.
121 (c_common_attribute_table): Add transaction_safe_dynamic.
122 transaction_safe now affects type identity.
123 (handle_tm_attribute): Handle transaction_safe_dynamic.
124 * c-common.h (enum rid): Add RID_ATOMIC_NOEXCEPT,
125 RID_ATOMIC_CANCEL, RID_SYNCHRONIZED.
126 (OBJC_IS_CXX_KEYWORD): Add RID_SYNCHRONIZED.
127 (D_TRANSMEM): New.
128 * c-cppbuiltin.c (c_cpp_builtins): Define __cpp_transactional_memory.
129 * c-pretty-print.c (pp_c_attributes_display): Don't print
130 transaction_safe in C++.
131
c0999a5d 1322015-10-02 Marek Polacek <polacek@redhat.com>
133
134 * c.opt (Wduplicated-cond): Don't enable by -Wall anymore.
135
ef17a71a 1362015-10-02 Marek Polacek <polacek@redhat.com>
137
138 PR c/64249
139 * c-common.c (warn_duplicated_cond_add_or_warn): New function.
140 * c-common.h (warn_duplicated_cond_add_or_warn): Declare.
141 * c.opt (Wduplicated-cond): New option.
142
05b84e7b 1432015-10-01 Joseph Myers <joseph@codesourcery.com>
144
145 * c.opt (std=c11): Do not describe as experimental.
146 (std=gnu11): Likewise.
147 (std=iso9899:2011): Likewise.
148
e561d5e1 1492015-09-28 Nathan Sidwell <nathan@codesourcery.com>
150
151 * c-common.c (DEF_FUNCTION_TYPE_VAR_6): New.
152 (DEF_FUNCTION_TYPE_VAR_11): Delete.
153
bd4b90d2 1542015-09-25 Marek Polacek <polacek@redhat.com>
155
156 * c-ubsan.c (ubsan_instrument_division): Remove unnecessary code.
157 (ubsan_instrument_shift): Likewise.
158
ac13b2b2 1592015-09-25 Marek Polacek <polacek@redhat.com>
160
161 PR sanitizer/64906
162 * c-ubsan.c (ubsan_instrument_division): Also pre-evaluate OP1.
163
a3c82f4c 1642015-09-24 Patrick Palka <ppalka@gcc.gnu.org>
165
166 * c-indentation.c (should_warn_for_misleading_indentation):
167 Compare next_stmt_vis_column with guard_line_first_nws instead
168 of with guard_line_vis_column.
169
5eef101d 1702015-09-23 Manuel López-Ibáñez <manu@gcc.gnu.org>
171
172 PR c/49654
173 PR c/49655
174 * c-pragma.c (handle_pragma_diagnostic): Detect non-warning
175 options and options not valid for the current language.
176
60897493 1772015-09-22 Patrick Palka <ppalka@gcc.gnu.org>
178
179 * c-indentation.c (should_warn_for_misleading_indentation):
180 Float out and consolidate the calls to get_visual_column that
181 are passed guard_exploc as an argument. Compare
182 next_stmt_vis_column with guard_line_first_nws instead of with
183 body_line_first_nws.
184
85c93154 1852015-09-22 Nathan Sidwell <nathan@codesourcery.com>
186
187 * c.opt (Wmultiple-inheritance, Wvirtual-inheritance, Wtemplates,
188 Wnamespaces): New C++ warnings.
189
229a58b1 1902015-09-22 Jason Merrill <jason@redhat.com>
191
192 * c-common.h (abi_compat_version_crosses): New.
193 (warn_abi_version): Declare.
194 * c-common.c: Define it.
195 * c-opts.c (c_common_post_options): Handle it.
196 flag_abi_compat_version defaults to 8.
197
2d2de569 1982015-09-21 Ville Voutilainen <ville.voutilainen@gmail.com>
199
200 Complete the implementation of N4230, Nested namespace definition.
201 * c-cppbuiltin.c: Add __cpp_namespace_attributes and
202 __cpp_nested_namespace_definitions.
203
2b897e68 2042015-09-18 Manuel López-Ibáñez <manu@gcc.gnu.org>
205
206 * c-pragma.c (handle_pragma_diagnostic): Fix wrong return.
207
ed536208 2082015-09-18 Manuel López-Ibáñez <manu@gcc.gnu.org>
209
210 * c-pragma.c (handle_pragma_diagnostic): Use explicit location
211 when warning.
212 * c-pragma.h (pragma_lex): Add optional loc argument.
213
1dc6c44d 2142015-09-16 Mikhail Maltsev <maltsevm@gmail.com>
215
216 * c-format.c (check_format_arg): Adjust to use common block size in all
217 object pools.
218
be812248 2192015-09-15 David Malcolm <dmalcolm@redhat.com>
220
221 * c-format.c (location_from_offset): Update for change in
222 signature of location_get_source_line.
223 * c-indentation.c (get_visual_column): Likewise.
224 (line_contains_hash_if): Likewise.
225
e4cc057f 2262015-09-14 Marek Polacek <polacek@redhat.com>
227
228 * c-opts.c (c_common_post_options): Set C++ standard earlier, before
229 setting various warnings.
230
85f5e2ee 2312015-09-14 Marek Polacek <polacek@redhat.com>
232
233 * c-common.c (warn_for_sign_compare): Cast to unsigned when shifting
234 a negative value.
235
1bca8cbd 2362015-09-11 Mark Wielaard <mjw@redhat.com>
237
238 PR c/28901
239 * c.opt (Wunused-variable): Option from common.opt.
240 (Wunused-const-variable): New option.
241
ee48893a 2422015-09-09 Paolo Carlini <paolo.carlini@oracle.com>
243
244 PR c++/53184
245 * c.opt ([Wsubobject-linkage]): Add.
246
547c6b1f 2472015-09-03 Martin Sebor <msebor@redhat.com>
248
249 PR c/66516
250 * c-common.h (c_decl_implicit, reject_gcc_builtin): Declare new
251 functions.
252 * c-common.c (reject_gcc_builtin): Define.
253
7e976b10 2542015-09-02 Balaji V. Iyer <balaji.v.iyer@intel.com>
255
256 PR middle-end/60586
257 * c-common.h (cilk_gimplify_call_params_in_spawned_fn): New
258 prototype.
259 * c-gimplify.c (c_gimplify_expr): Added a call to the function
260 cilk_gimplify_call_params_in_spawned_fn.
261 * cilk.c (cilk_gimplify_call_params_in_spawned_fn): New function.
262 (gimplify_cilk_spawn): Removed EXPR_STMT and CLEANUP_POINT_EXPR
263 unwrapping.
264
9e6bcade 2652015-08-25 Marek Polacek <polacek@redhat.com>
266
267 PR middle-end/67330
268 * c-common.c (handle_weak_attribute): Don't check whether the
269 visibility can be changed here.
270
af9de21d 2712015-08-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
272
273 * c-lex.c (c_lex_with_flags): Use explicit locations.
274
6dc50383 2752015-08-18 Trevor Saunders <tbsaunde@tbsaunde.org>
276
277 * c-ada-spec.h, c-common.c, c-common.h, c-format.c, c-format.h,
278 c-objc.h, c-ppoutput.c, c-pragma.c, c-pragma.h: Remove useless
279
10902624 2802015-08-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
281
282 PR middle-end/36757
283 * c-common.c (check_builtin_function_arguments): Add check
284 for BUILT_IN_SIGNBIT argument.
285
a03a71ab 2862015-08-18 Paolo Carlini <paolo.carlini@oracle.com>
287
288 PR c++/67160
289 * c-cppbuiltin.c (c_cpp_builtins): Fix __cpp_static_assert value
290 in c++1z mode.
291
22723c26 2922015-08-17 Marek Polacek <polacek@redhat.com>
293
294 * c-pretty-print.c (pp_c_cv_qualifiers): Remove code dealing
295 with whitespaces before qualifier names.
296
f4809955 2972015-08-12 Marek Polacek <polacek@redhat.com>
298
299 PR c++/55095
300 * c-common.c (maybe_warn_shift_overflow): Properly handle
301 left-shifting 1 into the sign bit.
302
5463f502 3032015-08-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
304
305 * c.opt (Wchkp): Use LangEnabledBy instead of EnabledBy.
306
56c12fd4 3072015-08-06 Andrew Sutton <andrew.n.sutton@gmail.com>
308 Braden Obrzut <admin@maniacsvault.net>
309 Jason Merrill <jason@redhat.com>
310
311 Add C++ Concepts TS support.
312 * c-common.c (c_common_reswords): Add __is_same_as, concept, requires.
313 * c-common.h (enum rid): Add RID_IS_SAME_AS, RID_CONCEPT, RID_REQUIRES.
314 (D_CXX_CONCEPTS, D_CXX_CONCEPTS_FLAGS): New.
315 * c-cppbuiltin.c (c_cpp_builtins): Define __cpp_concepts.
316 * c-opts.c (set_std_cxx1z): Set flag_concepts.
317 * c.opt (fconcepts): New.
318
17afcef6 3192015-08-02 Patrick Palka <ppalka@gcc.gnu.org>
320
321 * c-indentation.c (should_warn_for_misleading_indentation):
322 Improve heuristics.
323
f95bfdd4 3242015-08-02 Patrick Palka <ppalka@gcc.gnu.org>
325
326 * c-indentation.c (get_visual_column): Add parameter first_nws,
327 use it. Update comment documenting the function.
328 (is_first_nonwhitespace_on_line): Remove.
329 (should_warn_for_misleading_indentation): Replace usage of
330 of is_first_nonwhitespace_on_line with get_visual_column.
331
9255be07 3322015-08-02 Patrick Palka <ppalka@gcc.gnu.org>
333
334 * c-indentation.h (struct token_indent_info): Define.
335 (get_token_indent_info): Define.
336 (warn_for_misleading_information): Declare.
337 * c-common.h (warn_for_misleading_information): Remove.
338 * c-identation.c (warn_for_misleading_indentation):
339 Change declaration to take three token_indent_infos. Adjust
340 accordingly.
341 * c-identation.c (should_warn_for_misleading_indentation):
342 Likewise. Bail out early if the body is a compound statement.
343 (guard_tinfo_to_string): Define.
344
e880695c 3452015-07-30 Jason Merrill <jason@redhat.com>
346
347 * c-pretty-print.c (unary_expression) [INDIRECT_REF]: Don't print
348 '*' for reference decay.
349
f58dd84b 3502015-07-30 Marek Polacek <polacek@redhat.com>
351
352 * c-common.c (warn_tautological_cmp): Bail for float types.
353
d9e4fe27 3542015-07-27 Marek Polacek <polacek@redhat.com>
355
356 PR bootstrap/67030
357 * c-common.c (warn_tautological_cmp): Don't warn for macro expansion.
358
6784a472 3592015-07-27 Marek Polacek <polacek@redhat.com>
360
361 PR c++/66555
362 PR c/54979
363 * c-common.c (find_array_ref_with_const_idx_r): New function.
364 (warn_tautological_cmp): New function.
365 * c-common.h (warn_tautological_cmp): Declare.
366 * c.opt (Wtautological-compare): New option.
367
08034975 3682015-07-23 Marek Polacek <polacek@redhat.com>
369
370 * c-ubsan.c (ubsan_instrument_division): Use unshare_expr throughout.
371 (ubsan_instrument_shift): Likewise.
372
f6f5e49b 3732015-07-23 Marek Polacek <polacek@redhat.com>
374
375 PR sanitizer/66908
376 * c-ubsan.c: Include gimplify.h.
377 (ubsan_instrument_division): Unshare OP0 and OP1.
378 (ubsan_instrument_shift): Likewise.
379
8d669e79 3802015-07-20 Marek Polacek <polacek@redhat.com>
381 Richard Sandiford <richard.sandiford@arm.com>
382
383 PR c++/55095
384 * c-common.c (c_fully_fold_internal): Warn about left shift overflows.
385 Use EXPR_LOC_OR_LOC.
386 (maybe_warn_shift_overflow): New function.
387 * c-common.h (maybe_warn_shift_overflow): Declare.
388 * c-opts.c (c_common_post_options): Set warn_shift_overflow.
389 * c.opt (Wshift-overflow): New option.
390
e16712b1 3912015-07-16 Martin Liska <mliska@suse.cz>
392
393 * c-format.c (static void check_format_info_main): Use
394 object_allocator instead of pool_allocator.
395 (check_format_arg): Likewise.
396 (check_format_info_main): Likewise.
397
e51764ad 3982015-07-15 Andrew MacLeod <amacleod@redhat.com>
399
400 * c-opts.c: Remove multiline #include comment.
401
47ae02b7 4022015-07-12 Aldy Hernandez <aldyh@redhat.com>
403
404 * c-common.c: Fix double word typos.
405
ed2b2eb2 4062015-07-10 Eric Botcazou <ebotcazou@adacore.com>
407
408 * c-ada-spec.h (cpp_operation): Revert latest change.
409 * c-ada-spec.c (print_ada_declaration): Likewise. Skip implicit
410 constructors and destructors.
411
1eacc14a 4122015-07-09 Andrew MacLeod <amacleod@redhat.com>
413
414 * c-common.h: Adjust includes for flags.h changes.
415 * stub-objc.c: Likewise.
47ae02b7 416
0124237f 4172015-07-08 Eric Botcazou <ebotcazou@adacore.com>
418
419 * c-ada-spec.h (cpp_operation): Add IS_CONSTEXPR.
420 * c-ada-spec.c (print_ada_declaration): Skip constexpr constructors.
421
386ef929 4222015-07-08 Jakub Jelinek <jakub@redhat.com>
423
424 * c-omp.c (c_omp_declare_simd_clauses_to_numbers): If all clauses
425 are to be removed, return NULL rather than original clauses list.
426
9ef16211 4272015-07-07 Andrew MacLeod <amacleod@redhat.com>
428
429 * array-notation-common.c: Adjust includes.
430 * c-ada-spec.c: Likewise.
431 * c-cilkplus.c: Likewise.
432 * c-common.h: Likewise.
433 * c-cppbuiltin.c: Likewise.
434 * c-dump.c: Likewise.
435 * c-format.c: Likewise.
436 * c-gimplify.c: Likewise.
437 * c-indentation.c: Likewise.
438 * c-lex.c: Likewise.
439 * c-omp.c: Likewise.
440 * c-opts.c: Likewise.
441 * c-pch.c: Likewise.
442 * c-ppoutput.c: Likewise.
443 * c-pragma.c: Likewise.
444 * c-pretty-print.c: Likewise.
445 * c-semantics.c: Likewise.
446 * c-ubsan.c: Likewise.
447 * cilk.c: Likewise.
448 * stub-objc.c: Likewise.
449
67ede3e4 4502015-07-07 Eric Botcazou <ebotcazou@adacore.com>
451
452 * c-ada-spec.h (cpp_operation): Add IS_MOVE_CONSTRUCTOR.
453 * c-ada-spec.c (print_ada_declaration): Skip move constructors.
454
42af8c2a 4552015-07-01 Jason Merrill <jason@redhat.com>
456
fa769cc5 457 * c-common.h (D_CXX11): Rename from D_CXX0X.
458 (RID_FIRST_CXX11, RID_LAST_CXX11): Rename from *_CXX0X.
459 * c-common.c: Adjust.
460
97e9c847 461 * c-opts.c (c_common_post_options): Default to C++14.
462
42af8c2a 463 * c-opts.c (c_common_post_options): Highest ABI level is now 10.
464
30b1ba42 4652015-06-30 Edward Smith-Rowland <3dw4rd@verizon.net>
466
467 Implement N4197 - Adding u8 character literals
95858835 468 * c-family/c-ada-spec.c (print_ada_macros): Treat CPP_UTF8CHAR like
469 CPP_CHAR.
470 * c-family/c-common.c (c_parse_error): Print CPP_UTF8CHAR and
471 CPP_UTF8CHAR_USERDEF tokens.
472 * c-family/c-lex.c (c_lex_with_flags): Treat CPP_UTF8CHAR_USERDEF
473 and CPP_UTF8CHAR tokens.
474 (lex_charconst): Treat CPP_UTF8CHAR token.
30b1ba42 475
0949f227 4762015-06-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
477
478 PR fortran/66605
479 * c-common.c (do_warn_unused_parameter): Move here.
480 * c-common.h (do_warn_unused_parameter): Declare.
481
be23b16f 4822015-06-29 Marek Polacek <polacek@redhat.com>
483
484 PR c/66322
485 * c-common.c (check_case_bounds): Add bool * parameter. Set
486 OUTSIDE_RANGE_P.
487 (c_add_case_label): Add bool * parameter. Pass it down to
488 check_case_bounds.
489 (c_do_switch_warnings): Add bool parameters. Implement -Wswitch-bool
490 warning here.
491 * c-common.h (c_add_case_label, c_do_switch_warnings): Update
492 declarations.
493
6290f0db 4942015-06-27 Marek Polacek <polacek@redhat.com>
495
496 * c-common.c (check_main_parameter_types): Use VECTOR_TYPE_P
497 or VECTOR_INTEGER_TYPE_P throughout.
498 * c-gimplify.c: Likewise.
499
aa3e402e 5002015-06-26 Marek Polacek <polacek@redhat.com>
501
502 * array-notation-common.c (find_rank): Use INDIRECT_REF_P.
503 * c-common.c (c_fully_fold_internal): Likewise.
504 (c_alignof_expr): Likewise.
505 * c-pretty-print.c (c_pretty_printer::postfix_expression): Likewise.
506 * c-ubsan.c (ubsan_instrument_bounds): Likewise.
8204c077 507 * cilk.c (create_parm_list): Likewise.
aa3e402e 508
4e81b384 5092015-06-26 Marek Polacek <polacek@redhat.com>
510
511 * c-common.c (handle_unused_attribute): Use VAR_OR_FUNCTION_DECL_P.
512
ec2e0095 5132015-06-25 Andrew MacLeod <amacleod@redhat.com>
514
515 * c-common.c: Remove ipa-ref.h and plugin-api.h from include list.
516 * c-gimplify.c: Likewise.
517 * c-pragma.c: Likewise.
518 * c-ubsan.c: Likewise.
519 * cilk.c: Likewise.
520
b594087e 5212015-06-25 Richard Sandiford <richard.sandiford@arm.com>
522
523 * c-common.c (c_type_hasher): Inherit from ggc_ptr_hash rather than
524 ggc_hasher.
525
a3c76fda 5262015-06-25 Andrew MacLeod <amacleod@redhat.com>
527
528 * cilk.c: Move calls.h after tm.h in the include chain.
529
f48c7f4a 5302015-06-25 Marek Polacek <polacek@redhat.com>
531
532 * array-notation-common.c: Use VAR_P throughout.
533 * c-ada-spec.c: Likewise.
534 * c-common.c: Likewise.
535 * c-format.c: Likewise.
536 * c-gimplify.c: Likewise.
537 * c-omp.c: Likewise.
538 * c-pragma.c: Likewise.
539 * c-pretty-print.c: Likewise.
540 * cilk.c: Likewise.
541
ce41e81a 5422015-06-25 Marek Polacek <polacek@redhat.com>
543
544 * cilk.c (extract_free_variables): Use is_global_var.
545
de231ec2 5462015-06-23 Richard Sandiford <richard.sandiford@arm.com>
547
548 * c-common.c: Don't include target-def.h.
549
0200602e 5502015-06-23 Marek Polacek <polacek@redhat.com>
551
552 * c-common.c (warn_logical_operator): Use tree_int_cst_equal
553 when comparing INTEGER_CSTs.
554
99838ed7 5552015-06-22 Pierre-Marie de Rodat <derodat@adacore.com>
556
557 * c-ada-spec.h (cpp_operation): Add HAS_DEPENDENT_TEMPLATE_ARGS.
558 * c-ada-spec.c (collect_ada_nodes): Skip NAMESPACE_DECL
559 (dump_ada_template): Skip partially specialized types.
560
a4f59596 5612015-06-22 Mikhail Maltsev <maltsevm@gmail.com>
562
563 * c-common.c (scalar_to_vector): Use std::swap instead of manually
564 swapping.
565
f2ab3bac 5662015-06-17 Andrew MacLeod <amacleod@redhat.com>
567
568 * array-notation-common.c: Do not include input.h, line-map.h or is-a.h.
569 * c-ada-spec.c: Likewise.
570 * c-cilkplus.c: Likewise.
571 * c-common.c: Likewise.
572 * c-common.h: Likewise.
573 * c-cppbuiltin.c: Likewise.
574 * c-dump.c: Likewise.
575 * c-format.c: Likewise.
576 * c-gimplify.c: Likewise.
577 * c-indentation.c: Likewise.
578 * c-lex.c: Likewise.
579 * c-omp.c: Likewise.
580 * c-opts.c: Likewise.
581 * c-pch.c: Likewise.
582 * c-ppoutput.c: Likewise.
583 * c-pragma.c: Likewise.
584 * c-pretty-print.c: Likewise.
585 * c-semantics.c: Likewise.
586 * c-ubsan.c: Likewise.
587 * cilk.c: Likewise.
588 * stub-objc.c: Likewise.
589
db3d1ffc 5902015-06-13 Patrick Palka <ppalka@gcc.gnu.org>
591
592 PR c++/65168
593 * c-common.c (c_common_truthvalue_conversion): Warn when
594 converting an address of a reference to a truth value.
595
64486212 5962015-06-08 Andrew MacLeod <amacleod@redhat.com>
597
598 * array-notation-common.c : Adjust include files.
599 * c-ada-spec.c : Likewise.
600 * c-cilkplus.c : Likewise.
601 * c-common.c : Likewise.
602 * c-common.h : Likewise.
603 * c-cppbuiltin.c : Likewise.
604 * c-dump.c : Likewise.
605 * c-format.c : Likewise.
606 * c-gimplify.c : Likewise.
607 * c-indentation.c : Likewise.
608 * c-lex.c : Likewise.
609 * c-omp.c : Likewise.
610 * c-opts.c : Likewise.
611 * c-pch.c : Likewise.
612 * c-ppoutput.c : Likewise.
613 * c-pragma.c : Likewise.
614 * c-pretty-print.c : Likewise.
615 * c-semantics.c : Likewise.
616 * c-ubsan.c : Likewise.
617 * cilk.c : Likewise.
618 * stub-objc.c : Likewise.
619
6e84ccad 6202015-06-08 Marek Polacek <polacek@redhat.com>
621
622 PR c/66415
623 * c-format.c (location_from_offset): Return LOC if LINE is null.
624
3a1c9df2 6252015-06-05 Aldy Hernandez <aldyh@redhat.com>
626
627 * c-common.h (c_parse_final_cleanups): New prototype.
628 * c-opts.c (c_common_parse_file): Call c_parse_final_cleanups.
629
f77c0292 6302015-06-04 Andrew MacLeod <amacleod@redhat.com>
631
632 * array-notation-common.c: Adjust includes for restructured coretypes.h.
633 * c-ada-spec.c: Likewise.
634 * c-cilkplus.c: Likewise.
635 * c-common.c: Likewise.
636 * c-common.h: Likewise.
637 * c-cppbuiltin.c: Likewise.
638 * c-dump.c: Likewise.
639 * c-format.c: Likewise.
640 * c-gimplify.c: Likewise.
641 * c-indentation.c: Likewise.
642 * c-lex.c: Likewise.
643 * c-omp.c: Likewise.
644 * c-opts.c: Likewise.
645 * c-pch.c: Likewise.
646 * c-ppoutput.c: Likewise.
647 * c-pragma.c: Likewise.
648 * c-pretty-print.c: Likewise.
649 * c-semantics.c: Likewise.
650 * c-ubsan.c: Likewise.
651 * cilk.c: Likewise.
652 * stub-objc.c: Likewise.
653
7c62dfbb 6542015-06-02 David Malcolm <dmalcolm@redhat.com>
655
656 PR c/66220:
657 * c-indentation.c (should_warn_for_misleading_indentation): Use
658 expand_location rather than expand_location_to_spelling_point.
659 Don't warn if the guarding statement is more indented than the
660 next/body stmts.
661
9af7c176 6622015-06-02 David Malcolm <dmalcolm@redhat.com>
663
664 * c-indentation.c (warn_for_misleading_indentation): Bail out
665 immediately if -Wmisleading-indentation isn't enabled.
666
eebcf436 6672015-06-01 Martin Liska <mliska@suse.cz>
668
669 * c-format.c (check_format_arg):Use new type-based pool allocator.
670 (check_format_info_main) Likewise.
671
b0a23e2f 6722015-05-31 Eric Botcazou <ebotcazou@adacore.com>
673
674 * c-ada-spec.c (is_tagged_type): Test for TYPE_METHODS on main variant.
675 (has_nontrivial_methods): Likewise.
676
63dc1330 6772015-05-25 Marek Polacek <polacek@redhat.com>
678
679 * c-ubsan.c (ubsan_instrument_shift): Use type0.
680
5a4c69dd 6812015-05-22 Marek Polacek <polacek@redhat.com>
682
683 PR c/47043
684 * c-common.c (handle_deprecated_attribute): Allow CONST_DECL.
685
044580bb 6862015-05-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
3764c94e 687
688 * c-cppbuiltin.c (c_cpp_builtins): Use if instead of #if with
689 STACK_GROWS_DOWNWARD.
690
044580bb 6912015-05-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
2b785411 692
693 * c-cppbuiltin.c (c_cpp_builtins): Check the value of
694 STACK_GROWS_DOWNWARD rather than if it is defined.
695
d5a2ddc7 6962015-05-21 Manuel López-Ibáñez <manu@gcc.gnu.org>
8204c077 697
d5a2ddc7 698 PR c/52952
699 * c-format.c (location_column_from_byte_offset): New.
700 (location_from_offset): New.
701 (struct format_wanted_type): Add offset_loc field.
702 (check_format_info): Move handling of location for extra arguments
703 closer to the point of warning.
704 (check_format_info_main): Pass the result of location_from_offset
705 to warning_at.
706 (format_type_warning): Pass the result of location_from_offset
707 to warning_at.
708
72f8014e 7092015-05-20 Marek Polacek <polacek@redhat.com>
710
711 * c-omp.c (check_omp_for_incr_expr): Use BINARY_CLASS_P.
712
74efe522 7132015-05-20 Marek Polacek <polacek@redhat.com>
714
715 * c-ada-spec.c (dump_sloc): Use DECL_P.
716
b443c459 7172015-05-20 Marek Polacek <polacek@redhat.com>
718
719 * c-pragma.c: Use VAR_OR_FUNCTION_DECL_P throughout.
720 * c-common.c: Likewise.
721
551e34da 7222015-05-19 David Malcolm <dmalcolm@redhat.com>
723
724 * c-common.h (fe_file_change): Strengthen param from
725 const line_map * to const line_map_ordinary *.
726 (pp_file_change): Likewise.
727 * c-lex.c (fe_file_change): Likewise.
728 (cb_define): Use linemap_check_ordinary when invoking
729 SOURCE_LINE.
730 (cb_undef): Likewise.
731 * c-opts.c (c_finish_options): Use linemap_check_ordinary when
732 invoking cb_file_change.
733 (c_finish_options): Likewise.
734 (push_command_line_include): Likewise.
735 (cb_file_change): Strengthen param "new_map" from
736 const line_map * to const line_map_ordinary *.
737 * c-ppoutput.c (cb_define): Likewise for local "map".
738 (pp_file_change): Likewise for param "map" and local "from".
739
dfcf26a5 7402015-05-19 Mikhail Maltsev <maltsevm@gmail.com>
741
742 * c-common.c (shorten_compare): Use std::swap instead of explicit swaps.
743
2e474820 7442015-05-18 Tom de Vries <tom@codesourcery.com>
745
746 * c-common.c (build_va_arg_1): New function.
747 (build_va_arg): Add address operator to va_list operand if necessary.
748
e53013a8 7492015-05-15 Mikhail Maltsev <maltsevm@gmail.com>
750
751 PR c/48956
752 * c-common.c (int_safely_convertible_to_real_p): Define.
753 (unsafe_conversion_p): Check conversions involving complex types.
754 (conversion_warning): Add new warning message for conversions which
755 discard imaginary component.
756 * c-common.h: (enum conversion_safety): Add new enumerator for such
757 conversions.
758
aac24642 7592015-05-14 Marek Polacek <polacek@redhat.com>
760
761 PR c/66066
762 PR c/66127
763 * c-common.c (c_fully_fold): Pass false down to c_fully_fold_internal.
764 (c_fully_fold_internal): Fold C_MAYBE_CONST_EXPRs with
765 C_MAYBE_CONST_EXPR_INT_OPERANDS set. Add FOR_INT_CONST argument and
766 use it. If FOR_INT_CONST, require that all evaluated operands be
767 INTEGER_CSTs.
768
e5f01cba 7692015-05-12 David Malcolm <dmalcolm@redhat.com>
770
771 * c-common.h (warn_for_misleading_indentation): New prototype.
772 * c-indentation.c: New file.
773 * c.opt (Wmisleading-indentation): New option.
774
c37be9ec 7752015-05-12 Tom de Vries <tom@codesourcery.com>
776
777 PR tree-optimization/66010
778 * c-common.c (build_va_arg): Don't mark ap addressable unless necessary.
779
7290114b 7802015-05-09 Jason Merrill <jason@redhat.com>
781
3c665566 782 * c-opts.c (c_common_post_options): Also clear
783 cpp_opts->cpp_warn_cxx11_compat.
784
d875b9d2 785 * c-common.h (enum cxx_dialect): Add cxx_unset.
786 * c-common.c (cxx_dialect): Initialize to cxx_unset.
787 * c-opts.c (c_common_post_options): Set C++ dialect to C++98 if unset.
788
7290114b 789 * c.opt (std=c++14): Remove Undocumented flag and experimental warning.
790 (std=gnu++0x): Mark as Undocumented.
791 (std=gnu++1y): Add deprecated message.
792
1b03cc89 7932015-05-08 Jason Merrill <jason@redhat.com>
794
1c5f7aba 795 * c.opt (Wc++11-compat): Make primary. Rename var warn_cxx11_compat.
796 * c-opts.c: Adjust.
797
1b03cc89 798 * c.opt (Wc++0x-compat): Also set cpp_warn_cxx11_compat.
799
dc5945dc 8002015-05-08 Marek Polacek <polacek@redhat.com>
801
802 PR c/64918
803 * c.opt (Woverride-init-side-effects): New option.
804
cdc64059 8052015-05-07 Marek Polacek <polacek@redhat.com>
806
807 PR c/65179
808 * c-common.c (c_fully_fold_internal): Warn when left shifting a
809 negative value.
810 * c.opt (Wshift-negative-value): New option.
811 * c-opts.c (c_common_post_options): Set warn_shift_negative_value
812 when -Wextra and C99/C++11 mode.
813
8cafe283 8142015-05-07 Marek Polacek <polacek@redhat.com>
815 Martin Uecker <uecker@eecs.berkeley.edu>
816
817 * c-ubsan.c (ubsan_instrument_bounds): Don't skip instrumenting
818 flexible member array-like members if SANITIZE_BOUNDS_STRICT.
819
cb40a6f7 8202015-05-05 Jason Merrill <jason@redhat.com>
821
822 * c.opt (Wterminate): New.
823
14744a16 8242015-04-30 Marek Polacek <polacek@redhat.com>
825
826 * c-common.c (maybe_warn_bool_compare): When comparing with 0/1,
827 require that the non-constant be of a boolean type.
828
9866562d 8292015-04-29 Josh Triplett <josh@joshtriplett.org>
830
8cafe283 831 * c-common.c (handle_section_attribute): Refactor to reduce
832 nesting and distinguish between error cases.
9866562d 833
a720ab1c 8342015-04-29 Marek Polacek <polacek@redhat.com>
835
836 PR c/64610
837 * c-common.c (maybe_warn_bool_compare): Warn when comparing a boolean
838 with 0/1.
839
8c072e52 8402015-04-29 Jakub Jelinek <jakub@redhat.com>
841
842 * c-common.h (omp_clause_mask): Unconditionally define as a class.
843 Use uint64_t instead of unsigned HOST_WIDE_INT and 64 instead of
844 HOST_BITS_PER_WIDE_INT.
845
f7fec1c7 8462015-04-28 Tom de Vries <tom@codesourcery.com>
847
848 PR tree-optimization/65887
849 * c-common.c (build_va_arg): Mark va_arg ap argument as addressable.
850
483b3d26 8512015-04-28 Eric Botcazou <ebotcazou@adacore.com>
8cafe283 852 Pierre-Marie de Rodat <derodat@adacore.com>
483b3d26 853
854 * c-ada-spec.c (in_function): Delete.
855 (dump_generic_ada_node): Do not change in_function and remove the
856 redundant code dealing with it.
857 (print_ada_declaration): Do not change in_function. Use INDENT_INCR.
858 (print_ada_methods): Output the static member functions in a nested
859 package after the regular methods as well as associated renamings.
860
f11bdffb 8612015-04-24 Marek Polacek <polacek@redhat.com>
862
863 PR c/65830
864 * c-common.c (c_fully_fold_internal): Use OPT_Wshift_count_negative
865 and OPT_Wshift_count_overflow.
866
485f6b9c 867 PR c/63357
868 * c-common.c (warn_logical_operator): Warn if the operands have the
869 same expressions.
870
439606a9 8712015-04-24 Marek Polacek <polacek@redhat.com>
872
873 PR c/61534
874 * c-common.c (warn_logical_operator): Bail if either operand comes
875 from a macro expansion.
876
de801c28 8772015-04-10 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
878
879 PR target/55143
880 * c-common.c (c_default_pointer_mode): Add definition.
881 * c-common.h (c_default_pointer_mode): Add declaration.
882
76738f56 8832015-03-11 Jakub Jelinek <jakub@redhat.com>
884
885 * c-common.c (c_common_nodes_and_builtins): Don't call xstrdup
886 on record_builtin_type argument.
887
16f958b3 8882015-03-10 Jakub Jelinek <jakub@redhat.com>
889
890 PR c/65120
891 * c-common.c (warn_logical_not_parentheses): Don't warn for
892 !x == 0 or !x != 0.
893
9b22f73f 8942015-03-07 Marek Polacek <polacek@redhat.com>
895
896 PR sanitizer/65280
897 * c-ubsan.c (ubsan_instrument_bounds): Check for COMPONENT_REF
898 before trying to figure out whether we have a flexible array member.
899
a864b7d4 9002015-03-06 Eric Botcazou <ebotcazou@adacore.com>
901 Jonathan Wakely <jwakely.gcc@gmail.com>
902
903 * c-ada-spec.c (dump_ada_double_name): Fix pasto.
904
9bf8c90b 9052015-03-05 Eric Botcazou <ebotcazou@adacore.com>
906
907 PR ada/65319
908 * c-ada-spec.c (print_destructor): Remove obsolete code.
909
037ac54f 9102015-03-01 Eric Botcazou <ebotcazou@adacore.com>
911
912 * c-ada-spec.c (is_tagged_type): Add guard for DECL_VINDEX.
913 (dump_template_types): Adjust DECL_TEMPLATE_INSTANTIATIONS and
914 DECL_TEMPLATE_RESULT emulations.
915 (dump_ada_template)): Add guard for TYPE_METHODS.
916
495cbfb8 9172015-02-27 Marek Polacek <polacek@redhat.com>
918
919 PR c/65040
920 * c.opt (Wformat-signedness): Don't enable by -Wformat=2.
921
688a864e 9222015-02-27 Kai Tietz <ktietz@redhat.com>
923
924 PR c/35330
925 * c-pragma.c (handle_pragma_weak): Do not try to create
926 weak/alias of declarations not being function, or variable
927 declarations.
928
6349b8cc 9292015-02-24 Thomas Schwinge <thomas@codesourcery.com>
930
931 PR libgomp/64625
932 * c-common.c (DEF_FUNCTION_TYPE_VAR_8, DEF_FUNCTION_TYPE_VAR_12):
933 Remove macros.
934 (DEF_FUNCTION_TYPE_VAR_7, DEF_FUNCTION_TYPE_VAR_11): New macros.
935
3afd5369 9362015-02-16 Marek Polacek <polacek@redhat.com>
937
938 PR c/65066
939 * c-format.c (check_format_types): Handle null param.
940
46173d1b 9412015-02-13 Marek Polacek <polacek@redhat.com>
942
943 PR c/65040
944 * c-format.c (check_format_types): Don't warn about different
945 signedness if the original value is in the range of WANTED_TYPE.
946
1d524ff7 9472015-02-12 Jason Merrill <jason@redhat.com>
948
949 PR c++/64956
950 * c-opts.c (c_common_post_options): Change flag_abi_version from 0
951 to the current highest version.
952 * c-cppbuiltin.c (c_cpp_builtins): Assert that it isn't 0.
953
bbf8fbec 9542015-02-04 Jakub Jelinek <jakub@redhat.com>
955
956 PR c/64824
957 PR c/64868
958 * c-omp.c (c_finish_omp_atomic): Use TRUNC_DIV_EXPR
959 instead of RDIV_EXPR. Use build_binary_op instead of
960 build2_loc.
961
c05be867 9622015-01-30 Joseph Myers <joseph@codesourcery.com>
963
964 * c-opts.c, c-pch.c, cppspec.c: All callers of fatal_error changed
965 to pass input_location as first argument.
966
85977647 9672015-01-23 Tom de Vries <tom@codesourcery.com>
968
969 PR libgomp/64672
970 * c.opt (fopenacc): Mark as LTO option.
971
fa175926 9722015-01-23 Tom de Vries <tom@codesourcery.com>
973
974 PR libgomp/64707
975 * c.opt (fopenmp): Mark as LTO option.
976
20aad5ba 9772015-01-21 Jakub Jelinek <jakub@redhat.com>
978
979 PR c/63307
8204c077 980 * cilk.c (fill_decls_vec): Only put decls into vector v.
20aad5ba 981 (compare_decls): Fix up formatting.
982
9832015-01-21 Igor Zamyatin <igor.zamyatin@intel.com>
984
985 PR c/63307
986 * cilk.c: Include vec.h.
987 (struct cilk_decls): New structure.
988 (wrapper_parm_cb): Split this function to...
989 (fill_decls_vec): ...this...
990 (create_parm_list): ...and this.
991 (compare_decls): New function.
992 (for_local_cb): Remove.
993 (wrapper_local_cb): Ditto.
994 (build_wrapper_type): For now first traverse and fill vector of
995 declarations then sort it and then deal with sorted vector.
996 (cilk_outline): Ditto.
997 (declare_one_free_variable): Ditto.
998
60b77e28 9992015-01-21 Jason Merrill <jason@redhat.com>
1000
1001 PR c++/64629
1002 * c-format.c (check_format_arg): Call decl_constant_value.
1003
85fbea97 10042015-01-19 Martin Liska <mliska@suse.cz>
1005
1006 * c-common.c (handle_noicf_attribute): New function.
1007
ca4c3545 10082015-01-15 Thomas Schwinge <thomas@codesourcery.com>
1009 Bernd Schmidt <bernds@codesourcery.com>
1010 James Norris <jnorris@codesourcery.com>
1011 Cesar Philippidis <cesar@codesourcery.com>
1012 Ilmir Usmanov <i.usmanov@samsung.com>
1013 Jakub Jelinek <jakub@redhat.com>
1014
1015 * c.opt (fopenacc): New option.
1016 * c-cppbuiltin.c (c_cpp_builtins): Conditionally define _OPENACC.
1017 * c-common.c (DEF_FUNCTION_TYPE_VAR_8, DEF_FUNCTION_TYPE_VAR_12):
1018 New macros.
1019 * c-common.h (c_finish_oacc_wait): New prototype.
1020 * c-omp.c: Include "omp-low.h" and "gomp-constants.h".
1021 (c_finish_oacc_wait): New function.
1022 * c-pragma.c (oacc_pragmas): New variable.
1023 (c_pp_lookup_pragma, init_pragma): Handle it.
1024 * c-pragma.h (enum pragma_kind): Add PRAGMA_OACC_CACHE,
1025 PRAGMA_OACC_DATA, PRAGMA_OACC_ENTER_DATA, PRAGMA_OACC_EXIT_DATA,
1026 PRAGMA_OACC_KERNELS, PRAGMA_OACC_LOOP, PRAGMA_OACC_PARALLEL,
1027 PRAGMA_OACC_UPDATE, PRAGMA_OACC_WAIT.
1028 (enum pragma_omp_clause): Add PRAGMA_OACC_CLAUSE_ASYNC,
1029 PRAGMA_OACC_CLAUSE_AUTO, PRAGMA_OACC_CLAUSE_COLLAPSE,
1030 PRAGMA_OACC_CLAUSE_COPY, PRAGMA_OACC_CLAUSE_COPYIN,
1031 PRAGMA_OACC_CLAUSE_COPYOUT, PRAGMA_OACC_CLAUSE_CREATE,
1032 PRAGMA_OACC_CLAUSE_DELETE, PRAGMA_OACC_CLAUSE_DEVICE,
1033 PRAGMA_OACC_CLAUSE_DEVICEPTR, PRAGMA_OACC_CLAUSE_FIRSTPRIVATE,
1034 PRAGMA_OACC_CLAUSE_GANG, PRAGMA_OACC_CLAUSE_HOST,
1035 PRAGMA_OACC_CLAUSE_IF, PRAGMA_OACC_CLAUSE_NUM_GANGS,
1036 PRAGMA_OACC_CLAUSE_NUM_WORKERS, PRAGMA_OACC_CLAUSE_PRESENT,
1037 PRAGMA_OACC_CLAUSE_PRESENT_OR_COPY,
1038 PRAGMA_OACC_CLAUSE_PRESENT_OR_COPYIN,
1039 PRAGMA_OACC_CLAUSE_PRESENT_OR_COPYOUT,
1040 PRAGMA_OACC_CLAUSE_PRESENT_OR_CREATE, PRAGMA_OACC_CLAUSE_PRIVATE,
1041 PRAGMA_OACC_CLAUSE_REDUCTION, PRAGMA_OACC_CLAUSE_SELF,
1042 PRAGMA_OACC_CLAUSE_SEQ, PRAGMA_OACC_CLAUSE_VECTOR,
1043 PRAGMA_OACC_CLAUSE_VECTOR_LENGTH, PRAGMA_OACC_CLAUSE_WAIT,
1044 PRAGMA_OACC_CLAUSE_WORKER.
1045
947aa916 10462015-01-14 Marcos Diaz <marcos.diaz@tallertechnologies.com>
1047
1048 * c-cppbuiltin.c (c_cpp_builtins): New cpp define __SSP_EXPLICIT__
1049 for the new option fstack-protector_explicit.
1050 * c-common.c (c_common_attribute_table): Add stack_protect attribute.
1051 (handle_stack_protect_attribute): New function.
1052
e4fd7af1 10532015-01-13 Martin Uecker <uecker@eecs.berkeley.edu>
1054
1055 * c.opt: New option -Warray-bounds=.
1056
1f78217c 10572015-01-09 Michael Collison <michael.collison@linaro.org>
1058
1059 * array-notation-common.c: Include hash-set.h, machmode.h,
1060 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1061 fold-const.h, wide-int.h, and inchash.h due to flattening of tree.h.
1062 * c-ada-spec.c: Ditto.
1063 * c-cilkplus.c: Ditto.
1064 * c-common.c: Include input.h due to flattening of tree.h.
1065 Define macro GCC_C_COMMON_C.
1066 * c-common.h: Flatten tree.h header files into c-common.h.
1067 Remove include of tree-core.h.
1068 * c-cppbuiltin.c: Include hash-set.h, machmode.h,
1069 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1070 fold-const.h, wide-int.h, and inchash.h due to
1071 flattening of tree.h.
1072 * c-dump.c: Ditto.
1073 * c-format.c: Flatten tree.h header files into c-common.h.
1074 * c-cppbuiltin.c: Include hash-set.h, machmode.h,
1075 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1076 fold-const.h, wide-int.h, and inchash.h due to
1077 flattening of tree.h.
1078 * c-dump.c: Include hash-set.h, machmode.h,
1079 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1080 fold-const.h, wide-int.h, and inchash.h due to
1081 flattening of tree.h.
1082 * c-format.c: Include hash-set.h, machmode.h,
1083 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1084 fold-const.h, wide-int.h, inchash.h and real.h due to
1085 flattening of tree.h.
1086 * c-gimplify.c: Include hash-set.h, machmode.h,
1087 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1088 fold-const.h, wide-int.h, and inchash.h due to
1089 flattening of tree.h.
1090 * cilk.c: Ditto.
1091 * c-lex.c: Ditto.
1092 * c-omp.c: Ditto.
1093 * c-opts.c: Ditto.
1094 * c-pch.c: Ditto.
1095 * c-ppoutput.c: Ditto.
1096 * c-pragma.c: Ditto.
1097 * c-pretty-print.c: Ditto.
1098 * c-semantics.c: Ditto.
1099 * c-ubsan.c: Ditto.
1100 * stub-objc.c: Ditto.
1101
411b7663 11022015-01-08 Jason Merrill <jason@redhat.com>
1103
1104 * c-ubsan.c (ubsan_maybe_instrument_array_ref): Use
1105 do_ubsan_in_current_function.
1106 (ubsan_maybe_instrument_reference_or_call): Likewise.
1107 * c-ubsan.h: Declare it.
1108
d1e96383 11092015-01-08 Mike Stump <mikestump@comcast.net>
1110
1111 * c-common.c (c_common_attribute_table): Add no_sanitize_thread.
1112
b57910fa 11132015-01-07 Marek Polacek <polacek@redhat.com>
1114
1115 PR c/64440
1116 * c-common.c (c_fully_fold_internal): Warn for division and modulo
1117 if orig_op1 isn't INTEGER_CST, op1 is INTEGER_CST and is zero.
1118
678a4e3e 11192015-01-05 Trevor Saunders <tsaunders@mozilla.com>
1120
1121 PR c++/31397
1122 * c.opt (Wsuggest-override): New option.
1123
d353bf18 11242015-01-05 Jakub Jelinek <jakub@redhat.com>
1125
1126 Update copyright years.
1127
92b63884 11282015-01-05 Marek Polacek <polacek@redhat.com>
1129
1130 PR c/64423
1131 * c-common.c (warn_array_subscript_with_type_char): Add location_t
1132 parameter. Use it.
1133 * c-common.h (warn_array_subscript_with_type_char): Update
1134 declaration.
1135
83715bc4 11362014-12-20 Edward Smith-Rowland <3dw4rd@verizon.net>
1137
1138 * c-cppbuiltin.c (__cpp_sized_deallocation): Uncomment and move macro.
1139 Control macro with flag_sized_deallocation.
1140
8a8211df 11412014-12-20 Martin Uecker <uecker@eecs.berkeley.edu>
1142
1143 * c.opt (Wdiscarded-array-qualifiers): New option.
1144
33058239 11452014-12-19 Jakub Jelinek <jakub@redhat.com>
1146
1147 PR preprocessor/63831
1148 * c-cppbuiltin.c (c_cpp_builtins): Don't define __has_attribute
1149 and __has_cpp_attribute here.
1150 * c-ppoutput.c (init_pp_output): Set cb->has_attribute to
1151 c_common_has_attribute.
1152 * c-common.h (c_common_has_attribute): New prototype.
1153 * c-lex.c (init_c_lex): Set cb->has_attribute to
1154 c_common_has_attribute instead of cb_has_attribute.
1155 (get_token_no_padding): New function.
1156 (cb_has_attribute): Renamed to ...
1157 (c_common_has_attribute): ... this. No longer static. Use
1158 get_token_no_padding, require ()s, don't build TREE_LIST
1159 unnecessarily, fix up formatting, adjust diagnostics, call
1160 init_attributes.
1161
d1856d2c 11622014-12-15 Jason Merrill <jason@redhat.com>
1163
1164 * c.opt (-fsized-deallocation, -Wc++14-compat): New.
1165 (-Wsized-deallocation): New.
1166 * c-opts.c (c_common_post_options): -fsized-deallocation defaults
1167 to on in C++14 and up.
1168
4972ed5d 11692014-12-11 Jason Merrill <jason@redhat.com>
1170
7d7fa964 1171 * c-cppbuiltin.c (c_cpp_builtins): Enable C++14 __cpp_constexpr.
1172
4972ed5d 1173 * c-cppbuiltin.c (c_cpp_builtins): Define __cpp_runtime_arrays if
1174 we aren't complaining about VLAs.
1175
5ebccf71 11762014-12-06 Marek Polacek <polacek@redhat.com>
1177
1178 PR tree-optimization/64183
1179 * c-gimplify.c (c_gimplify_expr): Don't convert the RHS of a
1180 shift-expression if it is integer_type_node. Use types_compatible_p.
1181
f9e245b2 11822014-11-29 Jakub Jelinek <jakub@redhat.com>
1183
1184 * c-common.c (convert_vector_to_pointer_for_subscript): Remove NULL
1185 last argument from create_tmp_var_raw and create_tmp_var calls.
1186 * cilk.c (gimplify_cilk_spawn): Likewise.
1187 * c-omp.c (c_finish_omp_atomic): Likewise.
1188
d2f60593 11892014-11-28 Marek Polacek <polacek@redhat.com>
1190
1191 * c-ubsan.c (ubsan_instrument_shift): Use op1_utype for MINUS_EXPR
1192 instead of unsigned_type_node.
1193
fce2dbd1 11942014-11-28 Marek Polacek <polacek@redhat.com>
1195
1196 PR c/63862
1197 * c-ubsan.c (ubsan_instrument_shift): Change the type of a MINUS_EXPR
1198 to op1_utype.
1199 * c-gimplify.c (c_gimplify_expr): Convert right operand of a shift
1200 expression to unsigned_type_node.
1201
3a4a2292 12022014-11-20 Mark Wielaard <mjw@redhat.com>
1203
1204 PR debug/38757
1205 * c-opts.c (set_std_c89): Set lang_hooks.name.
1206 (set_std_c99): Likewise.
1207 (set_std_c11): Likewise.
1208 (set_std_cxx98): Likewise.
1209 (set_std_cxx11): Likewise.
1210 (set_std_cxx14): Likewise.
1211 (set_std_cxx1z): Likewise.
1212
c61ef207 12132014-11-21 Jakub Jelinek <jakub@redhat.com>
1214
1215 PR target/63764
1216 * c-common.h (convert_vector_to_pointer_for_subscript): Change
1217 return type to bool.
c9ed79de 1218 * c-common.c: Include gimple-expr.h.
c61ef207 1219 (convert_vector_to_pointer_for_subscript): Change return type to
1220 bool. If *vecp is not lvalue_p and has VECTOR_TYPE, return true
1221 and copy it into a TARGET_EXPR and use that instead of *vecp
1222 directly.
1223
1a91d914 12242014-11-19 David Malcolm <dmalcolm@redhat.com>
1225
1226 Merger of git branch "gimple-classes-v2-option-3".
1227 * ChangeLog.gimple-classes: New.
1228 * c-gimplify.c (add_block_to_enclosing): Strengthen local "stack"
1229 from being just a vec<gimple> to a vec<gbind *>.
1230
f8fc8b8e 12312014-11-18 Jakub Jelinek <jakub@redhat.com>
1232
1233 PR sanitizer/63813
1234 * c-ubsan.c (ubsan_maybe_instrument_reference_or_call): Change type
1235 argument to ptype, set type to TREE_TYPE (ptype). Don't call
1236 get_pointer_alignment for non-pointers. Use ptype, or if it is
1237 reference type, corresponding pointer type, as type of kind
1238 argument.
1239 (ubsan_maybe_instrument_reference,
1240 ubsan_maybe_instrument_member_call): Adjust callers.
1241
8315e35e 12422014-11-15 Marek Polacek <polacek@redhat.com>
1243
1244 PR middle-end/63884
1245 * array-notation-common.c (is_sec_implicit_index_fn): Return false
1246 for NULL fndecl.
1247 (extract_array_notation_exprs): Return for NULL node.
1248
86b9f14b 12492014-11-12 Joseph Myers <joseph@codesourcery.com>
1250
1251 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Define and
1252 undefine __NO_MATH_ERRNO__ based on changes to -fmath-errno state.
1253
0c93c8a9 12542014-11-12 Jakub Jelinek <jakub@redhat.com>
1255
1256 PR c/59708
1257 * c-common.c (check_builtin_function_arguments): Handle
1258 BUILT_IN_{ADD,SUB,MUL}_OVERFLOW.
1259
fdd735a7 12602014-11-10 Andi Kleen <ak@linux.intel.com>
1261
1262 PR c/60804
1263 * c-common.h (check_no_cilk): Declare.
1264 * cilk.c (get_error_location): New function.
1265 (check_no_cilk): Dito.
1266
5cb678b4 12672014-11-10 Andi Kleen <ak@linux.intel.com>
1268
1269 * cilk.c (recognize_spawn): Use expression location
1270 for error message.
1271
0feb4de1 12722014-11-10 Paolo Carlini <paolo.carlini@oracle.com>
1273
1274 * c.opt ([Wshift-count-negative, Wshift-count-overflow]): Add.
1275
3aa2fa44 12762014-11-10 Edward Smith-Rowland <3dw4rd@verizon.net>
1277
1278 * c-cppbuiltin.c (__has_attribute, __has_cpp_attribute): New macros;
1279 (__cpp_rtti, __cpp_exceptions): New macros for C++98;
1280 (__cpp_range_based_for, __cpp_initializer_lists,
1281 __cpp_delegating_constructors, __cpp_nsdmi,
1282 __cpp_inheriting_constructors, __cpp_ref_qualifiers): New macros
1283 for C++11; (__cpp_attribute_deprecated): Remove in favor of
1284 __has_cpp_attribute.
1285 * c-lex.c (cb_has_attribute): New callback CPP function;
1286 (init_c_lex): Set has_attribute callback.
1287
7fd22aae 12882014-11-04 Richard Biener <rguenther@suse.de>
1289
1290 * c-common.c (shorten_compare): Do not shorten mixed
1291 DFP and non-DFP compares.
1292
4af203ac 12932014-11-01 Edward Smith-Rowland <3dw4rd@verizon.net>
1294
1295 * g++.dg/cpp1y/feat-cxx11.C: Commentary and rearrangement of tests.
1296 * g++.dg/cpp1y/feat-cxx11-neg.C: Add aggregate NSDMI test.
1297 Commentary and rearrangement of tests.
1298 * g++.dg/cpp1y/feat-cxx14.C: Enable aggregate NSDMI test.
1299 Commentary and rearrangement of tests.
1300 * g++.dg/cpp1y/feat-cxx98-neg.C: Ditto
1301 * g++.dg/cpp1y/feat-cxx98.C: Commentary.
1302
3754d046 13032014-10-29 Richard Sandiford <richard.sandiford@arm.com>
1304
1305 * c-common.c, c-common.h, c-cppbuiltin.c, c-lex.c: Remove redundant
1306 enum from machine_mode.
1307
1140c305 13082014-10-28 Andrew MacLeod <amacleod@redhat.com>
1309
1f78217c 1310 * c-common.c: Adjust include files.
1311 * c-gimplify.c: Ditto.
1312 * cilk.c: Ditto.
1313 * c-pragma.c: Ditto.
1314 * c-ubsan.c: Ditto.
1140c305 1315
94ea8568 13162014-10-27 Andrew MacLeod <amacleod@redhat.com>
1317
1318 * c-gimplify.c: Adjust include files.
1319
32ecf960 13202014-10-26 Manuel López-Ibáñez <manu@gcc.gnu.org>
1321
1322 PR c++/53061
1323 * c-opts.c (c_common_diagnostics_set_defaults): Renamed from
1324 c_common_initialize_diagnostics.
1325 * c-common.h: Likewise.
1326
85fecbe2 13272014-10-24 Marek Polacek <polacek@redhat.com>
1328
1329 PR c/56980
1330 * c-pretty-print.c (c_pretty_printer::simple_type_specifier): Don't
1331 print "struct"/"union"/"enum" for typedefed names.
1332
e7ec033a 13332014-10-23 Marek Polacek <polacek@redhat.com>
1334
1335 * c-ubsan.c (ubsan_instrument_shift): Perform the MINUS_EXPR
1336 in unsigned type.
1337
c2598081 13382014-10-22 Jakub Jelinek <jakub@redhat.com>
1339 Yury Gribov <y.gribov@samsung.com>
1340
1341 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
1342 ubsan_instrument_vla): Check bits in flag_sanitize_recover bitmask
1343 instead of flag_sanitize_recover as bool flag.
1344
acebb7e2 13452014-10-21 Kirill Yukhin <kirill.yukhin@intel.com>
1346
1347 * cilk.c: Revert previous change.
1348
6115016c 13492014-10-20 Igor Zamyatin <igor.zamyatin@intel.com>
1350
1351 PR c/63307
1352 * cilk.c: Include vec.h.
1353 (struct cilk_decls): New structure.
1354 (wrapper_parm_cb): Split this function to...
1355 (fill_decls_vec): ...this...
1356 (create_parm_list): ...and this.
1357 (compare_decls): New function.
1358 (for_local_cb): Remove.
1359 (wrapper_local_cb): Ditto.
1360 (build_wrapper_type): For now first traverse and fill vector of
1361 declarations then sort it and then deal with sorted vector.
1362 (cilk_outline): Ditto.
1363 (declare_one_free_variable): Ditto.
1364
e610d2b2 13652014-10-17 Marek Polacek <polacek@redhat.com>
1366
1367 * c-opts.c (c_common_post_options): Set warn_implicit_int.
1368 * c.opt (Wimplicit-int): Initialize to -1.
1369
a3020f2f 13702014-10-16 Andrew MacLeod <amacleod@redhat.com>
1371
1372 * c-pragma.c: Adjust include files.
1373 * c-semantics.c: Likewise.
1374
926ddd2c 13752014-10-16 DJ Delorie <dj@redhat.com>
1376
1377 * c-cppbuiltin.c (cpp_atomic_builtins): Don't assume pointers are
1378 multiples of bytes.
1379
b0542e7c 13802014-10-14 Jason Merrill <jason@redhat.com>
1381
1382 PR c++/63455
1383 * c-common.h (CPP_PREPARSED_EXPR): New.
1384 (N_CP_TTYPES): Adjust.
1385
b2601928 13862014-10-15 Marek Polacek <polacek@redhat.com>
1387
1388 * c-opts.c (c_common_init_options): Make -std=gnu11 the default for C.
1389
9f75f026 13902014-10-14 DJ Delorie <dj@redhat.com>
1391
1392 * c-pretty-print.c (pp_c_integer_constant): Check for all __intN
1393 types, not just __int128.
1394 * c-cppbuiltin.c (c_cpp_builtins): Add builtins for all __intN
1395 types, not just __int128.
1396 (cpp_atomic_builtins): Round pointer sizes up.
1397 (type_suffix): Use type precision, not specific types.
1398 * c-common.c (c_common_reswords): Remove __int128 special case.
1399 (c_common_type_for_size): Check for all __intN types, not just
1400 __int128.
1401 (c_common_type_for_mode): Likewise.
1402 (c_common_signed_or_unsigned_type): Likewise.
1403 (c_build_bitfield_integer_type): Likewise.
1404 (c_common_nodes_and_builtins): Likewise.
1405 (keyword_begins_type_specifier): Likewise.
1406 * c-common.h (rid): Remove RID_INT128 and add RID_INT_N_* for all
1407 __intN variants.
1408
2ef51f0e 14092014-10-12 Trevor Saunders <tsaunders@mozilla.com>
1410
1411 * c-common.c: Use hash_table instead of hashtab.
1412
5b8257e3 14132014-10-06 Edward Smith-Rowland <3dw4rd@verizon.net>
1414
1f78217c 1415 * c-cppbuiltin.c: Move __cpp_attribute_deprecated to the
5b8257e3 1416 C++11 section.
1417
5e84569c 14182014-10-03 Marc Glisse <marc.glisse@inria.fr>
1419
1420 PR c++/54427
1421 PR c++/57198
1422 PR c++/58845
1423 * c-common.c (warn_logical_operator): Punt for vectors.
1424
f6751ff2 14252014-10-01 Edward Smith-Rowland <3dw4rd@verizon.net>
1426
1427 Implement SD-6: SG10 Feature Test Recommendations
1428 * c-cppbuiltin.c (c_cpp_builtins()): Define language feature
1429 macros and the __has_header macro.
1430
c33e051d 14312014-09-30 Jason Merrill <jason@redhat.com>
1432
f76a9aa8 1433 * c-common.h (enum rid): Add RID_IS_TRIVIALLY_ASSIGNABLE and
1434 RID_IS_TRIVIALLY_CONSTRUCTIBLE.
1435 * c-common.c (c_common_reswords): Add __is_trivially_copyable.
1436
717e52f9 1437 * c-common.h (enum rid): Add RID_IS_TRIVIALLY_COPYABLE.
1438 * c-common.c (c_common_reswords): Add __is_trivially_copyable.
1439
c33e051d 1440 * c-common.h (enum rid): Remove RID_IS_CONVERTIBLE_TO.
1441 * c-common.c (c_common_reswords): Remove __is_convertible_to.
1442
5213d6c9 14432014-09-24 Marek Polacek <polacek@redhat.com>
1444
1445 PR c/61405
1446 PR c/53874
1447 * c-common.h (struct c_common_resword): Don't define CPP_KEYWORD.
1448
6b722052 14492014-09-23 Andi Kleen <ak@linux.intel.com>
1450
1451 * c-common.c (handle_no_reorder_attribute): New function.
1452 (c_common_attribute_table): Add no_reorder attribute.
1453
0cb69d12 14542014-09-22 Joseph Myers <joseph@codesourcery.com>
1455
1456 * c-cppbuiltin.c (c_cpp_builtins): Define
1457 __LIBGCC_*_EXCESS_PRECISION__ macros for supported floating-point
1458 modes.
1459
168dfbf0 14602014-09-18 Joseph Myers <joseph@codesourcery.com>
1461
1462 * c-cppbuiltin.c (c_cpp_builtins): Define __LIBGCC_*_FUNC_EXT__
1463 for supported floating-point modes.
1464
b83705f4 14652014-09-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
1466
1467 * c.opt (Wpsabi): Use LangEnabledBy.
1468 * c-opts.c (c_common_handle_option): Do not handle here.
1469
d5957f0d 14702014-09-12 Joseph Myers <joseph@codesourcery.com>
1471
1472 * c-cppbuiltin.c (c_cpp_builtins): Define __LIBGCC_HAS_%s_MODE__
1473 macros for floating-point modes.
1474
bae6edff 14752014-09-11 Marc Glisse <marc.glisse@inria.fr>
1476
1477 PR target/58757
1478 * c-cppbuiltin.c (builtin_define_float_constants): Correct
1479 __*_DENORM_MIN__ without denormals.
1480
73a69d02 14812014-09-10 Jakub Jelinek <jakub@redhat.com>
1482
1483 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
1484 ubsan_instrument_vla, ubsan_instrument_return): Adjust
1485 ubsan_create_data callers.
1486 (ubsan_instrument_bounds): Don't emit UBSAN_BOUNDS at all if
1487 index is constant or BIT_AND_EXPR with constant mask and is
1488 small enough for the bound.
1489 * c-gimplify.c (ubsan_walk_array_refs_r): For ADDR_EXPR of
1490 ARRAY_REF, make sure the inner ARRAY_REF is not walked again.
1491
7ff8db31 14922014-09-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
1493
1494 * c.opt: Add CppReason to various flags.
1495 (Wdate-time): Re-sort.
1496 * c-common.c: Include c-common.h earlier.
1497 (struct reason_option_codes_t): Delete.
1498 (c_option_controlling_cpp_error): Prefix global type and struct
1499 with cpp_.
1500
bcc1f37e 15012014-09-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
1502
1503 * c.opt (Wnormalized): New.
1504 (Wnormalized=): Use Enum and Reject Negative.
1505 * c-opts.c (c_common_handle_option): Do not handle Wnormalized here.
1506
b660d3c6 15072014-09-08 Joseph Myers <joseph@codesourcery.com>
1508
1509 * c-cppbuiltin.c (c_cpp_builtins): Define macros for mantissa
1510 digits of floating-point modes if -fbuilding-libgcc.
1511
325b8c3c 15122014-09-05 Joseph Myers <joseph@codesourcery.com>
1513
1514 * c-cppbuiltin.c (c_cpp_builtins): Also define
1515 __LIBGCC_EH_TABLES_CAN_BE_READ_ONLY__,
1516 __LIBGCC_EH_FRAME_SECTION_NAME__, __LIBGCC_JCR_SECTION_NAME__,
1517 __LIBGCC_CTORS_SECTION_ASM_OP__, __LIBGCC_DTORS_SECTION_ASM_OP__,
1518 __LIBGCC_TEXT_SECTION_ASM_OP__, __LIBGCC_INIT_SECTION_ASM_OP__,
1519 __LIBGCC_INIT_ARRAY_SECTION_ASM_OP__,
1520 __LIBGCC_STACK_GROWS_DOWNWARD__,
1521 __LIBGCC_DONT_USE_BUILTIN_SETJMP__,
1522 __LIBGCC_DWARF_ALT_FRAME_RETURN_COLUMN__,
1523 __LIBGCC_DWARF_FRAME_REGISTERS__,
1524 __LIBGCC_EH_RETURN_STACKADJ_RTX__, __LIBGCC_JMP_BUF_SIZE__,
1525 __LIBGCC_STACK_POINTER_REGNUM__ and
1526 __LIBGCC_VTABLE_USES_DESCRIPTORS__ for -fbuilding-libgcc.
1527 (builtin_define_with_value): Handle backslash-escaping in string
1528 macro values.
1529
1e074e77 15302014-09-05 Richard Biener <rguenther@suse.de>
1531
1532 PR middle-end/63148
1533 * c-format.c (check_format_arg): Properly handle
1534 effectively signed POINTER_PLUS_EXPR offset.
1535
04afd878 15362014-09-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
1537
1538 * c.opt (Wc90-c99-compat,Wc++-compat,Wcomment,Wendif-labels,
1539 Winvalid-pch,Wlong-long,Wmissing-include-dirs,Wmultichar,Wpedantic,
1540 (Wdate-time,Wtraditional,Wundef,Wvariadic-macros): Add CPP, Var
1541 and Init.
1542 * c-opts.c (c_common_handle_option): Do not handle here.
1543 (sanitize_cpp_opts): Likewise.
1544 * c-common.c (struct reason_option_codes_t): Handle
1545 CPP_W_C90_C99_COMPAT and CPP_W_PEDANTIC.
1546
a3f448f0 15472014-09-03 Marek Polacek <polacek@redhat.com>
1548
1549 * c.opt (Wlogical-not-parentheses): Enable by -Wall.
1550
40750995 15512014-09-02 Jakub Jelinek <jakub@redhat.com>
1552 Balaji V. Iyer <balaji.v.iyer@intel.com>
1553 Igor Zamyatin <igor.zamyatin@intel.com>
1554
1555 * c-cilkplus.c (cilk_for_number_of_iterations): New function.
1556 * c-common.c (c_common_reswords): Added _Cilk_for.
1557 * c-common.h (enum rid): Added RID_CILK_FOR.
1558 (cilk_for_number_of_iterations): Add declaration.
1559 * c-omp.c (c_finish_omp_for): Added checks for CILK_SIMD and
1560 CILK_FOR.
1561 * c-pragma.c (init_pragma): Register "grainsize" pragma.
1562 * c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_GRAINSIZE.
1563
f0fbe519 15642014-08-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
1565
1566 * c.opt (Wbuiltin-macro-redefined,Wdeprecated,Wendif-labels,
1567 Winvalid-pch,Wliteral-suffix,Wmissing-include-dirs,Wtrigraphs,
1568 Wundef): Use CPP, Var and Init.
1569 * c-opts.c (c_common_handle_option): Do not handle the above flags here.
1570
a7d2e480 15712014-08-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
1572
1573 * c.opt (Wbuiltin-macro-redefined): Use CPP, Var and Init.
1574 * c-opts.c (c_common_handle_option): Do not handle here.
1575
c35e53f1 15762014-08-25 Jason Merrill <jason@redhat.com>
1577
1578 * c.opt: Change -std=c++1y and -std=gnu++1y to be aliases for
1579 -std=c++14 and -std=gnu++14, rather than the reverse.
1580 * c-opts.c (c_common_handle_option): Change OPT_std_c__1y and
1581 OPT_std_gnu__1y to OPT_std_c__14 and OPT_std_gnu__14.
1582 * c-common.h (cxx_dialect): Remove cxx1y.
1583
4e454776 15842014-08-23 Edward Smith-Rowland <3dw4rd@verizon.net>
1585
1586 * c-common.h (enum cxx_dialect): Add cxx14.
1587 * c-opts.c (set_std_cxx1y): Rename to set_std_cxx14; Use cxx14.
1588 * c-ubsan.c (ubsan_instrument_shift): Change comment and logic from
1589 cxx_dialect == cxx11 || cxx_dialect == cxx1y to cxx_dialect >= cxx11.
1590
af1a80f2 15912014-08-22 Jason Merrill <jason@redhat.com>
1592
1593 * c.opt (std=gnu++17): Fix alias.
1594
dc6229e8 15952014-08-22 Marek Polacek <polacek@redhat.com>
1596
1597 PR c++/62199
1598 * c-common.c (warn_logical_not_parentheses): Don't check LHS. Don't
1599 check for vector types. Drop LHS argument.
1600 * c-common.h (warn_logical_not_parentheses): Adjust.
1601
ba7f7c88 16022014-08-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
1603
1604 * c.opt (Wcomment): Use CPP, Var and LangEnabledBy.
1605 (Wmultichar): Likewise.
1606 (Wdate-time): Use C-family languages instead of Common. Use CPP
1607 and Var.
1608 * c-opts.c (c_common_handle_option): Do not handle the above
1609 options here.
1610 (sanitize_cpp_opts): Likewise.
1611
399d4f80 16122014-08-21 Manuel López-Ibáñez <manu@gcc.gnu.org>
1613
1614 PR fortran/44054
1615 * c-opts.c: Include tree-diagnostics.h.
1616 (c_diagnostic_finalizer): New.
1617 (c_common_initialize_diagnostics): Use it.
1618
1babed5f 16192014-08-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
1620
1621 PR preprocessor/51303
1622 * c-common.c (struct reason_option_codes_t option_codes):
1623 Add CPP_W_MISSING_INCLUDE_DIRS. Sort alphabetically.
1624
3636964b 16252014-08-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
1626
1627 PR c/60975
1628 PR c/53063
1629 * c.opt (Wvariadic-macros): Use CPP and LangEnabledBy.
1630 * c-opts.c (c_common_handle_option): Call cpp_handle_option_auto.
1631 (c_common_post_options): Call init_global_opts_from_cpp.
1632 (sanitize_cpp_opts): Do not handle Wvariadic-macros here.
1633
78bf4156 16342014-08-19 Marek Polacek <polacek@redhat.com>
1635
1636 PR c++/62153
1637 * c-common.c (maybe_warn_bool_compare): New function.
1638 * c-common.h (maybe_warn_bool_compare): Declare.
1639 * c.opt (Wbool-compare): New option.
1640
508ea33a 16412014-08-19 Marek Polacek <polacek@redhat.com>
1642
1643 * c.opt (Wc99-c11-compat): New option.
1644
806fe15e 16452014-08-19 Marek Polacek <polacek@redhat.com>
1646
1647 * c-opts.c (sanitize_cpp_opts): Make warn_long_long be set according
1648 to warn_c90_c99_compat.
1649 * c.opt (Wc90-c99-compat, Wdeclaration-after-statement): Initialize
1650 to -1.
1651
6c867de1 16522014-08-19 Manuel López-Ibáñez <manu@gcc.gnu.org>
1653 Steven Bosscher <steven@gcc.gnu.org>
1654
1655 PR c/52952
1656 * c-format.c: Add extra_arg_loc and format_string_loc to struct
1657 format_check_results.
1658 (check_function_format): Use true and add comment for boolean
1659 argument.
1660 (finish_dollar_format_checking): Use explicit location when warning.
1661 (check_format_info): Likewise.
1662 (check_format_arg): Set extra_arg_loc and format_string_loc.
1663 (check_format_info_main): Use explicit location when warning.
1664 (check_format_types): Pass explicit location.
1665 (format_type_warning): Likewise.
1666
dc8078a3 16672014-08-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
1668
1669 PR fortran/44054
1670 * c-format.c: Handle Fortran flags.
1671
d271ec7e 16722014-08-12 Igor Zamyatin <igor.zamyatin@intel.com>
1673
1674 PR other/61962
1675 * array-notation-common.c (find_rank): Added handling for other
1676 types of references.
1677
890c2e2f 16782014-08-10 Marek Polacek <polacek@redhat.com>
1679
1680 PR c/51849
1681 * c-opts.c (sanitize_cpp_opts): Pass warn_c90_c99_compat to libcpp.
1682 * c.opt (Wc90-c99-compat): Add option.
1683
7149db5f 16842014-08-07 Trevor Saunders <tsaunders@mozilla.com>
1685
1686 * c-gimplify.c, cilk.c: Remove includes of pointer-set.h.
1687
2d2f6a15 16882014-08-03 Marek Polacek <polacek@redhat.com>
1689
1690 * c-common.c (check_case_value): Add location_t parameter. Use it.
1691 (c_add_case_label): Pass loc to check_case_value.
1692
06ecf488 16932014-08-02 Trevor Saunders <tsaunders@mozilla.com>
1694
1695 * cilk.c: Use hash_map instead of pointer_map.
1696
431205b7 16972014-08-02 Trevor Saunders <tsaunders@mozilla.com>
1698
1699 * c-gimplify.c: Use hash_set instead of pointer_set.
1700
3394c80c 17012014-08-01 Igor Zamyatin <igor.zamyatin@intel.com>
1702
1703 PR middle-end/61455
1704 * array-notation-common.c (extract_array_notation_exprs): Handling
1705 of DECL_EXPR added.
1706
392dee1e 17072014-08-01 Jakub Jelinek <jakub@redhat.com>
1708
1709 * c-common.h (min_align_of_type): Removed prototype.
1710 * c-common.c (min_align_of_type): Removed.
1711 * c-ubsan.h (ubsan_maybe_instrument_reference,
1712 ubsan_maybe_instrument_member_call): New prototypes.
1713 * c-ubsan.c: Include stor-layout.h and builtins.h.
1714 (ubsan_maybe_instrument_reference_or_call,
1715 ubsan_maybe_instrument_reference, ubsan_maybe_instrument_call): New
1716 functions.
1717
f22a2cb7 17182014-07-31 Marc Glisse <marc.glisse@inria.fr>
1719
1720 PR c++/60517
1721 * c.opt (-Wreturn-local-addr): Move to common.opt.
1722
87b0198f 17232014-07-30 Jason Merrill <jason@redhat.com>
1724
1725 PR c++/61659
1726 PR c++/61687
1727 Revert:
1728 * c.opt (-fuse-all-virtuals): New.
1729
74691f46 17302014-07-30 Tom Tromey <tromey@redhat.com>
1731
1732 PR c/59855
1733 * c.opt (Wdesignated-init): New option.
1734 * c-common.c (c_common_attribute_table): Add "designated_init".
1735 (handle_designated_init): New function.
1736
9140d56f 17372014-07-24 Marek Polacek <polacek@redhat.com>
1738
1739 PR c/57653
1740 * c-opts.c (c_finish_options): If -imacros is in effect, return.
1741
a09c5cc2 17422014-07-16 Dodji Seketeli <dodji@redhat.com>
1743
1744 PR preprocessor/60723 - missing system-ness marks for macro tokens
1745 * c-ppoutput.c (struct print::prev_was_system_token): New data
1746 member.
1747 (init_pp_output): Initialize it.
1748 (maybe_print_line_1, maybe_print_line, print_line_1, print_line)
1749 (do_line_change): Return a flag saying if a line marker was
1750 emitted or not.
1751 (scan_translation_unit): Detect if the system-ness of the token we
1752 are about to emit is different from the one of the previously
1753 emitted token. If so, emit a line marker. Avoid emitting useless
1754 adjacent line markers. Avoid emitting line markers for tokens
1755 originating from the expansion of built-in macros.
1756 (scan_translation_unit_directives_only): Adjust.
1757
2b25b62f 17582014-07-15 Marek Polacek <polacek@redhat.com>
1759
1760 * c-ubsan.c (ubsan_instrument_bounds): Don't instrument if
1761 TYPE_MAX_VALUE is NULL.
1762
305d96bc 17632014-07-14 Jakub Jelinek <jakub@redhat.com>
1764
1765 PR middle-end/61294
1766 * c.opt (Wmemset-transposed-args): New warning.
1767
8ea4660d 17682014-07-10 Jason Merrill <jason@redhat.com>
1769
1770 PR c++/61659
1771 PR c++/61687
1772 * c.opt (-fuse-all-virtuals): New.
1773
cd480f3d 17742014-07-09 Richard Biener <rguenther@suse.de>
1775
1776 PR c-family/61741
1777 * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
1778 using unsigned arithmetic if overflow does not wrap instead of
1779 if overflow is undefined.
1780
87d59e72 17812014-07-06 Marek Polacek <polacek@redhat.com>
1782
1783 PR c/6940
1784 * c.opt (Wsizeof-array-argument): New option.
1785
d69521d8 17862014-07-03 Jakub Jelinek <jakub@redhat.com>
1787
8204c077 1788 * c-ada-spec.c (dump_ada_nodes): Don't call qsort if
d69521d8 1789 comments->count <= 1, as comments->entries might be NULL.
1790
1207866e 17912014-07-01 Marek Polacek <polacek@redhat.com>
1792
1793 * c.opt (Wint-conversion): New option.
1794
7a6bbb76 17952014-07-01 Marek Polacek <polacek@redhat.com>
1796
1797 PR c/58286
1798 * c.opt (Wincompatible-pointer-types): New option.
1799
9d4eeb52 18002014-06-30 Paolo Carlini <paolo.carlini@oracle.com>
1801
1802 PR c++/51400
1803 * c-common.c (handle_noreturn_attribute, handle_const_attribute):
1804 Do not discard TYPE_QUALS of type.
1805
4b53bc0f 18062014-06-26 Jason Merrill <jason@redhat.com>
1807
1808 * c-common.h (enum cxx_dialect): Add cxx1z.
1809 * c.opt (std=c++1z, std=c++17, std=gnu++1z, std=gnu++17): New.
1810 * c-opts.c (c_common_handle_option, set_std_cxx1z): Handle it.
1811
a8a8d4ea 18122014-06-26 Teresa Johnson <tejohnson@google.com>
1813
1814 * c-common.h (get_dump_info): Declare.
1815 * c-gimplify.c (c_genericize): Use saved dump files.
1816 * c-opts.c (c_common_parse_file): Begin and end dumps
1817 once around parsing invocation.
1818 (get_dump_info): New function.
1819
1f6be080 18202014-06-23 Marek Polacek <polacek@redhat.com>
1821 Andrew MacLeod <amacleod@redhat.com>
1822
1823 PR c/61553
1824 * c-common.c (get_atomic_generic_size): Don't segfault if the
1825 type doesn't have a size.
1826
5ef6b660 18272014-06-20 Marek Polacek <polacek@redhat.com>
1828
1829 * c-gimplify.c: Include "c-ubsan.h" and "pointer-set.h".
1830 (ubsan_walk_array_refs_r): New function.
1831 (c_genericize): Instrument array bounds.
1832 * c-ubsan.c: Include "internal-fn.h".
1833 (ubsan_instrument_division): Mark instrumented arrays as having
1834 side effects. Adjust ubsan_type_descriptor call.
1835 (ubsan_instrument_shift): Likewise.
1836 (ubsan_instrument_vla): Adjust ubsan_type_descriptor call.
1837 (ubsan_instrument_bounds): New function.
1838 (ubsan_array_ref_instrumented_p): New function.
1839 (ubsan_maybe_instrument_array_ref): New function.
1840 * c-ubsan.h (ubsan_instrument_bounds): Declare.
1841 (ubsan_array_ref_instrumented_p): Declare.
1842 (ubsan_maybe_instrument_array_ref): Declare.
1843
18442014-06-20 Hale Wang <hale.wang@arm.com>
3ccd1e6e 1845
1846 PR lto/61123
1847 * c.opt (fshort-enums): Add to LTO.
1848 * c.opt (fshort-wchar): Likewise.
1849
78438f31 18502014-06-16 Marek Polacek <polacek@redhat.com>
1851
1852 PR c/60439
1853 * c.opt (Wswitch-bool): Add Var.
1854
5fddcf34 18552014-06-12 Jakub Jelinek <jakub@redhat.com>
1856
1857 PR middle-end/61486
1858 * c-omp.c (c_omp_split_clauses): Don't crash on firstprivate in
1859 #pragma omp target teams or
1860 #pragma omp {,target }teams distribute simd.
1861
74b777e5 18622014-06-12 Jason Merrill <jason@redhat.com>
1863
1864 * c.opt (Wabi=, fabi-compat-version): New.
1865 * c-opts.c (c_common_handle_option): Handle -Wabi=.
1866 (c_common_post_options): Handle flag_abi_compat_version default.
1867 Disallow -fabi-compat-version=1.
1868 * c-common.h (abi_version_crosses): New.
1869
738a6bda 18702014-06-11 Jan Hubicka <hubicka@ucw.cz>
1871
1f78217c 1872 * c-common.c (handle_section_attribute): Update handling for
738a6bda 1873 section names that are no longer trees.
1874
cf5f881f 18752014-06-10 Jakub Jelinek <jakub@redhat.com>
1876
1877 PR fortran/60928
1878 * c-pragma.c (omp_pragmas_simd): Move PRAGMA_OMP_TASK...
1879 (omp_pragmas): ... back here.
1880
32dc1512 18812014-06-05 Marek Polacek <polacek@redhat.com>
1882
1883 PR c/49706
1884 * c-common.c (warn_logical_not_parentheses): New function.
1885 * c-common.h (warn_logical_not_parentheses): Declare.
1886 * c.opt (Wlogical-not-parentheses): New option.
1887
f61a9bc2 18882014-06-04 Marek Polacek <polacek@redhat.com>
1889
1890 PR c/30020
1891 * c-common.c (check_case_bounds): Add location parameter.
1892 Use it.
1893 (c_add_case_label): Pass loc to check_case_bounds.
1894
c69ec07d 18952014-06-03 Marek Polacek <polacek@redhat.com>
1896
1897 PR c/60439
1898 * c.opt (Wswitch-bool): New option.
1899
3c77ca67 19002014-05-22 Thomas Schwinge <thomas@codesourcery.com>
1901
68a2c870 1902 * c-common.h (c_omp_sharing_predetermined, c_omp_remap_decl):
1903 Remove prototypes.
1904 (record_types_used_by_current_var_decl): Move prototype to where
1905 it belongs.
1906
3c77ca67 1907 * c-common.c (DEF_FUNCTION_TYPE_0, DEF_FUNCTION_TYPE_6)
1908 (DEF_FUNCTION_TYPE_7, DEF_FUNCTION_TYPE_8)
1909 (DEF_FUNCTION_TYPE_VAR_5): Cosmetic fixes.
1910
3ab4693e 19112014-05-21 Richard Sandiford <rsandifo@linux.vnet.ibm.com>
1912
1913 * c-common.h (CTI_VOID_ZERO, void_zero_node): Delete.
1914 * c-common.c (c_common_nodes_and_builtins): Don't initialize
1915 void_zero_node.
1916 * c-pretty-print.c (pp_c_void_constant): New function.
1917 (c_pretty_printer::constant, c_pretty_printer::primary_expression)
1918 (c_pretty_printer::expression): Handle VOID_CST.
1919 * cilk.c (extract_free_variables): Likewise.
1920 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift)
1921 (ubsan_instrument_vla): Use void_node instead of void_zero_node.
1922
25a27413 19232014-05-17 Trevor Saunders <tsaunders@mozilla.com>
1924
1925 * c-common.h (sorted_fields_type): Remove variable_size GTY attribute.
1926 * c-pragma.c (push_alignment): Adjust.
1927 (handle_pragma_push_options): Likewise.
1928
3e5a8b00 19292014-05-09 Marek Polacek <polacek@redhat.com>
1930
1931 PR c/50459
1932 * c-common.c (check_user_alignment): Return -1 if alignment is error
1933 node.
1934 (handle_aligned_attribute): Don't call default_conversion on
1935 FUNCTION_DECLs.
1936 (handle_vector_size_attribute): Likewise.
1937 (handle_tm_wrap_attribute): Handle case when wrap_decl is error node.
1938 (handle_sentinel_attribute): Call default_conversion and allow even
1939 integral types as an argument.
1940
c2c4ae8d 19412014-05-08 Marek Polacek <polacek@redhat.com>
1942
1943 PR c/61053
1944 * c-common.c (min_align_of_type): New function factored out from...
1945 (c_sizeof_or_alignof_type): ...here.
1946 * c-common.h (min_align_of_type): Declare.
1947
2026249a 19482014-05-08 Marek Polacek <polacek@redhat.com>
1949
1950 PR c/61077
1951 * c-common.c (check_main_parameter_types): Warn for _Atomic-qualified
1952 parameter type of main.
1953
33c8dcfe 19542014-05-07 DJ Delorie <dj@redhat.com>
1955
1956 * c-cppbuiltin.c (print_bits_of_hex): New.
1957 (builtin_define_type_minmax): Print values using hex so as not to
1958 require a pre-computed list of string values.
1959
960d5a55 19602014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
1961 Mike Stump <mikestump@comcast.net>
1962 Richard Sandiford <rdsandiford@googlemail.com>
1963
1964 * c-ada-spec.c: Include wide-int.h.
1965 (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Remove.
1966 (dump_generic_ada_node): Use wide-int interfaces.
1967 * c-common.c: Include wide-int-print.h.
1968 (shorten_compare): Use wide-int interfaces and tree_int_cst_lt.
1969 (pointer_int_sum): Use wide-int interfaces.
1970 (c_common_nodes_and_builtins): Use make_int_cst.
1971 (match_case_to_enum_1): Use tree_fits_uhwi_p and tree_fits_shwi_p.
1972 (handle_alloc_size_attribute): Use wide-int interfaces.
1973 (get_nonnull_operand): Likewise.
1974 * c-format.c (get_constant): Use tree_fits_uhwi_p.
1975 * c-lex.c: Include wide-int.h.
1976 (narrowest_unsigned_type): Take a widest_int rather than two
1977 HOST_WIDE_INTs.
1978 (narrowest_signed_type): Likewise.
1979 (interpret_integer): Update accordingly. Use wide-int interfaces.
1980 (lex_charconst): Use wide-int interfaces.
1981 * c-pretty-print.c: Include wide-int.h.
1982 (pp_c_integer_constant): Use wide-int interfaces.
1983 * cilk.c (declare_one_free_variable): Use tree_int_cst_lt instead of
1984 INT_CST_LT_UNSIGNED.
1985
bbb88b31 19862014-05-06 Richard Biener <rguenther@suse.de>
1987
1988 * c-opts.c (c_common_post_options): For -freestanding,
1989 -fno-hosted and -fno-builtin disable pattern recognition
1990 if not enabled explicitely.
1991
022d4718 19922014-05-02 Marek Polacek <polacek@redhat.com>
1993
1994 * c.opt (Wsizeof-pointer-memaccess): Describe option.
1995
e4ab2ef3 19962014-05-01 Marek Polacek <polacek@redhat.com>
1997
1998 PR c/43245
1999 * c.opt (Wdiscarded-qualifiers): Add.
2000
52cc0072 20012014-04-30 Marek Polacek <polacek@redhat.com>
2002
2003 * c-ubsan.c (ubsan_instrument_division): Handle REAL_TYPEs. Perform
2004 INT_MIN / -1 sanitization only for integer types.
2005
4a026b48 20062014-04-25 Marek Polacek <polacek@redhat.com>
2007
2008 PR c/18079
2009 * c-common.c (handle_noinline_attribute): Warn if the attribute
2010 conflicts with always_inline attribute.
2011 (handle_always_inline_attribute): Warn if the attribute conflicts
2012 with noinline attribute.
2013
90e645fa 20142014-04-25 Marek Polacek <polacek@redhat.com>
2015
2016 PR c/60156
2017 * c-common.c (check_main_parameter_types): Warn about variadic main.
2018
db103ea4 20192014-04-24 Mike Stump <mikestump@comcast.net>
2020
2021 * c.opt (Wshadow-ivar): Default to on.
2022
06511efd 20232014-04-24 Dimitris Papavasiliou <dpapavas@gmail.com>
2024
2025 * c.opt (Wshadow-ivar, flocal-ivars, fivar-visibility): Add.
2026
cdf34fca 20272014-04-23 Marek Polacek <polacek@redhat.com>
2028
2029 * c-common.c (handle_tm_wrap_attribute): Tweak error message.
2030
7311d7c1 20312014-04-22 Jakub Jelinek <jakub@redhat.com>
2032
2033 PR sanitizer/60275
2034 * c-ubsan.c (ubsan_instrument_return): Return __builtin_trap ()
2035 if flag_sanitize_undefined_trap_on_error.
2036 (ubsan_instrument_division, ubsan_instrument_shift,
2037 ubsan_instrument_vla): Likewise. Use __ubsan_handle_*_abort ()
2038 if !flag_sanitize_recover.
2039
c1917557 20402014-04-22 Marc Glisse <marc.glisse@inria.fr>
2041
2042 PR libstdc++/43622
2043 * c-common.c (registered_builtin_types): Make non-static.
2044 * c-common.h (registered_builtin_types): Declare.
2045
b2ca6510 20462014-04-14 Richard Biener <rguenther@suse.de>
2047 Marc Glisse <marc.glisse@inria.fr>
2048
2049 PR c/60819
2050 * c-common.c (convert_vector_to_pointer_for_subscript): Properly
2051 apply may-alias the scalar pointer type when applicable.
2052
855372a3 20532014-04-12 Igor Zamyatin <igor.zamyatin@intel.com>
2054
2055 PR middle-end/60467
2056 * cilk.c (cilk_set_spawn_marker): Remove FUNCTION_DECL
2057 as possible argument for Cilk_spawn.
2058
4012a986 20592014-04-11 Tobias Burnus <burnus@net-b.de>
2060
2061 PR c/60194
2062 * c.opt (Wformat-signedness): Add
2063 * c-format.c(check_format_types): Use it.
2064
0d284870 20652014-04-11 Jason Merrill <jason@redhat.com>
2066
2067 PR c++/57926
2068 * c-common.c (sync_resolve_size, get_atomic_generic_size): Call
2069 default_conversion for an array argument.
2070
a34c1231 20712014-04-08 Marek Polacek <polacek@redhat.com>
2072
2073 PR sanitizer/60745
2074 * c-ubsan.c: Include asan.h.
2075 (ubsan_instrument_return): Call initialize_sanitizer_builtins.
2076
a35a8e18 20772014-04-03 Nathan Sidwell <nathan@codesourcery.com>
2078
2079 * c.opt (Wnon-virtual-dtor): Auto set when Weffc++.
2080
b23e42b6 20812014-04-02 Marek Polacek <polacek@redhat.com>
2082
2083 * c-common.h (c_expand_expr): Remove declaration.
2084
5a672e62 20852014-03-28 Jakub Jelinek <jakub@redhat.com>
2086
2087 PR c++/60689
2088 * c-common.c (add_atomic_size_parameter): When creating new
2089 params vector, push the size argument first.
2090
d4d068c0 20912014-03-26 Jakub Jelinek <jakub@redhat.com>
2092
2093 * c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
2094 ubsan_instrument_vla, ubsan_instrument_return): Adjust
2095 ubsan_create_data callers.
2096
446bdf5f 20972014-03-22 Jakub Jelinek <jakub@redhat.com>
2098
2099 PR debug/60603
2100 * c-opts.c (c_finish_options): Restore cb_file_change call to
2101 <built-in>.
2102
8895f0a3 21032014-03-13 Jakub Jelinek <jakub@redhat.com>
2104
2105 PR middle-end/36282
2106 * c-pragma.c (apply_pragma_weak): Only look at
2107 TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl)) if
2108 DECL_ASSEMBLER_NAME_SET_P (decl).
2109 (maybe_apply_pending_pragma_weaks): Exit early if
2110 vec_safe_is_empty (pending_weaks) rather than only when
2111 !pending_weaks.
2112 (maybe_apply_pragma_weak): Likewise. If !DECL_ASSEMBLER_NAME_SET_P,
2113 set assembler name back to NULL afterwards.
2114
7a5da2cd 21152014-03-11 Jason Merrill <jason@redhat.com>
2116
2117 * c.opt: Add -std=gnu++14.
2118
95093889 21192014-03-11 Ian Bolton <ian.bolton@arm.com>
2120
2121 * c-opts.c (c_common_post_options): Don't override
2122 -ffp-contract=fast if unsafe-math-optimizations is on.
2123
c9a24b37 21242014-03-08 Paulo Matos <paulo@matos-sorge.com>
2125
2126 * c.opt: Enable LTO FE for fshort-double.
2127
3f6dba6e 21282014-03-07 Jason Merrill <jason@redhat.com>
2129
2130 * c.opt: Add -std=c++14.
2131
3bfdc94f 21322014-03-06 Marek Polacek <polacek@redhat.com>
2133
2134 PR c/60197
2135 * cilk.c (contains_cilk_spawn_stmt): New function.
2136 (contains_cilk_spawn_stmt_walker): Likewise.
2137 (recognize_spawn): Give error on invalid use of _Cilk_spawn.
2138 * c-common.h (contains_cilk_spawn_stmt): Add declaration.
2139
8b3a6a4c 21402014-03-03 Jakub Jelinek <jakub@redhat.com>
2141
2142 * c-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_SIMD.
2143 (init_pragma): Call cpp_register_deferred_pragma for PRAGMA_CILK_SIMD
2144 even when flag_preprocess_only.
2145
734ec290 21462014-02-26 Jason Merrill <jason@redhat.com>
2147
2148 PR c++/59231
2149 PR c++/11586
2150 * c-common.c (shorten_compare): Don't check
2151 c_inhibit_evaluation_warnings.
2152
81aec8b8 21532014-02-19 Jakub Jelinek <jakub@redhat.com>
2154
d1081017 2155 PR c/37743
2156 * c-common.c (c_common_nodes_and_builtins): When initializing
2157 c_uint{16,32,64}_type_node, also set corresponding
2158 uint{16,32,64}_type_node to the same value.
2159
81aec8b8 2160 PR c++/60267
2161 * c-pragma.c (init_pragma): Don't call cpp_register_deferred_pragma
2162 for PRAGMA_IVDEP if flag_preprocess_only.
2163
312243bb 21642014-02-12 Jakub Jelinek <jakub@redhat.com>
2165
2166 PR c/60101
2167 * c-common.c (merge_tlist): If copy is true, call new_tlist,
2168 if false, add ADD itself, rather than vice versa.
2169 (verify_tree): For COND_EXPR, don't call merge_tlist with non-zero
2170 copy. For SAVE_EXPR, only call merge_tlist once.
2171
237e78b1 21722014-02-08 Jakub Jelinek <jakub@redhat.com>
2173
2174 PR middle-end/60092
2175 * c-common.c (handle_alloc_size_attribute): Use tree_fits_uhwi_p
2176 and tree_to_uhwi.
2177 (handle_alloc_align_attribute, handle_assume_aligned_attribute): New
2178 functions.
2179 (c_common_attribute_table): Add alloc_align and assume_aligned
2180 attributes.
2181
76fdceeb 21822014-02-06 Marek Polacek <polacek@redhat.com>
2183
2184 PR c/60087
2185 * c-common.c (warn_for_sign_compare): Call warning_at with location
2186 instead of warning.
2187
4a4dea42 21882014-02-05 Marek Polacek <polacek@redhat.com>
2189
2190 PR c/53123
2191 * c-omp.c (c_finish_omp_atomic): Remove unreachable return
2192 statement.
2193
ec704957 21942014-02-04 Marek Polacek <polacek@redhat.com>
2195
2196 PR c/60036
2197 * c-common.c (conversion_warning): Unwrap C_MAYBE_CONST_EXPR and/or
2198 SAVE_EXPR.
2199
caf62483 22002014-02-03 Marc Glisse <marc.glisse@inria.fr>
2201
2202 PR c++/53017
2203 PR c++/59211
2204 * c-common.c (handle_aligned_attribute, handle_alloc_size_attribute,
2205 handle_vector_size_attribute, handle_nonnull_attribute): Call
2206 default_conversion on the attribute argument.
2207 (handle_nonnull_attribute): Increment the argument number.
2208
ec761d5a 22092014-01-31 Marek Polacek <polacek@redhat.com>
2210
2211 PR c/59963
2212 * c-common.c (add_atomic_size_parameter): Pass vNULL to
2213 build_function_call_vec.
2214 (resolve_overloaded_builtin): Likewise.
2215 * c-common.h (build_function_call_vec): Adjust declaration.
2216
22a75734 22172014-01-30 Marek Polacek <polacek@redhat.com>
2218
2219 PR c/59940
2220 * c-common.h (unsafe_conversion_p): Adjust declaration.
2221 (warnings_for_convert_and_check): Likewise.
2222 (convert_and_check): Likewise.
2223 * c-common.c (unsafe_conversion_p): Add location parameter. Call
2224 expansion_point_location_if_in_system_header on it.
2225 (warnings_for_convert_and_check): Add location parameter. Call
2226 expansion_point_location_if_in_system_header on it. Use it.
2227 (convert_and_check): Add location parameter. Use it.
2228 (conversion_warning): Likewise.
2229 (c_add_case_label): Adjust convert_and_check calls.
2230 (scalar_to_vector): Adjust unsafe_conversion_p calls.
2231
a89e6c15 22322014-01-24 Balaji V. Iyer <balaji.v.iyer@intel.com>
2233
2234 * c-common.c (c_define_builtins): Replaced flag_enable_cilkplus with
2235 flag_cilkplus.
2236 * c-pragma.c (init_pragma): Likewise.
2237 * c.opt: Likewise.
2238
2623625f 22392014-01-23 Marek Polacek <polacek@redhat.com>
2240
2241 PR c/59846
2242 * c-common.c (shorten_compare): Add location_t parameter.
2243 * c-common.h (shorten_binary_op): Adjust declaration.
2244
46da3601 22452014-01-23 Marek Polacek <polacek@redhat.com>
2246
2247 PR c/58346
2248 * c-common.c (pointer_to_zero_sized_aggr_p): New function.
2249 * c-common.h: Declare it.
2250
c9743c6a 22512014-01-20 Eric Botcazou <ebotcazou@adacore.com>
2252
2253 * c-ada-spec.h (dump_ada_specs): Revert prototype change.
2254 * c-ada-spec.c (dump_ads): Likewise.
2255 (cpp_check): Likewise.
2256 (dump_ada_specs): Likewise.
2257
22582014-01-15 Laurent Alfonsi <laurent.alfonsi@st.com>
36e33c6a 2259
2260 PR c++/49718
2261 * c-common.c (handle_no_instrument_function_attribute): Allow
2262 no_instrument_function attribute in class member
2263 definition/declaration.
2264
1248c663 22652014-01-15 Jakub Jelinek <jakub@redhat.com>
2266
2267 PR c/58943
2268 * c-omp.c (c_finish_omp_atomic): Set in_late_binary_op around
2269 build_modify_expr with non-NOP_EXPR opcode. Handle return from it
2270 being COMPOUND_EXPR.
2271 (c_finish_omp_for): Handle incr being COMPOUND_EXPR with first
2272 operand a SAVE_EXPR and second MODIFY_EXPR.
2273
6e5c480b 22742014-01-09 Jakub Jelinek <jakub@redhat.com>
2275
2276 PR target/58115
2277 * c-pch.c (c_common_write_pch): Call
2278 prepare_target_option_nodes_for_pch.
2279
3aea1f79 22802014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2281
2282 Update copyright years
2283
e4f22041 22842014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2285
2286 * array-notation-common.c, c-cilkplus.c: Use the standard form for
2287 the copyright notice.
2288
7fb0fe24 22892013-12-28 Eric Botcazou <ebotcazou@adacore.com>
2290
2291 * c-ada-spec.c (print_constructor): New function.
2292 (print_destructor): Retrieve the origin of the destructor.
2293 (print_ada_declaration): Revamp handling of constructors/destructors.
2294
468088ac 22952013-12-23 Stuart Hastings <stuart@apple.com>
2296 Bill Maddox <maddox@google.com>
2297 Jason Merrill <jason@redhat.com>
2298
2299 * c.opt: Add -fdeclone-ctor-dtor.
2300 * c-opts.c (c_common_post_options): Default to on iff -Os.
2301
74acc703 23022013-12-18 Balaji V. Iyer <balaji.v.iyer@intel.com>
2303
2304 * c-common.c (c_common_attribute_table): Added "cilk simd function"
2305 attribute.
2306 * c-pragma.h (enum pragma_cilk_clause): Remove.
2307 (enum pragma_omp_clause): Added the following fields:
2308 PRAGMA_CILK_CLAUSE_NOMASK, PRAGMA_CILK_CLAUSE_MASK,
2309 PRAGMA_CILK_CLAUSE_VECTORLENGTH, PRAGMA_CILK_CLAUSE_NONE,
2310 PRAGMA_CILK_CLAUSE_LINEAR, PRAGMA_CILK_CLAUSE_PRIVATE,
2311 PRAGMA_CILK_CLAUSE_FIRSTPRIVATE, PRAGMA_CILK_CLAUSE_LASTPRIVATE,
2312 PRAGMA_CILK_CLAUSE_UNIFORM.
2313
8204c077 2314
433e804e 23152013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com>
2316
2317 * cilk.c (cilk_outline): Made this function non-static.
2318 (gimplify_cilk_spawn): Removed pre_p and post_p arguments.
2319 (create_cilk_wrapper): Added a new parameter: a function pointer.
2320 (c_install_body_w_frame_cleanup): Remove
2321 (extract_free_variables): Added VEC_INIT_EXPR and CONSTRUCTOR case.
2322 * c-common.h (cilk_outline): New prototype.
2323 (gimplify_cilk_spawn): Removed two parameters.
2324 (cilk_install_body_with_frame_cleanup): New prototype.
2325 * c-gimplify.c (c_gimplify_expr): Added MODIFY_EXPR, CALL_EXPR and
2326 CILK_SPAWN_STMT case.
2327
5bcc7e60 23282013-12-11 Bernd Schmidt <bernds@codesourcery.com>
2329
e66325ea 2330 * c-common.c (c_fully_fold_internal): Handle ADDR_SPACE_CONVERT_EXPR.
2331
5bcc7e60 2332 * c-common.h (enum c_tree_index): Remove CTI_INT_ARRAY_TYPE.
2333 (int_array_type_node): Remove.
2334 * c-common.c (c_common_nodes_and_builtins): Don't build it.
2335
0b26ec77 23362013-12-05 Marek Polacek <polacek@redhat.com>
2337
2338 PR c/52023
2339 * c-common.c (c_sizeof_or_alignof_type): Move a declaration into
2340 [ADJUST_FIELD_ALIGN].
2341
a179a7dc 23422013-12-04 Joseph Myers <joseph@codesourcery.com>
2343
2344 PR c/52023
2345 * c-common.c (c_sizeof_or_alignof_type): Add parameter min_alignof
2346 and check field alignment if set.
2347 * c-common.h (c_sizeof_or_alignof_type): Update prototype.
2348 (c_sizeof, c_alignof): Update calls to c_sizeof_or_alignof_type.
2349
8204c077 23502013-12-04 Jakub Jelinek <jakub@redhat.com>
137559b2 2351 Marek Polacek <polacek@redhat.com>
2352
2353 * c-gimplify.c (c_gimplify_expr): If doing the integer-overflow
2354 sanitization, call unsigned_type_for only when !TYPE_OVERFLOW_WRAPS.
2355
648fd348 23562013-11-29 H.J. Lu <hongjiu.lu@intel.com>
2357
2358 PR c/59309
2359 * cilk.c (gimplify_cilk_spawn): Properly handle function without
2360 arguments.
2361
253e1cae 23622013-11-29 Jakub Jelinek <jakub@redhat.com>
2363
2364 PR c/59280
2365 * c-common.c (get_priority): If TREE_VALUE (args) is IDENTIFIER_NODE,
2366 goto invalid. If it is error_mark_node, don't issue further
2367 diagnostics.
2368
3e398f5b 23692013-11-28 Sergey Ostanevich <sergos.gnu@gmail.com>
2370
2371 * c.opt (Wopenmp-simd): New.
2372
020bc656 23732013-11-22 Jakub Jelinek <jakub@redhat.com>
2374
2375 * c-ubsan.h (ubsan_instrument_return): New prototype.
2376 * c-ubsan.c (ubsan_instrument_return): New function.
2377
bc61cadb 23782013-11-22 Andrew MacLeod <amacleod@redhat.com>
2379
2380 * c-common.c: Add required include files from gimple.h.
2381 * c-gimplify.c: Likewise
2382 * cilk.c: Likewise
2383
3df42822 23842013-11-22 David Malcolm <dmalcolm@redhat.com>
2385
2386 * c-common.c (unsafe_conversion_p): Remove use of
2387 EXPR_LOC_OR_HERE macro.
2388 (conversion_warning): Likewise.
2389 (warnings_for_convert_and_check): Likewise.
2390 (warn_for_collisions_1): Likewise.
2391 (shorten_compare): Likewise, and remove use of in_system_header
2392 macro, using the location from the former.
2393 * c-lex.c (dump_one_header): Remove use of input_filename macro.
2394 (cb_def_pragma): Remove use of in_system_header macro.
2395 (lex_string): Likewise.
2396 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
2397
8c53c46c 23982013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com>
2399 Mike Stump <mikestump@comcast.net>
2400 Richard Sandiford <rdsandiford@googlemail.com>
2401
2402 * c-ada-spec.c (is_simple_enum): Use tree_to_shwi and tree_to_uhwi
2403 instead of TREE_INT_CST_LOW, in cases where there is a protecting
2404 tree_fits_shwi_p or tree_fits_uhwi_p.
2405 (dump_generic_ada_node): Likewise.
2406 * c-format.c (check_format_arg): Likewise.
2407 * c-pretty-print.c (pp_c_integer_constant): Likewise.
2408
5200ef07 24092013-11-20 Kenneth Zadeck <zadeck@naturalbridge.com>
2410
2411 * c-common.c (check_function_arguments_recurse): Use tree_to_uhwi.
2412
ca9d7d74 24132013-11-19 Joshua J Cogliati <jrincayc@yahoo.com>
2414
2415 PR c/53001
2416 * c-common.c (unsafe_conversion_p): Make this function
2417 return an enumeration with more detail.
2418 (conversion_warning): Use the new return type of
2419 unsafe_conversion_p to separately warn either about conversions
2420 that lower floating point number precision or about the other
2421 kinds of conversions.
2422 * c-common.h (enum conversion_safety): New enumeration.
2423 (unsafe_conversion_p): switching return type to
2424 conversion_safety enumeration.
2425 * c.opt: Adding new warning -Wfloat-conversion and
2426 enabling it with -Wconversion.
2427
0391a567 24282013-11-19 Basile Starynkevitch <basile@starynkevitch.net>
2429
2430 * c-opts.c: Include plugin.h.
2431 (cb_file_change): Invoke plugin event PLUGIN_INCLUDE_FILE.
2432
19b928d9 24332013-11-19 Marek Polacek <polacek@redhat.com>
2434
2435 * c-ubsan.c (ubsan_instrument_division): Adjust ubsan_create_data
2436 call.
2437 (ubsan_instrument_shift): Likewise.
2438 (ubsan_instrument_vla): Likewise.
2439
aa59f000 24402013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
2441
2442 * c-common.c (convert_vector_to_pointer_for_subscript): Remove
2443 cast to unsigned type.
2444
08f817b3 24452013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
2446
2447 * c-common.c (fold_offsetof_1): Use tree_to_uhwi rather than
2448 tree_low_cst.
2449 (complete_array_type): Update comment to refer to tree_to_[su]hwi
2450 rather than tree_low_cst.
2451
6a0712d4 24522013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
2453
2454 * c-common.c, c-cppbuiltin.c: Replace tree_low_cst (..., 1) with
2455 tree_to_uhwi throughout.
2456
fcb97e84 24572013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
2458
2459 * c-common.c, c-format.c, c-omp.c, c-pretty-print.c: Replace
2460 tree_low_cst (..., 0) with tree_to_shwi throughout.
2461
cd4547bf 24622013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
2463
2464 * c-ada-spec.c, c-common.c, c-pretty-print.c: Replace
2465 host_integerp (..., 1) with tree_fits_uhwi_p throughout.
2466
35ec552a 24672013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
2468
2469 * c-ada-spec.c, c-common.c, c-format.c, c-pretty-print.c: Replace
2470 host_integerp (..., 0) with tree_fits_shwi_p throughout.
2471
f2697631 24722013-11-15 Aldy Hernandez <aldyh@redhat.com>
2473
2474 * c-cilkplus.c: New file.
2475 * c-common.c (readonly_error): Add location argument.
2476 * c-common.h (readonly_error): Same.
2477 (c_finish_cilk_clauses): Protoize.
2478 (c_check_cilk_loop): Same.
2479 c-omp.c (c_finish_omp_for): Handle CILK_SIMD nodes.
2480 Do not fail on error_mark_node.
2481 Abstract increment canonicalization to here...
2482 (c_omp_for_incr_canonicalize_ptr): New.
2483 c-pragma.c (init_pragma): Register "simd" pragma.
2484 c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_SIMD.
2485 (enum pragma_cilk_clause): New.
2486
0aa8c34e 24872013-11-15 Richard Sandiford <rdsandiford@googlemail.com>
2488
2489 * c-pretty-print.c (pp_c_character_constant): Remove unnecessary
2490 wchar_type and host_integerp checks.
2491
e795d6e1 24922013-11-14 Andrew MacLeod <amacleod@redhat.com>
2493
2494 * c-common.c: Likewise.
2495 * c-gimplify.c: Likewise.
2496 * cilk.c: Likewise.
2497
9ed99284 24982013-11-14 Diego Novillo <dnovillo@google.com>
2499
2500 * c-common.c: Include fold-const.h.
2501 Include stor-layout.h.
2502 Include calls.h.
2503 Include stringpool.h.
2504 Include attribs.h.
2505 Include varasm.h.
2506 Include trans-mem.h.
2507 * c-cppbuiltin.c: Include stor-layout.h.
2508 Include stringpool.h.
2509 * c-format.c: Include stringpool.h.
2510 * c-lex.c: Include stringpool.h.
2511 Include stor-layout.h.
2512 * c-pragma.c: Include stringpool.h.
2513 Include attribs.h.
2514 Include varasm.h.
2515 Include gcc-symtab.h.
2516 * c-pretty-print.c: Include stor-layout.h.
2517 Include attribs.h.
2518 * cilk.c: Include stringpool.h.
2519 Include calls.h.
2520
4fba5eb9 25212013-11-13 Joseph Myers <joseph@codesourcery.com>
2522
2523 * c-common.h (enum rid): Add RID_AUTO_TYPE.
2524 * c-common.c (c_common_reswords): Add __auto_type.
2525 (keyword_begins_type_specifier): Handle RID_AUTO_TYPE.
2526
a8783bee 25272013-11-12 Andrew MacLeod <amacleod@redhat.com>
2528
e795d6e1 2529 * c-common.c: Include gimplify.h.
2530 * c-gimplify.c: Likewise.
2531 * cilk.c: Likewise.
2532 * c-omp.c: Include gimple-expr.h instead of gimple.h.
2533 * c-ubsan.c: Don't include gimple.h.
a8783bee 2534
d184e0c0 25352013-11-12 Joseph Myers <joseph@codesourcery.com>
2536
2537 * c-common.c (c_common_reswords): Add _Thread_local.
2538
a056826c 25392013-11-09 Joseph Myers <joseph@codesourcery.com>
2540
2541 * c-common.c (atomic_size_supported_p): New function.
2542 (resolve_overloaded_atomic_exchange)
2543 (resolve_overloaded_atomic_compare_exchange)
2544 (resolve_overloaded_atomic_load, resolve_overloaded_atomic_store):
2545 Use it instead of comparing size with a local list of sizes.
2546
b560fabd 25472013-11-07 Andrew MacLeod <amacleod@redhat.com>
2548 Joseph Myers <joseph@codesourcery.com>
2549
2550 * c-common.h (enum rid): Add RID_ATOMIC.
2551 * c-common.c (c_common_reswords): Add _Atomic.
2552 (sync_resolve_params): Use TYPE_MAIN_VARIANT on pointer argument.
2553 (keyword_is_type_qualifier): Accept RID_ATOMIC.
2554 * c-format.c (check_format_types): Check for extra _Atomic
2555 qualifiers in format argument.
2556 * c-pretty-print.c (pp_c_cv_qualifiers): Handle atomic qualifier.
2557 (pp_c_type_qualifier_list): Mention _Atomic in comment.
2558
5b1a0622 25592013-11-06 Tobias Burnus <burnus@net-b.de>
2560
2561 * c-common.c (reason_option_codes_t): Add CPP_W_DATE_TIME.
2562
4f8f4cb8 25632013-11-06 Joseph Myers <joseph@codesourcery.com>
2564
2565 * c-opts.c (c_common_post_options): Set -ffp-contract=off in C
2566 standards modes.
2567 * c-cppbuiltin.c (cpp_iec_559_value): Consider -ffp-contract=fast
2568 to mean lack of IEEE 754 support.
2569
9148bda3 25702013-11-05 Tobias Burnus <burnus@net-b.de>
2571
2572 * c.opt (-Wdate-time): New option
2573 * c-opts.c (sanitize_cpp_opts): Pass on to libcpp.
2574
08c5f4d5 25752013-11-05 Joseph Myers <joseph@codesourcery.com>
2576
2577 * c-cppbuiltin.c (cpp_iec_559_value): Test
2578 flag_excess_precision_cmdline not flag_excess_precision.
2579
c630ef93 25802013-11-05 Tobias Burnus <burnus@net-b.de>
2581
2582 * c.opt (fopenmp-simd): New option.
2583 * c-pragma.c (omp_pragmas): Move pragmas which can contain simd to ...
2584 (omp_pragmas): ... this new struct.
2585 (c_pp_lookup_pragma): Also walk omp_pragmas.
2586 (init_pragma): Init pragmas for -fopenmp-simd.
2587
7354a89b 25882013-11-04 Marek Polacek <polacek@redhat.com>
2589
2590 PR c++/58979
2591 * c-common.c (invalid_indirection_error): Handle RO_ARROW_STAR case.
2592
4c866b9b 25932013-11-04 Joseph Myers <joseph@codesourcery.com>
2594
2595 * c-cppbuiltin.c (cpp_iec_559_value, cpp_iec_559_complex_value):
2596 New functions.
2597 (c_cpp_builtins): Define __GCC_IEC_559 and __GCC_IEC_559_COMPLEX.
2598
e2a6a333 25992013-11-04 Eric Botcazou <ebotcazou@adacore.com>
2600
2601 * c-ada-spec.h (cpp_operation): Add IS_TRIVIAL.
2602 (dump_ada_specs): Adjust prototype of second callback.
2603 * c-ada-spec.c (cpp_check): New global variable.
2604 (dump_ada_nodes): Remove cpp_check parameter and do not pass it down.
2605 (print_generic_ada_decl): Likewise.
2606 (has_static_fields): Change return type to bool and add guard.
2607 (has_nontrivial_methods): New predicate.
2608 (is_tagged_type): Change return type to bool.
2609 (separate_class_package): Call has_nontrivial_methods.
2610 (pp_ada_tree_identifier): Minor tweaks.
2611 (dump_ada_function_declaration): Adjust calls to dump_generic_ada_node.
2612 (dump_ada_array_domains): Likewise.
2613 (dump_ada_array_type): Likewise.
2614 (dump_template_types): Remove cpp_check parameter and do not pass it to
2615 dump_generic_ada_node.
2616 (dump_ada_template): Likewise.
2617 (dump_generic_ada_node): Remove cpp_check parameter and do not pass it
2618 recursively.
2619 (print_ada_methods): Change return type to integer. Remove cpp_check
2620 parameter and do not pass it down.
2621 (dump_nested_types): Remove cpp_check parameter and do not pass it to
2622 dump_generic_ada_node.
2623 (print_ada_declaration): Likewise. Test RECORD_OR_UNION_TYPE_P before
2624 accessing methods.
2625 (print_ada_struct_decl): Remove cpp_check parameter and do not pass it
2626 down. Use has_nontrivial_methods to recognize C++ classes. Use return
2627 value of print_ada_methods.
2628 (dump_ads): Rename cpp_check parameter to check and adjust prototype.
2629 Set cpp_check to it before invoking dump_ada_nodes.
2630 (dump_ada_specs): Likewise.
2631
2c4c3477 26322013-11-03 Marek Polacek <polacek@redhat.com>
2633
2634 * c-ubsan.c: Don't include hash-table.h.
2635 (ubsan_instrument_vla): New function.
2636 * c-ubsan.h: Declare it.
2637
452659af 26382013-10-31 David Malcolm <dmalcolm@redhat.com>
2639
2640 Automated part of renaming of symtab_node_base to symtab_node.
2641
2642 Patch autogenerated by rename_symtab.py from
2643 https://github.com/davidmalcolm/gcc-refactoring-scripts
2644 revision 58bb219cc090b2f4516a9297d868c245495ee622
2645
2646 * c-pragma.c (maybe_apply_pending_pragma_weaks): Rename
2647 symtab_node_base to symtab_node.
2648
4d6f7dd4 26492013-10-31 Edward Smith-Rowland <3dw4rd@verizon.net>
2650
2651 Implement C++14 digit separators.
2652 * c-lex.c (interpret_float): Remove digit separators from scratch string
2653 before building real literal.
2654
06cfe805 26552013-10-30 Jakub Jelinek <jakub@redhat.com>
2656
2657 * cilk.c (create_cilk_helper_decl): Use HOST_WIDE_INT_PRINT_DEC.
2658
d037099f 26592013-10-29 Balaji V. Iyer <balaji.v.iyer@intel.com>
2660
2661 * c-common.c (c_common_reswords[]): Added _Cilk_spawn and _Cilk_sync
2662 fields.
2663 (c_define_builtins): Called cilk_init_builtins if Cilk Plus is
2664 enabled.
2665 * c-common.h (enum rid): Added RID_CILK_SPAWN and RID_CILK_SYNC.
2666 (insert_cilk_frame): New prototype.
2667 (cilk_init_builtins): Likewise.
2668 (gimplify_cilk_spawn): Likewise.
2669 (c_cilk_install_body_w_frame_cleanup): Likewise.
2670 (cilk_detect_spawn_and_unwrap): Likewise.
2671 (cilk_set_spawn_marker): Likewise.
2672 (build_cilk_sync): Likewise.
2673 (build_cilk_spawn): Likewise.
2674 * cilk.c: New file.
2675
02774f2d 26762013-10-29 David Malcolm <dmalcolm@redhat.com>
2677
2678 Patch autogenerated by refactor_symtab.py from
2679 https://github.com/davidmalcolm/gcc-refactoring-scripts
2680 revision 58bb219cc090b2f4516a9297d868c245495ee622
2681
2682 * c-gimplify.c (c_genericize): Update for conversion of symtab types
2683 to a true class hierarchy.
2684 * c-pragma.c (maybe_apply_pending_pragma_weaks): Likewise.
2685
31fe10fd 26862013-10-27 Richard Sandiford <rdsandiford@googlemail.com>
2687
2688 * c-lex.c (interpret_integer): Remove call to cpp_num_sign_extend.
2689
b1c06ff9 26902013-10-26 Jeff Law <law@redhat.com>
2691
1f78217c 2692 * c-common.c (c_define_builtins): Remove mudflap support.
2693 * c.opt: Ignore and warn for mudflap options.
b1c06ff9 2694
48a972c8 26952013-10-24 Tobias Burnus <burnus@net-b.de>
4644b593 2696
2697 PR other/33426
2698 * c-pragma.c (init_pragma) Add #pragma ivdep handling.
2699 * c-pragma.h (pragma_kind): Add PRAGMA_IVDEP.
2700
546a04b1 27012013-10-23 Jason Merrill <jason@redhat.com>
2702
2703 * c-format.c (gcc_cxxdiag_char_table): Add %X.
2704
bc7bff74 27052013-10-11 Jakub Jelinek <jakub@redhat.com>
2706
d62c713e 2707 * c-common.h (omp_clause_mask::operator !=): New method.
2708 * c-omp.c (c_omp_split_clauses): Use if ((mask & something) != 0)
2709 instead of if (mask & something) tests everywhere.
2710
bc7bff74 2711 * c-cppbuiltin.c (c_cpp_builtins): Predefine _OPENMP to
2712 201307 instead of 201107.
2713 * c-common.c (DEF_FUNCTION_TYPE_8): Define.
2714 (c_common_attribute_table): Add "omp declare target" and
2715 "omp declare simd" attributes.
2716 (handle_omp_declare_target_attribute,
2717 handle_omp_declare_simd_attribute): New functions.
2718 * c-omp.c: Include c-pragma.h.
2719 (c_finish_omp_taskgroup): New function.
2720 (c_finish_omp_atomic): Add swapped argument, if true,
2721 build the operation first with rhs, lhs arguments and use NOP_EXPR
2722 build_modify_expr.
2723 (c_finish_omp_for): Add code argument, pass it down to make_code.
2724 (c_omp_split_clauses): New function.
2725 (c_split_parallel_clauses): Removed.
2726 (c_omp_declare_simd_clause_cmp, c_omp_declare_simd_clauses_to_numbers,
2727 c_omp_declare_simd_clauses_to_decls): New functions.
2728 * c-common.h (omp_clause_mask): New type.
2729 (OMP_CLAUSE_MASK_1): Define.
2730 (omp_clause_mask::omp_clause_mask, omp_clause_mask::operator &=,
2731 omp_clause_mask::operator |=, omp_clause_mask::operator ~,
2732 omp_clause_mask::operator |, omp_clause_mask::operator &,
2733 omp_clause_mask::operator <<, omp_clause_mask::operator >>,
2734 omp_clause_mask::operator ==): New methods.
2735 (enum c_omp_clause_split): New.
2736 (c_finish_omp_taskgroup): New prototype.
2737 (c_finish_omp_atomic): Add swapped argument.
2738 (c_finish_omp_for): Add code argument.
2739 (c_omp_split_clauses): New prototype.
2740 (c_split_parallel_clauses): Removed.
2741 (c_omp_declare_simd_clauses_to_numbers,
2742 c_omp_declare_simd_clauses_to_decls): New prototypes.
2743 * c-pragma.c (omp_pragmas): Add new OpenMP 4.0 constructs.
2744 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_CANCEL,
2745 PRAGMA_OMP_CANCELLATION_POINT, PRAGMA_OMP_DECLARE_REDUCTION,
2746 PRAGMA_OMP_DISTRIBUTE, PRAGMA_OMP_END_DECLARE_TARGET, PRAGMA_OMP_SIMD,
2747 PRAGMA_OMP_TARGET, PRAGMA_OMP_TASKGROUP and PRAGMA_OMP_TEAMS.
2748 Remove PRAGMA_OMP_PARALLEL_FOR and PRAGMA_OMP_PARALLEL_SECTIONS.
2749 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_ALIGNED,
2750 PRAGMA_OMP_CLAUSE_DEPEND, PRAGMA_OMP_CLAUSE_DEVICE,
2751 PRAGMA_OMP_CLAUSE_DIST_SCHEDULE, PRAGMA_OMP_CLAUSE_FOR,
2752 PRAGMA_OMP_CLAUSE_FROM, PRAGMA_OMP_CLAUSE_INBRANCH,
2753 PRAGMA_OMP_CLAUSE_LINEAR, PRAGMA_OMP_CLAUSE_MAP,
2754 PRAGMA_OMP_CLAUSE_NOTINBRANCH, PRAGMA_OMP_CLAUSE_NUM_TEAMS,
2755 PRAGMA_OMP_CLAUSE_PARALLEL, PRAGMA_OMP_CLAUSE_PROC_BIND,
2756 PRAGMA_OMP_CLAUSE_SAFELEN, PRAGMA_OMP_CLAUSE_SECTIONS,
2757 PRAGMA_OMP_CLAUSE_SIMDLEN, PRAGMA_OMP_CLAUSE_TASKGROUP,
2758 PRAGMA_OMP_CLAUSE_THREAD_LIMIT, PRAGMA_OMP_CLAUSE_TO and
2759 PRAGMA_OMP_CLAUSE_UNIFORM.
2760
d7dcba40 27612013-10-09 Marc Glisse <marc.glisse@inria.fr>
2762
2763 PR tree-optimization/20318
2764 * c-common.c (handle_returns_nonnull_attribute): New function.
2765 (c_common_attribute_table): Add returns_nonnull.
2766
0b7282f1 27672013-10-03 Marc Glisse <marc.glisse@inria.fr>
2768
2769 PR c++/19476
2770 * c.opt (fcheck-new): Move to common.opt.
2771
51f553af 27722013-09-25 Marek Polacek <polacek@redhat.com>
2773 Jakub Jelinek <jakub@redhat.com>
2774
2775 PR sanitizer/58413
2776 * c-ubsan.c (ubsan_instrument_shift): Don't instrument
2777 an expression if we can prove it is correct.
2778 (ubsan_instrument_division): Likewise. Remove unnecessary
2779 check.
2780
05f893e1 27812013-09-18 Marek Polacek <polacek@redhat.com>
2782
2783 PR sanitizer/58411
2784 * c-common.c (handle_no_sanitize_undefined_attribute): New function.
2785 Declare it.
2786 (struct attribute_spec c_common_att): Add no_sanitize_undefined.
2787
236ce1d1 27882013-09-14 Iain Sandoe <iain@codesourcery.com>
2789
2790 PR target/48094
2791 * c.opt (fgnu-runtime, fnext-runtime, fobjc-abi-version,
2792 fobjc-gc, freplace-objc-classes): Accept for LTO.
2793
f9f68d35 27942013-09-13 Jacek Caban <jacek@codeweavers.com>
2795
2796 * c-target.def: New hook
2797
ba2f764e 27982013-09-09 Paolo Carlini <paolo.carlini@oracle.com>
2799
2800 PR c++/43452
2801 * c.opt (Wdelete-incomplete): Add.
2802
73437615 28032013-09-08 Joern Rennecke <joern.rennecke@embecosm.com>
2804
2805 * c-common.c (same_scalar_type_ignoring_signedness): Delete.
2806 (vector_types_compatible_elements_p): New function.
2807 * c-common.h: (same_scalar_type_ignoring_signedness): Delete
2808 declaration.
2809 (vector_types_compatible_elements_p): Declare.
2810
95af4c75 28112013-09-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
2812
2813 * c-pretty-print.h (c_pretty_printer::simple_type_specifier): Now
2814 a virtual member function.
2815 (pp_simple_type_specifier): Remove.
2816 (pp_c_type_specifier): Likewise.
2817 * c-pretty-print.c (c_pretty_printer::simple_type_specifier):
2818 Rename from pp_c_type_specifier. Adjust.
2819 (c_pretty_printer::c_pretty_printer): Do not assign to
2820 simple_type_specifier.
2821
eaab24b9 28222013-09-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
2823
2824 * c-pretty-print.h (c_pretty_printer::type_id): Now a virtual
2825 member function.
2826 (c_pretty_printer::storage_class_specifier): Likewise.
2827 (c_pretty_printer::initializer): Likewise.
2828 (pp_declaration): Remove.
2829 (pp_declaration_specifiers): Likewise.
2830 (pp_abstract_declarator): Likewise.
2831 (pp_declarator): Likewise.
2832 (pp_type_id): Likewise.
2833 (pp_statement): Likewise.
2834 (pp_constant): Likewise.
2835 (pp_id_expression): Likewise.
2836 (pp_primary_expression): Likewise.
2837 (pp_unary_expression): Likewise.
2838 (pp_multiplicative_expression): Likewise.
2839 (pp_conditional_expression): Likewise.
2840 (pp_assignment_expression): Likewise.
2841 (pp_expression): Likewise.
2842 (pp_c_type_id): Likewise.
2843 (pp_c_storage_class_specifier): Likewise.
2844 * c-pretty-print.c (pp_c_type_cast): Tidy.
2845 (pp_c_pointer): Likewise.
2846 (pp_c_type_specifier): Likewise.
2847 (pp_c_parameter_type_list): Likewise.
2848 (pp_c_function_definition): Likewise.
2849 (pp_c_init_declarator): Likewise.
2850 (pp_c_initializer_list): Likewise.
2851 (pp_c_constructor_elts): Likewise.
2852 (c_pretty_printer::direct_abstract_declarator): Likewise.
2853 (c_pretty_printer::declaration_specifiers): Likewise.
2854 (c_pretty_printer::primary_expression): Likewise.
2855 (c_pretty_printer::postfix_expression): Likewise.
2856 (c_pretty_printer::type_id): Rename from pp_c_type_id.
2857 (c_pretty_printer::storage_class_specifier): Rename from
2858 pp_c_storage_class_specifier.
2859 (c_pretty_printer::initializer): Rename from pp_c_initializer.
2860 (c_pretty_printer::c_pretty_printer): Do not assign to type_id,
2861 storage_class_specifier, initializer, offset_list, flags.
2862
9e46467d 28632013-08-30 Marek Polacek <polacek@redhat.com>
2864
2865 * c-ubsan.c: New file.
2866 * c-ubsan.h: New file.
2867
36a8d9b9 28682013-08-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
2869
2870 * c-pretty-print.h (c_pretty_printer::declaration): Now a virtual
2871 member function.
2872 (c_pretty_printer::declaration_specifiers): Likewise.
2873 (c_pretty_printer::declarator): Likewise.
2874 (c_pretty_printer::abstract_declarator): Likewise.
2875 (c_pretty_printer::direct_abstract_declarator): Likewise.
2876 (c_pretty_printer::direct_declarator): Likewise.
2877 (c_pretty_printer::function_specifier): Likewise.
2878 (pp_declaration): Adjust.
2879 (pp_declaration_specifiers): Likewise.
2880 (pp_abstract_declarator): Likewise.
2881 (pp_direct_declarator): Likewise.
2882 (pp_function_specifier): Likewise.
2883 (pp_direct_abstract_declarator): Remove as unused.
2884 (pp_c_declaration): Remove.
2885 (pp_c_declaration_specifiers): Likewise.
2886 (pp_c_declarator): Likewise.
2887 (pp_c_direct_declarator): Likewise.
2888 (pp_c_function_specifier): Likewise.
2889 (pp_c_direct_abstract_declarator): Likewise.
2890 * c-pretty-print.c (c_pretty_printer::abstract_declarator): Rename
2891 from pp_c_abstract_declarator. Adjust.
2892 (c_pretty_printer::direct_abstract_declarator): Rename from
2893 pp_c_direct_abstract_declarator. Adjust.
2894 (c_pretty_printer::function_specifier): Rename from
2895 pp_c_function_specifier. Adjust.
2896 (c_pretty_printer::declaration_specifiers): Rename from
2897 pp_c_declaration_specifiers. Adjust.
2898 (c_pretty_printer::direct_declarator): Rename from
2899 pp_c_direct_declarator. Adjust.
2900 (c_pretty_printer::declarator): Rename from pp_c_declarator. Adjust.
2901 (c_pretty_printer::declaration): Rename from pp_c_declaration. Adjust.
2902 (c_pretty_printer::c_pretty_printer): Do not assign to
2903 declaration, declaration_specifiers, declarator,
2904 direct_declarator, direct_abstract_declarator, function_specifier.
2905
30635c2e 29062013-08-26 Gabriel Dos Reis <gdre@integrable-solutions.net>
2907
2908 * c-pretty-print.h (c_pretty_printer::unary_expression): Now a
2909 virtual member function.
2910 (c_pretty_printer::multiplicative_expression): Likewise.
2911 (c_pretty_printer::conditional_expression): Likewise.
2912 (c_pretty_printer::assignment_expression): Likewise.
2913 (c_pretty_printer::expression): Likewise.
2914 (pp_unary_expression): Adjust.
2915 (pp_multiplicative_expression): Likewise.
2916 (pp_assignment_expression): Likewise.
2917 (pp_conditional_expression): Likewise.
2918 (pp_expression): Likewise.
2919 * c-pretty-print.c (c_pretty_printer::unary_expression): Rename
2920 from pp_c_unary_expression. Adjust.
2921 (c_pretty_printer::multiplicative_expression): Rename from
2922 pp_c_multiplicative_expression. Adjust.
2923 (c_pretty_printer::conditional_expression): Rename from
2924 pp_c_conditional_expression. Adjust.
2925 (c_pretty_printer::assignment_expression): Rename from
2926 pp_c_assignment_expression. Adjust.
2927 (c_pretty_printer::expression): Rename from pp_c_expression. Adjust.
2928 (c_pretty_printer::c_pretty_printer): Do not assign to
2929 unary_expression, multiplicative_expression,
2930 conditional_expression, expression.
2931
027d08ed 29322013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
2933
2934 * c-pretty-print.h (c_pretty_printer::postfix_expression): Now a
2935 virtual member function.
2936 (pp_postfix_expression): Adjust.
2937 (pp_c_postfix_expression): Remove.
2938 * c-pretty-print.c (c_pretty_printer::postfix_expression): Rename
2939 from pp_c_postfix_expression. Adjust.
2940 (c_pretty_printer::c_pretty_printer): Do not assign to
2941 postfix_expression.
2942
f873303a 29432013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
2944
2945 * c-pretty-print.h (c_pretty_printer::primary_expression): Now a
2946 virtua member function.
2947 (pp_primary_expression): Adjust.
2948 (pp_c_primary_expression): Remove.
2949 * c-pretty-print.c (c_pretty_printer::primary_expression): Rename
2950 from pp_c_primary_expression. Adjust.
2951 (pp_c_initializer_list): Use pp_primary_expression.
2952 (c_pretty_printer::c_pretty_printer): Do not assign to
2953 primary_expression.
2954
08e3e481 29552013-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
2956
2957 * c-pretty-print.h (c_pretty_printer::translate_string): Declare.
2958 * c-pretty-print.c (M_): Remove.
2959 (c_pretty_printer::translate_string): Define.
2960 (pp_c_type_specifier): Use it.
2961 (pp_c_primary_expression): Likewise.
2962 (pp_c_expression): Likewise.
2963
1fc4a87f 29642013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
2965
2966 * c-pretty-print.h (c_pretty_printer::id_expression): Now a
2967 virtual function.
2968 (pp_c_id_expression): Remove.
2969 (pp_id_expression): Adjust.
2970 * c-pretty-print.c (c_pretty_printer::id_expression): Rename from
2971 pp_c_id_expression. Adjust.
2972 (pp_c_postfix_expression): Use pp_id_expression.
2973 (c_pretty_printer::c_pretty_printer): Do not assign to id_expression.
2974
a6cb161b 29752013-08-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
2976
2977 * c-pretty-print.h (c_pretty_printer::constant): Now a virtual
2978 member function.
2979 (pp_constant): Adjust.
2980 (pp_c_constant): Remove.
2981 * c-pretty-print.c (c_pretty_printer::constant): Rename from
2982 pp_c_constant. Adjust.
2983 (pp_c_constant)
2984 (pp_c_primary_expression): Call pp_constant in lieu of pp_c_constant.
2985 (c_pretty_printer::c_pretty_printer): Remove assignment to constant.
2986
eed6bc21 29872013-08-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
2988
2989 * c-pretty-print.h (pp_c_pretty_printer_init): Remove.
2990 (c_pretty_printer::c_pretty_printer): Declare.
2991 * c-pretty-print.c (pretty_printer::c_pretty_printer): Rename from
2992 c_pretty_printer_init. Adjust.
2993 (print_c_tree): Do not call c_pretty_printer_init.
2994 * c-ada-spec.c (dump_ads): Remove call to pp_construct.
2995
df558d2e 29962013-08-09 Arnaud Charlet <charlet@adacore.com>
2997
2998 * c-ada-spec.c (print_ada_declaration): Prevent accessing null asm name
2999
42f9a786 30002013-08-05 Paolo Carlini <paolo.carlini@oracle.com>
3001
3002 PR c++/58080
3003 * c-common.c (pointer_int_sum): Add bool parameter.
3004 * c-common.h (pointer_int_sum): Adjust declaration.
3005
f874ddad 30062013-08-05 Gabriel Dos Reis <gdr@integrable-solutions.net>
3007
3008 * c-pretty-print.c (print_c_tree): Simplify. Use non-static local
3009 c_pretty_printer variable.
3010
a94db6b0 30112013-08-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
3012
3013 * c-pretty-print.h (c_pretty_printer): Derive from pretty_printer.
3014 (pp_base): Remove.
3015 (pp_c_base): Likewise. Adjust users.
3016 * c-pretty-print.c (pp_c_maybe_whitespace): Adjust.
3017 (pp_c_whitespace): Do not call pp_base.
3018 (pp_c_left_paren): Likewise.
3019 (pp_c_right_paren): Likewise.
3020 (pp_c_left_brace): Likewise.
3021 (pp_c_right_brace): Likewise.
3022 (pp_c_left_bracket): Likewise.
3023 (pp_c_right_bracket): Likewise.
3024 (pp_c_dot): Likewise.
3025 (pp_c_ampersand): Likewise.
3026 (pp_c_star): Likewise.
3027 (pp_c_arrow): Likewise.
3028 (pp_c_semicolon): Likewise.
3029 (pp_c_complement): Likewise.
3030 (pp_c_exclamation): Likewise.
3031 (pp_c_direct_declarator): Likewise.
3032 (pp_c_ws_string): Likewise.
3033 (pp_c_identifier): Likewise.
3034 (pp_c_statement): Likewise.
3035 (print_c_tree): Likewise.
3036
1898176c 30372013-08-04 Ed Smith-Rowland <3dw4rd@verizon.net>
3038
3039 PR c++/58072
3040 * c-common.c (c_parse_error): Catch user-defined literal tokens and
3041 provide useful error strings.
3042
70d60d1d 30432013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
3044
3045 * c-ada-spec.c (pp_ada_tree_identifier): Use specialized pretty
3046 printer functions instead of pp_string or operators and punctuators.
3047 (dump_generic_ada_node): Likewise.
3048 * c-pretty-print.c (pp_c_type_specifier): Likewise.
3049 (pp_c_relational_expression): Likewise.
3050 (pp_c_logical_or_expression): Likewise.
3051
dda4f0ec 30522013-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
3053
3054 * c-ada-spec.c (print_ada_macros): Use specialized pretty printer
3055 functions instead of pp_character.
3056 (pp_ada_tree_identifier): Likewise.
3057 (dump_ada_double_name): Likewise.
3058 (dump_ada_function_declaration): Likewise.
3059 (dump_ada_array_domains): Likewise.
3060 (dump_template_types): Likewise.
3061 (dump_generic_ada_node): Likewise.
3062 (print_ada_declaration): Likewise.
3063 (print_ada_struct_decl): Likewise.
3064 * c-pretty-print.c (pp_c_integer_constant): Likewise.
3065
7aa04c8d 30662013-07-23 Tom Tromey <tromey@redhat.com>
3067
3068 * c-common.h (enum rid) <RID_GENERIC>: New constant.
3069 * c-common.c (c_common_reswords): Add _Generic.
3070
a04e8d62 30712013-07-21 OndÅ\99ej Bílka <neleai@seznam.cz>
3072
3073 * c-common.c: Fix typos.
3074 * c-common.h: Likewise.
3075
a96c3cc1 30762013-07-13 Lubos Lunak <l.lunak@suse.cz>
3077
3078 PR c++/55203
3079 * c-common.c (c_common_attribute_table): Add warn_unused.
3080 (handle_warn_unused_attribute): New.
3081
da31536d 30822013-07-10 Jakub Jelinek <jakub@redhat.com>
3083
3084 * c-ppoutput.c (scan_translation_unit): Call account_for_newlines
3085 for all CPP_TOKEN_FLD_STR tokens, not just CPP_COMMENT.
3086
839f2f70 30872013-07-10 Paolo Carlini <paolo.carlini@oracle.com>
3088
3089 PR c++/57869
3090 * c.opt: Add Wconditionally-supported.
3091
73f353d0 30922013-07-08 Graham Stott <graham.stott@btinternet.com>
3093
1f78217c 3094 * array-notation-common.c (length_mismatch_in_expr_p): Delete
73f353d0 3095 unused variables l_length and l_node.
3096
21ebaa24 30972013-07-04 Joern Rennecke <joern.rennecke@embecosm.com>
f5298614 3098
3099 PR c/57821
3100 * c-common.c (complete_array_type): Delay folding first index
3101 like other indices. When folding, check for index overflow.
3102
68ea4406 31032013-06-27 Marc Glisse <marc.glisse@inria.fr>
3104
3105 PR c++/57509
3106 * c-common.h (c_build_vec_perm_expr): New complain argument.
3107 * c-common.c (c_build_vec_perm_expr): Likewise.
3108 Use save_expr also in C++.
3109
60777f69 31102013-06-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
3111
3112 * c-common.c (c_common_nodes_and_builtins): Use cxx11 in lieu of cxx0x.
3113 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
3114 * c-opts.c (c_common_post_options): Likewise.
3115
839f2f70 31162013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
50acebe0 3117
3118 * array-notation-common.c (length_mismatch_in_expr): Changed the
3119 parameter type's from a dynamic array to a vec_tree. Also removed
3120 the size parameters.
3121 * c-common.h (length_mismatch_in_expr_p): Fixed prototype's as per
3122 the change above.
3123
e9331eab 31242013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
3125
3126 * c-common.h (struct cilkplus_an_parts): New structure.
3127 (struct cilkplus_an_loop_parts): Likewise.
3128 (cilkplus_extract_an_triplets): New prototype.
3129 (fix_sec_implicit_args): Likewise.
3130 * array-notation-common.c (cilkplus_extract_an_triplets): New function.
3131 (fix_sec_implicit_args): Likewise.
60777f69 3132
a9c99fc4 31332013-06-20 Balaji V. Iyer <balaji.v.iyer@intel.com>
3134
3135 * array-notation-common.c (find_inv_trees): Removed an unwanted
3136 typecasting.
3137 * c-common.h (struct inv_list::additional_tcodes): Changed type from
3138 enum rid to enum tree_code.
3139
f2526cce 31402013-06-11 Jan Hubicka <jh@suse.cz>
3141
3142 * c-common.c (handle_alias_ifunc_attribute): Do not set
3143 DECL_EXTERNAL for weakref variables.
3144 * c-pragma.c (handle_pragma_weak): Make sure aliases
3145 are not declared as external.
3146
09970d67 31472013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
3148
3149 * array-notation-common.c (length_mismatch_in_expr_p): Moved this
3150 function from c/c-array-notation.c.
3151 (is_cilkplus_reduce_builtin): Likewise.
3152 (find_rank): Likewise.
3153 (extract_array_notation_exprs): Likewise.
3154 (replace_array_notations): Likewise.
3155 (find_inv_trees): Likewise.
3156 (replace_inv_trees): Likewise.
3157 (contains_array_notation_expr): Likewise.
3158 (find_correct_array_notation_type): Likewise.
3159 * c-common.h (struct inv_list): Moved this struct from the file
3160 c/c-array-notation.c and added a new field called additional tcodes.
3161 (length_mismatch_in_expr_p): New prototype.
3162 (is_cilkplus_reduce_builtin): Likewise.
3163 (find_rank): Likewise.
3164 (extract_array_notation_exprs): Likewise.
3165 (replace_array_notation): Likewise.
3166 (find_inv_trees): Likewise.
3167 (replace_inv_trees): Likewise.
3168 (find_correct_array_notation_type): Likewise.
839f2f70 3169
3c6d4197 31702013-05-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
3171
3172 * c-common.c (c_define_builtins): When cilkplus is enabled, the
3173 function array_notation_init_builtins is called.
3174 (c_common_init_ts): Added ARRAY_NOTATION_REF as typed.
3175 * c-common.def (ARRAY_NOTATION_REF): New tree.
3176 * c-common.h (build_array_notation_expr): New function declaration.
3177 (build_array_notation_ref): Likewise.
3178 (extract_sec_implicit_index_arg): New extern declaration.
3179 (is_sec_implicit_index_fn): Likewise.
3180 (ARRAY_NOTATION_CHECK): New define.
3181 (ARRAY_NOTATION_ARRAY): Likewise.
3182 (ARRAY_NOTATION_START): Likewise.
3183 (ARRAY_NOTATION_LENGTH): Likewise.
3184 (ARRAY_NOTATION_STRIDE): Likewise.
3185 * c-pretty-print.c (pp_c_postifix_expression): Added a new case for
3186 ARRAY_NOTATION_REF.
3187 (pp_c_expression): Likewise.
3188 * c.opt (flag_enable_cilkplus): New flag.
3189 * array-notation-common.c: New file.
3190
8e71dad2 31912013-05-14 Jakub Jelinek <jakub@redhat.com>
3192
3193 PR c++/57274
3194 * c-common.c (verify_tree): Don't recurse into SIZEOF_EXPR.
3195
432dd330 31962013-05-10 Marc Glisse <marc.glisse@inria.fr>
3197
3198 * c-common.c (vector_types_convertible_p): No TYPE_PRECISION for
3199 vectors.
3200
b156ec37 32012013-05-07 Han Shen <shenhan@google.com>
3202
3203 * c-cppbuiltin.c (c_cpp_builtins): Added "__SSP_STRONG__=3".
3204
1a087624 32052013-04-29 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
3206
3207 * c-common.c (check_user_alignment): Emit error for negative values.
3208
1638c736 32092013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
3210
3211 * c-opts.c (set_std_cxx11): Use CLK_CXX1Y and CLK_GNUCXX1Y.
3212
949dbf93 32132013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
3214
3215 * c-cppbuiltin.c (c_cpp_builtins): Do not define
3216 __GXX_EXPERIMENTAL_CXX1Y__.
3217
9205a6cc 32182013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
3219 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
3220
3221 * c.opt ([Wpointer-arith]): Enabled by -Wpedantic, as documented.
3222 * c-common.c (pointer_int_sum): Change -Wpointer-arith pedwarns
3223 to simply use OPT_Wpointer_arith.
3224 (c_sizeof_or_alignof_type): Likewise.
3225
05d0bce1 32262013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
3227
3228 * c-cppbuiltin.c (c_cpp_builtins): Define __GXX_EXPERIMENTAL_CXX1Y__.
3229
41609f8b 32302013-04-12 Jakub Jelinek <jakub@redhat.com>
3231
3232 * c-format.c (gcc_diag_char_table, gcc_tdiag_char_table,
3233 gcc_cdiag_char_table, gcc_cxxdiag_char_table): Add %r and %R format
3234 specifiers.
3235
c671dc4f 32362013-04-07 Steven Bosscher <steven@gcc.gnu.org>
3237
3238 * c-pragma.c (add_to_renaming_pragma_list): Fix leading comment.
3239
ba125576 32402013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
3241
3242 * c-common.c (pointer_int_sum): Remove dead code.
3243
9d3fa937 32442013-03-09 Richard Sandiford <rdsandiford@googlemail.com>
3245
3246 PR middle-end/56524
3247 * c-common.c (handle_optimize_attribute): Don't call
3248 save_optabs_if_changed.
3249
5ceebb21 32502013-03-05 Jakub Jelinek <jakub@redhat.com>
3251
3252 PR middle-end/56461
3253 * c-pch.c (pch_init): Free target_validity at the end.
3254
18eeed2b 32552013-03-04 Jakub Jelinek <jakub@redhat.com>
3256
3257 * c-pretty-print.c (pp_c_pretty_printer_init): Clear pp->flags.
3258
a9196da9 32592013-02-28 Konstantin Serebryany <konstantin.s.serebryany@gmail.com>
3260 Jakub Jelinek <jakub@redhat.com>
3261
3262 PR sanitizer/56454
3263 * c-common.c (handle_no_sanitize_address_attribute): New function.
3264 (c_common_attribute_table): Add no_sanitize_address attribute.
3265 (handle_no_address_safety_analysis_attribute): Add
3266 no_sanitize_address attribute, not no_address_safety_analysis
3267 attribute.
3268
15c27dda 32692013-02-18 Aldy Hernandez <aldyh@redhat.com>
08c7d04b 3270
3271 PR target/52555
3272 * c-common.c (handle_optimize_attribute): Call
3273 save_optabs_if_changed.
3274
19426fe1 32752013-02-18 Jakub Jelinek <jakub@redhat.com>
3276 Steven Bosscher <steven@gcc.gnu.org>
3277
3278 PR pch/54117
3279 * c-opts.c (c_common_post_options): If debug info is enabled
3280 and non-dwarf*, refuse to load PCH files and when writing PCH
3281 file warn.
3282
df936998 32832013-02-05 Jakub Jelinek <jakub@redhat.com>
3284
3285 PR middle-end/56167
3286 * c-common.c (handle_error_attribute): Fix condition.
3287
ae0c3984 32882013-01-30 Jakub Jelinek <jakub@redhat.com>
3289
3290 PR c++/55742
3291 * c-common.c (handle_target_attribute): Revert 2012-12-26 change.
3292
1c4973d7 32932013-01-18 Jason Merrill <jason@redhat.com>
3294
3295 PR target/54908
3296 * c.opt (-fextern-tls-init): New.
3297 * c-opts.c (c_common_post_options): Handle it.
3298
7c834436 32992013-01-09 Jakub Jelinek <jakub@redhat.com>
3300
3301 PR c/48418
3302 * c-common.c (c_fully_fold_internal): Warn for LSHIFT_EXPR and
3303 RSHIFT_EXPR, if orig_op1 isn't INTEGER_CST, op1 is INTEGER_CST
3304 and is either negative or bigger or equal to type precision
3305 of the first operand.
3306
5abaa10a 33072012-12-03 Marek Polacek <polacek@redhat.com>
3308
3309 PR c/55570
3310 * c-common.c (check_user_alignment): Swap order of tests,
3311 check TREE_CODE first.
3312
324ca377 33132012-11-29 Ed Smith-Rowland <3dw4rd@verizon.net>
3314
3315 PR c++/52654
3316 * c-common.h (overflow_type): New enum.
3317 (build_userdef_literal): Add overflow_type argument.
3318 (tree_userdef_literal): Add overflow_type.
3319 (USERDEF_LITERAL_OVERFLOW): New access macro.
3320 * c-common.c (build_userdef_literal): Add overflow_type
3321 argument.
3322 * c-lex.c (c_lex_with_flags): Add overflow_type to
3323 build_userdef_literal calls.
3324 (interpret_integer, interpret_float): Add overflow_type argument.
3325
b4c4a429 33262012-11-28 Richard Biener <rguenther@suse.de>
3327
3328 PR c/35634
3329 * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
3330 here and use a type with proper overflow behavior for types that would
3331 need to be promoted for the arithmetic.
3332
d413ffdd 33332012-11-23 Jakub Jelinek <jakub@redhat.com>
3334
3335 PR sanitizer/55435
3336 * c-common.c (handle_no_address_safety_analysis_attribute): New
3337 function.
3338 (c_common_attribute_table): Add no_address_safety_analysis.
3339
52bc861d 33402012-11-16 Simon Baldwin <simonb@google.com>
3341
3342 * c.opt: Add f[no-]canonical-system-headers.
3343 * c-opts.c (c_common_handle_option): Handle
3344 OPT_fcanonical_system_headers.
3345
2dd00636 33462012-11-09 Ed Smith-Rowland <3dw4rd@verizon.net>
3347
3348 PR c++/54413
3349 * c-opts.c (c_common_handle_option): Set new flags.
3350 * c.opt: Describe new flags.
3351
d4701f6c 33522012-11-09 Jason Merrill <jason@redhat.com>
3353
3354 * c.opt (Wabi-tag): New.
3355
72d65da9 33562012-11-09 Andi Kleen <ak@linux.intel.com>
3357
3358 PR 55139
3359 * c-common.c (get_atomic_generic_size): Mask with
3360 MEMMODEL_MASK
3361
77a357e3 33622012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
3363
3364 PR c/53063
3365 * c.opt (Wformat): Make it Alias Wformat=1.
3366 (Wformat-contains-nul,Wformat-extra-args,Wformat-nonliteral,
3367 Wformat-security,Wformat-y2k,Wformat-zero-length): Use
3368 LangEnabledBy.
3369 (Wformat=): RejectNegative. Use LangEnabledBy.
3370 (Wnonnull): Use LangEnabledBy.
3371 * c-opts.c (c_common_handle_option): Do not handle Wformat here.
3372 * c-format.c (set_Wformat): Delete.
3373 (decode_format_attr): Replace OPT_Wformat with OPT_Wformat_.
3374 (maybe_read_dollar_number): Likewise.
3375 (avoid_dollar_number): Likewise.
3376 (finish_dollar_format_checking): Likewise.
3377 (check_format_info): Likewise.
3378 (check_format_info_main): Likewise.
3379 (check_format_types): Likewise.
3380 (format_type_warning): Likewise.
3381 * c-common.c (int): Likewise.
3382 (check_function_sentinel): Likewise.
3383 * c-common.h (warn_format,set_Wformat): Do not declare here.
3384
45efa6b9 33852012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
3386
3387 PR c/53063
3388 * c.opt(Warray-bounds,Wdelete-non-virtual-dtor,Wenum-compare,
3389 Wmain,Woverlength-strings, Wunknown-pragmas,Wunused-macros):
3390 Use LangEnabledBy.
3391 (Wswitch,Wswitch-default,Wswitch-enum): Likewise. Move here from
3392 common.opt.
3393 (Wvariadic-macros): Init(1).
3394 * c-opts.c (c_common_handle_option): Do not handle them
3395 explicitly.
3396 (c_common_post_options): Likewise.
3397 (sanitize_cpp_opts): warn_unused_macros is now
3398 cpp_warn_unused_macros.
3399 (push_command_line_include): Likewise.
3400 * c-common.c (warn_unknown_pragmas): Do not define.
3401 * c-common.h (warn_unknown_pragmas): Do not declare.
3402
0e4e775a 34032012-11-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
3404
3405 PR c/51294
3406 * c-common.c (conversion_warning): Handle conditional expressions.
3407
8b447d3f 34082012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
3409
3410 PR c++/54930
3411 * c.opt (Wreturn_local_addr): Define new option.
3412
f4a61754 34132012-10-25 Jason Merrill <jason@redhat.com>
3414
ecb10e6a 3415 * c.opt (Wvirtual-move-assign): New.
3416
f4a61754 3417 * c.opt (Winherited-variadic-ctor): New.
3418
7b463b19 34192012-10-25 Marc Glisse <marc.glisse@inria.fr>
3420
3421 PR c++/54427
3422 * c-common.c (scalar_to_vector): Handle VEC_COND_EXPR.
3423
6adc88f8 34242012-10-23 Joseph Myers <joseph@codesourcery.com>
3425
3426 * c-common.h (pch_cpp_save_state): Declare.
3427 * c-target.def (c_preinclude): New hook.
3428 * c-opts.c (done_preinclude): New.
3429 (push_command_line_include): Handle default preincluded header.
3430 (cb_file_change): Call pch_cpp_save_state when calling
3431 push_command_line_include.
3432 * c-pch.c (pch_ready_to_save_cpp_state, pch_cpp_state_saved)
3433 (pch_cpp_save_state): New.
3434 (pch_init): Call pch_cpp_save_state conditionally, instead of
3435 calling cpp_save_state.
3436
fa816b0b 34372012-10-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
3438
3439 PR c/53063
3440 PR c/40989
3441 * c.opt (Waddress,Wchar-subscripts,Wsign-conversion,Wimplicit,
3442 Wimplicit-function-declaration,Wimplicit-int,Wsizeof-pointer-memaccess,
3443 Wnarrowing,Wparentheses,Wpointer-sign,Wreturn-type,Wsequence-point,
3444 Wsign-compare,Wuninitialized,Wmaybe-uninitialized,Wunused,
3445 Wvolatile-register-var): Add LangEnabledBy or EnabledBy.
3446 * c-opts.c (c_common_handle_option): Remove explicit handling from
3447 here.
3448 (c_common_post_options): Likewise.
3449
d214ccee 34502012-10-18 Eric Botcazou <ebotcazou@adacore.com>
3451
3452 * c-ada-spec.c (LOCATION_COL): Delete.
3453 (compare_location): New function.
3454 (compare_node): Use it.
3455 (compare_comment): Likewise.
3456
77b27208 34572012-10-16 Manuel López-Ibáñez <manu@gcc.gnu.org>
3458
3459 PR c/53063
3460 PR c/40989
3461 * c.opt (Wstrict-aliasing=,Wstrict-overflow=): Use LangEnabledBy.
3462 * c-opts.c (c_common_handle_option): Do not set them here. Add
3463 comment.
3464 (c_common_post_options): Likewise.
3465
cc02ca4d 34662012-10-16 Eric Botcazou <ebotcazou@adacore.com>
3467
3468 * c-ada-spec.c (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Define.
3469 (dump_generic_ada_node) <INTEGER_CST>: Deal with sizetype specially.
3470 Remove POINTER_TYPE handling, add large unsigned handling and use
3471 ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX for big numbers.
3472
57f872a2 34732012-10-12 Jakub Jelinek <jakub@redhat.com>
3474
3475 PR c/54381
3476 * c-common.h (sizeof_pointer_memaccess_warning): Adjust prototype.
3477 * c-common.c (sizeof_pointer_memaccess_warning): Take array of 3
3478 locs and array of 3 trees instead of just single loc and single
3479 sizeof_arg tree. Handle __builtin___*_chk builtins too, and
3480 also stpncpy, bcopy, bcmp, bzero, snprintf and vsnprintf builtins.
3481 For *cmp* builtins that take two sources strings report warnings
3482 about first and second source, not about destination and source.
3483
7354ad2e 34842012-10-12 Marc Glisse <marc.glisse@inria.fr>
3485
3486 PR c++/53055
3487 * c-common.h (enum ref_operator) [RO_ARROW_STAR]: New.
3488
1ac7f120 34892012-10-11 Eric Botcazou <ebotcazou@adacore.com>
3490
3491 * c-ada-spec.c (dump_ada_template): Bail out for template declarations
3492 declaring something coming from another file.
3493
1e0cc9e3 34942012-10-10 Arnaud Charlet <charlet@adacore.com>
3495
1ac7f120 3496 PR ada/54845
1e0cc9e3 3497 * c-ada-spec.c (print_ada_struct_decl): Increase buf size.
3498
b0e7825e 34992012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
3500
3501 PR c++/54194
3502 * c-common.c (warn_about_parentheses): Add location_t parameter;
3503 use EXPR_LOC_OR_LOC.
3504 * c-common.h: Update declaration.
3505
41ed701a 35062012-10-09 Marc Glisse <marc.glisse@inria.fr>
3507
3508 PR c++/54427
3509 * c-common.c (scalar_to_vector): Moved from c-typeck.c. Support
3510 more operations. Make error messages optional.
3511 * c-common.h (enum stv_conv): Moved from c-typeck.c.
3512 (scalar_to_vector): Declare.
3513
3740094c 35142012-10-08 Jason Merrill <jason@redhat.com>
3515
3516 * c-common.c (c_common_reswords): Add thread_local.
3517
ffcdbf9c 35182012-10-08 Dodji Seketeli <dodji@redhat.com>
3519
3520 PR c++/53528 C++11 attribute support
3521 * c-common.h (bitfield_p, cxx_fundamental_alignment_p): Declare
3522 new functions.
3523 * c-common.c (check_cxx_fundamental_alignment_constraints): New
3524 static function.
3525 (handle_aligned_attribute): In choose strictest alignment
3526 among many. Use new check_cxx_fundamental_alignment_constraints.
3527 (handle_transparent_union_attribute): In c++11 attribute syntax,
3528 don't look through typedefs.
3529
ef34afc1 35302012-10-04 Arnaud Charlet <charlet@adacore.com>
3531
3532 * c-ada-spec.c (print_ada_declaration): Remove handling of TDF_RAW.
3533 * c.opt (-fdump-ada-spec, -fdump-ada-spec-slim): Move switch definition
3534 out of dumpfile.h.
3535
f1ff4562 35362012-09-25 Dehao Chen <dehao@google.com>
3537
3538 PR middle-end/54645
ef34afc1 3539 * c-pch.c (c_common_read_pch): Rebuild the location_adhoc_data
f1ff4562 3540 map when read in the pch.
3541
735538a1 35422012-09-18 Arnaud Charlet <charlet@adacore.com>
3543
3544 * c-ada-spec.c: Style fixes.
3545
9120cdc8 35462012-09-18 Thomas Quinot <quinot@adacore.com>
3547
3548 * c.opt (-fada-spec-parent): Define new command line switch.
3549 * c-ada-spec.c (get_ada_package): When -fada-spec-parent
3550 is specified, generate binding spec as a child of the specified unit.
3551
8eba82c2 35522012-09-13 Paolo Carlini <paolo.carlini@oracle.com>
3553 Manuel López-Ibáñez <manu@gcc.gnu.org>
3554
3555 PR c++/53210
3556 * c.opt ([Winit-self]): Enabled by -Wall in C++.
3557
38682990 35582012-08-23 Arnaud Charlet <charlet@adacore.com>
3559
3560 * c-ada-spec.c (dump_generic_ada_node): Fix handling of name_only
3561 for pointers, and add missing Convention C pragma.
3562 (print_ada_struct_decl): Add missing aliased keyword.
3563 (dump_ads): Add pragma Ada_2005 and Style_Checks (Off).
3564
f003f5dc 35652012-08-17 Jakub Jelinek <jakub@redhat.com>
3566
3567 * c-common.c (sizeof_pointer_memaccess_warning): New function.
3568 * c.opt (-Wsizeof-pointer-memaccess): Add new option.
3569 * c-opts.c (c_common_handle_option): Enable it for -Wall.
3570 * c-common.h (sizeof_pointer_memaccess_warning): Add prototype.
3571 * c-common.def (SIZEOF_EXPR): Moved here from cp-tree.def.
3572
ec11736b 35732012-08-10 Richard Guenther <rguenther@suse.de>
3574
3575 * c-pretty-print.c (pp_c_expression): Handle anonymous SSA names.
3576
5f7f600e 35772012-08-07 Steven Bosscher <steven@gcc.gnu.org>
3578
3579 * c-pretty-print.c (pp_c_function_definition): Use pp_newline_and_flush
3580 instead of separate pp_newline and pp_flush.
3581 (print_c_tree): Likewise.
3582
758a38ab 35832012-07-26 Richard Henderson <rth@redhat.com>
3584
3585 * c-common.c (handle_hot_attribute): Allow labels.
3586 (handle_cold_attribute): Likewise.
3587
9ca77b08 35882012-07-20 Jakub Jelinek <jakub@redhat.com>
3589
3590 PR c++/28656
3591 * c-common.c (check_function_nonnull): Handle multiple nonnull
3592 attributes properly.
3593
b9ed1410 35942012-07-16 Steven Bosscher <steven@gcc.gnu.org>
3595
3596 * c-gimplify.c: Include dumpfile.h instead of tree-dump.h.
3597 * c-ada-spec.c: Likewise.
3598 * c-dump.c (dump_stmt): Move to cp/dump.c, the only user.
3599
c2a65b90 36002012-07-14 Steven Bosscher <steven@gcc.gnu.org>
3601
3602 * c-pch.c (CHECK_NO_ASM_OUT_DURING_PCH): Do not define.
3603 Remove code conditional on it.
3604
88c5a1d1 36052012-07-11 Steven Bosscher <steven@gcc.gnu.org>
3606
3607 * c-gimplify.c: Do not include basic-block.h.
3608 * c-common.c: Do not include linfuncs.h.
3609
4a020a8c 36102012-07-08 Steven Bosscher <steven@gcc.gnu.org>
3611
3612 * c-common.h: Include tree.h.
3613
c28ddc97 36142012-07-02 Jason Merrill <jason@redhat.com>
3615
3616 PR c++/53524
3617 * c-common.c (get_priority): Call default_conversion.
3618
405ed67f 36192012-07-01 Uros Bizjak <ubizjak@gmail.com>
3620
3621 * c-pch.c (c_common_write_pch): Remove unused variables.
3622
e53d55e7 36232012-06-29 Steven Bosscher <steven@gcc.gnu.org>
3624
3625 * cppspec.c: Moved from gcc/ to here.
3626
3d9c25ec 36272012-06-27 Kai Tietz <ktietz@redhat.com>
3628
3629 PR preprocessor/37215
3630 * c-ppoutput.c (preprocess_file): Check for nonempty buffer.
3631
3169c57a 36322012-06-21 Steven Bosscher <steven@gcc.gnu.org>
3633
3634 * c-common.h (c_common_print_pch_checksum): Remove.
3635 * c-pch.c: Do not include output.h.
3636 (CHECK_NO_ASM_OUT_DURING_PCH): Define and add FIXME.
3637 (asm_out_file): Define iff CHECK_NO_ASM_OUT_DURING_PCH isdefined.
3638 (asm_file_startpos): Define iff CHECK_NO_ASM_OUT_DURING_PCH is defined.
3639 (struct c_pch_header): Remove.
3640 (get_ident): Update gpch version.
3641 (pch_init): Do not print executable_checksum to asm_out_file.
3642 Do not fail if there is no asm_out_file to read back from. Set
3643 asm_file_startpos only if CHECK_NO_ASM_OUT_DURING_PCH is defined.
3644 (c_common_write_pch): Verify that nothing was written to asm_out_file
3645 since pch_init was called. Do not write a c_pch_header, and do not
3646 copy from asm_out_file to the PCH.
3647 (c_common_read_pch): Do not read a c_pch_header, and do not restore
3648 the content of asm_out_file from the PCH.
3649 (c_common_print_pch_checksum): Remove.
3650 * c-opts.c (c_common_init): Print out executable_checksum directly.
3651
ff6624bc 36522012-06-19 Steven Bosscher <steven@gcc.gnu.org>
3653
3654 * c-target.def (objc_declare_unresolved_class_reference,
3655 objc_declare_class_definition): Add new hooks.
3656
367b1459 36572012-06-19 Steven Bosscher <steven@gcc.gnu.org>
3658
3659 * c-lex.c: Do not include output.h.
3660 (cb_ident): Try to put out .ident with targetm.asm_out.output_ident.
3661 Remove uses of ASM_OUTPUT_IDENT.
3662
bf0cb017 36632012-06-15 Marc Glisse <marc.glisse@inria.fr>
3664
3665 PR c++/51033
3666 * c-common.h (c_build_vec_perm_expr): Move decl here.
3667 * c-common.c (c_build_vec_perm_expr): Move definition
3668 here.
3669
b37a3600 36702012-06-06 Steven Bosscher <steven@gcc.gnu.org>
3671
3672 * c.opt (fconserve-space): Turn into a no-op.
3673
19931eea 36742012-06-04 Sterling Augustine <saugustine@google.com>
5f9e7dd5 3675
3676 * c-pretty-print.h (pp_c_flag_gnu_v3): New enumerator.
3677 * c-pretty-print.c (pp_c_specifier_qualifier_list): Check it at
3678 both the start and end of the function.
3679
dff12c10 36802012-06-04 Steven Bosscher <steven@gcc.gnu.org>
3681
3682 * c-common.c: Do not include output.h.
3683 * c-pragma.c: Likewise.
3684
5f9e7dd5 36852012-06-04 Steven Bosscher <steven@gcc.gnu.org>
3686
3687 * error.c (dump_decl): Check pp_c_flag_gnu_v3.
3688 (decl_as_dwarf_string, lang_decl_dwarf_name): New functions.
3689 (lang_decl_name): Handle namespace decls.
3690
b5369b7d 36912012-05-31 Steven Bosscher <steven@gcc.gnu.org>
3692
3693 * c-ada-spec.c: Do not include output.h.
3694 * c-semantics.c: Likewise.
3695
8032877c 36962012-05-29 Joseph Myers <joseph@codesourcery.com>
3697
3698 * c-common.c: Fix typo.
3699
7843e4bc 37002012-05-29 Michael Matz <matz@suse.de>
3701
3702 * c-common.h (c_expand_decl): Remove prototype.
3703
8cf857d4 37042012-05-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
3705
3706 * c.opt (Wmissing-braces): Use LangEnabledBy(C ObjC,Wall).
3707 * c-opts.c (c_common_handle_option): Remove code handling
3708 warn_missing_braces.
3709
8b64dc3c 37102012-05-28 Paolo Carlini <paolo.carlini@oracle.com>
3711
3712 PR c++/25137
3713 * c-opts.c (c_common_handle_option): For C++ -Wall doesn't enable
3714 -Wmissing_braces.
3715
43cbde16 37162012-05-22 Dodji Seketeli <dodji@redhat.com>
3717
3718 PR c++/53322
3719 * c.opt (Wunused-local-typedefs): Use EnabledBy(Wunused).
3720
db490cb6 37212012-05-17 Manuel López-Ibáñez <manu@gcc.gnu.org>
3722
3723 * c.opt (--pedantic-errors,-pedantic-errors): Do not handle here.
3724 * c-opts.c (c_common_handle_option): Do not handle explicitly
3725 Wreturn-type, Wwrite-strings, warn_ecpp, and -pedantic-errors.
3726
a60f3e81 37272012-05-16 Dodji Seketeli <dodji@redhat.com>
3728
3729 PR preprocessor/7263
3730 * c-lex.c (c_lex_with_flags): Pass a virtual location to the call
3731 to cpp_classify_number. For diagnostics, use the precise location
3732 instead of the global input_location.
3733
82e6ef7c 37342012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
3735
cd4797ff 3736 PR c++/11856
82e6ef7c 3737 * c-common.c (shorten_compare): Check c_inhibit_evaluation_warnings.
3738
258a168d 37392012-05-14 Bernd Schmidt <bernds@codesourcery.com>
3740
82e6ef7c 3741 * c-common.c (DEF_ATTR_STRING): Define and undefine as necessary.
258a168d 3742
d3b7ee7c 37432012-05-14 Manuel López-Ibáñez <manu@gcc.gnu.org>
3744
3745 PR 53063
3746 * c.opt (Wc++0X-compat,Wdelete-non-virtual-dtor,Wjump-misses-init,
3747 Wreorder): Use LangEnabledBy.
3748 * c-opts.c (c_common_handle_option): Do not enable them
3749 explicitly. Call lang-specific generated functions.
3750 (c_common_post_options): Do not set them here.
3751
70059cea 37522012-05-13 Manuel López-Ibáñez <manu@gcc.gnu.org>
3753
3754 * c.opt (Wclobbered,Wempty-body,Wignored-qualifiers,
3755 Wmissing-field-initializers,Wmissing-parameter-type,
3756 Wold-style-declaration,Woverride-init): Use EnabledBy.
3757 * c-opts.c (c_common_post_options): Do not set here explicitly.
3758
fbb6fbd8 37592012-05-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
3760
3761 PR 53063
3762 * c-opts.c (c_common_handle_option): Use handle_generated_option
3763 to enable sub-options.
3764
61f69bc9 37652012-05-10 Paolo Carlini <paolo.carlini@oracle.com>
3766
3767 PR c++/53158
3768 * c-common.c (warnings_for_convert_and_check): Use warning_at.
3769
5a1fe2db 37702012-05-10 Richard Guenther <rguenther@suse.de>
3771
3772 * c-common.c (c_sizeof_or_alignof_type): Remove assert and
3773 adjust commentary about TYPE_IS_SIZETYPE types.
3774
d42e7c5a 37752012-05-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
3776
3777 PR c++/53261
3778 * c-common.c (warn_logical_operator): Check that argument of
3779 integer_zerop is not NULL.
3780
686369e8 37812012-05-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
3782
3783 PR c/43772
3784 * c-common.c (warn_logical_operator): Do not warn if either side
3785 is already true or false.
3786
03fe1dc2 37872012-05-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
3788
3789 PR c/51712
3790 * c-common.c (expr_original_type): New.
3791 (shorten_compare): Do not warn for enumeration types.
3792
bba5a206 37932012-05-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
3794
3795 * c.opt (fpermissive): Add Var(flag_permissive).
3796
7059d45d 37972012-04-30 Marc Glisse <marc.glisse@inria.fr>
3798
3799 PR c++/51033
3800 * c-common.c (convert_vector_to_pointer_for_subscript): New function.
3801 * c-common.h (convert_vector_to_pointer_for_subscript): Declare it.
3802
7edb1062 38032012-04-30 Dodji Seketeli <dodji@redhat.com>
3804
3805 Add -Wvarargs option
3806 * c.opt (Wvarargs): Define new option.
3807
068bea1e 38082012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
3809
3810 * c-common.c (check_function_arguments): Replace
3811 Wmissing-format-attribute with Wsuggest-attribute=format.
3812
b86527d8 38132012-04-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
3814
3815 * c.opt (Wsuggest-attribute=format): New. Alias of
3816 Wmissing-format-attribute.
3817 * c-format.c (decode_format_type): Replace
3818 Wmissing-format-attribute with Wsuggest-attribute=format.
3819 (check_function_format): Likewise.
3820
19931eea 38212012-04-27 Ollie Wild <aaw@google.com>
76d340ac 3822
3823 * c-common.c: Add CPP_W_LITERAL_SUFFIX mapping.
3824 * c-opts.c (c_common_handle_option): Handle OPT_Wliteral_suffix.
3825 * c.opt: Add Wliteral-suffix.
3826
29438999 38272012-04-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
3828
3829 PR c/44774
3830 * c.opt (Wpedantic): New.
3831 (pedantic): Alias Wpedantic.
3832 * c-opts.c (c_common_handle_option): Replace -pedantic with -Wpedantic.
3833 (c_common_post_options): Likewise.
3834 (sanitize_cpp_opts): Likewise.
3835 * c-lex.c (interpret_float): Likewise.
3836 * c-format.c (check_format_types): Likewise.
3837 * c-common.c (pointer_int_sum): Likewise.
3838 (c_sizeof_or_alignof_type): Likewise.
3839 (c_add_case_label): Likewise.
3840 (c_do_switch_warnings): Likewise.
3841 * c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
3842
4f9d6b8b 38432012-04-15 Jason Merrill <jason@redhat.com>
3844
3845 PR c++/52818
3846 * c-format.c (CPLUSPLUS_STD_VER): C++11 inherits from C99.
3847 (C_STD_NAME): Distinguish between C++98 and C++11.
3848
74bdbe96 38492012-04-11 Eric Botcazou <ebotcazou@adacore.com>
3850
3851 PR target/52624
3852 * c-common.h (uint16_type_node): Rename into...
3853 (c_uint16_type_node): ...this.
3854 * c-common.c (c_common_nodes_and_builtins): Adjust for above renaming.
3855 * c-cppbuiltin.c (builtin_define_stdint_macros): Likewise.
3856
3d177e8c 38572012-04-10 Manuel López-Ibáñez <manu@gcc.gnu.org>
3858
3859 * c-common.c (warn_if_unused_value): Move definition to here.
3860 * c-common.h (warn_if_unused_value): Move declaration to here.
3861
6a9a958f 38622012-03-23 William Bader <williambader@hotmail.com>
3863
3864 * c-lex.c (c_lex_with_flags): Avoid declarations after stmts.
3865
543efdbe 38662012-03-20 Jason Merrill <jason@redhat.com>
3867
3868 * c-common.h (enum cxx_dialect): Add cxx1y.
3869 * c-common.c (c_common_nodes_and_builtins): Use >= for cxx_dialect
3870 test.
3871 * c-cppbuiltin.c (c_cpp_builtins): Likewise.
3872 * c-opts.c (c_common_post_options): Likewise.
3873 (set_std_cxx1y): New.
3874 (c_common_handle_option): Call it.
3875 * c.opt (-std=c++1y, -std=gnu++1y): New flags.
3876
62206d34 38772012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
3878
3879 PR c++/14710
3880 * c.opt ([Wuseless-cast]): Add.
3881
fadf62f4 38822012-03-16 Richard Guenther <rguenther@suse.de>
3883
3884 * c-pretty-print.c (pp_c_initializer_list): Adjust.
3885
249faa35 38862012-03-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
3887
3888 PR c++/44783
3889 * c.opt (ftemplate-backtrace-limit) Add.
3890
126b6848 38912012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3892
3893 * c-cppbuiltin.c (c_cpp_builtins): Remove #pragma extern_prefix
3894 handling.
3895 * c-pragma.c (handle_pragma_extern_prefix): Remove.
3896 (init_pragma): Don't register extern_prefix.
3897
a51edb4c 38982012-03-12 Richard Guenther <rguenther@suse.de>
3899
3900 * c-common.c (c_common_get_narrower): Use c_common_type_for_size.
3901 (builtin_type_for_size): Likewise.
3902
0f6a7cb7 39032012-02-13 Jakub Jelinek <jakub@redhat.com>
3904
3905 PR c++/52215
3906 * c-common.c (sync_resolve_params): Don't decide whether to convert
3907 or not based on TYPE_SIZE comparison, convert whenever arg_type
3908 is unsigned INTEGER_TYPE.
3909
0779e32c 39102012-02-06 Paolo Carlini <paolo.carlini@oracle.com>
3911
3912 PR c/52118
3913 * c.opt ([Wunused-local-typedefs]): Fix description.
3914
baec58e1 39152012-01-24 Mike Stump <mikestump@comcast.net>
3916
3917 * c-common.c (c_common_type_for_mode): Match signed/unsigned types
3918 exactly.
3919
c779d8cc 39202012-01-18 Richard Guenther <rguenther@suse.de>
3921
3922 * c-opts.c (c_common_post_options): Reset LTO flags if
3923 we are about to generate a PCH.
3924
ee917d24 39252012-01-17 Paolo Carlini <paolo.carlini@oracle.com>
3926
3927 PR c++/51777
3928 * c-pretty-print.c (pp_c_integer_constant): For unsigned constants
3929 use pp_unsigned_wide_integer.
3930
90e2341f 39312012-01-10 Richard Guenther <rguenther@suse.de>
3932
3933 PR middle-end/51806
3934 * c-opts.c (c_common_handle_option): Move -Werror handling
3935 to language independent code.
3936
9ea022ce 39372012-01-05 Richard Guenther <rguenther@suse.de>
3938
3939 PR middle-end/51764
3940 * c.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move here
3941 from common.opt.
3942
3df19e1b 39432011-12-30 Paolo Carlini <paolo.carlini@oracle.com>
3944
3945 PR c++/51316
3946 * c-common.c (c_sizeof_or_alignof_type): In C++ allow for alignof
3947 of array types with an unknown bound.
3948
32074525 39492011-12-20 Joseph Myers <joseph@codesourcery.com>
3950
3951 * c-common.c (flag_isoc99): Update comment to refer to C11.
3952 (flag_isoc1x): Change to flag_isoc11.
3953 * c-common.h (flag_isoc99): Update comment to refer to C11.
3954 (flag_isoc1x): Change to flag_isoc11.
3955 * c-cppbuiltin.c (cpp_atomic_builtins): Change comment to refer to
3956 C11.
3957 * c-opts.c (set_std_c1x): Change to set_std_c11.
3958 (c_common_handle_option): Handle OPT_std_c11 and OPT_std_gnu11.
3959 Call set_std_c11.
3960 (set_std_c89, set_std_c99, set_std_c11): Use flag_isoc11.
3961 (set_std_c1): Use CLK_STDC11 and CLK_GNUC11.
3962 * c.opt (std=c1x): Change to std=c11. Document as non-draft
3963 standard.
3964 (std=c1x, std=iso9899:2011): Add as aliases of std=c11.
3965 (std=gnu1x): Change to std=gnu11. Refer to non-draft standard.
3966 (std=gnu1x): Make alias of std=gnu11.
3967
fca86134 39682011-12-19 Jason Merrill <jason@redhat.com>
3969
3970 PR c++/51228
3971 * c-common.c (handle_transparent_union_attribute): Check the first
3972 field if the type is complete.
3973
aa4313eb 39742011-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
3975
3976 PR libstdc++/51365
3977 * c-common.c (RID_IS_FINAL): Add.
3978 * c-common.h (RID_IS_FINAL): Add.
3979
3f3d5ad4 39802011-11-30 Iain Sandoe <iains@gcc.gnu.org>
3981
3982 * c.opt (fgnu-runtime): Provide full description.
3983 (fnext-runtime): Likewise.
3984 * c-opts.c (OPT_fgnu_runtime, OPT_fnext_runtime) Remove.
3985
c4606d19 39862011-11-28 Andrew MacLeod <amacleod@redhat.com>
3987
3988 * c-cpp-builtin.c (cpp_atomic_builtins):New. Emit all atomic
3989 predefines in one place. Add LOCK_FREE predefines.
3990 (c_cpp_builtins): Move Legacy HAVE_SYNC predefines to
3991 new func.
3992
1d581089 39932011-11-24 Andrew MacLeod <amacleod@redhat.com>
3994
3995 PR c/51256
19931eea 3996 * c-common.c (get_atomic_generic_size): Check for various error
1d581089 3997 conditions
19931eea 3998 (resolve_overloaded_atomic_exchange,
3999 resolve_overloaded_atomic_compare_exchange,
1d581089 4000 resolve_overloaded_atomic_load, resolve_overloaded_atomic_store): Return
4001 error_mark_node for error conditions.
19931eea 4002
6aa221fa 40032011-11-08 Richard Guenther <rguenther@suse.de>
4004
4005 PR middle-end/51010
4006 c-family/
4007
4c0315d0 40082011-11-07 Richard Henderson <rth@redhat.com>
4009 Aldy Hernandez <aldyh@redhat.com>
4010 Torvald Riegel <triegel@redhat.com>
4011
4012 Merged from transactional-memory.
4013
4014 * c-common.c (handle_tm_wrap_attribute,
4015 handle_tm_attribute, ignore_attribute, parse_tm_stmt_attr): New.
4016 (struct c_common_reswords): Added __transaction* keywords.
4017 (struct c_common_attribute_table): Added transaction* and tm_regparm
4018 attributes.
4019 * c-common.h: Added RID_TRANSACTION*. Added TM_ATTR* and TM_STMT*
4020 masks.
4021 (parse_tm_stmt_attr, tm_attr_to_mask, tm_mask_to_attr,
4022 find_tm_attribute): Declare.
4023
920f5a70 40242011-11-07 Jason Merrill <jason@redhat.com>
4025
4026 PR c++/35688
4027 * c-common.c, c-common.h: Revert yesterday's changes.
4028
b4f861b4 40292011-11-06 Jason Merrill <jason@redhat.com>
4030
4031 PR c++/35688
4032 * c-common.c (decl_has_visibility_attr): Split out from...
4033 (c_determine_visibility): ...here.
4034 * c-common.h: Declare it.
4035
83e25171 40362011-11-06 Joseph Myers <joseph@codesourcery.com>
4037
4038 * c-common.c (c_common_reswords): Add _Alignas and _Alignof.
4039 (c_sizeof_or_alignof_type): Diagnose alignof applied to a function
4040 type.
4041 (check_user_alignment): New. Split out of
4042 handle_aligned_attribute. Disallow integer constants with
4043 noninteger types. Conditionally allow zero.
4044 (handle_aligned_attribute): Use check_user_alignment.
4045 * c-common.h (RID_ALIGNAS, check_user_alignment): New.
4046
1cd6e20d 40472011-11-06 Andrew MacLeod <amacleod@redhat.com>
4048 Richard Henderson <rth@redhat.com>
4049
4050 Merged from cxx-mem-model.
4051
4052 * c-cppbuiltin.c (c_cpp_builtins): Test both atomic and sync patterns.
19931eea 4053 * c-common.c (sync_resolve_params, sync_resolve_return): Only tweak
1cd6e20d 4054 parameters that are the same type size.
4055 (get_atomic_generic_size): New. Find size of generic
4056 atomic function parameters and do typechecking.
4057 (add_atomic_size_parameter): New. Insert size into parameter list.
4058 (resolve_overloaded_atomic_exchange): Restructure __atomic_exchange to
4059 either __atomic_exchange_n or external library call.
19931eea 4060 (resolve_overloaded_atomic_compare_exchange): Restructure
1cd6e20d 4061 __atomic_compare_exchange to either _n variant or external library call.
19931eea 4062 (resolve_overloaded_atomic_load): Restructure __atomic_load to either
1cd6e20d 4063 __atomic_load_n or an external library call.
4064 (resolve_overloaded_atomic_store): Restructure __atomic_store to either
4065 __atomic_store_n or an external library call.
4066 (resolve_overloaded_builtin): Handle new __atomic builtins.
4067
7549df0d 40682011-11-04 Eric Botcazou <ebotcazou@adacore.com>
4069
4070 PR c++/50608
4071 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1.
4072 (fold_offsetof_1): Make global. Remove STOP_REF argument and adjust.
4073 <INDIRECT_REF>: Return the argument.
4074 <ARRAY_REF>: Remove special code for negative offset.
4075 Call fold_build_pointer_plus instead of size_binop.
4076 (fold_offsetof): Remove STOP_REF argument and adjust.
4077 * c-common.h (fold_offsetof_1): Declare.
4078 (fold_offsetof): Remove STOP_REF argument.
4079
7e783eb3 40802011-11-02 Paolo Carlini <paolo.carlini@oracle.com>
4081
4082 PR c++/50810
4083 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
4084 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
4085 Wnarrowing for C++0x and C++98.
4086 * c.opt ([Wnarrowing]): Update.
4087
8fe701f5 40882011-11-01 Paolo Carlini <paolo.carlini@oracle.com>
4089
4090 PR c++/44277
4091 * c.opt: Add Wzero-as-null-pointer-constant.
4092
0d84dc2d 40932011-10-31 Jason Merrill <jason@redhat.com>
4094
67031f52 4095 * c.opt (-fdeduce-init-list): Off by default.
4096
0d84dc2d 4097 PR c++/50920
4098 * c-common.h (cxx_dialect): Add cxx11 and cxx03.
4099 * c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03,
4100 and -Wc++11-compat.
4101 * c-opts.c (set_std_cxx11): Rename from set_std_cxx0x.
4102
66f24c41 41032011-10-27 Roberto Agostino Vitillo <ravitillo@lbl.gov>
4104
4105 PR c++/30066
4106 * c.opt (fvisibility-inlines-hidden): Description change.
4107
244db24d 41082011-10-26 Ed Smith-Rowland <3dw4rd@verizon.net>
4109
4110 Implement C++11 user-defined literals.
4111 * c-common.c (build_userdef_literal): New.
4112 * c-common.def: New tree code.
4113 * c-common.h (tree_userdef_literal): New tree struct and accessors.
4114 * c-lex.c (interpret_float): Add suffix parm.
4115 (c_lex_with_flags): Build literal tokens.
4116
235be70f 41172011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
4118
4119 PR c++/50841
4120 Revert:
4121 2011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
4122
4123 PR c++/50810
4124 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
4125 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
4126 Wnarrowing for C++0x and C++98.
4127 * c.opt ([Wnarrowing]): Update.
4128
4fe0fb1c 41292011-10-23 Paolo Carlini <paolo.carlini@oracle.com>
4130
4131 PR c++/50810
4132 * c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
4133 of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
4134 Wnarrowing for C++0x and C++98.
4135 * c.opt ([Wnarrowing]): Update.
4136
5f7504f9 41372011-10-21 Paolo Carlini <paolo.carlini@oracle.com>
4138
4139 PR c++/45385
4140 * c-common.c (conversion_warning): Remove code looking for
4141 artificial operands.
4142
2a688977 41432011-10-18 Dodji Seketeli <dodji@redhat.com>
4144
4145 PR bootstrap/50760
4146 * c-lex.c (fe_file_change): Use LINEMAP_SYSP when
19931eea 4147 !NO_IMPLICIT_EXTERN_C.
2a688977 4148
326e3391 41492011-10-17 Michael Spertus <mike_spertus@symantec.com>
4150
4151 * c-common.c (c_common_reswords): Add __bases,
4152 __direct_bases.
4153 * c-common.h: Add RID_BASES and RID_DIRECT_BASES.
4154
41552011-10-17 Paolo Carlini <paolo.carlini@oracle.com>
4156
4157 PR c++/50757
4158 * c.opt ([Wnonnull]): Add C++ and Objective-C++.
4159
62db153a 41602011-10-15 Tom Tromey <tromey@redhat.com>
4161 Dodji Seketeli <dodji@redhat.com>
4162
4163 * c.opt (fdebug-cpp): New option.
4164 * c-opts.c (c_common_handle_option): Handle the option.
4165 * c-ppoutput.c (maybe_print_line_1): New static function. Takes an
4166 output stream in parameter. Factorized from ...
4167 (maybe_print_line): ... this. Dump location debug information when
4168 -fdebug-cpp is in effect.
4169 (print_line_1): New static function. Takes an output stream in
4170 parameter. Factorized from ...
4171 (print_line): ... here. Dump location information when -fdebug-cpp
4172 is in effect.
4173 (scan_translation_unit): Dump location information when
4174 -fdebug-cpp is in effect.
4175
ce70f433 41762011-10-15 Tom Tromey <tromey@redhat.com>
4177 Dodji Seketeli <dodji@redhat.com>
4178
4179 * c.opt (ftrack-macro-expansion): New option. Handle it with and
4180 without argument.
4181 * c-opts.c (c_common_handle_option)<case
4182 OPT_ftrack_macro_expansion_, case OPT_ftrack_macro_expansion>: New
4183 cases. Handle -ftrack-macro-expansion with and without argument.
4184
97bfb9ef 41852011-10-15 Tom Tromey <tromey@redhat.com>
4186 Dodji Seketeli <dodji@redhat.com>
4187
4188 * c-ppoutput.c (scan_translation_unit, maybe_print_line)
4189 (print_line, cb_define, do_line_change): Adjust to avoid touching
4190 the internals of struct line_map. Use the public API instead.
4191 * c-pch.c (c_common_read_pch): Likewise.
4192 * c-lex.c (fe_file_change): Likewise.
4193
326e3391 41942011-10-14 Paolo Carlini <paolo.carlini@oracle.com>
4195
4196 PR c++/17212
4197 * c.opt ([Wformat-zero-length]): Add C++ and Objective-C++.
4198
41992011-10-11 Paolo Carlini <paolo.carlini@oracle.com>
4200
4201 PR c++/33067
4202 * c-pretty-print.c (pp_c_floating_constant): Output
4203 max_digits10 (in the ISO C++ WG N1822 sense) decimal digits.
4204
b9a16870 42052011-10-11 Michael Meissner <meissner@linux.vnet.ibm.com>
4206
4207 * c-common.c (def_builtin_1): Delete old interface with two
4208 parallel arrays to hold standard builtin declarations, and replace
4209 it with a function based interface that can support creating
4210 builtins on the fly in the future. Change all uses, and poison
4211 the old names. Make sure 0 is not a legitimate builtin index.
4212 * c-omp.c (c_finish_omp_barrier): Ditto.
4213 (c_finish_omp_taskwait): Ditto.
4214 (c_finish_omp_flush): Ditto.
4215
c7964868 42162011-10-11 Tristan Gingold <gingold@adacore.com>
4217
4218 * c.opt: (fallow-parameterless-variadic-functions): New.
4219
a4e3ffad 42202011-09-08 Dodji Seketeli <dodji@redhat.com>
4221
4222 PR c++/33255 - Support -Wunused-local-typedefs warning
4223 * c-common.h (struct c_language_function::local_typedefs): New
4224 field.
19931eea 4225 (record_locally_defined_typedef, maybe_record_typedef_use)
4226 (maybe_warn_unused_local_typedefs): Declare new functions.
a4e3ffad 4227 * c-common.c (record_locally_defined_typedef)
19931eea 4228 (maybe_record_typedef_use)
4229 (maybe_warn_unused_local_typedefs): Define new functions.
a4e3ffad 4230 * c.opt: Declare new -Wunused-local-typedefs flag.
4231
737a23cc 42322011-09-06 Eric Botcazou <ebotcazou@adacore.com>
4233
4234 PR middle-end/50266
4235 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Fold offsetof-like
4236 computations.
4237
7542c3b4 42382011-09-05 Richard Guenther <rguenther@suse.de>
4239
4240 * c-common.c (complete_array_type): Use ssize_int (-1) instead
4241 of integer_minus_one_node for empty array upper bounds.
4242
1dc92c59 42432011-08-28 Dodji Seketeli <dodji@redhat.com>
4244
4245 * c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as
4246 it's the first time it's being called on this main TU.
4247
2bdf2b6e 42482011-08-24 Richard Guenther <rguenther@suse.de>
4249
4250 PR c/49396
4251 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional.
4252
42532011-08-22 Gabriel Charette <gchare@google.com>
6ea2c7a3 4254
4255 * c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens
4256 defined in cpp_init_builtins and c_cpp_builtins.
4257
bff4ad11 42582011-08-19 Joseph Myers <joseph@codesourcery.com>
4259
4260 * c-common.c (c_common_reswords): Add __builtin_complex.
4261 * c-common.h (RID_BUILTIN_COMPLEX): New.
4262
985c6e3a 42632011-08-18 Joseph Myers <joseph@codesourcery.com>
4264
4265 * c-common.c (c_common_reswords): Add _Noreturn.
4266 (keyword_is_function_specifier): Handle RID_NORETURN.
4267 * c-common.h (RID_NORETURN): New.
4268
7dfa155b 42692011-08-10 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
4270
4271 * c-common.c (unsafe_conversion_p): New function. Check if it is
4272 unsafe to convert an expression to the type.
4273 (conversion_warning): Adjust, use unsafe_conversion_p.
4274 * c-common.h (unsafe_conversion_p): New function declaration.
4275
2169f33b 42762011-08-02 Jakub Jelinek <jakub@redhat.com>
4277
4278 * c-common.h (c_finish_omp_atomic): Adjust prototype.
4279 (c_finish_omp_taskyield): New prototype.
4280 * c-omp.c (c_finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1
4281 arguments. Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and
4282 OMP_ATOMIC_CAPTURE_NEW in addition to OMP_ATOMIC. If LHS1
4283 or RHS1 have side-effects, evaluate those too in the right spot,
4284 if it is a decl and LHS is also a decl, error out if they
4285 aren't the same.
4286 (c_finish_omp_taskyield): New function.
4287 * c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP to 201107.
4288 * c-pragma.c (omp_pragmas): Add taskyield.
4289 * c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKYIELD.
4290 (enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FINAL and
4291 PRAGMA_OMP_CLAUSE_MERGEABLE.
4292
ab77850e 42932011-07-25 Dodji Seketeli <dodji@redhat.com>
4294
4295 * c-common.h (set_underlying_type): Remove parm name from
4296 declaration.
4297
6ee97920 42982011-07-25 Romain Geissler <romain.geissler@gmail.com>
4299
4300 * c-pretty-print.h: Search c-common.h in c-family.
19931eea 4301
dc251364 43022011-07-22 Jason Merrill <jason@redhat.com>
4303
1a2a35f0 4304 PR c++/49793
4305 * c.opt (Wnarrowing): New.
4306
27282252 4307 PR c++/30112
4308 * c-common.h: Declare c_linkage_bindings.
4309 * c-pragma.c (handle_pragma_redefine_extname): Use it.
4310
dc251364 4311 PR c++/49813
4312 * c-opts.c (set_std_cxx0x): Set flag_isoc94 and flag_isoc99.
4313 * c-pretty-print.c (pp_c_cv_qualifiers): Check c_dialect_cxx as well
4314 as flag_isoc99 for 'restrict'.
4315 (pp_c_specifier_qualifier_list): Likewise for _Complex.
4316
fc501191 43172011-07-21 Ian Lance Taylor <iant@google.com>
4318
4319 PR middle-end/49705
4320 * c-common.c (c_disable_warnings): New static function.
4321 (c_enable_warnings): New static function.
4322 (c_fully_fold_internal): Change local unused_p to bool. Call
4323 c_disable_warnings and c_enable_warnings rather than change
4324 c_inhibit_evaluation_warnings.
4325
07b8f133 43262011-07-20 Jason Merrill <jason@redhat.com>
4327
4328 PR c++/6709 (DR 743)
4329 PR c++/42603 (DR 950)
4330 * c-common.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move from cp/parser.h.
4331 (CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise.
4332 (CPP_DECLTYPE): New.
4333 * c-common.c (c_parse_error): Handle CPP_DECLTYPE.
4334
2cc66f2a 43352011-07-19 Richard Guenther <rguenther@suse.de>
4336
4337 * c-common.c (pointer_int_sum): Use fold_build_pointer_plus.
4338 * c-omp.c (c_finish_omp_for): Likewise.
4339
3c802a1e 43402011-07-12 Eric Botcazou <ebotcazou@adacore.com>
4341
4342 * c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop
4343 body on the next line.
4344
98a33d9f 43452011-07-08 Jason Merrill <jason@redhat.com>
4346
3115bda0 4347 PR c++/45437
4348 * c-omp.c (check_omp_for_incr_expr): Handle preevaluation.
4349
98a33d9f 4350 PR c++/49673
4351 * c-common.c (c_apply_type_quals_to_decl): Don't check
4352 TYPE_NEEDS_CONSTRUCTING.
4353
c38a75b7 43542011-07-06 Richard Guenther <rguenther@suse.de>
4355
4356 * c-common.c (c_common_nodes_and_builtins):
4357 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
4358
e593356b 43592011-07-05 Richard Guenther <rguenther@suse.de>
4360
4361 * c-common.c (c_common_nodes_and_builtins): Build all common
4362 tree nodes first.
4363
fca0886c 43642011-06-27 Jakub Jelinek <jakub@redhat.com>
4365
a68f7a8d 4366 * c-common.h (c_tree_chain_next): New static inline function.
4367
fca0886c 4368 * c-common.c (check_builtin_function_arguments): Handle
4369 BUILT_IN_ASSUME_ALIGNED.
4370
2797f13a 43712011-06-21 Andrew MacLeod <amacleod@redhat.com>
4372
4373 * c-common.c: Add sync_ or SYNC__ to builtin names.
4374 * c-omp.c: Add sync_ or SYNC__ to builtin names.
9cad95b7 4375
43762011-06-20 Pierre Vittet <piervit@pvittet.com>
4377
4378 * c-pragma.h (pragma_handler_1arg, pragma_handler_2arg): New
4379 handler.
4380 (gen_pragma_handler): New union.
4381 (internal_pragma_handler): New type.
4382 (c_register_pragma_with_data)
4383 (c_register_pragma_with_expansion_and_data): New functions.
4384
4385 * c-pragma.c (registered_pragmas, c_register_pragma_1)
4386 (c_register_pragma, c_register_pragma_with_expansion)
4387 (c_invoke_pragma_handler): Changed to work with
4388 internal_pragma_handler.
4389 (c_register_pragma_with_data)
4390 (c_register_pragma_with_expansion_and_data): New functions.
4391
218e3e4e 43922011-06-14 Joseph Myers <joseph@codesourcery.com>
4393
4394 * c-common.c: Include common/common-target.h.
4395 (handle_section_attribute): Use
4396 targetm_common.have_named_sections.
4397 * c-cppbuiltin.c: Include common/common-target.h.
4398 (c_cpp_builtins): Use targetm_common.except_unwind_info.
4399
41e53ed2 44002011-06-10 Richard Guenther <rguenther@suse.de>
4401
4402 * c-pretty-print.c (pp_c_type_specifier): Use pp_c_identifier
4403 to print a IDENTIFIER_NODE.
4404
a6f06169 44052011-06-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
4406 Joseph Myers <joseph@codesourcery.com>
4407
4408 * c.opt (fbuilding-libgcc): New option.
4409 * c-cppbuiltin.c (c_cpp_builtins): Define
4410 __LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc.
4411
1ea9269b 44122011-06-07 Jason Merrill <jason@redhat.com>
4413
8ce59854 4414 * c-common.c (max_tinst_depth): Lower default to 900.
4415
1ea9269b 4416 * c-format.c (gcc_cxxdiag_char_table): Add 'S' format.
4417
1af0124d 44182011-06-07 Richard Guenther <rguenther@suse.de>
4419
4420 * c-common.c (c_common_nodes_and_builtins): Do not set
4421 size_type_node or call set_sizetype.
4422
0e9a4c01 44232011-06-07 Dodji Seketeli <dodji@redhat.com>
4424
4425 PR debug/49130
4426 * c-pretty-print.c (pp_c_integer_constant): Consider the canonical
19931eea 4427 type when using pointer comparison to compare types.
0e9a4c01 4428
90b40725 44292011-06-02 Jonathan Wakely <jwakely.gcc@gmail.com>
4430
4431 * c.opt: Add -Wdelete-non-virtual-dtor.
4432 * c-opts.c (c_common_handle_option): Include it in -Wall.
4433
fc9c9e87 44342011-05-30 Nathan Froyd <froydnj@gcc.gnu.org>
4435
4436 PR bootstrap/49190
4437
4438 Revert:
4439 2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
4440
4441 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
4442 not tree_common.
4443
d0389adc 44442011-05-27 Jakub Jelinek <jakub@redhat.com>
4445
4446 PR c++/49165
4447 * c-common.c (c_common_truthvalue_conversion) <case COND_EXPR>: For
4448 C++ don't call c_common_truthvalue_conversion on void type arms.
4449
cacfdc02 44502011-05-27 Nathan Froyd <froydnj@codesourcery.com>
4451
4452 * c-common.h (struct stmt_tree_s) [x_cur_stmt_list]: Change to a VEC.
4453 (stmt_list_stack): Define.
4454 (cur_stmt_list): Adjust for new type of x_cur_stmt_list.
4455 * c-semantics.c (push_stmt_list, pop_stmt_list): Likewise.
4456
027fc6ef 44572011-05-26 Nathan Froyd <froydnj@codesourcery.com>
4458
4459 * c-common.c (warning_candidate_p): Check for BLOCKs.
4460
f21317a1 44612011-05-26 Nathan Froyd <froydnj@codesourcery.com>
4462
4463 * c-common.h (struct c_common_identifier): Inherit from tree_typed,
4464 not tree_common.
4465
789e953d 44662011-05-25 Jakub Jelinek <jakub@redhat.com>
4467
4468 * c-common.c (def_fn_type): Remove extra va_end.
4469
7f506bca 44702011-05-23 Jason Merrill <jason@redhat.com>
4471
4472 PR c++/48106
4473 * c-common.c (c_common_get_narrower): New.
4474 (shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.
4475
774e9d58 44762011-05-23 Nathan Froyd <froydnj@codesourcery.com>
4477
4478 * c-common.h (check_function_arguments): Tweak prototype of
4479 check_function_arguments.
4480 * c-common.c (check_function_arguments): Likewise. Adjust
4481 calls to check_function_nonnull, check_function_format, and
4482 check_function_sentinel.
4483 (check_function_sentinel): Take a FUNCTION_TYPE rather than
4484 separate attributes and typelist arguments. Use
4485 FOREACH_FUNCTION_ARGS to iterate over argument types.
4486
23407dc9 44872011-05-15 Paolo Carlini <paolo.carlini@oracle.com>
4488
4489 * c-common.c (c_common_reswords): Reorder.
4490 * c-common.h (rid): Likewise.
4491
3a939d12 44922011-05-10 Nathan Froyd <froydnj@codesourcery.com>
4493
4494 * c-common.c (def_fn_type): Don't call build_function_type, call
4495 build_function_type_array or build_varargs_function_type_array
4496 instead.
4497 (c_common_nodes_and_builtins): Likewise.
4498
b6e3dd65 44992011-05-05 Nathan Froyd <froydnj@codesourcery.com>
4500
4501 * c-common.c (c_add_case_label): Omit the loc argument to
4502 build_case_label.
4503 * c-common.h (build_case_label): Remove.
4504 * c-semantics.c (build_case_label): Remove.
4505
4232a958 45062011-05-05 Joseph Myers <joseph@codesourcery.com>
4507
4508 * c-objc.h (objc_start_method_definition): Update prototype.
4509 * stub-objc.c (objc_start_method_definition): Add extra parameter.
4510
d0af78c5 45112011-05-04 Nathan Froyd <froydnj@codesourcery.com>
4512
4513 * c-common.c (check_main_parameter_types): Reindent. Don't use
4514 TYPE_ARG_TYPES directly.
4515 (handle_nonnull_attribute): Likewise.
4516 (sync_resolve_params): Likewise.
4517 * c-format.c (handle_format_arg_attribute): Likewise. Adjust call
4518 to check_format_string.
4519 (handle_format_attribute): Likewise.
4520 (check_format_string): Take a function type to examine instead of
4521 a type list. Use a function_arg_iterator to step through argument
4522 types.
4523
ceb7b692 45242011-05-04 Richard Guenther <rguenther@suse.de>
4525
4526 * c-common.c (fix_string_type): Use size_int for index type bounds.
4527 (start_fname_decls): Do not pass NULL to build_int_cst.
4528 (c_init_attributes): Likewise.
4529 * c-lex.c (c_lex_with_flags): Likewise.
4530
c66c81be 45312011-04-27 Jason Merrill <jason@redhat.com>
4532
4533 * c-common.c (make_tree_vector_from_list): New.
4534 * c-common.h: Declare it.
4535
16930c72 45362011-04-26 Richard Guenther <rguenther@suse.de>
4537
4538 PR preprocessor/48248
4539 * c-ppoutput.c (maybe_print_line): Always optimize newlines
4540 for output size with -P.
4541
23407dc9 45422011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
4543
4544 * c-common.c (struct c_common_resword): Add __underlying_type.
4545 * c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
4546
dd045aee 45472011-04-20 Jim Meyering <meyering@redhat.com>
4548
4549 * c-format.c (init_dollar_format_checking): Remove useless
4550 if-before-free.
4551
394dd737 45522011-04-15 Nicola Pero <nicola.pero@meta-innovation.com>
4553
4554 * c-objc.h (objc_get_interface_ivars): Removed.
23407dc9 4555 (objc_detect_field_duplicates): New.
394dd737 4556 * stub-objc.c: Likewise.
23407dc9 4557
a758bf7d 45582011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
4559
4560 * stub-objc.c (objc_declare_protocols): Renamed to
4561 objc_declare_protocol.
4562 * c-objc.h: Likewise.
23407dc9 4563
29d7200d 45642011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
4565
4566 * stub-objc.c (objc_declare_class): Updated argument name.
4567
9b88d08d 45682011-04-12 Nathan Froyd <froydnj@codesourcery.com>
4569
4570 * c-common.h (c_common_init_ts): Declare.
4571 * c-common.c (c_common_init_ts): Define.
4572
4185cf58 45732011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
4574
4575 * c-objc.h (objc_build_message_expr): Updated prototype.
4576 * stub-objc.c (objc_build_message_expr): Likewise.
19931eea 4577
5a90471f 45782011-04-12 Martin Jambor <mjambor@suse.cz>
4579
4580 * c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
4581 of cgraph_node.
4582
783bb57e 45832011-04-11 Richard Guenther <rguenther@suse.de>
4584
4585 * c-common.c (complete_array_type): Build a range type of
4586 proper type.
4587
c33080b9 45882011-04-08 Nathan Froyd <froydnj@codesourcery.com>
4589
4590 * c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
4591 (handle_type_generic_attribute): Likewise.
4592
f8913d47 45932011-04-07 Jason Merrill <jason@redhat.com>
4594
4595 PR c++/48450
4596 * c-common.c (c_common_truthvalue_conversion): Don't ignore
4597 conversion from C++0x scoped enum.
4598
c94b1d0e 45992011-04-06 Joseph Myers <joseph@codesourcery.com>
4600
4601 * c-target-def.h: New file.
4602 * c-target.def: New file.
4603 * c-target.h: New file.
4604 * c-common.c (targetcm): Don't define here.
4605 * c-common.h (default_handle_c_option): Declare.
4606 * c-format.c: Include c-target.h instead of target.h.
4607 * c-opts.c: Include c-target.h instead of target.h. Explicitly
4608 include tm.h.
4609 (default_handle_c_option): Move from targhooks.c.
4610
acb10f41 46112011-03-29 Jakub Jelinek <jakub@redhat.com>
4612
4613 PR preprocessor/48248
4614 * c-ppoutput.c (print): Add src_file field.
4615 (init_pp_output): Initialize it.
4616 (maybe_print_line): Don't optimize by adding up to 8 newlines
4617 if map->to_file and print.src_file are different file.
4618 (print_line): Update print.src_file.
4619
82715bcd 46202011-03-25 Kai Tietz <ktietz@redhat.com>
4621
4622 * c-ada-spec.c (compare_comment): Use filename_cmp
4623 instead of strcmp for filename.
4624
451c8e2f 46252011-03-25 Jeff Law <law@redhat.com>
4626
1f78217c 4627 * c-common.c (def_fn_type): Add missing va_end.
451c8e2f 4628
3c47771c 46292011-03-25 Jason Merrill <jason@redhat.com>
4630
4631 * c.opt: Add -std=c++03.
4632
97e6200f 46332011-03-22 Eric Botcazou <ebotcazou@adacore.com>
4634
4635 * c-ada-spec.c (dump_ada_template): Skip non-class instances.
4636
ac86af5d 46372011-03-17 Kai Tietz
4638
4639 PR target/12171
ee212425 4640 * c-pretty-print.c (pp_c_specifier_qualifier_list):
4641 Display allowed attributes for function pointer types.
4642 (pp_c_attributes_display): New function to display
4643 attributes having affects_type_identity flag set to true.
4644 * c-pretty-print.h (pp_c_attributes_display): New prototype.
4645
ac86af5d 4646 * c-common.c (c_common_attribute_table):
4647 Add new element.
4648 (c_common_format_attribute_table): Likewise.
4649
914d1151 46502011-03-18 Jason Merrill <jason@redhat.com>
4651
69788bdf 4652 * c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
4653 * c-common.h: Don't declare it here.
4654 * c-common.c: Or define it here.
4655 * c-opts.c (c_common_handle_option): Or set it here.
4656
914d1151 4657 PR c++/35315
4658 * c-common.c (handle_transparent_union_attribute): Don't
4659 make a duplicate type in C++.
4660
54cf6eed 46612011-03-15 Jason Merrill <jason@redhat.com>
4662
4663 * c-common.c (max_constexpr_depth): New.
4664 * c-common.h: Declare it.
4665 * c-opts.c (c_common_handle_option): Set it.
4666 * c.opt (fconstexpr-depth): New option.
4667
02cb1060 46682011-03-11 Jason Merrill <jason@redhat.com>
4669
9bf1c74e 4670 * c-common.c (attribute_takes_identifier_p): Add missing const.
4671
02cb1060 4672 PR c++/46803
4673 * c-common.c (attribute_takes_identifier_p): Assume that an
4674 unknown attribute takes an identifier.
4675
ecf2703d 46762011-03-07 Nathan Froyd <froydnj@codesourcery.com>
4677
4678 PR c/47786
4679 * c-common.c (c_type_hash): Call list_length instead of iterating
4680 through DECL_CHAIN. Rename 'i' to 'n_elements'.
4681
2b19dfe4 46822011-02-19 Jakub Jelinek <jakub@redhat.com>
4683
4684 PR c/47809
4685 * c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
4686
29cf2335 46872011-02-17 Iain Sandoe <iains@gcc.gnu.org>
4688
4689 * c.opt (fobjc-abi-version=) New.
4690 (fobjc-nilcheck): New.
4691
fad3f658 46922011-02-03 Nathan Froyd <froydnj@codesourcery.com>
4693
4694 PR c++/46890
4695 * c-common.h (keyword_is_decl_specifier): Declare.
4696 * c-common.c (keyword_is_decl_specifier): Define.
4697 (keyword_is_function_specifier): New function.
4698
a12319b3 46992011-01-26 Jakub Jelinek <jakub@redhat.com>
4700
4701 PR c/47473
4702 * c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
4703 EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
4704 REAL_TYPE.
4705
5c128dc8 47062011-01-26 Arnaud Charlet <charlet@adacore.com>
4707
4708 * c-ada-spec.c (dump_generic_ada_node): Avoid dereferencing null type.
4709
8d67b0c7 47102011-01-26 Jakub Jelinek <jakub@redhat.com>
4711
4712 PR pch/47430
4713 * c-opts.c (c_common_post_options): Call c_common_no_more_pch
4714 after init_c_lex if pch_file is set.
4715
0675168d 47162011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
4717
e8911163 4718 PR c++/43601
0675168d 4719 * c.opt (-fkeep-inline-dllexport): New switch.
4720
0725e25c 47212011-01-12 Richard Guenther <rguenther@suse.de>
4722
4723 PR middle-end/32511
4724 * c-common.c (handle_weak_attribute): Warn instead of error
4725 on declaring an inline function weak.
4726
fdd84b77 47272011-01-05 Tom Tromey <tromey@redhat.com>
4728
4729 * c-common.h (lvalue_error): Update.
4730 * c-common.c (lvalue_error): Add 'loc' argument. Call error_at,
4731 not error.
4732
e6e73d14 47332010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
19931eea 4734
d67e8485 4735 PR objc/47075
4736 * c-objc.h (objc_finish_message_expr): Added argument to
4737 prototype.
4738
a36cf284 47392010-12-22 Nathan Froyd <froydnj@codesourcery.com>
4740
4741 * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute):
4742 Use prototype_p.
4743
33b3681f 47442010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
4745
4746 * c-objc.h (objc_maybe_warn_exceptions): New.
19931eea 4747 * stub-objc.c (objc_maybe_warn_exceptions): New.
33b3681f 4748
a1f90215 47492010-12-10 Nathan Froyd <froydnj@codesourcery.com>
4750
4751 * c-common.h (readonly_error): Declare.
4752 * c-common.c (readonly_error): Define.
4753
b1bbc8e5 47542010-12-09 Nathan Froyd <froydnj@codesourcery.com>
4755
4756 * c-common.h (invalid_indirection_error): Declare.
4757 * c-common.c (invalid_indirection_error): Define.
4758
b0d55af9 47592010-12-03 Richard Guenther <rguenther@suse.de>
4760
4761 PR c/46745
4762 * c-pretty-print.c (pp_c_postfix_expression): Handle MEM_REF.
4763 (pp_c_unary_expression): Likewise.
4764 (pp_c_expression): Likewise.
4765
d7489d8d 47662010-11-30 Nicola Pero <nicola.pero@meta-innovation.com>
4767
4768 * c-common.h (objc_finish_function): New.
4769 (objc_non_volatilized_type): Removed.
4770 (objc_type_quals_match): Removed.
4771 * stub-objc.c (objc_finish_function): New.
4772 (objc_non_volatilized_type): Removed.
4773 (objc_type_quals_match): Removed.
19931eea 4774
92468061 47752010-11-30 Joseph Myers <joseph@codesourcery.com>
4776
4777 * c-common.h (parse_optimize_options): Declare.
4778 * c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c,
4779 c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h.
4780
967958e4 47812010-11-29 Joseph Myers <joseph@codesourcery.com>
4782
4783 * c-opts.c (check_deps_environment_vars): Use getenv instead of
4784 GET_ENVIRONMENT.
4785 * c-pch.c (O_BINARY): Don't define here.
4786 * c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
4787
b213bf24 47882010-11-25 Joseph Myers <joseph@codesourcery.com>
4789
4790 * c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
4791 targetm.except_unwind_info.
4792
9faf44d6 47932010-11-23 Joseph Myers <joseph@codesourcery.com>
4794
4795 * c-opts.c (c_common_handle_option): Pass location to
4796 set_struct_debug_option.
4797
79396169 47982010-11-23 Joseph Myers <joseph@codesourcery.com>
4799
4800 * c-common.c (visibility_options): Move from ../opts.c.
4801 * c-common.h (struct visibility_flags, visibility_options):
4802 Declare here.
4803 * c-opts.c (finish_options): Rename to c_finish_options.
4804 (c_common_init): Update call to finish_options.
4805
b4aa4123 48062010-11-22 Nicola Pero <nicola.pero@meta-innovation.com>
4807
4808 PR objc/34033
4809 * c-lex.c (lex_string): Check that each string in an Objective-C
4810 string concat sequence starts with either one or zero '@', and
4811 that there are no spurious '@' signs at the end.
4812
3e0e49f2 48132010-11-20 Joseph Myers <joseph@codesourcery.com>
4814
4815 * c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
4816 HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
4817 HANDLE_PRAGMA_VISIBILITY.
4818 * c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
4819 HANDLE_PRAGMA_VISIBILITY): Don't define.
4820 (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.
4821
a9ffdd35 48222010-11-20 Nathan Froyd <froydnj@codesourcery.com>
4823
4824 PR c++/16189
4825 PR c++/36888
4826 PR c++/45331
4827 * c-common.h (keyword_begins_type_specifier): Declare.
4828 (keyword_is_storage_class_specifier): Declare.
4829 (keyword_is_type_qualifier): Declare.
4830 * c-common.c (keyword_begins_type_specifier): New function.
4831 (keyword_is_storage_class_specifier): New function.
4832 (keyword_is_type_qualifier): Declare.
4833
93be21c0 48342010-11-19 Joseph Myers <joseph@codesourcery.com>
4835
4836 PR c/46547
4837 * c-common.c (in_late_binary_op): Define.
4838 (c_common_truthvalue_conversion): Check in_late_binary_op before
4839 calling c_save_expr.
4840 * c-common.h (in_late_binary_op): Declare.
4841
d7175aef 48422010-11-19 Joseph Myers <joseph@codesourcery.com>
4843
4844 * c-opts.c (c_common_handle_option): Update calls to
4845 set_struct_debug_option.
4846
c213e196 48472010-11-19 Nicola Pero <nicola.pero@meta-innovation.com>
4848
4849 * c-common.h (objc_declare_protocols): Added additional argument.
4850 * stub-objc.c (objc_declare_protocol): Same change.
19931eea 4851
0b5fc5d6 48522010-11-18 Nathan Froyd <froydnj@codesourcery.com>
4853
4854 PR c/33193
4855 * c-common.h (build_real_imag_expr): Declare.
4856 * c-semantics.c (build_real_imag_expr): Define.
4857
b8ba44e7 48582010-11-17 Joseph Myers <joseph@codesourcery.com>
4859
4860 * c-opts.c (c_common_parse_file): Take no arguments.
4861 * c-common.h (c_common_parse_file): Update prototype.
4862
6ef8d12f 48632010-11-16 Jakub Jelinek <jakub@redhat.com>
4864
4865 PR c++/46401
4866 * c-common.c (warning_candidate_p): Don't track non-const calls
4867 or STRING_CSTs.
4868
929d2a90 48692010-11-15 Ian Lance Taylor <iant@google.com>
4870
4871 * c-lex.c (init_c_lex): Set macro debug callbacks if
4872 flag_dump_go_spec is set.
4873
e4a7640a 48742010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
4875
4876 * c-common.h (objc_build_incr_expr_for_property_ref): New.
4877 * stub-objc.c (objc_build_incr_expr_for_property_ref): New.
4878
597d2d81 48792010-11-15 Nathan Froyd <froydnj@codesourcery.com>
4880
4881 PR preprocessor/45038
4882 * c-cppbuiltin.c (c_cpp_builtins): Use different format for C++
4883 dialects.
4884
c123f04d 48852010-11-12 Joseph Myers <joseph@codesourcery.com>
4886
4887 * c-common.h (c_family_lang_mask): Declare.
4888 * c-opts.c (c_family_lang_mask): Make extern.
4889 * c-pragma.c (handle_pragma_diagnostic): Use
4890 control_warning_option.
4891
3c6c0e40 48922010-11-12 Joseph Myers <joseph@codesourcery.com>
4893
4894 * c-common.c (parse_optimize_options): Update call to
4895 decode_options.
4896 * c-common.h (c_common_handle_option): Update prototype.
4897 * c-opts.c (c_common_handle_option): Take location_t parameter and
4898 pass it to other functions.
4899
19ec5c9e 49002010-11-11 Joseph Myers <joseph@codesourcery.com>
4901
4902 * c-opts.c (warning_as_error_callback): Remove.
4903 (c_common_initialize_diagnostics): Don't call
4904 register_warning_as_error_callback.
4905 (c_common_handle_option): Handle -Werror=normalized= here.
4906
bf776685 49072010-11-10 Joseph Myers <joseph@codesourcery.com>
4908
4909 * c-common.c (handle_mode_attribute): Use %' and word "signedness"
4910 in diagnostic.
4911 * c-opts.c (c_common_parse_file): Start diagnostics with lowercase
4912 letter.
4913 * c-pragma.c (handle_pragma_target, handle_pragma_optimize):
4914 Remove trailing '.' from diagnostics.
4915 * c.opt (Wwrite-strings_: Avoid '`' in help text.
4916
6bd9d862 49172010-11-10 Joseph Myers <joseph@codesourcery.com>
4918
4919 * c-common.c (parse_optimize_options): Pass global_dc to
4920 decode_options.
4921 * c-opts.c (c_common_handle_option): Pass &global_options to
4922 set_Wstrict_aliasing.
4923 * c.opt (v): Don't mark Common or document here.
4924
1f6616ee 49252010-11-06 Iain Sandoe <iains@gcc.gnu.org>
4926
4927 PR target/44981
4928 * c-format.c (format_type): New type gcc_objc_string_format_type.
4929 (valid_stringptr_type_p): New.
4930 (handle_format_arg_attribute): Use valid_stringptr_type_p ().
19931eea 4931 (check_format_string): Pass expected type, use
1f6616ee 4932 valid_stringptr_type_p (), check that the format string types are
4933 consistent with the format specification.
4934 (decode_format_attr): Warn if NSString is used outside objective-c.
4935 (format_types_orig): Add NSString.
4936 (format_name): New.
4937 (format_flags): New.
4938 (check_format_arg): Handle format strings requiring an external parser.
4939 first_target_format_type: New variable.
4940 (handle_format_attribute): Set up first_target_format_type, pass the
4941 expected format arg string type to check_format_string().
4942 * c-common.h (FMT_FLAG_PARSE_ARG_CONVERT_EXTERNAL): New flag.
4943 * stub-objc.c (objc_string_ref_type_p): New.
4944 (objc_check_format_arg): New.
4945
b0d0931f 49462010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
4947
19931eea 4948 Fixed using the Objective-C 2.0 dot-syntax with class names.
b0d0931f 4949 * c-common.h (objc_build_class_component_ref): New.
4950 * stub-objc.c (objc_build_class_component_ref): New.
4951
f26877d5 49522010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
4953
4954 * c.opt (Wproperty-assign-default): New option.
4955
1ef143b6 49562010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
4957
4958 Implemented -fobjc-std=objc1 flag.
4959 * c.opt (fobjc-std=objc1): New option.
4960
8c582e4f 49612010-11-01 Nicola Pero <nicola.pero@meta-innovation.com>
4962
4963 Implemented format and noreturn attributes for Objective-C methods.
4964 * c-common.c (handle_noreturn_attribute): Recognize 'noreturn'
4965 attribute for Objective-C methods.
4966
8637f1db 49672010-10-31 Jason Merrill <jason@redhat.com>
4968
4969 * c-common.c (conversion_warning, warn_for_collisions_1): Use
4970 EXPR_LOC_OR_HERE.
4971
9d9f5bb3 49722010-10-30 Nicola Pero <nicola.pero@meta-innovation.com>
4973
4974 Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
4975 * c-common.h (enum rid): Removed RID_COPIES and RID_IVAR.
4976 (objc_add_property_declaration): Removed arguments for copies and
4977 ivar.
4978 (objc_build_getter_call): Renamed to
4979 objc_maybe_build_component_ref.
4980 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
4981 (objc_is_property_ref): New.
4982 * c-common.c (c_common_reswords): Removed copies and ivar.
4983 * stub-objc.c (objc_add_property_declaration): Removed arguments
4984 for copies and ivar.
4985 (objc_build_getter_call): Renamed to
4986 objc_maybe_build_component_ref.
4987 (objc_build_setter_call): Renamed to objc_maybe_build_modify_expr.
4988 (objc_is_property_ref): New.
19931eea 4989
56f907a0 49902010-10-29 Arnaud Charlet <charlet@adacore.com>
4991 Matthew Gingell <gingell@adacore.com>
4992
4993 * c-ada-spec.c (separate_class_package): New function.
4994 (pp_ada_tree_identifier): Prefix references to C++ classes with the
4995 name of their enclosing package.
4996 (print_ada_declaration): Use separate_class_package.
4997
b5fa273e 49982010-10-27 Jason Merrill <jason@redhat.com>
4999
5290e253 5000 * c-common.c (c_common_reswords): Add __is_literal_type.
5001 * c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
5002
b5fa273e 5003 * c-common.c (check_case_value): Remove special C++ code.
5004
7590f0e5 50052010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
5006
5007 * c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN,
5008 RID_RETAIN, RID_COPY and RID_NONATOMIC. Updated RID_FIRST_PATTR
5009 and RID_LAST_PATTR.
5010 (objc_add_property_declaration): Added additional arguments.
5011 (objc_property_attribute_kind): Removed.
5012 (objc_set_property_attr): Removed.
5013 * c-common.c (c_common_reswords): Added readwrite, assign, retain,
5014 copy and nonatomic.
5015 * stub-objc.c (objc_add_property_declaration): Added additional
5016 arguments.
5017 (objc_set_property_attr): Removed.
19931eea 5018
1d894bcf 50192010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
5020
5021 * c-common.h (objc_add_property_variable): Renamed to
5022 objc_add_property_declaration. Added location argument.
5023 * stub-objc.c (objc_add_property_variable): Same change.
8204c077 5024
e23bf1fb 50252010-10-23 Nicola Pero <nicola.pero@meta-innovation.com>
5026
5027 * c-common.h (objc_maybe_printable_name): New.
5028 * stub-objc.c (objc_maybe_printable_name): New.
5029
93426222 50302010-10-22 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
5031 Andrew Pinski <pinskia@gmail.com>
5032
5033 * c-common.h (c_common_mark_addressable_vec): Declare.
5034 * c-common.c (c_common_mark_addressable_vec): New function.
5035
45b2b110 50362010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
5037
5038 * c-common.h (objc_set_method_type): Removed.
5039 (objc_add_method_declaration): Added boolean argument.
5040 (objc_start_method_definition): Same change.
5041 (objc_build_method_signature): Same change.
5042 * stub-objc.c (objc_set_method_type): Removed.
5043 (objc_add_method_declaration): Added boolean argument.
5044 (objc_start_method_definition): Same change.
5045 (objc_build_method_signature): Same change.
5046
64cd9619 50472010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
5048
5049 * c-common.h (finish_file): Removed.
5050 (objc_write_global_declarations): New.
5051 * c-opts.c (c_common_parse_file): Do not call finish_file.
5052 * stub-objc.c (objc_write_global_declarations): New.
19931eea 5053
e1f293c0 50542010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
5055
5056 Implemented parsing @synthesize and @dynamic for
5057 Objective-C/Objective-C++.
5058 * c-common.h (enum rid): Add RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
5059 (objc_add_synthesize_declaration): New.
5060 (objc_add_dynamic_declaration): New.
5061 * c-common.c (c_common_reswords): Add synthesize and dynamic.
5062 * stub-objc.c (objc_add_synthesize_declaration): New.
5063 (objc_add_dynamic_declaration): New.
19931eea 5064
ef97a312 50652010-10-18 Michael Meissner <meissner@linux.vnet.ibm.com>
5066
5067 PR target/46041
5068 * c-cppbuiltin.c (mode_has_fma): Move function here from
5069 builtins.c. Don't use the fma optab, instead just use the
5070 HAVE_fma* macros, so that __FP_FAST_FMA* will be defined when
5071 using -save-temps.
5072
69b07042 50732010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
5074
5075 Merge from 'apple/trunk' branch on FSF servers.
ef97a312 5076
69b07042 5077 2005-11-08 Fariborz Jahanian <fjahanian@apple.com>
5078
19931eea 5079 Radar 4330422
69b07042 5080 * c-common.h (objc_non_volatilized_type): New declaration
5081 * stub-objc.c (objc_non_volatilized_type): New stub.
5082
f15f2e56 50832010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
5084
69b07042 5085 Merge from 'apple/trunk' branch on FSF servers.
f15f2e56 5086
5087 2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
5088
19931eea 5089 Radar 4133425
f15f2e56 5090 * c-common.h (objc_diagnose_private_ivar): New decl.
ef97a312 5091 * stub-objc.c (objc_diagnose_private_ivar): New stub.
f15f2e56 5092
4a8875ed 50932010-10-17 Iain Sandoe <iains@gcc.gnu.org>
5094
5095 * c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
5096 * c-common.h (enum rid): Add RID_AT_PACKAGE.
5097 (objc_ivar_visibility_kind): New enum.
5098 (objc_set_visibility): Adjust prototype to use visibility enum.
ef97a312 5099 * stub-objc.c (objc_set_visibility): Adjust stub to use
4a8875ed 5100 visibility enum.
5101
7e0713b1 51022010-10-14 Michael Meissner <meissner@linux.vnet.ibm.com>
5103
5104 * c-cppbuiltin.c (builtin_define_float_constants): Emit
5105 __FP_FAST_FMA, __FP_FAST_FMAF, and __FP_FAST_FMAL if the machine
5106 has the appropriate fma builtins.
5107 (c_cpp_builtins): Adjust call to builtin_define_float_constants.
5108
86c110ac 51092010-10-14 Iain Sandoe <iains@gcc.gnu.org>
5110
7e0713b1 5111 merge from FSF apple 'trunk' branch.
86c110ac 5112 2006 Fariborz Jahanian <fjahanian@apple.com>
7e0713b1 5113
86c110ac 5114 Radars 4436866, 4505126, 4506903, 4517826
5115 * c-common.c (c_common_resword): Define @property and its attributes.
5116 * c-common.h: Define property attribute enum entries.
5117 (OBJC_IS_PATTR_KEYWORD): New.
5118 (objc_property_attribute_kind): New enum.
5119 Declare objc_set_property_attr (), objc_add_property_variable (),
5120 objc_build_getter_call () and objc_build_setter_call ().
5121 * stub-objc.c (objc_set_property_attr): New stub.
5122 (objc_add_property_variable): Likewise.
5123 (objc_build_getter_call): Likewise.
5124 (objc_build_setter_call) Likewise.
7e0713b1 5125
40c8d1dd 51262010-10-13 Iain Sandoe <iains@gcc.gnu.org>
5127
7e0713b1 5128 merge from FSF apple 'trunk' branch.
40c8d1dd 5129 2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
5130
5131 Radar 3803157 (method attributes)
5132 * c-common.c (handle_deprecated_attribute): Recognize
5133 objc methods as valid declarations.
5134 * c-common.h: Declare objc_method_decl ().
7e0713b1 5135 * stub-objc.c (objc_method_decl): New stub.
40c8d1dd 5136
f3f006ad 51372010-10-08 Joseph Myers <joseph@codesourcery.com>
5138
5139 * c-common.c (parse_optimize_options): Call
5140 decode_cmdline_options_to_array_default_mask before
5141 decode_options. Update arguments to decode_options.
5142 * c-common.h (c_common_init_options_struct): Declare.
5143 * c-opts.c (c_common_init_options_struct): New. Split out from
5144 c_common_init_options.
5145
0a65c3bb 51462010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
5147
5148 Implemented fast enumeration for Objective-C.
5149 * c-common.h (objc_finish_foreach_loop): New.
5150 * stub-objc.c (objc_finish_foreach_loop): New.
5151
24ca3b4e 51522010-10-05 Joseph Myers <joseph@codesourcery.com>
5153
5154 * c-common.h (struct diagnostic_context): Don't declare here.
5155 (c_common_initialize_diagnostics): Declare using
5156 diagnostic_context typedef.
5157 * c-opts.c (c_common_handle_option): Pass global_dc to
5158 handle_generated_option.
5159
f83b64ca 51602010-10-04 Joseph Myers <joseph@codesourcery.com>
5161
5162 * c-opts.c (c_common_handle_option): Pass &global_options_set to
5163 handle_generated_option.
5164
2fdec027 51652010-10-03 Ian Lance Taylor <iant@google.com>
5166
5167 * c.opt (-fplan9-extensions): New option.
5168
41acdfa4 51692010-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
5170
5171 * c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision):
5172 Remove.
5173 (c_cpp_builtins): Call functions from cppbuiltin.c instead
5174 of duplicating code.
5175
069761fb 51762010-09-30 Iain Sandoe <iains@gcc.gnu.org>
5177
5178 * c-common.c: Add two new entries for @optional
5179 and @required keywords.
5180
5181 merge from FSF 'apple/trunk' branch.
5182 2006-01-30 Fariborz Jahanian <fjahanian@apple.com>
5183
5184 Radar 4386773
5185 * c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new
5186 objective-c keywords.
5187 (objc_set_method_opt): New declaration.
5188 * stub-objc.c (objc_set_method_opt): New stub.
19931eea 5189
2c5d2e39 51902010-09-30 Joseph Myers <joseph@codesourcery.com>
5191
5192 * c-common.c (handle_optimize_attribute): Pass &global_options to
5193 cl_optimization_save and cl_optimization_restore.
5194 * c-opts.c (c_common_handle_option): Pass &global_options to
5195 handle_generated_option.
5196 * c-pragma.c (handle_pragma_diagnostic): Use option_flag_var.
5197 (handle_pragma_pop_options, handle_pragma_reset_options): Pass
5198 &global_options to cl_optimization_restore.
5199
e5c75ac3 52002010-09-30 Nicola Pero <nicola.pero@meta-innovation.com>
5201
5202 * c-lex.c (c_lex_with_flags): Updated comments for CPP_AT_NAME
5203 Objective-C/Objective-C++ keywords.
5204
3511333e 52052010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
e147d6aa 5206
19931eea 5207 Merge from 'apple/trunk' branch on FSF servers.
5208
e147d6aa 5209 2005-10-04 Fariborz Jahanian <fjahanian@apple.com>
5210
5211 Radar 4281748
5212 * c-common.h (objc_check_global_decl): New declaration.
5213 * stub-objc.c (objc_check_global_decl): New stub.
5214
5461e683 52152010-09-29 Joseph Myers <joseph@codesourcery.com>
5216
5217 * c.opt: Don't use VarExists.
5218
5ae82d58 52192010-09-29 Joseph Myers <joseph@codesourcery.com>
5220
5221 * c-common.c (c_cpp_error): Update names of diagnostic_context
5222 members.
5223 * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of
5224 cl_optimization members.
5225 * c-opts.c (warning_as_error_callback, c_common_handle_option,
5226 sanitize_cpp_opts, finish_options): Update names of cpp_options
5227 members.
5228
b27e241e 52292010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
5230
5231 * c-common.h (OBJC_IS_CXX_KEYWORD): New macro. Updated comments.
5232 (objc_is_reserved_word): Removed.
5233 * c-common.c: Updated comments.
5234 * c-lex.c (c_lex_with_flags): Use OBJC_IS_CXX_KEYWORD instead of
5235 objc_is_reserved_word.
5236 * stub-objc.c (objc_is_reserved_word): Removed.
5237
03fc2271 52382010-09-28 Iain Sandoe <iains@gcc.gnu.org>
5239
19931eea 5240 * c-common.h (objc_add_method_declaration): Adjust prototype to
03fc2271 5241 include attributes.
5242 (objc_start_method_definition): Likewise.
5243 (objc_build_keyword_decl): Likewise.
5244 * stub-objc.c:(objc_add_method_declaration): Handle attributes.
5245 (objc_start_method_definition): Likewise.
5246 (objc_build_keyword_decl): Likewise.
5247
a336eb4b 52482010-09-28 Iain Sandoe <iains@gcc.gnu.org>
5249
5250 * c-common.h (objc_start_class_interface): Adjust prototype.
5251 (objc_start_category_interface): Likewise.
5252 (objc_start_protocol): Likewise.
5253 * stub-objc.c (objc_start_protocol): Adjust for extra argument.
5254 (objc_start_class_interface): Likewise.
5255 (objc_start_category_interface): Likewise.
5256
48b14f50 52572010-09-27 Ian Lance Taylor <iant@google.com>
5258
5259 * c-common.c (c_common_attribute_table): Add no_split_stack.
5260 (handle_no_split_stack_attribute): New static function.
5261
4abfc532 52622010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
5263
19931eea 5264 Merge from 'apple/trunk' branch on FSF servers.
4abfc532 5265
5266 2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
5267
19931eea 5268 Radar 4229905
4abfc532 5269 * c-common.h (objc_have_common_type): New declaration.
5270 * stub-objc.c (objc_have_common_type): New stub.
5271
5272 2005-06-22 Ziemowit Laski <zlaski@apple.com>
5273
5274 Radar 4154928
5275 * c-common.h (objc_common_type): New prototype.
19931eea 5276 * stub-objc.c (objc_common_type): New stub.
4abfc532 5277
7bd95dfd 52782010-09-24 Jan Hubicka <jh@suse.cz>
5279
5280 * c-common.c (handle_leaf_attribute): New function.
5281 (struct attribute_spec c_common_att): Add leaf.
5282
5789e05b 52832010-09-22 Joseph Myers <joseph@codesourcery.com>
5284
5285 * c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
5286 -comments-in-macros, -define-macro, -define-macro=, -dependencies,
5287 -dump, -dump=, -imacros, -imacros=, -include, -include=,
5288 -include-barrier, -include-directory, -include-directory=,
5289 -include-directory-after, -include-directory-after=,
5290 -include-prefix, -include-prefix=, -include-with-prefix,
5291 -include-with-prefix=, -include-with-prefix-after,
5292 -include-with-prefix-after=, -include-with-prefix-before,
5293 -include-with-prefix-before=, -no-integrated-cpp,
5294 -no-line-commands, -no-standard-includes, -no-warnings, -output,
5295 -output=, -pedantic, -pedantic-errors, -preprocess,
5296 -print-missing-file-dependencies, -trace-includes, -traditional,
5297 -traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
5298 -user-dependencies, -verbose, -write-dependencies,
5299 -write-user-dependencies, no-integrated-cpp, traditional): New.
5300
e6fb54ba 53012010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
5302
5303 PR objc/23710
9b60f3b0 5304 * c-common.h (objc_start_method_definition): Return bool instead
5305 of void.
5306 * stub-objc.c (objc_start_method_definition): Return bool instead
5307 of void.
5308
53092010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
5310
5311 PR objc/25965
5312 * c-common.h (objc_get_interface_ivars): New declaration.
5313 * stub-objc.c (objc_get_interface_ivars): New stub.
e6fb54ba 5314
e44b0a1f 53152010-09-15 Ian Lance Taylor <iant@google.com>
5316
5317 * c-common.c (parse_optimize_options): Do not capitalize warning
ebd7c4c1 5318 messages. Remove period at end of warning message.
e44b0a1f 5319
85c0a25c 53202010-09-09 Nathan Sidwell <nathan@codesourcery.com>
5321
5322 * c-common.c (handle_alias_ifunc_attribute): New, broken out of ...
5323 (handle_alias_attribute): ... here.
5324 (handle_ifunc_attribute): New.
5325
5ba33bf4 53262010-09-06 Mark Mitchell <mark@codesourcery.com>
5327
5328 * c-common.h (do_warn_double_promotion): Declare.
5329 * c-common.c (do_warn_double_promotion): Define.
5330
c920faa3 53312010-09-05 Mark Mitchell <mark@codesourcery.com>
5332
5333 * c.opt (Wdouble-promotion): New.
5334
9604e070 53352010-09-02 Joseph Myers <joseph@codesourcery.com>
5336
5337 * c.opt (falt-external-templates, fhuge-objects, fvtable-gc,
5338 fvtable-thunks, fxref): Mark no longer supported in help text.
5339
3b0273a1 53402010-09-02 Joseph Myers <joseph@codesourcery.com>
5341
5342 * c.opt (Wimport, fall-virtual, falt-external-templates,
5343 fdefault-inline, fenum-int-equiv, fexternal-templates,
5344 fguiding-decls, fhonor-std, fhuge-objects, flabels-ok,
5345 fname-mangling-version-, fnew-abi, fnonnull-objects,
5346 foptional-diags, fsquangle, fstrict-prototype, fthis-is-variable,
5347 fvtable-gc, fvtable-thunks, fxref): Mark with Ignore and Warn as
5348 applicable.
5349 (fhandle-exceptions): Mark with Alias and Warn.
5350 * c-opts.c (c_common_handle_option): Don't handle options marked
5351 as ignored.
5352
67089c6b 53532010-09-02 Joseph Myers <joseph@codesourcery.com>
5354
5355 * c.opt (Wcomments, Werror-implicit-function-declaration,
5356 ftemplate-depth-, std=c89, std=c9x, std=gnu89, std=gnu9x,
5357 std=iso9899:1990, std=iso9899:1999, std=iso9899:199x): Mark as
5358 aliases.
5359 * c-common.c (option_codes): Use OPT_Wcomment instead of
5360 OPT_Wcomments.
5361 * c-opts.c (warning_as_error_callback, c_common_handle_option):
5362 Don't handle options marked as aliases.
5363
2af087f2 53642010-08-25 Richard Guenther <rguenther@suse.de>
5365
5366 * c-common.c (c_common_get_alias_set): Remove special
5367 handling for pointers.
5368
48148244 53692010-08-20 Nathan Froyd <froydnj@codesourcery.com>
5370
5371 * c-common.c: Use FOR_EACH_VEC_ELT.
5372 * c-gimplify.c: Likewise.
5373 * c-pragma.c: Likewise.
5374
89c69892 53752010-08-16 Joseph Myers <joseph@codesourcery.com>
5376
5377 * c.opt (MDX): Change back to MD. Mark NoDriverArg instead of
5378 RejectDriver.
5379 (MMDX): Change back to MMD. Mark NoDriverArg instead of
5380 RejectDriver.
5381 * c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
5382 instead of OPT_MDX and OPT_MMDX.
5383
e28aa114 53842010-08-16 Joseph Myers <joseph@codesourcery.com>
5385
5386 * c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.
5387
99b66d21 53882010-08-12 Joseph Myers <joseph@codesourcery.com>
5389
5390 * c.opt (MD, MMD): Change to MDX and MMDX.
5391 * c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX.
5392
666f4bf0 53932010-08-11 Joseph Myers <joseph@codesourcery.com>
5394
5395 * c-opts.c (c_common_handle_option): Call handle_generated_option
5396 instead of handle_option.
5397
5ec815f6 53982010-08-08 Nathan Froyd <froydnj@codesourcery.com>
5399
5400 * c-pragma.c (add_to_renaming_pragma_list): Fix call to VEC_safe_push.
5401 (maybe_apply_renaming_pragma): Delete unneeded declarations.
5402
d13143cf 54032010-08-08 Nathan Froyd <froydnj@codesourcery.com>
5404
5405 * c-pragma.c (pending_redefinition): Declare. Declare a VEC of it.
5406 (pending_redefine_extname): Change type to a VEC.
5407 (add_to_renaming_pragma_list): Update for new type of
5408 pending_redefine_extname.
5ec815f6 5409 (maybe_apply_renaming_pragma): Likewise.
d13143cf 5410
2008c983 54112010-08-04 Arnaud Charlet <charlet@adacore.com>
5412
5413 * c-ada-spec.c (dump_ada_template): Mark underlying instance type as
5414 visited.
5415 (dump_generic_ada_node): Code clean up. Use TREE_VISITED flag to
5416 decide whether a type has already been declared/seen.
5417 Do not go to the original type.
5418 (dump_nested_types): New parameter forward.
5419 Generate forward declaration if needed and mark type as visited.
5420 (print_ada_declaration): Call dump_nested_types if not already done.
5421 Mark types as visited.
5422
9b091a73 54232010-08-03 Joseph Myers <joseph@codesourcery.com>
5424
5425 * c.opt (-print-pch-checksum): Remove option.
5426 * c-opts.c (c_common_handle_option): Don't handle
5427 OPT_print_pch_checksum.
5428
b78351e5 54292010-07-27 Joseph Myers <joseph@codesourcery.com>
5430
5431 * c-common.h (c_common_handle_option): Update prototype and return
5432 value type.
5433 * c-opts.c (c_common_handle_option): Update prototype and return
5434 value type. Update calls to handle_option and
5435 enable_warning_as_error.
5436
34416a90 54372010-07-27 Jakub Jelinek <jakub@redhat.com>
5438
5439 PR c/45079
5440 * c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
5441
fecf9011 54422010-07-27 Joseph Myers <joseph@codesourcery.com>
5443
5444 * c-common.h (c_common_missing_argument): Remove.
5445 * c-opts.c (c_common_missing_argument): Remove.
5446 * c.opt (A, D, F, I, MD, MMD, MQ, MT, U, fconstant-string-class=,
5447 idirafter, imacros, include, isysroot, isystem, iquote): Add
5448 MissingArgError.
5449 * c-objc-common.h (LANG_HOOKS_MISSING_ARGUMENT): Remove.
5450
e88d34f6 54512010-07-27 Joseph Myers <joseph@codesourcery.com>
5452
5453 * c-common.h (c_common_option_lang_mask,
5454 c_common_initialize_diagnostics, c_common_complain_wrong_lang_p):
5455 New.
5456 (c_common_init_options): Update prototype.
5457 * c-opts.c (c_common_option_lang_mask): New.
5458 (c_common_initialize_diagnostics): Split out of
5459 c_common_init_options.
5460 (accept_all_c_family_options, c_common_complain_wrong_lang_p):
5461 New.
5462 (c_common_init_options): Update prototype. Use decoded options in
5463 search for -lang-asm.
5464
1767a056 54652010-07-15 Nathan Froyd <froydnj@codesourcery.com>
5466
5467 * c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
5468 * c-format.c: Likewise.
5469
0b205f4c 54702010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
5471
5472 * c-common.h: Include diagnostic-core.h. Error if already
5473 included.
5474 * c-semantics.c: Do not define GCC_DIAG_STYLE here.
5475
1c58e3f1 54762010-07-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
5477
1f78217c 5478 * c-common.c (IN_GCC_FRONTEND): Do not undef.
1c58e3f1 5479 Do not include expr.h
5480 (vector_mode_valid_p): Move here.
5481
33cc157c 54822010-06-21 DJ Delorie <dj@redhat.com>
5483
5484 * c-pragma.c (handle_pragma_diagnostic): Add push/pop,
5485 allow these pragmas anywhere.
5486
54872010-06-14 Jakub Jelinek <jakub@redhat.com>
5488
5489 PR bootstrap/44509
5490 * c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
5491 (lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
5492 (lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
5493 ggc_strdup instead of xstrdup.
5494
54952010-06-10 Jakub Jelinek <jakub@redhat.com>
5496
5497 * c-cppbuiltin.c: Include cpp-id-data.h.
5498 (lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
5499 (lazy_hex_fp_value): New function.
5500 (builtin_define_with_hex_fp_value): Provide definitions lazily.
5501
9b40bfbf 55022010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
5503
5504 * c-gimplify.c: Do not include tree-flow.h
5505
202d6e5f 55062010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
5507
5508 PR other/44034
5509 * c-common.c: Rename targetm member:
5510 targetm.enum_va_list -> targetm.enum_va_list_p
5511
d3237426 55122010-06-28 Anatoly Sokolov <aesok@post.ru>
5513
5514 * c-common.c (shorten_compare): Adjust call to force_fit_type_double.
5515
596981c8 55162010-06-28 Steven Bosscher <steven@gcc.gnu.org>
5517
5518 * c-cppbuiltin.c: Do not include except.h.
5519
b9bdfa0b 55202010-06-24 Andi Kleen <ak@linux.intel.com>
5521
19931eea 5522 * c-common.c (warn_for_omitted_condop): New.
5523 * c-common.h (warn_for_omitted_condop): Add prototype.
b9bdfa0b 5524
55ad092d 55252010-06-21 Joseph Myers <joseph@codesourcery.com>
5526
5527 * c.opt (lang-objc): Remove.
5528 * c-opts.c (c_common_handle_option): Don't handle OPT_lang_objc.
5529
9e7c2572 55302010-06-21 Joern Rennecke <joern.rennecke@embecosm.com>
5531
5532 * c-opts.c: Include "tm_p.h".
5533
615ef0bb 55342010-06-20 Joseph Myers <joseph@codesourcery.com>
5535
5536 * c-common.c (parse_optimize_options): Update call to
5537 decode_options.
5538
aef48c9a 55392010-06-18 Nathan Froyd <froydnj@codesourcery.com>
5540
5541 * c-common.c (record_types_used_by_current_var_decl): Adjust for
5542 new type of types_used_by_cur_var_decl.
5543
d74003b4 55442010-06-17 Joern Rennecke <joern.rennecke@embecosm.com>
5545
5546 PR bootstrap/44512
5547 * c-cppbuiltin.c (builtin_define_with_hex_fp_value): Add cast
5548 for C++ standard compliance.
5549
1194d077 55502010-06-16 Jason Merrill <jason@redhat.com>
5551
5552 * c.opt: Add -Wnoexcept.
5553
d473d901 55542010-06-16 Richard Guenther <rguenther@suse.de>
5555
5556 PR c/44555
5557 * c-common.c (c_common_truthvalue_conversion): Remove
5558 premature and wrong optimization concering ADDR_EXPRs.
5559
b62dbfd3 55602010-06-15 Arnaud Charlet <charlet@adacore.com>
5561
5562 * c-ada-spec.c (dump_sloc): Remove column info.
5563 (is_simple_enum): New function.
5564 (dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada
5565 enum types when relevant.
5566
200dd99c 55672010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
5568
19931eea 5569 * c-common.c (conversion_warning): Warn at expression
200dd99c 5570 location.
5571
abf6a617 55722010-06-10 Joseph Myers <joseph@codesourcery.com>
5573
5574 * c-opts.c (c_common_handle_option): Don't handle
5575 OPT_fshow_column.
5576
ba72912a 55772010-06-08 Laurynas Biveinis <laurynas.biveinis@gmail.com>
5578
5579 * c-pragma.c (push_alignment): Use typed GC allocation.
5580 (handle_pragma_push_options): Likewise.
5581
5582 * c-common.c (parse_optimize_options): Likewise.
5583
5584 * c-common.h (struct sorted_fields_type): Add variable_size GTY
5585 option.
5586
4aafe913 55872010-06-07 Joseph Myers <joseph@codesourcery.com>
5588
5589 * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
5590 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
5591 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
5592 flag_signed_bitfields, warn_strict_null_sentinel,
5593 flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
5594 flag_gen_declaration, flag_no_gnu_keywords,
5595 flag_implement_inlines, flag_implicit_templates,
5596 flag_implicit_inline_templates, flag_optional_diags,
5597 flag_elide_constructors, flag_default_inline, flag_rtti,
5598 flag_conserve_space, flag_access_control, flag_check_new,
5599 flag_new_for_scope, flag_weak, flag_working_directory,
5600 flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
5601 flag_enforce_eh_specs, flag_threadsafe_statics,
5602 flag_pretty_templates): Remove.
5603 * c-common.h (flag_preprocess_only, flag_nil_receivers,
5604 flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
5605 flag_replace_objc_classes, flag_undef, flag_no_builtin,
5606 flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
5607 flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
5608 flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
5609 flag_no_gnu_keywords, flag_implement_inlines,
5610 flag_implicit_templates, flag_implicit_inline_templates,
5611 flag_optional_diags, flag_elide_constructors, flag_default_inline,
5612 flag_rtti, flag_conserve_space, flag_access_control,
5613 flag_check_new, flag_new_for_scope, flag_weak,
5614 flag_working_directory, flag_use_cxa_atexit,
5615 flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
5616 flag_threadsafe_statics, flag_pretty_templates,
5617 warn_strict_null_sentinel): Remove.
5618 * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
5619 fbuiltin, fcheck-new, fconserve-space, felide-constructors,
5620 fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
5621 fimplicit-inline-templates, fimplicit-templates,
5622 flax-vector-conversions, fms-extensions, fnil-receivers,
5623 fnonansi-builtins, fpretty-templates, freplace-objc-classes,
5624 frtti, fshort-double, fshort-enums, fshort-wchar,
5625 fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
5626 funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
5627 fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
5628 gen-decls, undef): Use Var.
5629 (fdefault-inline, foptional-diags): Document as doing nothing.
5630 * c-opts.c (c_common_handle_option): Remove cases for options now
5631 using Var. Mark ignored options as such.
5632
7bedc3a0 56332010-06-05 Steven Bosscher <steven@gcc.gnu.org>
5634
19931eea 5635 * c-common.c: Moved to here from parent directory.
7bedc3a0 5636 * c-common.def: Likewise.
5637 * c-common.h: Likewise.
5638 * c-cppbuiltin.c: Likewise.
5639 * c-dump.c: Likewise.
5640 * c-format.c: Likewise.
5641 * c-format.h : Likewise.
5642 * c-gimplify.c: Likewise.
5643 * c-lex.c: Likewise.
5644 * c-omp.c: Likewise.
5645 * c.opt: Likewise.
5646 * c-opts.c: Likewise.
5647 * c-pch.c: Likewise.
5648 * c-ppoutput.c: Likewise.
5649 * c-pragma.c: Likewise.
5650 * c-pragma.h: Likewise.
5651 * c-pretty-print.c: Likewise.
5652 * c-pretty-print.h: Likewise.
5653 * c-semantics.c: Likewise.
5654 * stub-objc.c: Likewise.
5655
5656 * c-common.c: Include gt-c-family-c-common.h.
5657 * c-pragma.c: Include gt-c-family-c-pragma.h.
5658\f
d353bf18 5659Copyright (C) 2010-2015 Free Software Foundation, Inc.
7bedc3a0 5660
5661Copying and distribution of this file, with or without modification,
5662are permitted in any medium without royalty provided the copyright
5663notice and this notice are preserved.