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