]> gcc.gnu.org Git - gcc.git/blame - gcc/c/ChangeLog
alpha.h (TARGET_SUPPORTS_WIDE_INT): New define.
[gcc.git] / gcc / c / ChangeLog
CommitLineData
755e528f
MP
12015-05-08 Marek Polacek <polacek@redhat.com>
2
3 PR c/64918
4 * c-typeck.c (add_pending_init): Use OPT_Woverride_init_side_effects.
5 (output_init_element): Likewise.
6
0173bd2a
MP
72015-05-07 Marek Polacek <polacek@redhat.com>
8
9 PR c/65179
10 * c-typeck.c (build_binary_op): Warn when left shifting a negative
11 value.
12
9babc352
MP
132015-04-30 Marek Polacek <polacek@redhat.com>
14
15 * c-typeck.c (set_init_label): Call error_at instead of error and
16 pass LOC to it.
17
ac9f18db
MP
18 * c-typeck.c (c_incomplete_type_error): Refactor to use %qT. Print
19 the type of a decl.
20
ec3fba51
MP
21 * c-typeck.c (c_build_va_arg): Clarify the error message.
22
b811915d
TS
232015-04-29 Thomas Schwinge <thomas@codesourcery.com>
24
25 * c-parser.c (c_parser_oacc_enter_exit_data): Use
26 OMP_STANDALONE_CLAUSES.
27
f3075008
MP
282015-04-28 Marek Polacek <polacek@redhat.com>
29
30 * c-parser.c (c_parser_binary_expression): Remove duplicate line.
31
4e81b788
MP
322015-04-28 Marek Polacek <polacek@redhat.com>
33
34 PR c/65901
35 * c-typeck.c (c_build_va_arg): Require TYPE be a complete type.
36
6c1db78e
MP
372015-04-25 Marek Polacek <polacek@redhat.com>
38
39 PR c/52085
40 * c-decl.c (finish_enum): Copy over TYPE_ALIGN. Also check for "mode"
41 attribute.
42
5c4abbb8
MP
432015-04-23 Marek Polacek <polacek@redhat.com>
44
45 PR c/65345
46 * c-decl.c (set_labels_context_r): New function.
47 (store_parm_decls): Call it via walk_tree_without_duplicates.
48 * c-typeck.c (convert_lvalue_to_rvalue): Use create_tmp_var_raw
49 instead of create_tmp_var. Build TARGET_EXPR instead of
50 COMPOUND_EXPR.
51 (build_atomic_assign): Use create_tmp_var_raw instead of
52 create_tmp_var. Build TARGET_EXPRs instead of MODIFY_EXPR.
53
06aca1d5
IV
542015-04-20 Ilya Verbin <ilya.verbin@intel.com>
55
56 * c-parser.c (c_parser_oacc_enter_exit_data): Remove excess semicolon.
57 (c_parser_omp_target_update): Add missed %> to error_at ().
58
8fba1830
BRF
592015-04-10 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
60
61 PR target/55143
62 * c-decl.c (c_default_pointer_mode): Remove definition.
63 * c-tree.h (c_default_pointer_mode): Remove declaration.
64
62021f64
TB
652015-03-27 Tobias Burnus <burnus@net-b.de>
66
67 PR c/65586
68 * c-parser.c (c_parser_skip_to_pragma_eol): Optionally, don't
69 error out.
70 (c_parser_omp_for, c_parser_omp_parallel, c_parser_omp_distribute,
71 c_parser_omp_teams, c_parser_omp_target, c_parser_omp_declare):
72 Update calls to not error for skipped omp pragmas with -fopenmp-simd.
73
9b65e171
JJ
742015-03-19 Jakub Jelinek <jakub@redhat.com>
75
76 * c-decl.c (c_decl_attributes): Also add "omp declare target"
77 attribute for DECL_EXTERNAL VAR_DECLs.
78
17958621
JJ
792015-03-11 Jakub Jelinek <jakub@redhat.com>
80
81 * c-parser.c (c_parse_init): Don't call xstrdup on get_identifier
82 argument.
83
7ccb1a11
JJ
842015-03-10 Jakub Jelinek <jakub@redhat.com>
85
86 PR c/65120
87 * c-typeck.c (parser_build_binary_op): Check for tcc_comparison
88 before preparing arguments to warn_logical_not_parentheses.
89
01177669
JJ
902015-03-09 Jakub Jelinek <jakub@redhat.com>
91
92 PR c/65120
93 * c-typeck.c (parser_build_binary_op): Don't warn for
94 !!x == y or !b == y where b is _Bool.
95
802ac282
MP
962015-03-09 Marek Polacek <polacek@redhat.com>
97
98 * c-convert.c (convert): Make use of do_ubsan_in_current_function.
99 * c-decl.c (grokdeclarator): Likewise.
100 * c-typeck.c (build_binary_op): Likewise.
101
e5165b60
MP
1022015-02-27 Marek Polacek <polacek@redhat.com>
103
104 PR c/65228
105 * c-decl.c (start_decl): Return NULL_TREE if decl is an error node.
106
065d214c
MP
1072015-02-14 Marek Polacek <polacek@redhat.com>
108
109 PR c/64768
110 * c-decl.c (grokdeclarator): Set the range of a flexible array member
111 declared through a typedef name.
112
e5d9235b
MP
1132015-02-13 Marek Polacek <polacek@redhat.com>
114
115 PR c/65050
116 * c-decl.c (grokdeclarator): Print also the type when giving
117 the error message about array's incomplete element type.
118
fa01ffcc
JJ
1192015-02-11 Jakub Jelinek <jakub@redhat.com>
120
121 PR c/64824
122 * c-parser.c (c_parser_binary_expression): Fix OpenMP stack[sp].prec
123 check in the POP macro.
124
c3e38a03
MP
1252015-02-09 Marek Polacek <polacek@redhat.com>
126
127 PR c/64856
128 * c-typeck.c (process_init_element): Don't always wrap
129 COMPOUND_LITERAL_EXPR in a SAVE_EXPR in C99 mode when
130 initializing a range of elements.
131
4886ec8e
JJ
1322015-02-04 Jakub Jelinek <jakub@redhat.com>
133
134 PR c/64824
135 PR c/64868
136 * c-parser.c (c_parser_omp_atomic): Handle RDIV_EXPR.
137
c3e38a03 1382015-02-02 Bruno Loff <bruno.loff@gmail.com>
a4bb6959
BL
139
140 * c-parser.c (c_parser_declspecs): Call invoke_plugin_callbacks after
141 processing enum declaration.
142
7b33f0c8
MP
1432015-01-29 Marek Polacek <polacek@redhat.com>
144
145 PR c/64709
146 * c-typeck.c (pop_init_level): If constructor_elements has
147 exactly one element with integer_zerop value, set constructor_zeroinit
148 to 1. Remove braces around warning_init call.
149
dea63e49
JJ
1502015-01-27 Jakub Jelinek <jakub@redhat.com>
151
152 PR c/64766
153 * c-typeck.c (store_init_value): Don't overwrite DECL_INITIAL
154 of FUNCTION_DECLs with error_mark_node.
155
d38f7dce
JJ
1562015-01-26 Jakub Jelinek <jakub@redhat.com>
157
158 PR c/64778
159 * c-typeck.c (convert_arguments): Return -1 if there are
160 error_args, even if we've diagnosed too many arguments.
161
cbf5d0e7
RB
1622015-01-21 Richard Biener <rguenther@suse.de>
163
164 PR middle-end/64313
165 * c-decl.c (merge_decls): Call set_builtin_decl_declared_p
166 for builtins the user declared correctly.
167
41dbbb37
TS
1682015-01-15 Thomas Schwinge <thomas@codesourcery.com>
169 Bernd Schmidt <bernds@codesourcery.com>
170 Cesar Philippidis <cesar@codesourcery.com>
171 James Norris <jnorris@codesourcery.com>
172 Jakub Jelinek <jakub@redhat.com>
173 Ilmir Usmanov <i.usmanov@samsung.com>
174
175 * c-parser.c: Include "gomp-constants.h".
176 (c_parser_omp_clause_map): Use enum gomp_map_kind instead of enum
177 omp_clause_map_kind. Use GOMP_MAP_* instead of OMP_CLAUSE_MAP_*.
178 Use OMP_CLAUSE_SET_MAP_KIND.
179 (c_parser_pragma): Handle PRAGMA_OACC_ENTER_DATA,
180 PRAGMA_OACC_EXIT_DATA, PRAGMA_OACC_UPDATE.
181 (c_parser_omp_construct): Handle PRAGMA_OACC_CACHE,
182 PRAGMA_OACC_DATA, PRAGMA_OACC_KERNELS, PRAGMA_OACC_LOOP,
183 PRAGMA_OACC_PARALLEL, PRAGMA_OACC_WAIT.
184 (c_parser_omp_clause_name): Handle "auto", "async", "copy",
185 "copyout", "create", "delete", "deviceptr", "gang", "host",
186 "num_gangs", "num_workers", "present", "present_or_copy", "pcopy",
187 "present_or_copyin", "pcopyin", "present_or_copyout", "pcopyout",
188 "present_or_create", "pcreate", "seq", "self", "vector",
189 "vector_length", "wait", "worker".
190 (OACC_DATA_CLAUSE_MASK, OACC_KERNELS_CLAUSE_MASK)
191 (OACC_ENTER_DATA_CLAUSE_MASK, OACC_EXIT_DATA_CLAUSE_MASK)
192 (OACC_LOOP_CLAUSE_MASK, OACC_PARALLEL_CLAUSE_MASK)
193 (OACC_UPDATE_CLAUSE_MASK, OACC_WAIT_CLAUSE_MASK): New macros.
194 (c_parser_omp_variable_list): Handle OMP_CLAUSE__CACHE_.
195 (c_parser_oacc_wait_list, c_parser_oacc_data_clause)
196 (c_parser_oacc_data_clause_deviceptr)
197 (c_parser_omp_clause_num_gangs, c_parser_omp_clause_num_workers)
198 (c_parser_oacc_clause_async, c_parser_oacc_clause_wait)
199 (c_parser_omp_clause_vector_length, c_parser_oacc_all_clauses)
200 (c_parser_oacc_cache, c_parser_oacc_data, c_parser_oacc_kernels)
201 (c_parser_oacc_enter_exit_data, c_parser_oacc_loop)
202 (c_parser_oacc_parallel, c_parser_oacc_update)
203 (c_parser_oacc_wait): New functions.
204 * c-tree.h (c_finish_oacc_parallel, c_finish_oacc_kernels)
205 (c_finish_oacc_data): New prototypes.
206 * c-typeck.c: Include "gomp-constants.h".
207 (handle_omp_array_sections): Handle GOMP_MAP_FORCE_DEVICEPTR. Use
208 GOMP_MAP_* instead of OMP_CLAUSE_MAP_*. Use
209 OMP_CLAUSE_SET_MAP_KIND.
210 (c_finish_oacc_parallel, c_finish_oacc_kernels)
211 (c_finish_oacc_data): New functions.
212 (c_finish_omp_clauses): Handle OMP_CLAUSE__CACHE_,
213 OMP_CLAUSE_NUM_GANGS, OMP_CLAUSE_NUM_WORKERS,
214 OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_ASYNC, OMP_CLAUSE_WAIT,
215 OMP_CLAUSE_AUTO, OMP_CLAUSE_SEQ, OMP_CLAUSE_GANG,
216 OMP_CLAUSE_WORKER, OMP_CLAUSE_VECTOR, and OMP_CLAUSE_MAP's
217 GOMP_MAP_FORCE_DEVICEPTR.
218
adfac8df
JJ
2192015-01-09 Michael Collison <michael.collison@linaro.org>
220
221 * c-array-notation.c: Include hash-set.h, machmode.h,
222 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
223 fold-const.h, wide-int.h, and inchash.h due to flattening of tree.h.
224 * c-aux-info.c: Ditto.
225 * c-convert.c: Ditto.
226 * c-decl.c: Ditto.
227 * c-errors.c: Ditto.
228 * c-lang.c: Dittoxs.
229 * c-objc-common.c: Ditto.
230 * c-parser.c: Ditto.
231 * c-typeck.c: Include hash-set.h, machmode.h,
232 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
233 fold-const.h, wide-int.h, inchash.h, real.h and
234 fixed-value.h due to flattening of tree.h.
235
2cc901dc
MP
2362015-01-07 Marek Polacek <polacek@redhat.com>
237
238 PR c/64417
239 * c-typeck.c (process_init_element): Disallow initialization of
240 a flexible array member with a string constant if the structure
241 is in an array.
242
5624e564
JJ
2432015-01-05 Jakub Jelinek <jakub@redhat.com>
244
e5341100
JJ
245 PR sanitizer/64344
246 * c-typeck.c (convert_for_assignment, c_finish_return): For
247 -fsanitize=float-cast-overflow casts from REAL_TYPE to integer/enum
248 types also set in_late_binary_op around convert call.
249 * c-convert.c (convert): For -fsanitize=float-cast-overflow REAL_TYPE
250 to integral type casts, if not in_late_binary_op, pass c_fully_fold
251 result on expr as last argument to ubsan_instrument_float_cast,
252 if in_late_binary_op, don't use c_save_expr but save_expr.
253
5624e564
JJ
254 Update copyright years.
255
5bd012f8
MP
2562015-01-05 Marek Polacek <polacek@redhat.com>
257
258 PR c/64423
259 * c-typeck.c (build_array_ref): Pass loc down to
260 warn_array_subscript_with_type_char.
261
768952be
MU
2622014-12-20 Martin Uecker <uecker@eecs.berkeley.edu>
263
264 * c-typeck.c: New behavious for pointers to arrays with qualifiers
265 (common-pointer-type): For pointers to arrays take qualifiers from
266 element type.
267 (build_conditional_expr): Add warnings for lost qualifiers.
268 (comp-target-types): Allow pointers to arrays with different qualifiers.
269 (convert-for-assignment): Adapt warnings for discarded qualifiers. Add
270 WARNING_FOR_QUALIFIERS macro and rename WARN_FOR_QUALIFIERS
271 to PEDWARN_FOR_QUALIFIERS.
272
8f94a8c4
JJ
2732014-12-17 Jakub Jelinek <jakub@redhat.com>
274
275 PR sanitizer/64289
276 * c-convert.c: Include ubsan.h.
277 (convert): For real -> integral casts and
278 -fsanitize=float-cast-overflow don't call convert_to_integer, but
279 instead instrument the float cast directly.
280
b731b390
JJ
2812014-11-29 Jakub Jelinek <jakub@redhat.com>
282
283 * c-typeck.c (convert_lvalue_to_rvalue, build_atomic_assign,
284 c_finish_stmt_expr): Remove NULL last argument from
285 create_tmp_var_raw and create_tmp_var calls.
286 * c-array-notation.c (fix_builtin_array_notation_fn,
287 build_array_notation_expr, fix_conditional_array_notations_1,
288 fix_array_notation_expr, fix_array_notation_call_expr): Likewise.
289
541e35a6
MP
2902014-11-28 Marek Polacek <polacek@redhat.com>
291
292 PR c/63862
293 * c-typeck.c (build_binary_op) <RSHIFT_EXPR, LSHIFT_EXPR>: Don't
294 convert the right operand to integer type.
295
b286be94
MP
2962014-11-25 Marek Polacek <polacek@redhat.com>
297
298 PR c/63877
299 * c-decl.c (start_function): Disable -Wmissing-declarations warning
300 for inline functions.
301
aa7da51a
JJ
3022014-11-21 Jakub Jelinek <jakub@redhat.com>
303
304 PR target/63764
305 * c-typeck.c (build_array_ref): Adjust
306 convert_vector_to_pointer_for_subscript caller. If it returns true,
307 call non_lvalue_loc on the result.
308
d876207f
RB
3092014-11-11 Richard Biener <rguenther@suse.de>
310
311 * c-decl.c (c_init_decl_processing): Do not set pedantic_lvalues
312 to true.
313
e5e44252
AK
3142014-11-10 Andi Kleen <ak@linux.intel.com>
315
316 PR c/60804
317 * c-parser.c (c_parser_statement_after_labels): Call
318 check_no_cilk.
319 (c_parser_if_statement): Dito.
320 (c_parser_switch_statement): Dito.
321 (c_parser_while_statement): Dito.
322 (c_parser_do_statement): Dito.
323 (c_parser_for_statement): Dito.
324 * c-typeck.c (c_finish_loop): Dito.
325
13c21655
PC
3262014-11-10 Paolo Carlini <paolo.carlini@oracle.com>
327
328 * c-typeck.c (build_binary_op): Use OPT_Wshift_count_negative and
329 OPT_Wshift_count_overflow in the warnings.
330
2d51fcef
MP
3312014-10-30 Marek Polacek <polacek@redhat.com>
332
333 * c-objc-common.c (c_tree_printer) <case 'T'>: For a typedef name,
334 print the stripped version as well, if they're not the same.
335
ef4bddc2
RS
3362014-10-29 Richard Sandiford <richard.sandiford@arm.com>
337
338 * c-decl.c, c-tree.h, c-typeck.c: Remove redundant enum from
339 machine_mode.
340
c582198b
AM
3412014-10-28 Andrew MacLeod <amacleod@redhat.com>
342
343 * c-decl.c: Adjust include files.
344 * c-parser.c: Ditto.
345
ddc8de03
PM
3462014-10-27 Phil Muldoon <pmuldoon@redhat.com>
347 Tom Tromey <tromey@redhat.com>
348
349 * c-tree.h (enum c_oracle_request): New.
350 (c_binding_oracle_function): New typedef.
351 (c_binding_oracle, c_pushtag, c_bind): Declare.
352 * c-decl.c (c_binding_oracle): New global.
353 (I_SYMBOL_CHECKED): New macro.
354 (i_symbol_binding): New function.
355 (I_SYMBOL_BINDING, I_SYMBOL_DECL): Redefine.
356 (I_TAG_CHECKED): New macro.
357 (i_tag_binding): New function.
358 (I_TAG_BINDING, I_TAG_DECL): Redefine.
359 (I_LABEL_CHECKED): New macro.
360 (i_label_binding): New function.
361 (I_LABEL_BINDING, I_LABEL_DECL): Redefine.
362 (c_print_identifier): Save and restore c_binding_oracle.
363 (c_pushtag, c_bind): New functions.
364
60393bbc
AM
3652014-10-27 Andrew MacLeod <amacleod@redhat.com>
366
367 * c-typeck.c: Adjust include files.
368
d723bb7c
MLI
3692014-10-26 Manuel López-Ibáñez <manu@gcc.gnu.org>
370
371 PR c++/53061
372 * c-objc-common.c (c_objc_common_init): Do not do diagnostics
373 initialization here...
374 (c_initialize_diagnostics): ... but here. Set defaults after
375 building pretty-printer.
376
1bc5a451
MP
3772014-10-23 Marek Polacek <polacek@redhat.com>
378
379 PR c/63626
380 * c-decl.c (pop_scope): Don't print warning in external_scope.
381
4435bb92
MP
3822014-10-19 Marek Polacek <polacek@redhat.com>
383
384 PR c/63567
385 * c-typeck.c (output_init_element): Allow initializing objects with
386 static storage duration with compound literals even in C99 and add
387 pedwarn for it.
388
7278465e
MP
3892014-10-17 Marek Polacek <polacek@redhat.com>
390
391 PR c/63567
392 * c-typeck.c (digest_init): Allow initializing objects with static
393 storage duration with compound literals even in C99 and add pedwarn
394 for it.
395
d9b7be2e
MP
3962014-10-17 Marek Polacek <polacek@redhat.com>
397
398 PR c/63543
399 * c-tree.h (C_TYPE_ERROR_REPORTED): Define.
400 * c-typeck.c (build_indirect_ref): Don't print the "dereferencing..."
401 error multiple times. Print the type.
402
f406ae1f
MP
4032014-10-17 Marek Polacek <polacek@redhat.com>
404
405 PR c/63549
406 * c-typeck.c (build_array_ref): Bail if the index in an incomplete
407 type.
408
92574c7c
MP
4092014-10-17 Marek Polacek <polacek@redhat.com>
410
411 * c-decl.c (grokdeclarator): Use OPT_Wimplicit_int unconditionally.
412 (start_function): Use OPT_Wimplicit_int instead of 0.
413 (store_parm_decls_oldstyle): Likewise.
414
1bc4a978
MT
4152014-10-17 Alan Modra <amodra@gmail.com>
416
417 PR middle-end/61848
418 * c-decl.c (merge_decls): Don't merge section name or tls model
419 to newdecl symtab node, instead merge to olddecl. Override
420 existing olddecl section name. Set tls_model for all thread-local
421 vars, not just OMP thread-private ones. Remove incorrect comment.
422
83685514
AM
4232014-10-16 Andrew MacLeod <amacleod@redhat.com>
424
425 * c-decl.c: Adjust include files.
426
78a7c317
DD
4272014-10-14 DJ Delorie <dj@redhat.com>
428
429 * c-parser.c (c_parse_init): Add RID entries for each __intN.
430 (c_token_starts_typename): Check all __intN, not just __int128.
431 (c_token_starts_declspecs): Likewise.
432 (c_parser_declspecs): Likewise.
433 (c_parser_attribute_any_word): Likewise.
434 (c_parser_objc_selector): Likewise.
435 * c-tree.h (c_typespec_keyword): cts_int128 -> cts_int_n.
436 (struct c_declspecs): Add int_n_idx field to record *which* __intN
437 is specified.
438 * c-decl.c (declspecs_add_type): Check for all __intN, not just
439 __int128.
440 (finish_declspecs): Likewise.
441
74d98c1e
AB
4422014-10-13 Anthony Brandon <anthony.brandon@gmail.com>
443
444 * c-parser.c (c_parser_all_labels): New function to replace
445 the duplicate code.
446 (c_parser_statement): Call the new function.
447
84937de2
MP
4482014-10-09 Marek Polacek <polacek@redhat.com>
449
450 PR c/63480
451 * c-typeck.c (pop_init_level): Don't warn about initializing
452 with { }.
453
0382aaa0
MP
4542014-10-07 Marek Polacek <polacek@redhat.com>
455
456 PR c/59717
457 * c-decl.c (header_for_builtin_fn): New function.
458 (implicitly_declare): Suggest which header to include.
459
7a0ca710
MP
4602014-10-07 Marek Polacek <polacek@redhat.com>
461
462 * c-convert.c (convert): Use error_operand_p.
463 * c-typeck.c (require_complete_type): Likewise.
464 (really_atomic_lvalue): Likewise.
465 (digest_init): Likewise.
466 (handle_omp_array_sections_1): Likewise.
467
6bc8a126
MP
4682014-10-03 Marek Polacek <polacek@redhat.com>
469
470 PR c/63453
471 * c-decl.c (pop_scope): Don't warn about "inline function declared
472 but never defined" for functions marked with gnu_inline attribute.
473
d90c0a59
JJ
4742014-09-25 Jakub Jelinek <jakub@redhat.com>
475
476 PR c++/63249
477 * c-parser.c (c_parser_omp_variable_list): Call mark_exp_read
478 on low_bound and length.
479
083e891e
MP
4802014-09-24 Marek Polacek <polacek@redhat.com>
481
482 PR c/61405
483 PR c/53874
484 * c-parser.c: Don't define CPP_KEYWORD.
485 (c_parser_switch_statement): Pass original type to c_finish_case.
486 * c-tree.h (c_finish_case): Update declaration.
487 * c-typeck.c (c_finish_case): Add TYPE parameter. Pass it
488 conditionally to c_do_switch_warnings.
489
8d95fe25
MP
4902014-09-03 Marek Polacek <polacek@redhat.com>
491
492 PR c/62024
493 * c-parser.c (c_parser_static_assert_declaration_no_semi): Strip no-op
494 conversions.
495
9a771876
JJ
4962014-09-02 Jakub Jelinek <jakub@redhat.com>
497 Balaji V. Iyer <balaji.v.iyer@intel.com>
498 Igor Zamyatin <igor.zamyatin@intel.com>
499
500 * c-parser.c (c_parser_cilk_for): New function.
501 (c_parser_cilk_grainsize): Likewise.
502 (c_get_temp_regvar): Likewise.
503 (c_parser_statement_after_labels): Added RID_CILK_FOR case.
504 (c_parser_pragma): Added PRAGMA_CILK_GRAINSIZE case.
505 (c_parser_omp_for_loop): Added CILK_FOR and CILK_SIMD checks.
506 * c-typeck.c (c_finish_omp_clauses): Added OMP_CLAUSE__CILK_FOR_COUNT_
507 case.
508
b7679d96
CG
5092014-08-27 Chen Gang <gang.chen.5i5j@gmail.com>
510
511 * c-aux-info.c (gen_type): Resize 'buff' from 10 to 23 bytes,
512 with using HOST_WIDE_INT without truncation to 'int'
513
59ea0364
MP
5142014-08-22 Marek Polacek <polacek@redhat.com>
515
516 PR c++/62199
517 * c-typeck.c (parser_build_binary_op): Adjust call to
518 warn_logical_not_parentheses.
519
671a475e
IZ
5202014-08-22 Igor Zamyatin <igor.zamyatin@intel.com>
521
522 PR other/62008
523 * c-parser.c (c_parser_array_notation): Check for correct
524 type of an array added.
525
04159acf
MP
5262014-08-19 Marek Polacek <polacek@redhat.com>
527
528 PR c++/62153
529 * c-typeck.c (build_binary_op): If either operand of a comparison
530 is a boolean expression, call maybe_warn_bool_compare.
531
c77935ee
PP
5322014-08-19 Patrick Palka <ppalka@gcc.gnu.org>
533
534 PR c/45584
535 * c-typeck.c (build_c_cast): Do a conversion even when the
536 TYPE_MAIN_VARIANTs are the same.
537
35aff4fb
MP
5382014-08-19 Marek Polacek <polacek@redhat.com>
539
540 * c-decl.c (diagnose_mismatched_decls): Unconditionally call
541 pedwarn_c99 instead of pedwarn.
542 (grokfield): Likewise.
543 (warn_defaults_to): New function.
544 (grokdeclarator): Call warn_defaults_to instead of pedwarn_c99.
545 Unconditionally call pedwarn_c99 instead of pedwarn.
546 (start_function): Call warn_defaults_to instead of pedwarn_c99.
547 (declspecs_add_scspec): Call pedwarn_c99 instead of pedwarn, don't
548 check flag_isoc11 before.
549 * c-errors.c (pedwarn_c99): Change the return type to bool.
550 Handle -Wc99-c11-compat.
551 * c-parser.c (disable_extension_diagnostics): Handle
552 warn_c99_c11_compat.
553 (restore_extension_diagnostics): Likewise.
554 (c_parser_static_assert_declaration_no_semi): Call pedwarn_c99
555 instead of pedwarn, don't check flag_isoc11 before.
556 (c_parser_declspecs): Likewise.
557 (c_parser_alignas_specifier): Likewise.
558 (c_parser_alignof_expression): Likewise.
559 (c_parser_generic_selection): Likewise.
560 * c-tree.h (pedwarn_c99): Update declaration.
561 * c-typeck.c (c_finish_return): Call pedwarn or warning_at instead
562 of pedwarn_c99.
563
177cce46
MP
5642014-08-19 Marek Polacek <polacek@redhat.com>
565
566 * c-decl.c (warn_variable_length_array): Pass OPT_Wvla unconditionally
567 to pedwarn_c90.
568 * c-errors.c: Include "opts.h".
569 (pedwarn_c90): Rewrite to handle -Wno-c90-c99-compat better.
570 * c-parser.c (disable_extension_diagnostics): Handle negative value
571 of warn_c90_c99_compat, too.
572 (restore_extension_diagnostics): Likewise.
573 (c_parser_compound_statement_nostart): Pass
574 OPT_Wdeclaration_after_statement unconditionally to pedwarn_c90.
575
6dc99c33
MP
5762014-08-12 Marek Polacek <polacek@redhat.com>
577
578 * c-parser.c (c_parser_postfix_expression) <case RID_FUNCTION_NAME>:
579 Add pedwarn.
580 (c_parser_postfix_expression) <case RID_PRETTY_FUNCTION_NAME>:
581 Likewise.
582 (c_parser_postfix_expression) <case RID_C99_FUNCTION_NAME>: Likewise.
583
f3bede71
MP
5842014-08-10 Marek Polacek <polacek@redhat.com>
585
586 PR c/51849
587 * c-decl.c (build_array_declarator): Remove check for !flag_isoc99.
588 Call pedwarn_c90 instead of pedwarn.
589 (check_bitfield_type_and_width): Likewise.
590 (declspecs_add_qual): Likewise.
591 (declspecs_add_type): Likewise.
592 (warn_variable_length_array): Unify function for -pedantic and -Wvla.
593 Adjust to only call pedwarn_c90.
594 (grokdeclarator): Remove pedantic && !flag_isoc99 check. Call
595 pedwarn_c90 instead of pedwarn.
596 * c-errors.c (pedwarn_c90): Handle -Wc90-c99-compat.
597 * c-parser.c (disable_extension_diagnostics): Handle
598 warn_c90_c99_compat.
599 (restore_extension_diagnostics): Likewise.
600 (c_parser_enum_specifier): Remove check for !flag_isoc99. Call
601 pedwarn_c90 instead of pedwarn.
602 (c_parser_initelt): Likewise.
603 (c_parser_postfix_expression): Likewise.
604 (c_parser_postfix_expression_after_paren_type): Likewise.
605 (c_parser_compound_statement_nostart): Remove check for !flag_isoc99.
606 * c-tree.h: Fix formatting.
607 * c-typeck.c (build_array_ref): Remove check for !flag_isoc99. Call
608 pedwarn_c90 instead of pedwarn.
609
9f25a338
TS
6102014-08-07 Trevor Saunders <tsaunders@mozilla.com>
611
612 * c-typeck.c: Remove include of pointer-set.h.
613
044331a8
MP
6142014-08-07 Marek Polacek <polacek@redhat.com>
615
616 * c-typeck.c (pointer_diff): Remove P - (P + CST) optimization.
617
b787e7a2
TS
6182014-08-02 Trevor Saunders <tsaunders@mozilla.com>
619
620 * c-typeck.c: Use hash_map instead of pointer_map.
621
6e2830c3
TS
6222014-08-02 Trevor Saunders <tsaunders@mozilla.com>
623
624 * c-decl.c: Use hash_set instead of pointer_set.
625
a7ee52fb
IZ
6262014-08-01 Igor Zamyatin <igor.zamyatin@intel.com>
627
628 PR middle-end/61455
629 * c-array-notation.c (expand_array_notations): Handling
630 of DECL_EXPR added.
631
b4dfdc11
MG
6322014-07-31 Marc Glisse <marc.glisse@inria.fr>
633
634 PR c++/60517
635 * c-typeck.c (c_finish_return): Return 0 instead of the address of
636 a local variable.
637
976d5a22
TT
6382014-07-30 Tom Tromey <tromey@redhat.com>
639
640 * c-typeck.c (struct constructor_stack) <designator_depth>: New
641 field.
642 (really_start_incremental_init, push_init_level): Initialize
643 designator_depth.
644 (pop_init_level): Set global designator_depth.
645 (process_init_element): Check for designated_init attribute.
646
30281de2
MP
6472014-07-20 Marek Polacek <polacek@redhat.com>
648
649 PR c/61852
650 * c-decl.c (implicit_decl_warning): Add location_t parameter. Use it.
651 (implicitly_declare): Pass location to implicit_decl_warning.
652
b108f48f
JJ
6532014-07-14 Jakub Jelinek <jakub@redhat.com>
654
655 PR middle-end/61294
656 * c-parser.c (c_parser_expr_list): Add new argument literal_zero_mask.
657 If non-NULL, call c_parser_check_literal_zero.
658 (c_parser_check_literal_zero): New function.
659 (c_parser_postfix_expression_after_primary): Adjust
660 c_parser_expr_list caller, handle -Wmemset-transposed-args.
661
773ec47f
MP
6622014-07-06 Marek Polacek <polacek@redhat.com>
663
664 PR c/6940
665 * c-decl.c (grokdeclarator): Set C_ARRAY_PARAMETER.
666 * c-tree.h (C_ARRAY_PARAMETER): Define.
667 * c-typeck.c (c_expr_sizeof_expr): Warn when using sizeof on an array
668 function parameter.
669
22e1cf1c
JH
6702014-07-02 Jan Hubicka <hubicka@ucw.cz>
671 Chen Gang <gang.chen.5i5j@gmail.com>
672
673 * c-decl.c (duplicate_decls): CLear DECL_STRUCT_FUNCTION before
674 releasing symbol.
675
52ec0ea3
MP
6762014-07-01 Marek Polacek <polacek@redhat.com>
677
678 * c-typeck.c (convert_for_assignment): Pass OPT_Wint_conversion
679 instead of 0 to WARN_FOR_ASSIGNMENT.
680
d5c3d343
MP
6812014-07-01 Marek Polacek <polacek@redhat.com>
682
683 PR c/58286
684 * c-typeck.c (convert_for_assignment): Pass
685 OPT_Wincompatible_pointer_types instead of 0 to WARN_FOR_ASSIGNMENT.
686
6a7253a4
MP
6872014-06-30 Marek Polacek <polacek@redhat.com>
688
689 * c-decl.c (grokdeclarator): Don't instrument VLAs if the function
690 has no_sanitize_undefined attribute.
691
5e88a8f4
IZ
6922014-06-30 Igor Zamyatin <igor.zamyatin@intel.com>
693
694 PR middle-end/57541
695 * c-array-notation.c (fix_builtin_array_notation_fn):
696 Check for 0 arguments in builtin call. Check that bultin argument is
697 correct.
698 * c-parser.c (c_parser_array_notation): Check for incorrect initial
699 index.
700
9698b078
SH
7012014-06-27 Sebastian Huber <sebastian.huber@embedded-brains.de>
702
703 * c-parser.c (c_parser_declaration_or_fndef): Discard all type
704 qualifiers in __auto_type for atomic types.
705 (c_parser_typeof_specifier): Discard all type qualifiers in
706 __typeof__ for atomic types.
707
6e07c515
MP
7082014-06-25 Marek Polacek <polacek@redhat.com>
709
710 PR c/61162
711 * c-parser.c (c_parser_statement_after_labels): Pass the location of
712 the return expression to c_finish_return.
713
da6f124d
JJ
7142014-06-25 Jakub Jelinek <jakub@redhat.com>
715
716 * c-typeck.c (c_finish_omp_clauses): Make sure
717 OMP_CLAUSE_LINEAR_STEP has correct type.
718
c203e8a7
TS
7192014-06-24 Trevor Saunders <tsaunders@mozilla.com>
720
721 * c-decl.c: Adjust.
722
56ad0e38
JJ
7232014-06-24 Jakub Jelinek <jakub@redhat.com>
724
725 * c-parser.c (c_parser_omp_for_loop): For
726 #pragma omp parallel for simd move lastprivate clause from parallel
727 to for rather than simd.
728
47c2554f
MP
7292014-06-23 Marek Polacek <polacek@redhat.com>
730
731 * c-typeck.c (parser_build_binary_op): Don't call
732 warn_logical_not_parentheses if the RHS is TRUTH_NOT_EXPR.
733
56363ffd
JH
7342014-06-15 Jan Hubicka <hubicka@ucw.cz>
735
736 * c-parser.c (c_parser_omp_threadprivate): Likewise.
737 * c-decl.c (merge_decls): Likewise.
738
d7ff7ae5
MP
7392014-06-09 Marek Polacek <polacek@redhat.com>
740
741 PR c/36446
742 * c-typeck.c (error_init): Call inform instead of error_at.
743 (pedwarn_init): Call inform instead of pedwarn.
744 (warning_init): Call inform instead of warning_at.
745
24d047a3
JH
7462014-06-07 Jan Hubicka <hubicka@ucw.cz>
747
748 * c-decl.c (merge_decls): Use set_decl_section_name.
749 (duplicate_decls): Remove node if it exists.
750
9bac5cbb
G
7512014-06-05 S. Gilles <sgilles@terpmail.umd.edu>
752
753 PR c/53119
754 * c-typeck.c (push_init_level, process_init_element,
755 pop_init_level): Correct check for zero initialization, move
756 missing brace warning to respect zero initialization.
757
8ffcdea8
MP
7582014-06-05 Marek Polacek <polacek@redhat.com>
759
760 PR c/56724
761 * c-typeck.c (convert_for_assignment): Use expr_loc for ic_argpass.
762
742938c9
MP
7632014-06-05 Marek Polacek <polacek@redhat.com>
764
765 PR c/49706
766 * c-typeck.c (parser_build_binary_op): Warn when logical not is used
767 on the left hand side operand of a comparison.
768
6447c55d
MP
7692014-06-05 Marek Polacek <polacek@redhat.com>
770
771 PR c/48062
772 * c-decl.c (warn_if_shadowing): Call inform instead of warning_at.
773 Print note only if the warning was printed.
774
9dc7743c
IZ
7752014-06-04 Igor Zamyatin <igor.zamyatin@intel.com>
776
777 PR c/58942
778 * c-array-notation.c (fix_builtin_array_notation_fn): Handle the case
779 with a pointer.
780
fedfecef
MP
7812014-06-03 Marek Polacek <polacek@redhat.com>
782
783 PR c/60439
784 * c-parser.c (c_parser_switch_statement): Pass explicit_cast_p to
785 c_start_case.
786 * c-tree.h (c_start_case): Update.
787 * c-typeck.c (c_start_case): Add new boolean parameter. Warn if
788 switch condition has boolean value.
789
9b2b7279
AM
7902014-06-02 Andrew MacLeod <amacleod@redhat.com>
791
792 * c-decl.c: Include builtins.h.
793 * c-parser.c: Likewise.
794
5c1bc275
MP
7952014-05-27 Marek Polacek <polacek@redhat.com>
796
797 PR c/56724
798 * c-typeck.c (convert_arguments): Get location of a parameter. Change
799 error and warning calls to error_at and warning_at. Pass location of
800 a parameter to it. Call warning_at with OPT_Wtraditional_conversion.
801 (convert_for_assignment): Add parameter to WARN_FOR_ASSIGNMENT and
802 WARN_FOR_QUALIFIERS. Pass expr_loc to those.
803
97563bc8
IZ
8042014-05-26 Igor Zamyatin <igor.zamyatin@intel.com>
805
806 PR c/61191
807 * c-array-notation.c (fix_builtin_array_notation_fn): Check invalid
808 function parameters.
809
aede2c10
JH
8102014-05-23 Jan Hubicka <hubicka@ucw.cz>
811
812 * c-decl.c (merge_decls): Preserve symtab node pointers.
813 (duplicate_decls): Free new decl.
814
edbba2ce
TS
8152014-05-23 Thomas Schwinge <thomas@codesourcery.com>
816
f3316c6d
TS
817 * c-typeck.c (c_finish_omp_clauses): Remove duplicated variable
818 initialization.
819
edbba2ce
TS
820 * c-parser.c (c_parser_omp_target): Return bool values.
821
68c81f24
TS
8222014-05-22 Thomas Schwinge <thomas@codesourcery.com>
823
824 * c-parser.c (c_parser_omp_clause_thread_limit): Rename
825 num_teams_loc variable to num_thread_limit_loc.
826
632f2871
RS
8272014-05-21 Richard Sandiford <rsandifo@linux.vnet.ibm.com>
828
829 * c-array-notation.c (expand_array_notations): Use void_node
830 instead of void_zero_node.
831
766090c2
TS
8322014-05-17 Trevor Saunders <tsaunders@mozilla.com>
833
834 * c-decl.c (finish_struct): Adjust.
835 (finish_enum): Likewise.
836 (bind): Adjust.
837 (record_inline_static): Likewise.
838 (push_scope): Likewise.
839 (make_label): Likewise.
840 (lookup_label_for_goto): Likewise.
841 (finish_struct): Likewise.
842 (finish_enum): Likewise.
843 (store_parm_decls): Likewise.
844 (c_push_function_context): Likewise.
845 * c-lang.h: Remove usage of variable_size gty attribute.
846 * c-parser.c (c_parse_init): Adjust.
847 (c_parse_file): Likewise.
848
2b107f6b
MP
8492014-05-13 Marek Polacek <polacek@redhat.com>
850
851 PR c/61162
852 * c-typeck.c (convert_for_assignment): Pass location to
853 WARN_FOR_ASSIGNMENT instead of input_location.
854
d033409e
MP
8552014-05-10 Marek Polacek <polacek@redhat.com>
856
857 * c-parser.c (c_parser_declaration_or_fndef): Pass init_loc to
858 maybe_warn_string_init.
859 (c_parser_postfix_expression_after_paren_type): Pass type_loc to
860 maybe_warn_string_init.
861 * c-tree.h (maybe_warn_string_init): Update declaration.
862 * c-typeck.c (maybe_warn_string_init): Add location parameter.
863 Call pedwarn_init with loc instead of with input_location.
864 (digest_init): Pass init_loc to maybe_warn_string_init.
865 (pop_init_level): Call pedwarn_init with loc instead of with
866 input_location.
867 (set_init_index): Likewise.
868 (process_init_element): Likewise.
869
ea58ef42
MP
8702014-05-09 Marek Polacek <polacek@redhat.com>
871
872 PR c/61096
873 * c-parser.c (c_parser_braced_init): Pass brace_loc to push_init_level.
874 (c_parser_initelt): Pass location to set_init_label. Pass array index
875 location to set_init_index.
876 * c-tree.h (push_init_level): Update declaration.
877 (pop_init_level): Likewise.
878 (set_init_index): Likewise.
879 (set_init_label): Likewise.
880 * c-typeck.c (error_init): Add location parameter. Call error_at
881 instead of error.
882 (digest_init): Pass init_loc to error_init.
883 (really_start_incremental_init):
884 (push_init_level): Add location parameter. Pass loc to pop_init_level
885 and error_init.
886 (pop_init_level): Likewise.
887 (set_designator): Add location parameter. Pass loc to pop_init_level,
888 push_init_level, and error_init.
889 (set_init_index): Add location parameter. Pass loc to error_init and
890 set_designator.
891 (set_init_label): Likewise.
892 (output_init_element): Pass loc to error_init.
893 (process_init_element): Pass loc to error_init, pop_init_level,
894 pedwarn_init, and push_init_level.
895
661a0813
MP
8962014-05-09 Marek Polacek <polacek@redhat.com>
897
898 PR c/50459
899 * c-parser.c (c_parser_attributes): Parse the arguments as an
900 expression-list if the attribute takes identifier.
901
2793eeab
MP
9022014-05-08 Marek Polacek <polacek@redhat.com>
903
904 PR c/61053
905 * c-decl.c (grokdeclarator): Use min_align_of_type instead of
906 TYPE_ALIGN_UNIT.
907
f827930a
MP
9082014-05-08 Marek Polacek <polacek@redhat.com>
909
910 PR c/61077
911 * c-decl.c (start_function): Warn for _Atomic-qualified return type
912 of main.
913
1d60af08
KZ
9142014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
915 Mike Stump <mikestump@comcast.net>
916 Richard Sandiford <rdsandiford@googlemail.com>
917
918 * c-decl.c (check_bitfield_type_and_width): Use TYPE_SIGN.
919 (finish_enum): Use wide-int interfaces.
920 * c-parser.c (c_parser_cilk_clause_vectorlength): Likewise.
921 * c-typeck.c (build_c_cast): Likewise.
922 (set_nonincremental_init_from_string): Likewise.
923 (c_tree_equal): Likewise.
924
a0e24419
MP
9252014-05-02 Marek Polacek <polacek@redhat.com>
926
927 PR c/25801
928 * c-typeck.c (c_size_in_bytes): Update comment. Don't call error.
929 Return size_one_node when the type is not complete.
930 (pointer_diff): Remove comment.
931 (build_unary_op): Improve error messages.
932
19fc9faa
MP
9332014-05-02 Marek Polacek <polacek@redhat.com>
934
935 * c-typeck.c (c_finish_return): Separate warning_at calls.
936
63bc4e87
MP
9372014-05-02 Marek Polacek <polacek@redhat.com>
938
939 * c-tree.h (error_init): Remove declaration.
940 (pedwarn_init): Likewise.
941 * c-typeck.c (error_init): Make static and move above.
942 (pedwarn_init): Likewise.
943 (warning_init): Move above.
944 (maybe_warn_string_init): Likewise.
945
4bd2511b
JL
9462014-05-01 Jeff Law <law@redhat.com>
947
948 Revert:
949
950 2014-04-24 Prathamesh Kulkarni <bilbotheelffriend@gmail.com>
951 * c-parser.c (c_parser_sizeof_expression): Reorganize slightly to
952 avoid goto.
953
6a358dcb
MP
9542014-05-02 Marek Polacek <polacek@redhat.com>
955
956 PR c/60784
957 * c-typeck.c (push_init_level): Set constructor_designated to
958 p->designated for structures.
959
ae5ebda4
MP
9602014-05-01 Marek Polacek <polacek@redhat.com>
961
962 PR c/60915
963 * c-parser.c (c_parser_declaration_or_fndef): Give better error if
964 function-definition has an attribute after the declarator.
965
96b40f8d
MP
9662014-05-01 Marek Polacek <polacek@redhat.com>
967
968 PR c/60257
969 * c-typeck.c (warning_init): Add location_t parameter. Call
970 warning_at instead of warning.
971 (push_init_level): Pass input_location to warning_init.
972 (add_pending_init): Add location_t parameter. Pass loc to
973 warning_init.
974 (set_nonincremental_init): Pass input_location to add_pending_init.
975 (set_nonincremental_init_from_string): Likewise.
976 (output_init_element): Pass loc to warning_init and to
977 add_pending_init.
978
32e00768
MP
9792014-05-01 Marek Polacek <polacek@redhat.com>
980
981 PR c/43395
982 * c-typeck.c (c_finish_return): Distinguish between label and variable
983 when warning about returning local address.
984
c9379ce2
MP
9852014-05-01 Marek Polacek <polacek@redhat.com>
986
987 PR c/29467
988 * c-decl.c (declspecs_add_type): Pedwarn if boolean types are used
989 in C89 mode.
990
d00887e8
MP
9912014-05-01 Marek Polacek <polacek@redhat.com>
992
993 PR c/43245
994 * c-typeck.c (convert_for_assignment): Pass OPT_Wdiscarded_qualifiers
995 instead of 0 to WARN_FOR_QUALIFIERS.
996
5436fa2e
MP
9972014-05-01 Marek Polacek <polacek@redhat.com>
998
999 PR c/56989
1000 * c-typeck.c (default_conversion): Use better location for
1001 error call.
1002
f8ed5150
MP
10032014-04-30 Marek Polacek <polacek@redhat.com>
1004
1005 * c-typeck.c (build_binary_op): Call ubsan_instrument_division
1006 also when SANITIZE_FLOAT_DIVIDE is on.
1007
8337d1db
MP
10082014-04-30 Marek Polacek <polacek@redhat.com>
1009
1010 PR c/60139
1011 * c-typeck.c (output_init_element): Pass OPT_Wpedantic to pedwarn
1012 and pedwarn_init. Use loc insted of input_location.
1013
c4bdc42f
MP
10142014-04-30 Marek Polacek <polacek@redhat.com>
1015
1016 PR c/60351
1017 * c-typeck.c (build_binary_op): Use location when warning about
1018 shift count.
1019
45484dcf
MP
10202014-04-25 Marek Polacek <polacek@redhat.com>
1021
1022 PR c/18079
1023 * c-decl.c (diagnose_mismatched_decls): Warn for mismatched
1024 always_inline/noinline and hot/cold attributes.
1025
34cf811f
MP
10262014-04-25 Marek Polacek <polacek@redhat.com>
1027
1028 PR c/60114
1029 * c-parser.c (c_parser_initelt): Pass input_location to
1030 process_init_element.
1031 (c_parser_initval): Pass loc to process_init_element.
1032 * c-tree.h (process_init_element): Adjust declaration.
1033 * c-typeck.c (push_init_level): Pass input_location to
1034 process_init_element.
1035 (pop_init_level): Likewise.
1036 (set_designator): Likewise.
1037 (output_init_element): Add location_t parameter. Pass loc to
1038 digest_init.
1039 (output_pending_init_elements): Pass input_location to
1040 output_init_element.
1041 (process_init_element): Add location_t parameter. Pass loc to
1042 output_init_element.
1043
42056eac
JJ
10442014-04-24 Jakub Jelinek <jakub@redhat.com>
1045
1046 * c-parser.c (c_parser_omp_atomic): Allow seq_cst before
1047 atomic-clause, allow comma in between atomic-clause and
1048 seq_cst.
1049
e162a134
JJ
10502014-04-22 Jakub Jelinek <jakub@redhat.com>
1051
1052 PR c/59073
1053 * c-parser.c (c_parser_omp_parallel): If c_parser_omp_for
1054 fails, don't set OM_PARALLEL_COMBINED and return NULL.
1055
2f6babac
IZ
10562014-04-12 Igor Zamyatin <igor.zamyatin@intel.com>
1057
1058 PR middle-end/60469
1059 * c-array-notation.c (fix_builtin_array_notation_fn): Use
1060 create_tmp_var instead build_decl for creating temps.
1061 (build_array_notation_expr): Likewise.
1062 (fix_conditional_array_notations_1): Likewise.
1063 (fix_array_notation_expr): Likewise.
1064 (fix_array_notation_call_expr): Likewise.
1065
8edbfaa6
JJ
10662014-03-28 Jakub Jelinek <jakub@redhat.com>
1067
1068 PR c++/60689
1069 * c-tree.h (c_build_function_call_vec): New prototype.
1070 * c-typeck.c (build_function_call_vec): Don't call
1071 resolve_overloaded_builtin here.
1072 (c_build_function_call_vec): New wrapper function around
1073 build_function_call_vec. Call resolve_overloaded_builtin here.
1074 (convert_lvalue_to_rvalue, build_function_call, build_atomic_assign):
1075 Call c_build_function_call_vec instead of build_function_call_vec.
1076 * c-parser.c (c_parser_postfix_expression_after_primary): Likewise.
1077 * c-decl.c (finish_decl): Likewise.
1078
7485aeea
MLI
10792014-03-18 Manuel López-Ibáñez <manu@gcc.gnu.org>
1080
1081 PR c/55383
1082 * c-typeck.c: Use correct format string in cast-qual warning
1083
b17a8b07
TS
10842014-03-07 Thomas Schwinge <thomas@codesourcery.com>
1085
1086 * c-decl.c (c_decl_attributes): Use
1087 lang_hooks.types.omp_mappable_type.
1088 * c-typeck.c (c_finish_omp_clauses): Likewise.
1089
3af9c5e9
MP
10902014-03-06 Marek Polacek <polacek@redhat.com>
1091
1092 PR c/60197
1093 * c-typeck.c (c_finish_return): Call contains_cilk_spawn_stmt instead
1094 of checking tree code.
1095
1c9f5f33
PK
10962014-02-19 Prathamesh Kulkarni <bilbotheelffriend@gmail.com>
1097
1098 * c-parser.c (c_parser_declspecs): Replace call to error by error_at.
1099 (c_parser_parameter_declaration): Likewise.
1100
cc28fc7f
MP
11012014-02-19 Marek Polacek <polacek@redhat.com>
1102
1103 PR c/60195
1104 * c-typeck.c (convert_lvalue_to_rvalue): Set TREE_NO_WARNING on tmp.
1105 Call mark_exp_read on exp.value.
1106 (build_atomic_assign): Set TREE_NO_WARNING on val and old. Set
1107 TREE_ADDRESSABLE on old instead of val.
1108 (emit_side_effect_warnings): Warn only if RHS has !TREE_NO_WARNING.
1109
b581c05c
PK
11102014-02-07 Prathamesh Kulkarni <bilbotheelffriend@gmail.com>
1111
1112 * c-parser.c (c_parser_get_builtin_args): Replace calls to
1113 C_EXPR_APPEND by vec_safe_push.
1114 * c-tree.h (C_EXPR_APPEND): Remove.
1115
81e5eca8
MP
11162014-01-31 Marek Polacek <polacek@redhat.com>
1117
1118 PR c/59963
1119 * c-typeck.c (convert_lvalue_to_rvalue): Pass vNULL to
1120 build_function_call_vec.
1121 (build_function_call): Likewise.
1122 (build_atomic_assign): Likewise.
1123 (build_function_call_vec): Add arg_loc parameter. Use it.
1124 (convert_arguments): Likewise.
1125 (convert_for_assignment): Rename rhs_loc to expr_loc.
1126 * c-parser.c (c_parser_attributes): Pass NULL to c_parser_expr_list.
1127 (c_parser_objc_keywordexpr): Likewise.
1128 (c_parser_postfix_expression_after_primary): Call
1129 build_function_call_vec with expr_loc rather than op_loc.
1130 Call c_parser_expr_list to fill arg_loc. Pass arg_loc to
1131 build_function_call_vec.
1132 (c_parser_expr_list): Add locations parameter. Fill it with locations
1133 of function arguments.
1134 * c-decl.c (finish_decl): Pass vNULL to build_function_call_vec.
1135
68fca595
MP
11362014-01-30 Marek Polacek <polacek@redhat.com>
1137
1138 PR c/59940
1139 * c-typeck.c (build_function_call_vec): Use loc parameter.
1140 (convert_arguments): Add location parameter. Use it.
1141 (ep_convert_and_check): Likewise.
1142 (build_atomic_assign): Adjust convert_for_assignment call.
1143 (build_modify_expr): Likewise.
1144 (digest_init): Likewise.
1145 (c_finish_return): Likewise.
1146 (build_conditional_expr): Adjust ep_convert_and_check calls.
1147 (convert_for_assignment): Add rhs_loc parameter. Use it.
1148 (build_binary_op): Adjust convert_and_check and ep_convert_and_check
1149 calls.
1150
fa337f3a
RB
11512014-01-30 Richard Biener <rguenther@suse.de>
1152
1153 PR c/59905
1154 * c-typeck.c (build_function_call_vec): Do not replace calls
1155 to a function via an incompatible type with a runtime abort.
1156
b72271b9
BI
11572014-01-24 Balaji V. Iyer <balaji.v.iyer@intel.com>
1158
1159 * c-parser.c (c_parser_declaration_or_fndef): Replaced
1160 flag_enable_cilkplus with flag_cilkplus.
1161 (c_parser_direct_declarator_inner): Likewise.
1162 (c_parser_attribute_any_word): Likewise.
1163 (c_parser_attributes): Likewise.
1164 (c_parser_compound_statement): Likewise.
1165 (c_parser_statement_after_labels): Likewise.
1166 (c_parser_if_statement): Likewise.
1167 (c_parser_switch_statement): Likewise.
1168 (c_parser_do_statement): Likewise.
1169 (c_parser_for_statement): Likewise.
1170 (c_parser_unary_expression): Likewise.
1171 (c_parser_postfix_expression): Likewise.
1172 (c_parser_postfix_expression_after_primary): Likewise.
1173 (c_parser_postfix_expression_after_primary): Likewise.
1174 (c_parser_omp_clause_name): Likewise.
1175 (c_finish_omp_declare_simd): Likewise.
1176 (c_parser_cilk_verify_simd): Likewise.
1177 * c-typeck.c (build_array_ref): Likewise.
1178 (build_function_call_vec): Likewise.
1179 (convert_arguments): Likewise.
1180 (build_compound_expr): Likewise.
1181 (c_finish_return): Likewise.
1182 (c_finish_if_stmt): Likewise.
1183 (c_finish_loop): Likewise.
1184 (build_binary_op): Likewise.
1185
393e8e8b
MP
11862014-01-23 Marek Polacek <polacek@redhat.com>
1187
1188 PR c/59846
1189 * c-typeck.c (parser_build_binary_op): Use location instead of
1190 input_location.
1191 (build_binary_op): Pass location to shorten_compare.
1192
f04dda30
MP
11932014-01-23 Marek Polacek <polacek@redhat.com>
1194
1195 PR c/58346
1196 * c-typeck.c (pointer_diff): Give an error on arithmetic on pointer to
1197 an empty aggregate.
1198
789eadcd
MP
11992014-01-23 Marek Polacek <polacek@redhat.com>
1200
1201 PR c/59871
1202 * c-typeck.c (build_compound_expr): Warn even for right-hand operand
1203 of a comma expression.
1204 (emit_side_effect_warnings): Likewise.
1205
40f14e9f
BI
12062014-01-23 Balaji V. Iyer <balaji.v.iyer@intel.com>
1207
1208 PR c/59825
1209 * c-array-notation.c (expand_array_notation_exprs): Rewrote this
1210 function to use walk_tree and moved a lot of its functionality to
1211 expand_array_notations.
1212 (expand_array_notations): New function.
1213
74558dd9
BI
12142014-01-23 Balaji V. Iyer <balaji.v.iyer@intel.com>
1215
1216 * c-parser.c (c_finish_omp_declare_simd): Made "cilk simd function"
1217 attribute an attribute without value.
1218
652fea39
JJ
12192014-01-23 Jakub Jelinek <jakub@redhat.com>
1220
1221 PR middle-end/58809
1222 * c-typeck.c (c_finish_omp_clause): Reject MIN_EXPR, MAX_EXPR,
1223 BIT_AND_EXPR, BIT_IOR_EXPR and BIT_XOR_EXPR on COMPLEX_TYPEs.
1224
f34f1c87
MP
12252014-01-22 Marek Polacek <polacek@redhat.com>
1226
1227 PR c/59891
1228 * c-typeck.c (build_conditional_expr): Call c_fully_fold instead
1229 of remove_c_maybe_const_expr on op1 and op2.
1230
241f845a
JJ
12312014-01-15 Jakub Jelinek <jakub@redhat.com>
1232
1233 PR c/58943
1234 * c-typeck.c (build_modify_expr): For lhs op= rhs, if rhs has side
1235 effects, preevaluate rhs using SAVE_EXPR first.
1236
9a74f20c
BI
12372014-01-09 Balaji V. Iyer <balaji.v.iyer@intel.com>
1238
1239 PR c++/59631
1240 * c-parser.c (c_parser_postfix_expression): Replaced consecutive if
1241 statements with if-elseif statements.
1242
96066ce1
MP
12432014-01-06 Marek Polacek <polacek@redhat.com>
1244
1245 PR c/57773
1246 * c-decl.c (check_bitfield_type_and_width): Warn for implementation
1247 defined bit-field types only in ISO C.
1248
23a5b65a
RS
12492014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1250
1251 Update copyright years
1252
f9030485
RS
12532014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1254
1255 * c-array-notation.c: Use the standard form for the copyright notice.
1256
41958c28
BI
12572013-12-18 Balaji V. Iyer <balaji.v.iyer@intel.com>
1258
1259 * c-parser.c (struct c_parser::cilk_simd_fn_tokens): Added new field.
1260 (c_parser_declaration_or_fndef): Added a check if cilk_simd_fn_tokens
1261 field in parser is not empty. If not-empty, call the function
1262 c_parser_finish_omp_declare_simd.
1263 (c_parser_cilk_clause_vectorlength): Modified function to be shared
1264 between SIMD-enabled functions and #pragma simd. Added new parameter.
1265 (c_parser_cilk_all_clauses): Modified the usage of the function
1266 c_parser_cilk_clause_vectorlength as mentioned above.
1267 (c_parser_cilk_simd_fn_vector_attrs): New function.
1268 (c_finish_cilk_simd_fn_tokens): Likewise.
1269 (is_cilkplus_vector_p): Likewise.
1270 (c_parser_omp_clause_name): Added checking for "vectorlength,"
1271 "nomask," and "mask" strings in clause name.
1272 (c_parser_omp_all_clauses): Added 3 new case statements:
1273 PRAGMA_CILK_CLAUSE_VECTORLENGTH, PRAGMA_CILK_CLAUSE_MASK and
1274 PRAGMA_CILK_CLAUSE_NOMASK.
1275 (c_parser_attributes): Added a cilk_simd_fn_tokens parameter. Added a
1276 check for vector attribute and if so call the function
1277 c_parser_cilk_simd_fn_vector_attrs. Also, when Cilk plus is enabled,
1278 called the function c_finish_cilk_simd_fn_tokens.
1279 (c_finish_omp_declare_simd): Added a check if cilk_simd_fn_tokens in
1280 parser field is non-empty. If so, parse them as you would parse
1281 the omp declare simd pragma.
1282 (c_parser_omp_clause_linear): Added a new bool parm. is_cilk_simd_fn.
1283 Added a check when step is a parameter and flag it as error.
1284 (CILK_SIMD_FN_CLAUSE_MASK): New #define.
1285 (c_parser_cilk_clause_name): Changed pragma_cilk_clause to
1286 pragma_omp_clause.
1287
cef0fd0e
TS
12882013-12-17 Thomas Schwinge <thomas@codesourcery.com>
1289
1290 * c-parser.c (c_parser_omp_parallel): Fix description.
1291
12893402
BI
12922013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com>
1293
1294 * c-objc-common.h (LANG_HOOKS_CILKPLUS_FRAME_CLEANUP): Remove.
1295 (LANG_HOOKS_CILKPLUS_DETECT_SPAWN_AND_UNWRAP): Likewise.
1296 (LANG_HOOKS_CILKPLUS_CILKPLUS_GIMPLIFY_SPAWN): Likewise.
1297 * c-typeck.c (cilk_install_body_with_frame_cleanup): New function.
1298
296674db
JM
12992013-12-04 Joseph Myers <joseph@codesourcery.com>
1300
1301 PR c/52023
1302 * c-parser.c (c_parser_alignas_specifier): Use
1303 c_sizeof_or_alignof_type instead of c_alignof.
1304 (c_parser_alignof_expression): Likewise, with min_alignof
1305 parameter depending on alignof spelling used.
1306
edd28054
MP
13072013-12-04 Marek Polacek <polacek@redhat.com>
1308
1309 PR c/54113
1310 * c-decl.c (start_function): Don't warn for missing prototype for
1311 inline functions.
1312
da0fc454
MP
13132013-12-03 Marek Polacek <polacek@redhat.com>
1314
1315 PR c/59351
1316 * c-decl.c (build_compound_literal): Allow compound literals with
1317 empty initial value.
1318
4c2ecab0
JM
13192013-12-02 Joseph Myers <joseph@codesourcery.com>
1320
1321 PR c/58235
1322 * c-typeck.c (build_modify_expr): Diagnose assignment to
1323 expression with array type.
1324
340baef7
JM
13252013-11-29 Joseph Myers <joseph@codesourcery.com>
1326
1327 PR c/42262
1328 * c-typeck.c (process_init_element): Do not treat a string as
1329 initializing a whole array when used with a designator for an
1330 individual element.
1331
6763b9f7
JM
13322013-11-29 Joseph Myers <joseph@codesourcery.com>
1333
1334 PR c/57574
1335 * c-decl.c (merge_decls): Clear DECL_EXTERNAL for a definition of
1336 an inline function following a static declaration.
1337
e7bd1de1
JJ
13382013-11-28 Jakub Jelinek <jakub@redhat.com>
1339
1340 PR c/59310
1341 * c-parser.c (c_parser_omp_target): Copy "#pragma omp target"
1342 to p_name before calling c_parser_omp_teams instead of after.
1343 (c_parser_cilk_simd): Remove wrong ATTRIBUTE_UNUSED from parser
1344 argument. Remove unused p_name variable.
1345
0136f8f0
AH
13462013-11-27 Aldy Hernandez <aldyh@redhat.com>
1347 Jakub Jelinek <jakub@redhat.com>
1348
1349 * c-decl.c (c_builtin_function_ext_scope): Avoid binding if
1350 external_scope is NULL.
1351
241b71bb
TV
13522013-11-27 Tom de Vries <tom@codesourcery.com>
1353 Marc Glisse <marc.glisse@inria.fr>
1354
1355 PR c++/59032
1356 * c-typeck.c (build_unary_op): Allow vector increment and decrement.
1357
2fb9a547
AM
13582013-11-22 Andrew MacLeod <amacleod@redhat.com>
1359
1360 * c-typeck.c: Add required include files from gimple.h.
1361
8400e75e
DM
13622013-11-22 David Malcolm <dmalcolm@redhat.com>
1363
1364 * c-decl.c (define_label, shadow_tag_warned)
1365 (check_bitfield_type_and_width, grokdeclarator, grokparms,
1366 store_parm_decls_newstyle, store_parm_decls_oldstyle)
1367 (declspecs_add_type): Remove use of in_system_header macro.
1368 * c-parser.c (c_parser_unary_expression): Likewise.
1369 * c-typeck.c (store_init_value, process_init_element)
1370 (c_start_case): Likewise.
1371
1372 * c-decl.c (build_enumerator): Remove use of EXPR_LOC_OR_HERE
1373 macro.
1374
1375 * c-parser.c (c_parser_set_source_position_from_token): Remove
1376 reference to in_system_header from comment.
1377
386b1f1f
RS
13782013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1379
1380 * c-decl.c (grokdeclarator): Update comment to refer to
1381 tree_to_[su]hwi rather than tree_low_cst.
1382
ae7e9ddd
RS
13832013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1384
1385 * c-decl.c, c-typeck.c: Replace tree_low_cst (..., 1) with
1386 tree_to_uhwi throughout.
1387
9439e9a1
RS
13882013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1389
1390 * c-parser.c: Replace tree_low_cst (..., 0) with tree_to_shwi
1391 throughout.
1392
9541ffee
RS
13932013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1394
1395 * c-parser.c: Replace host_integerp (..., 0) with tree_fits_shwi_p
1396 throughout.
1397
c02065fc
AH
13982013-11-15 Aldy Hernandez <aldyh@redhat.com>
1399
1400 * c-parser.c (c_parser_cilk_simd): New.
1401 (c_parser_cilk_verify_simd): New.
1402 (c_parser_pragma): Add case for PRAGMA_CILK_SIMD.
1403 (c_parser_omp_for_loop): Add case for NE_EXPR.
1404 Set c_break_label for CILK_SIMD.
1405 (c_parser_cilk_clause_vectorlength): New.
1406 (c_parser_cilk_clause_linear): New.
1407 (c_parser_cilk_clause_name): New.
1408 (c_parser_cilk_all_clauses): New.
1409 * c-typeck.c (build_unary_op): Pass location argument to
1410 readonly_error.
1411 (build_modify_expr): Same.
1412 (build_asm_expr): Same.
1413 (c_finish_bc_stmt): Error on break/continue in loops.
1414
18f429e2
AM
14152013-11-14 Andrew MacLeod <amacleod@redhat.com>
1416
1417 * c-typeck.c: Include only gimplify.h and gimple.h as needed.
1418
d8a2d370
DN
14192013-11-14 Diego Novillo <dnovillo@google.com>
1420
1421 * c-decl.c: Include print-tree.h.
1422 Include stor-layout.h.
1423 Include varasm.h.
1424 Include attribs.h.
1425 Include stringpool.h.
1426 * c-lang.c: Include fold-const.h.
1427 * c-parser.c: Include stringpool.h.
1428 Include attribs.h.
1429 Include stor-layout.h.
1430 Include varasm.h.
1431 Include trans-mem.h.
1432 * c-typeck.c: Include stor-layout.h.
1433 Include trans-mem.h.
1434 Include varasm.h.
1435 Include stmt.h.
1436
38b7bc7f
JM
14372013-11-13 Joseph Myers <joseph@codesourcery.com>
1438
1439 * c-tree.h (c_typespec_keyword): Add cts_auto_type.
1440 * c-decl.c (declspecs_add_type, finish_declspecs): Handle
1441 __auto_type.
1442 * c-parser.c (c_token_starts_typename, c_token_starts_declspecs)
1443 (c_parser_attribute_any_word, c_parser_objc_selector): Handle
1444 RID_AUTO_TYPE.
1445 (c_parser_declspecs): Take argument AUTO_TYPE_OK.
1446 (c_parser_declaration_or_fndef, c_parser_struct_declaration)
1447 (c_parser_declarator, c_parser_direct_declarator_inner)
1448 (c_parser_parameter_declaration, c_parser_type_name): All callers
1449 changed.
1450 (c_parser_declaration_or_fndef): Handle declarations with type
1451 determined from the initializer.
1452
45b0be94
AM
14532013-11-12 Andrew MacLeod <amacleod@redhat.com>
1454
18f429e2 1455 * c-typeck.c: Include gimplify.h.
45b0be94 1456
582d9b50
JM
14572013-11-12 Joseph Myers <joseph@codesourcery.com>
1458
1459 * c-tree.h (struct c_declspecs): Add thread_gnu_p field.
1460 * c-parser.c (c_parser_declspecs): Mention _Thread_local in
1461 comment.
1462 * c-decl.c (shadow_tag_warned, grokdeclarator): Mention __thread
1463 or _Thread_local as appropriate in diagnostics.
1464 (build_null_declspecs): Initialize ret->thread_gnu_p.
1465 (declspecs_add_scspec): Handle either __thread or _Thread_local
1466 for RID_THREAD. Diagnose _Thread_local for pre-C11 standards if
1467 pedantic. Do not disallow _Thread_local extern and _Thread_local
1468 static.
1469
267bac10
JM
14702013-11-07 Joseph Myers <joseph@codesourcery.com>
1471 Andrew MacLeod <amacleod@redhat.com>
1472
1473 * c-aux-info.c (gen_type): Handle atomic qualifier.
1474 * c-decl.c (validate_proto_after_old_defn): Do not remove atomic
1475 qualifiers when compating types.
1476 (shadow_tag_warned): Handle atomic_p in declspecs.
1477 (quals_from_declspecs): Likewise.
1478 (start_decl): Use c_type_promotes_to when promoting argument
1479 types.
1480 (grokdeclarator): Handle _Atomic.
1481 (get_parm_info): Diagnose any qualifier on "void" as only
1482 parameter.
1483 (store_parm_decls_oldstyle): Do not remove atomic qualifiers when
1484 comparing types. Use c_type_promotes_to when promoting argument
1485 types.
1486 (finish_function): Use c_type_promotes_to when promoting argument
1487 types.
1488 (build_null_declspecs): Handle atomic_p in declspecs.
1489 (declspecs_add_qual): Handle RID_ATOMIC.
1490 * c-parser.c (c_token_starts_typename, c_token_is_qualifier)
1491 (c_token_starts_declspecs): Handle RID_ATOMIC.
1492 (c_parser_declspecs): Handle atomic type specifiers and
1493 qualifiers.
1494 (c_parser_typeof_specifier): Remove const and _Atomic qualifiers
1495 from types of expressions with atomic type.
1496 (c_parser_direct_declarator_inner): Use convert_lvalue_to_rvalue.
1497 (c_parser_attribute_any_word): Handle RID_ATOMIC.
1498 (c_parser_initializer, c_parser_initelt, c_parser_initval)
1499 (c_parser_statement_after_labels, c_parser_switch_statement)
1500 (c_parser_for_statement, c_parser_expr_no_commas)
1501 (c_parser_conditional_expression, c_parser_binary_expression)
1502 (c_parser_cast_expression, c_parser_unary_expression)
1503 (c_parser_postfix_expression)
1504 (c_parser_postfix_expression_after_primary, c_parser_expression):
1505 Use convert_lvalue_to_rvalue.
1506 (c_parser_expression_conv, c_parser_expr_list): Document
1507 conversion of lvalues to rvalues. Use convert_lvalue_to_rvalue.
1508 (c_parser_objc_synchronized_statement): Use
1509 convert_lvalue_to_rvalue.
1510 (c_parser_objc_selector): Handle RID_ATOMIC.
1511 (c_parser_objc_receiver, c_parser_array_notation): Use
1512 convert_lvalue_to_rvalue.
1513 * c-tree.h (ctsk_typeof): Adjust comment to mention use for
1514 _Atomic (type-name).
1515 (struct c_declspecs): Add atomic_p field.
1516 (convert_lvalue_to_rvalue): Declare.
1517 * c-typeck.c (c_type_promotes_to): Promote atomic types to
1518 corresponding atomic types.
1519 (qualify_type): Don't add _Atomic qualifiers from second argument.
1520 (comp_target_types): Do not allow _Atomic mismatches.
1521 (type_lists_compatible_p): Do not remove atomic qualifiers when
1522 comparing types.
1523 (really_atomic_lvalue, convert_lvalue_to_rvalue)
1524 (build_atomic_assign): New functions.
1525 (build_unary_op): Use build_atomic_assign for atomic increment and
1526 decrement.
1527 (build_conditional_expr): Do not treat _Atomic void as a qualified
1528 version of void.
1529 (build_modify_expr): Use build_atomic_assign for atomic LHS.
1530 (find_anonymous_field_with_type, convert_to_anonymous_field)
1531 (convert_for_assignment): Do not remove atomic qualifiers when
1532 comparing types.
1533 (digest_init): Do not accept initialization of arrays of atomic
1534 elements by string constants.
1535 (build_asm_expr): Use convert_lvalue_to_rvalue.
1536 (build_binary_op): Do not treat _Atomic void as a qualified
1537 version of void.
1538
0c249d4b
DD
15392013-11-06 DJ Delorie <dj@redhat.com>
1540
1541 * c-decl.c (locate_old_decl): If a previous conflicting decl is
1542 both explicit and builtin, print the location of the explicit one.
1543
6d7f7e0a
TB
15442013-11-05 Tobias Burnus <burnus@net-b.de>
1545
1546 * c-parser.c (c_parser_omp_for, c_parser_omp_parallel,
1547 c_parser_omp_distribute, c_parser_omp_teams,
1548 c_parser_omp_target, c_parser_omp_declare): Handle
1549 -fopenmp-simd.
1550
b906f4ca
MP
15512013-11-03 Marek Polacek <polacek@redhat.com>
1552
1553 * c-decl.c (grokdeclarator): Add VLA instrumentation.
1554
ee1d5a02
JJ
15552013-11-01 Jakub Jelinek <jakub@redhat.com>
1556
1557 * c-typeck.c (c_finish_omp_clauses) <case OMP_CLAUSE_UNIFORM>: Go to
1558 check_dup_generic at the end, unless remove is true.
1559 (c_finish_omp_clauses) <case OMP_CLAUSE_REDUCTION>: Add break; after
1560 remove = true;.
1561 (c_finish_omp_clauses) <case OMP_CLAUSE_COPYIN>: Likewise.
1562
5a9785fb
JJ
15632013-10-31 Jakub Jelinek <jakub@redhat.com>
1564
1565 * c-typeck.c (c_finish_omp_clauses): Diagnose aligned clause
1566 with decl that is not pointer nor array.
1567
939b37da
BI
15682013-10-29 Balaji V. Iyer <balaji.v.iyer@intel.com>
1569
1570 * c-decl.c (finish_function): Added a call for insert_cilk_frame when
1571 a spawning function is found.
1572 * c-objc-common.h (LANG_HOOKS_CILKPLUS_GIMPLIFY_SPAWN): New #define.
1573 (LANG_HOOKS_CILKPLUS_FRAME_CLEANUP): Likewise.
1574 (LANG_HOOKS_CILKPLUS_DETECT_SPAWN_AND_UNWRAP): Likewise.
1575 * c-parser.c (c_parser_statement_after_labels): Added RID_CILK_SYNC
1576 case.
1577 (c_parser_postfix_expression): Added RID_CILK_SPAWN case.
1578 * c-typeck.c (build_compound_expr): Reject _Cilk_spawn in a comma
1579 expr.
1580 (c_finish_return): Added a check to reject _Cilk_spawn in return
1581 expression.
1582 (build_cilk_spawn): New function.
1583 (build_cilk_sync): Likewise.
1584 * Makefile.in (c-decl.o): Added cilk.h in dependency list.
1585
d4af74d4
TB
15862013-10-27 Tobias Burnus <burnus@net-b.de>
1587
1588 PR other/33426
1589 * c-parser.c (c_parser_while_statement, c_parser_while_statement,
1590 c_parser_pragma): Add GCC ivdep support to 'do' and 'while'.
1591 (c_parser_statement_after_labels): Update calls.
1592
d73749df 15932013-10-24 Tobias Burnus <burnus@net-b.de>
8170608b
TB
1594
1595 PR other/33426
1596 * c-parser.c (c_parser_pragma, c_parser_for_statement):
1597 Handle PRAGMA_IVDEP.
1598 (c_parser_statement_after_labels): Update call.
1599
f28aa681
MP
16002013-10-24 Marek Polacek <polacek@redhat.com>
1601
1602 * c-parser.c (c_parser_struct_declaration): Add a comment.
1603 (c_parser_declarator): Don't allow _Alignas here.
1604
0645c1a2
AM
16052013-10-17 Andrew MacLeod <amacleod@redhat.com>
1606
1607 * c-parser.c: Include omp-low.h.
1608 * c-typeck.c: Likewise.
1609
568a31f2
MP
16102013-10-17 Marek Polacek <polacek@redhat.com>
1611
1612 PR c/58267
1613 * c-parser.c (c_parser_declspecs): Add alignspec_ok parameter.
1614 Document syntax of the array-declarator.
1615 (c_parser_declspecs) <RID_ALIGNAS>: Bail out if alignment specs
1616 are not permitted.
1617 (c_parser_declaration_or_fndef): Adjust c_parser_declspecs call.
1618 (c_parser_struct_declaration): Likewise.
1619 (c_parser_declarator): Likewise.
1620 (c_parser_direct_declarator_inner): Likewise.
1621 (c_parser_parameter_declaration): Likewise.
1622 (c_parser_type_name): Likewise.
1623
acf0174b
JJ
16242013-10-11 Jakub Jelinek <jakub@redhat.com>
1625
1626 * c-lang.h (current_omp_declare_target_attribute): New extern
1627 decl.
1628 * c-parser.c: Include c-lang.h.
1629 (struct c_parser): Change tokens to c_token *.
1630 Add tokens_buf field. Change tokens_avail type to unsigned int.
1631 (c_parser_consume_token): If parser->tokens isn't
1632 &parser->tokens_buf[0], increment parser->tokens.
1633 (c_parser_consume_pragma): Likewise.
1634 (enum pragma_context): Add pragma_struct and pragma_param.
1635 (c_parser_external_declaration): Adjust
1636 c_parser_declaration_or_fndef caller.
1637 (c_parser_declaration_or_fndef): Add omp_declare_simd_clauses
1638 argument, if it is non-vNULL vector, call c_finish_omp_declare_simd.
1639 Adjust recursive call.
1640 (c_parser_struct_or_union_specifier): Use pragma_struct instead
1641 of pragma_external.
1642 (c_parser_parameter_declaration): Use pragma_param instead of
1643 pragma_external.
1644 (c_parser_compound_statement_nostart, c_parser_label,
1645 c_parser_for_statement): Adjust
1646 c_parser_declaration_or_fndef callers.
1647 (c_parser_expr_no_commas): Add omp_atomic_lhs argument, pass
1648 it through to c_parser_conditional_expression.
1649 (c_parser_conditional_expression): Add omp_atomic_lhs argument,
1650 pass it through to c_parser_binary_expression. Adjust recursive
1651 call.
1652 (c_parser_binary_expression): Remove prec argument, add
1653 omp_atomic_lhs argument instead. Always start from PREC_NONE, if
1654 omp_atomic_lhs is non-NULL and one of the arguments of toplevel
1655 binop matches it, use build2 instead of parser_build_binary_op.
1656 (c_parser_pragma): Handle PRAGMA_OMP_CANCEL,
1657 PRAGMA_OMP_CANCELLATION_POINT, PRAGMA_OMP_TARGET,
1658 PRAGMA_OMP_END_DECLARE_TARGET, PRAGMA_OMP_DECLARE_REDUCTION.
1659 Handle pragma_struct and pragma_param the same as pragma_external.
1660 (c_parser_omp_clause_name): Parse new OpenMP 4.0 clause names.
1661 (c_parser_omp_variable_list): Parse array sections for
1662 OMP_CLAUSE_{DEPEND,MAP,TO,FROM} clauses.
1663 (c_parser_omp_clause_collapse): Fully fold collapse expression.
1664 (c_parser_omp_clause_reduction): Handle user defined reductions.
1665 (c_parser_omp_clause_branch, c_parser_omp_clause_cancelkind,
1666 c_parser_omp_clause_num_teams, c_parser_omp_clause_thread_limit,
1667 c_parser_omp_clause_aligned, c_parser_omp_clause_linear,
1668 c_parser_omp_clause_safelen, c_parser_omp_clause_simdlen,
1669 c_parser_omp_clause_depend, c_parser_omp_clause_map,
1670 c_parser_omp_clause_device, c_parser_omp_clause_dist_schedule,
1671 c_parser_omp_clause_proc_bind, c_parser_omp_clause_to,
1672 c_parser_omp_clause_from, c_parser_omp_clause_uniform): New functions.
1673 (c_parser_omp_all_clauses): Add finish_p argument. Don't call
1674 c_finish_omp_clauses if it is false. Handle new OpenMP 4.0 clauses.
1675 (c_parser_omp_atomic): Parse seq_cst clause, pass true if it is
1676 present to c_finish_omp_atomic. Handle OpenMP 4.0 atomic forms.
1677 (c_parser_omp_for_loop): Add CODE argument, pass it through
1678 to c_finish_omp_for. Change last argument to cclauses,
1679 and adjust uses to grab parallel clauses from the array of all
1680 the split clauses. Adjust c_parser_binary_expression,
1681 c_parser_declaration_or_fndef and c_finish_omp_for callers.
1682 (omp_split_clauses): New function.
1683 (c_parser_omp_simd): New function.
1684 (c_parser_omp_for): Add p_name, mask and cclauses arguments.
1685 Allow the function to be called also when parsing combined constructs,
1686 and call c_parser_omp_simd when parsing for simd.
1687 (c_parser_omp_sections_scope): If section-sequence doesn't start with
1688 #pragma omp section, require exactly one structured-block instead of
1689 sequence of statements.
1690 (c_parser_omp_sections): Add p_name, mask and cclauses arguments.
1691 Allow the function to be called also when parsing combined constructs.
1692 (c_parser_omp_parallel): Add p_name, mask and cclauses arguments.
1693 Allow the function to be called also when parsing combined
1694 constructs.
1695 (c_parser_omp_taskgroup, c_parser_omp_cancel,
1696 c_parser_omp_cancellation_point, c_parser_omp_distribute,
1697 c_parser_omp_teams, c_parser_omp_target_data,
1698 c_parser_omp_target_update, c_parser_omp_target,
1699 c_parser_omp_declare_simd, c_finish_omp_declare_simd,
1700 c_parser_omp_declare_target, c_parser_omp_end_declare_target,
1701 c_parser_omp_declare_reduction, c_parser_omp_declare): New functions.
1702 (c_parser_omp_construct): Add p_name and mask vars. Handle
1703 PRAGMA_OMP_DISTRIBUTE, PRAGMA_OMP_SIMD, PRAGMA_OMP_TASKGROUP,
1704 PRAGMA_OMP_TEAMS. Adjust c_parser_omp_for, c_parser_omp_parallel
1705 and c_parser_omp_sections callers.
1706 (c_parse_file): Initialize tparser.tokens and the_parser->tokens here.
1707 (OMP_FOR_CLAUSE_MASK, OMP_SECTIONS_CLAUSE_MASK,
1708 OMP_SINGLE_CLAUSE_MASK): Use OMP_CLAUSE_MASK_1 instead of 1.
1709 (OMP_PARALLEL_CLAUSE_MASK): Likewise. Add OMP_CLAUSE_PROC_BIND.
1710 (OMP_TASK_CLAUSE_MASK): Use OMP_CLAUSE_MASK_1 instead of 1. Add
1711 OMP_CLAUSE_DEPEND.
1712 (OMP_SIMD_CLAUSE_MASK, OMP_CANCEL_CLAUSE_MASK,
1713 OMP_CANCELLATION_POINT_CLAUSE_MASK, OMP_DISTRIBUTE_CLAUSE_MASK,
1714 OMP_TEAMS_CLAUSE_MASK, OMP_TARGET_DATA_CLAUSE_MASK,
1715 OMP_TARGET_UPDATE_CLAUSE_MASK, OMP_TARGET_CLAUSE_MASK,
1716 OMP_DECLARE_SIMD_CLAUSE_MASK): Define.
1717 * c-typeck.c: Include tree-inline.h.
1718 (c_finish_omp_cancel, c_finish_omp_cancellation_point,
1719 handle_omp_array_sections_1, handle_omp_array_sections,
1720 c_clone_omp_udr, c_find_omp_placeholder_r): New functions.
1721 (c_finish_omp_clauses): Handle new OpenMP 4.0 clauses and
1722 user defined reductions.
1723 (c_tree_equal): New function.
1724 * c-tree.h (temp_store_parm_decls, temp_pop_parm_decls,
1725 c_finish_omp_cancel, c_finish_omp_cancellation_point, c_tree_equal,
1726 c_omp_reduction_id, c_omp_reduction_decl, c_omp_reduction_lookup,
1727 c_check_omp_declare_reduction_r): New prototypes.
1728 * c-decl.c (current_omp_declare_target_attribute): New variable.
1729 (c_decl_attributes): New function.
1730 (start_decl, start_function): Use it instead of decl_attributes.
1731 (temp_store_parm_decls, temp_pop_parm_decls, c_omp_reduction_id,
1732 c_omp_reduction_decl, c_omp_reduction_lookup,
1733 c_check_omp_declare_reduction_r): New functions.
1734
0a6c2227
TT
17352013-09-25 Tom Tromey <tromey@redhat.com>
1736
1737 * Make-lang.in (c/gccspec.o): Remove.
1738 (CFLAGS-c/gccspec.o): New variable.
1739 (cc1-checksum.o, C_TREE_H, c/c-aux-info.o, c/c-convert.o)
1740 (c/c-decl.o, c/c-errors.o, c/c-lang.o, c/c-objc-common.o)
1741 (c/c-parser.o, c/c-typeck.o, c/c-array-notation.o): Remove.
1742
f3bc55f0
TT
17432013-09-25 Tom Tromey <tromey@redhat.com>
1744
1745 * Make-lang.in (c/gccspec.o): Don't use subshell.
1746
a24d975c
MP
17472013-09-18 Marek Polacek <polacek@redhat.com>
1748
1749 PR sanitize/58443
1750 * c-typeck.c (build_binary_op): Properly honor -fsanitize options.
1751 Remove unnecessary check.
1752
ce6923c5
MP
17532013-09-18 Marek Polacek <polacek@redhat.com>
1754
1755 PR sanitizer/58411
1756 * c-typeck.c (build_binary_op): Don't sanitize function if it has the
1757 no_sanitize_undefined attribute.
1758
a1e51df9
KT
17592013-09-13 Kai Tietz <ktietz@redhat.com>
1760
1761 PR target/57848
1762 * c-decl.c (c_builtin_function_ext_scope): Remove
1763 wrong assumption that it is never called on prexisting
1764 symbol.
1765
0af94e6f
JR
17662013-09-08 Joern Rennecke <joern.rennecke@embecosm.com>
1767
1768 * c-typeck.c (build_binary_op): Use vector_types_compatible_elements_p.
1769
20059c8b
GDR
17702013-09-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
1771
1772 * c-objc-common.c (c_tree_printer): Tidy.
1773
de5a5fa1
MP
17742013-08-30 Marek Polacek <polacek@redhat.com>
1775
1776 * c-typeck.c (build_binary_op): Add division by zero and shift
1777 instrumentation.
1778
2531a1d9 17792013-08-26 Joern Rennecke <joern.rennecke@embecosm.com>
0fdd4508 1780 Joseph Myers <joseph@codesourcery.com>
2531a1d9 1781
6e2bcc98 1782 PR c/35649
2531a1d9
JR
1783 * c-typeck.c (c_common_type): Prefer double_type_node over
1784 other REAL_TYPE types with the same precision.
1785 (convert_arguments): Likewise.
1786
025311c4
GDR
17872013-08-23 Gabriel Dos Reis <gdr@integrable-solutions.net>
1788
1789 * c-objc-common.c (c_tree_printer): Document the nature of the cast.
1790 (c_initialize_diagnostics): Call a destructor for the early printer.
1791
da6ca2b5
GDR
17922013-08-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
1793
1794 * c-objc-common.c (c_initialize_diagnostics): Simplify C pretty
1795 printer initialization.
1796
318cda85 17972013-08-19 Balaji V. Iyer <balaji.v.iyer@intel.com>
da6ca2b5 1798
318cda85
BI
1799 PR c/57490
1800 * c-array-notation.c (fix_conditional_array_notations_1): Added a
1801 check for truth values.
1802 (expand_array_notation_exprs): Added truth values case. Removed an
1803 unwanted else. Added for-loop to walk through subtrees in default
1804 case.
1805
b066401f
GDR
18062013-08-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
1807
1808 * c-objc-common.c (c_initialize_diagnostics): Don't call pp_base.
1809
fb48aadc
JM
18102013-07-23 Joseph Myers <joseph@codesourcery.com>
1811
1812 * c-parser.c (struct c_generic_association): Fix typo.
1813
433cc7b0
TT
18142013-07-23 Tom Tromey <tromey@redhat.com>
1815 Joseph Myers <joseph@codesourcery.com>
1816
1817 * c-parser.c (struct c_generic_association): New.
1818 (c_generic_association_d): New typedef.
1819 (c_parser_generic_selection): New function.
1820 (c_parser_postfix_expression): Handle RID_GENERIC.
1821
26d40c3d
JM
18222013-07-13 Jason Merrill <jason@redhat.com>
1823
1824 PR c++/57793
1825 * c-decl.c (finish_struct): Check for too-large class.
1826
ecdbd01a 18272013-07-04 Joern Rennecke <joern.rennecke@embecosm.com>
40d3d530
JR
1828
1829 PR c/57821
1830 * c-typeck.c (set_init_index): When folding, check for index overflow.
1831
1141ed3f
BI
18322013-06-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
1833
1834 * c-parser.c (c_parser_array_notation): Removed rejection of array
1835 notations in an array of function pointers.
1836
713b46fa
BI
18372013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
1838
1839 * c-array-notation.c (make_triplet_val_inv): New function.
1840 (create_cmp_incr): Likewise.
1841 (create_array_refs): Likewise.
1842 (fix_builtin_array_notation_fn): Replaced all mallocs with tree vec.
1843 Also modularized common parts between functions and called the function.
1844 (build_array_notation_expr): Likewise.
1845 (fix_conditional_array_notations_1): Likewise.
1846 (fix_array_notation_expr): Likewise.
1847 (fix_array_notation_call_expr): Likewise.
1848
92f20202
MP
18492013-06-18 Marek Polacek <polacek@redhat.com>
1850
1851 PR c/57630
1852 * c-decl.c (check_for_loop_decls): Improve diagnostics messages.
1853
73a23b06
BI
18542013-06-12 Balaji V. Iyer <balaji.v.iyer@intel.com>
1855
1856 * c-array-notation.c (build_array_notation_expr): Reject array notation
1857 mismatch between LHS and RHS even inside a call_expr. Also, removed
1858 a couple while statements that were dead code.
1859
00b8517d
BI
18602013-06-10 Balaji V. Iyer <balaji.v.iyer@intel.com>
1861
1862 * c-array-notation.c (fix_builtin_array_notation_fn): Fully folded
1863 excessive precision expressions in function parameters. Also removed
1864 couple unwanted while statements.
1865
1509bdda
BI
18662013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
1867
1868 * c-array-notation.c (expand_array_notation_exprs): Added
1869 ARRAY_NOTATION_REF case.
1870
d60f1706
BI
18712013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
1872
1873 * c-array-notation.c (length_mismatch_in_expr_p): Moved this
1874 function to c-family/array-notation-common.c.
1875 (is_cilkplus_reduce_builtin): Likewise.
1876 (find_rank): Likewise.
1877 (extract_array_notation_exprs): Likewise.
1878 (replace_array_notations): Likewise.
1879 (find_inv_trees): Likewise.
1880 (replace_inv_trees): Likewise.
1881 (contains_array_notation_expr): Likewise.
1882 (find_correct_array_notation_type): Likewise.
1883 (replace_invariant_exprs): Initialized additional_tcodes to NULL.
1884 (struct inv_list): Moved this to c-family/array-notation-common.c.
1885 * c-tree.h (is_cilkplus_builtin_reduce): Remove prototype.
1886
6d6efbb3
BI
18872013-06-05 Balaji V. Iyer <balaji.v.iyer@intel.com>
1888
1889 * c-typeck.c (convert_arguments): Moved checking of builtin cilkplus
1890 reduction functions outside the for-loop. Added a check if the fundecl
1891 is non-NULL. Finally, removed an unwanted if-statement, and made the
1892 body unconditional.
1893
25c22937
BI
18942013-06-03 Balaji V. Iyer <balaji.v.iyer@intel.com>
1895
1896 * c-typeck.c (c_finish_if_stmt): Added a check to see if the rank of the
1897 condition of the if-statement matches the rank of else-block and then-
1898 block when array notations are used.
1899 * c-parser.c (c_parser_declaration_or_fndef): Expanded array notation
1900 expression after the entire function body is parsed.
1901 (c_parser_expr_no_commas): Delayed creating array notation expressions
1902 to the end of function parsing.
1903 * c-array-notation.c (fix_conditional_array_notations_1): Expanded the
1904 whole if-statement instead of just the condition.
1905 (expand_array_notation_exprs): Added MODIFY_EXPR case.
1906
edd25645
BI
19072013-06-03 Balaji V. Iyer <balaji.v.iyer@intel.com>
1908
1909 PR c/57474
1910 * c-array-notation.c (build_array_notation_expr): Initialized rhs_length
1911 array to NULL_TREE if they are unused. Also added a check for the
1912 field to be NULL before its fields are used in future.
1913
065ce7f1
RO
19142013-05-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1915
1916 PR bootstrap/57450
1917 * c-array-notation.c (length_mismatch_in_expr_p): Use absu_hwi.
1918 (build_array_notation_expr): Likewise.
1919
36536d79
BI
19202013-05-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
1921
1922 * c-typeck.c (build_array_ref): Added a check to see if array's
1923 index is greater than one. If true, then emit an error.
1924 (build_function_call_vec): Exclude error reporting and checking
1925 for builtin array-notation functions.
1926 (convert_arguments): Likewise.
1927 (c_finish_return): Added a check for array notations as a return
1928 expression. If true, then emit an error.
1929 (c_finish_loop): Added a check for array notations in a loop
1930 condition. If true then emit an error.
1931 (lvalue_p): Added a ARRAY_NOTATION_REF case.
1932 (build_binary_op): Added a check for array notation expr inside
1933 op1 and op0. If present, we call another function to find correct
1934 type.
1935 * Make-lang.in (C_AND_OBJC_OBJS): Added c-array-notation.o.
1936 * c-parser.c (c_parser_compound_statement): Check if array
1937 notation code is used in tree, if so, then transform them into
1938 appropriate C code.
1939 (c_parser_expr_no_commas): Check if array notation is used in LHS
1940 or RHS, if so, then build array notation expression instead of
1941 regular modify.
1942 (c_parser_postfix_expression_after_primary): Added a check for
1943 colon(s) after square braces, if so then handle it like an array
1944 notation. Also, break up array notations in unary op if found.
1945 (c_parser_direct_declarator_inner): Added a check for array
1946 notation.
1947 (c_parser_compound_statement): Added a check for array notation in
1948 a stmt. If one is present, then expand array notation expr.
1949 (c_parser_if_statement): Likewise.
1950 (c_parser_switch_statement): Added a check for array notations in
1951 a switch statement's condition. If true, then output an error.
1952 (c_parser_while_statement): Similarly, but for a while.
1953 (c_parser_do_statement): Similarly, but for a do-while.
1954 (c_parser_for_statement): Similarly, but for a for-loop.
1955 (c_parser_unary_expression): Check if array notation is used in a
1956 pre-increment or pre-decrement expression. If true, then expand
1957 them.
1958 (c_parser_array_notation): New function.
1959 * c-array-notation.c: New file.
1960 * c-tree.h (is_cilkplus_reduce_builtin): Protoize.
1961
cd192ccc
MS
19622013-05-23 Mike Stump <mikestump@comcast.net>
1963
1964 * c-typeck.c (convert_for_assignment): Handle references to memory
1965 spaces better.
1966
427b248d
JM
19672013-05-16 Jason Merrill <jason@redhat.com>
1968
1969 * Make-lang.in (cc1$(exeext)): Use link mutex.
1970
44d90fe1
PC
19712013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
1972
1973 * c-typeck.c (pointer_diff): Change -Wpointer-arith pedwarns
1974 to simply use OPT_Wpointer_arith.
1975 (build_unary_op): Likewise.
1976
4e7d7b3d
JJ
19772013-04-03 Jakub Jelinek <jakub@redhat.com>
1978
1979 PR c/19449
1980 * c-parser.c (c_parser_get_builtin_args): Add choose_expr_p
1981 argument. If set, or it temporarily for parsing of the first
1982 argument into force_folding_builtin_constant_p.
1983 (c_parser_postfix_expression): Adjust callers.
1984
839b422f
RB
19852013-03-21 Richard Biener <rguenther@suse.de>
1986
1987 * c-objc-common.c (c_tree_printer): Use DECL_HAS_DEBUG_EXPR_P
1988 instead of DECL_DEBUG_EXPR_IS_FROM. Guard properly.
1989
2ee028f1
MP
19902013-02-12 Marek Polacek <polacek@redhat.com>
1991
1992 PR c/44938
1993 * c-parser.c (c_parser_postfix_expression_after_primary): Initialize
1994 origtypes to NULL.
1995
8824edff
JJ
19962013-01-24 Jakub Jelinek <jakub@redhat.com>
1997
1998 PR c/56078
1999 * c-typeck.c (set_nonincremental_init_from_string): If
2000 constructor_max_index is NULL, treat it as if tree_int_cst_lt
2001 returned false.
2002 (process_init_element): Likewise.
2003
eadd3d0d
JJ
20042012-12-20 Jakub Jelinek <jakub@redhat.com>
2005
2006 PR c++/55619
2007 * c-parser.c (c_parser_asm_operands): Remove CONVERT_P
2008 argument, don't call default_function_array_conversion
2009 nor c_fully_fold here.
2010 (c_parser_asm_statement): Adjust callers.
2011 * c-typeck.c (build_asm_expr): Call c_fully_fold on inputs
2012 and outputs here, and call default_function_array_conversion
2013 on inputs that don't need to be addressable.
2014
f8a93a2e
JJ
20152012-12-18 Jakub Jelinek <jakub@redhat.com>
2016
2017 PR c/39464
2018 * c-typeck.c (convert_for_assignment): For -Wpointer-sign
2019 warning require that both c_common_unsigned_type as well as
2020 c_common_signed_type is the same for both mvl and mvr types.
2021
9771b263
DN
20222012-11-16 Diego Novillo <dnovillo@google.com>
2023
2024 Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
2025
2026 * c-common.c: Use new vec API in vec.h.
2027 * c-common.h: Likewise.
2028 * c-gimplify.c: Likewise.
2029 * c-pragma.c: Likewise.
2030 * c-pretty-print.c: Likewise.
2031 * c-pretty-print.h: Likewise.
2032 * c-semantics.c: Likewise.
2033 * c-decl.c: Likewise.
2034 * c-parser.c: Likewise.
2035 * c-tree.h: Likewise.
2036 * c-typeck.c: Likewise.
2037
880661a4
JW
20382012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
2039
2040 PR c++/54930
2041 * c-typeck.c (c_finish_return): Use OPT_Wreturn_local_addr.
2042
077d1abe
MLI
20432012-10-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
2044
2045 PR c/53066
2046 * c-decl.c (warn_if_shadowing): Do not warn if a variable
2047 shadows a function, unless the variable is a function or a
2048 pointer-to-function.
2049
3a785c97
JJ
20502012-10-12 Jakub Jelinek <jakub@redhat.com>
2051
2052 PR c/54381
2053 * c-parser.c (struct c_tree_loc_pair): Removed.
2054 (c_parser_expr_list): Remove struct c_tree_loc_pair * argument,
2055 add location_t * and tree * arguments, fill in array of 3
2056 sizeof_arg trees and corresponding locs.
2057 (c_parser_attributes, c_parser_objc_keywordexpr): Adjust
2058 c_parser_expr_list callers.
2059 (c_parser_postfix_expression_after_primary): Likewise. Pass
2060 array of 3 sizeof_arg trees and locs (corresponding to first
2061 3 arguments) to sizeof_pointer_memaccess_warning.
2062
703c8606
LC
20632012-10-09 Lawrence Crowl <crowl@google.com>
2064
2065 * Make-lang.in (c-decl.o): Add dependence on hash-table.h.
2066 * c-decl.c (detect_field_duplicates_hash): Change to new type-safe
2067 hash table.
2068
5d9de0d0
PC
20692012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
2070
2071 PR c++/54194
2072 * c-typeck.c (parser_build_binary_op): Update warn_about_parentheses
2073 call.
2074
a212e43f
MG
20752012-10-09 Marc Glisse <marc.glisse@inria.fr>
2076
2077 PR c++/54427
2078 * c-typeck.c: Include c-common.h.
2079 (enum stv_conv): Moved to c-common.h.
2080 (scalar_to_vector): Moved to c-common.c.
2081 (build_binary_op): Adapt to scalar_to_vector's new prototype.
2082 * Make-lang.in: c-typeck.c depends on c-common.h.
2083
3b78de56
AC
20842012-10-04 Arnaud Charlet <charlet@adacore.com>
2085
2086 * c-decl.c (c_write_global_declarations): Fix handling of
2087 -fdump-ada-spec*.
2088
78c60e3d
SS
20892012-09-30 Sharad Singhai <singhai@google.com>
2090
2091 * c-decl.c (c_write_global_declarations): Use a different method
2092 to determine if the dump has ben initialized.
2093
9f33203d
JM
20942012-09-14 Joseph Myers <joseph@codesourcery.com>
2095
2096 PR c/54552
2097 * c-typeck.c (c_cast_expr): When casting to a type requiring
2098 C_MAYBE_CONST_EXPR to be created, pass the inner expression to
2099 c_fully_fold first.
2100
a27d595d
JM
21012012-09-14 Joseph Myers <joseph@codesourcery.com>
2102
2103 PR c/54103
2104 * c-typeck.c (build_unary_op): Pass original argument of
2105 TRUTH_NOT_EXPR to c_objc_common_truthvalue_conversion, then remove
2106 any C_MAYBE_CONST_EXPR, if it has integer operands.
2107 (build_binary_op): Pass original arguments of TRUTH_ANDIF_EXPR,
2108 TRUTH_ORIF_EXPR, TRUTH_AND_EXPR, TRUTH_OR_EXPR and TRUTH_XOR_EXPR
2109 to c_objc_common_truthvalue_conversion, then remove any
2110 C_MAYBE_CONST_EXPR, if they have integer operands. Use
2111 c_objc_common_truthvalue_conversion not
2112 c_common_truthvalue_conversion.
2113 (c_objc_common_truthvalue_conversion): Build NE_EXPR directly and
2114 call note_integer_operands for arguments with integer operands
2115 that are not integer constants.
2116
9feb29df
JJ
21172012-09-13 Jakub Jelinek <jakub@redhat.com>
2118
2119 PR c/54559
2120 * c-typeck.c (c_finish_return): Do convert to BOOLEAN_TYPE or
2121 COMPLEX_TYPE with in_late_binary_op set temporarily to true.
2122
d409320c
JJ
21232012-08-31 Jakub Jelinek <jakub@redhat.com>
2124
2125 PR c/54428
2126 * c-convert.c (convert): Don't call fold_convert_loc if
2127 TYPE_MAIN_VARIANT of a COMPLEX_TYPE is the same, unless e
2128 is a COMPLEX_EXPR. Remove TYPE_MAIN_VARIANT check from
2129 COMPLEX_TYPE -> COMPLEX_TYPE conversion.
2130
6265d07c
JJ
21312012-08-24 Jakub Jelinek <jakub@redhat.com>
2132
2133 PR c/54355
2134 * c-decl.c (c_parser_label): Pass true as nested and fix up comments
2135 for nested and empty_ok arguments in the call to
2136 c_parser_declaration_or_fndef.
2137
1a4049e7
JJ
21382012-08-17 Jakub Jelinek <jakub@redhat.com>
2139
2140 * c-tree.h (c_last_sizeof_arg): Declare.
2141 * c-parser.c (struct c_tree_loc_pair): New type.
2142 (c_parser_expr_list): Add sizeof_arg argument. Fill it in if
2143 non-NULL.
2144 (c_parser_attributes, c_parser_objc_keywordexpr): Adjust callers.
2145 (c_parser_postfix_expression_after_primary): Likewise. Call
2146 sizeof_pointer_memaccess_warning if needed.
2147 (sizeof_ptr_memacc_comptypes): New function.
2148 * c-typeck.c (c_last_sizeof_arg): New global variable.
2149 (c_expr_sizeof_expr, c_expr_sizeof_type): Initialize it.
2150
0229aee9
UB
21512012-07-24 Uros Bizjak <ubizjak@gmail.com>
2152
2153 * c-lang.h (lang_decl): Add variable_size GTY option.
2154
7ee2468b
SB
21552012-07-16 Steven Bosscher <steven@gcc.gnu.org>
2156
2157 * c-decl.c: Include dumpfile.h instead of tree-dump.h.
2158 * Make-lang.in: Fix dependencies.
2159
d4a10d0a
SB
21602012-06-29 Steven Bosscher <steven@gcc.gnu.org>
2161
2162 * Make-lang.in: New file, rules migrated from gcc/Makefile.in
2163 and add language Makefile hooks.
2164 * config-lang.in: New file.
2165 * c-config-lang.in: Moved from gcc/config-lang.in to here, and
2166 add the required "normal" config-lang.in rules.
2167 * c-lang.h: Moved from gcc/ to here.
2168 * c-tree.h: Likewise.
2169 * c-objc-common.c: Likewise.
2170 * c-objc-common.h: Likewise.
2171 * c-typeck.c: Likewise.
2172 * c-convert.c: Likewise.
2173 * c-lang.c: Likewise.
2174 * c-aux-info.c: Likewise.
2175 * c-errors.c: Likewise.
2176 * gccspec.c: Likewise.
2177 * c-decl.c: Likewise. Include gt-c-c-decl.h, not gt-c-decl.h.
2178 * c-parser.c: Likewise. Include gt-c-c-parser.h, not gt-c-parser.h.
2179\f
5624e564 2180Copyright (C) 2012-2015 Free Software Foundation, Inc.
d4a10d0a
SB
2181
2182Copying and distribution of this file, with or without modification,
2183are permitted in any medium without royalty provided the copyright
2184notice and this notice are preserved.
This page took 0.938202 seconds and 5 git commands to generate.