]> gcc.gnu.org Git - gcc.git/blame - gcc/c/ChangeLog
Add forgotten test.
[gcc.git] / gcc / c / ChangeLog
CommitLineData
177cce46
MP
12014-08-19 Marek Polacek <polacek@redhat.com>
2
3 * c-decl.c (warn_variable_length_array): Pass OPT_Wvla unconditionally
4 to pedwarn_c90.
5 * c-errors.c: Include "opts.h".
6 (pedwarn_c90): Rewrite to handle -Wno-c90-c99-compat better.
7 * c-parser.c (disable_extension_diagnostics): Handle negative value
8 of warn_c90_c99_compat, too.
9 (restore_extension_diagnostics): Likewise.
10 (c_parser_compound_statement_nostart): Pass
11 OPT_Wdeclaration_after_statement unconditionally to pedwarn_c90.
12
6dc99c33
MP
132014-08-12 Marek Polacek <polacek@redhat.com>
14
15 * c-parser.c (c_parser_postfix_expression) <case RID_FUNCTION_NAME>:
16 Add pedwarn.
17 (c_parser_postfix_expression) <case RID_PRETTY_FUNCTION_NAME>:
18 Likewise.
19 (c_parser_postfix_expression) <case RID_C99_FUNCTION_NAME>: Likewise.
20
f3bede71
MP
212014-08-10 Marek Polacek <polacek@redhat.com>
22
23 PR c/51849
24 * c-decl.c (build_array_declarator): Remove check for !flag_isoc99.
25 Call pedwarn_c90 instead of pedwarn.
26 (check_bitfield_type_and_width): Likewise.
27 (declspecs_add_qual): Likewise.
28 (declspecs_add_type): Likewise.
29 (warn_variable_length_array): Unify function for -pedantic and -Wvla.
30 Adjust to only call pedwarn_c90.
31 (grokdeclarator): Remove pedantic && !flag_isoc99 check. Call
32 pedwarn_c90 instead of pedwarn.
33 * c-errors.c (pedwarn_c90): Handle -Wc90-c99-compat.
34 * c-parser.c (disable_extension_diagnostics): Handle
35 warn_c90_c99_compat.
36 (restore_extension_diagnostics): Likewise.
37 (c_parser_enum_specifier): Remove check for !flag_isoc99. Call
38 pedwarn_c90 instead of pedwarn.
39 (c_parser_initelt): Likewise.
40 (c_parser_postfix_expression): Likewise.
41 (c_parser_postfix_expression_after_paren_type): Likewise.
42 (c_parser_compound_statement_nostart): Remove check for !flag_isoc99.
43 * c-tree.h: Fix formatting.
44 * c-typeck.c (build_array_ref): Remove check for !flag_isoc99. Call
45 pedwarn_c90 instead of pedwarn.
46
9f25a338
TS
472014-08-07 Trevor Saunders <tsaunders@mozilla.com>
48
49 * c-typeck.c: Remove include of pointer-set.h.
50
044331a8
MP
512014-08-07 Marek Polacek <polacek@redhat.com>
52
53 * c-typeck.c (pointer_diff): Remove P - (P + CST) optimization.
54
b787e7a2
TS
552014-08-02 Trevor Saunders <tsaunders@mozilla.com>
56
57 * c-typeck.c: Use hash_map instead of pointer_map.
58
6e2830c3
TS
592014-08-02 Trevor Saunders <tsaunders@mozilla.com>
60
61 * c-decl.c: Use hash_set instead of pointer_set.
62
a7ee52fb
IZ
632014-08-01 Igor Zamyatin <igor.zamyatin@intel.com>
64
65 PR middle-end/61455
66 * c-array-notation.c (expand_array_notations): Handling
67 of DECL_EXPR added.
68
b4dfdc11
MG
692014-07-31 Marc Glisse <marc.glisse@inria.fr>
70
71 PR c++/60517
72 * c-typeck.c (c_finish_return): Return 0 instead of the address of
73 a local variable.
74
976d5a22
TT
752014-07-30 Tom Tromey <tromey@redhat.com>
76
77 * c-typeck.c (struct constructor_stack) <designator_depth>: New
78 field.
79 (really_start_incremental_init, push_init_level): Initialize
80 designator_depth.
81 (pop_init_level): Set global designator_depth.
82 (process_init_element): Check for designated_init attribute.
83
30281de2
MP
842014-07-20 Marek Polacek <polacek@redhat.com>
85
86 PR c/61852
87 * c-decl.c (implicit_decl_warning): Add location_t parameter. Use it.
88 (implicitly_declare): Pass location to implicit_decl_warning.
89
b108f48f
JJ
902014-07-14 Jakub Jelinek <jakub@redhat.com>
91
92 PR middle-end/61294
93 * c-parser.c (c_parser_expr_list): Add new argument literal_zero_mask.
94 If non-NULL, call c_parser_check_literal_zero.
95 (c_parser_check_literal_zero): New function.
96 (c_parser_postfix_expression_after_primary): Adjust
97 c_parser_expr_list caller, handle -Wmemset-transposed-args.
98
773ec47f
MP
992014-07-06 Marek Polacek <polacek@redhat.com>
100
101 PR c/6940
102 * c-decl.c (grokdeclarator): Set C_ARRAY_PARAMETER.
103 * c-tree.h (C_ARRAY_PARAMETER): Define.
104 * c-typeck.c (c_expr_sizeof_expr): Warn when using sizeof on an array
105 function parameter.
106
22e1cf1c
JH
1072014-07-02 Jan Hubicka <hubicka@ucw.cz>
108 Chen Gang <gang.chen.5i5j@gmail.com>
109
110 * c-decl.c (duplicate_decls): CLear DECL_STRUCT_FUNCTION before
111 releasing symbol.
112
52ec0ea3
MP
1132014-07-01 Marek Polacek <polacek@redhat.com>
114
115 * c-typeck.c (convert_for_assignment): Pass OPT_Wint_conversion
116 instead of 0 to WARN_FOR_ASSIGNMENT.
117
d5c3d343
MP
1182014-07-01 Marek Polacek <polacek@redhat.com>
119
120 PR c/58286
121 * c-typeck.c (convert_for_assignment): Pass
122 OPT_Wincompatible_pointer_types instead of 0 to WARN_FOR_ASSIGNMENT.
123
6a7253a4
MP
1242014-06-30 Marek Polacek <polacek@redhat.com>
125
126 * c-decl.c (grokdeclarator): Don't instrument VLAs if the function
127 has no_sanitize_undefined attribute.
128
5e88a8f4
IZ
1292014-06-30 Igor Zamyatin <igor.zamyatin@intel.com>
130
131 PR middle-end/57541
132 * c-array-notation.c (fix_builtin_array_notation_fn):
133 Check for 0 arguments in builtin call. Check that bultin argument is
134 correct.
135 * c-parser.c (c_parser_array_notation): Check for incorrect initial
136 index.
137
9698b078
SH
1382014-06-27 Sebastian Huber <sebastian.huber@embedded-brains.de>
139
140 * c-parser.c (c_parser_declaration_or_fndef): Discard all type
141 qualifiers in __auto_type for atomic types.
142 (c_parser_typeof_specifier): Discard all type qualifiers in
143 __typeof__ for atomic types.
144
6e07c515
MP
1452014-06-25 Marek Polacek <polacek@redhat.com>
146
147 PR c/61162
148 * c-parser.c (c_parser_statement_after_labels): Pass the location of
149 the return expression to c_finish_return.
150
da6f124d
JJ
1512014-06-25 Jakub Jelinek <jakub@redhat.com>
152
153 * c-typeck.c (c_finish_omp_clauses): Make sure
154 OMP_CLAUSE_LINEAR_STEP has correct type.
155
c203e8a7
TS
1562014-06-24 Trevor Saunders <tsaunders@mozilla.com>
157
158 * c-decl.c: Adjust.
159
56ad0e38
JJ
1602014-06-24 Jakub Jelinek <jakub@redhat.com>
161
162 * c-parser.c (c_parser_omp_for_loop): For
163 #pragma omp parallel for simd move lastprivate clause from parallel
164 to for rather than simd.
165
47c2554f
MP
1662014-06-23 Marek Polacek <polacek@redhat.com>
167
168 * c-typeck.c (parser_build_binary_op): Don't call
169 warn_logical_not_parentheses if the RHS is TRUTH_NOT_EXPR.
170
56363ffd
JH
1712014-06-15 Jan Hubicka <hubicka@ucw.cz>
172
173 * c-parser.c (c_parser_omp_threadprivate): Likewise.
174 * c-decl.c (merge_decls): Likewise.
175
d7ff7ae5
MP
1762014-06-09 Marek Polacek <polacek@redhat.com>
177
178 PR c/36446
179 * c-typeck.c (error_init): Call inform instead of error_at.
180 (pedwarn_init): Call inform instead of pedwarn.
181 (warning_init): Call inform instead of warning_at.
182
24d047a3
JH
1832014-06-07 Jan Hubicka <hubicka@ucw.cz>
184
185 * c-decl.c (merge_decls): Use set_decl_section_name.
186 (duplicate_decls): Remove node if it exists.
187
9bac5cbb
G
1882014-06-05 S. Gilles <sgilles@terpmail.umd.edu>
189
190 PR c/53119
191 * c-typeck.c (push_init_level, process_init_element,
192 pop_init_level): Correct check for zero initialization, move
193 missing brace warning to respect zero initialization.
194
8ffcdea8
MP
1952014-06-05 Marek Polacek <polacek@redhat.com>
196
197 PR c/56724
198 * c-typeck.c (convert_for_assignment): Use expr_loc for ic_argpass.
199
742938c9
MP
2002014-06-05 Marek Polacek <polacek@redhat.com>
201
202 PR c/49706
203 * c-typeck.c (parser_build_binary_op): Warn when logical not is used
204 on the left hand side operand of a comparison.
205
6447c55d
MP
2062014-06-05 Marek Polacek <polacek@redhat.com>
207
208 PR c/48062
209 * c-decl.c (warn_if_shadowing): Call inform instead of warning_at.
210 Print note only if the warning was printed.
211
9dc7743c
IZ
2122014-06-04 Igor Zamyatin <igor.zamyatin@intel.com>
213
214 PR c/58942
215 * c-array-notation.c (fix_builtin_array_notation_fn): Handle the case
216 with a pointer.
217
fedfecef
MP
2182014-06-03 Marek Polacek <polacek@redhat.com>
219
220 PR c/60439
221 * c-parser.c (c_parser_switch_statement): Pass explicit_cast_p to
222 c_start_case.
223 * c-tree.h (c_start_case): Update.
224 * c-typeck.c (c_start_case): Add new boolean parameter. Warn if
225 switch condition has boolean value.
226
9b2b7279
AM
2272014-06-02 Andrew MacLeod <amacleod@redhat.com>
228
229 * c-decl.c: Include builtins.h.
230 * c-parser.c: Likewise.
231
5c1bc275
MP
2322014-05-27 Marek Polacek <polacek@redhat.com>
233
234 PR c/56724
235 * c-typeck.c (convert_arguments): Get location of a parameter. Change
236 error and warning calls to error_at and warning_at. Pass location of
237 a parameter to it. Call warning_at with OPT_Wtraditional_conversion.
238 (convert_for_assignment): Add parameter to WARN_FOR_ASSIGNMENT and
239 WARN_FOR_QUALIFIERS. Pass expr_loc to those.
240
97563bc8
IZ
2412014-05-26 Igor Zamyatin <igor.zamyatin@intel.com>
242
243 PR c/61191
244 * c-array-notation.c (fix_builtin_array_notation_fn): Check invalid
245 function parameters.
246
aede2c10
JH
2472014-05-23 Jan Hubicka <hubicka@ucw.cz>
248
249 * c-decl.c (merge_decls): Preserve symtab node pointers.
250 (duplicate_decls): Free new decl.
251
edbba2ce
TS
2522014-05-23 Thomas Schwinge <thomas@codesourcery.com>
253
f3316c6d
TS
254 * c-typeck.c (c_finish_omp_clauses): Remove duplicated variable
255 initialization.
256
edbba2ce
TS
257 * c-parser.c (c_parser_omp_target): Return bool values.
258
68c81f24
TS
2592014-05-22 Thomas Schwinge <thomas@codesourcery.com>
260
261 * c-parser.c (c_parser_omp_clause_thread_limit): Rename
262 num_teams_loc variable to num_thread_limit_loc.
263
632f2871
RS
2642014-05-21 Richard Sandiford <rsandifo@linux.vnet.ibm.com>
265
266 * c-array-notation.c (expand_array_notations): Use void_node
267 instead of void_zero_node.
268
766090c2
TS
2692014-05-17 Trevor Saunders <tsaunders@mozilla.com>
270
271 * c-decl.c (finish_struct): Adjust.
272 (finish_enum): Likewise.
273 (bind): Adjust.
274 (record_inline_static): Likewise.
275 (push_scope): Likewise.
276 (make_label): Likewise.
277 (lookup_label_for_goto): Likewise.
278 (finish_struct): Likewise.
279 (finish_enum): Likewise.
280 (store_parm_decls): Likewise.
281 (c_push_function_context): Likewise.
282 * c-lang.h: Remove usage of variable_size gty attribute.
283 * c-parser.c (c_parse_init): Adjust.
284 (c_parse_file): Likewise.
285
2b107f6b
MP
2862014-05-13 Marek Polacek <polacek@redhat.com>
287
288 PR c/61162
289 * c-typeck.c (convert_for_assignment): Pass location to
290 WARN_FOR_ASSIGNMENT instead of input_location.
291
d033409e
MP
2922014-05-10 Marek Polacek <polacek@redhat.com>
293
294 * c-parser.c (c_parser_declaration_or_fndef): Pass init_loc to
295 maybe_warn_string_init.
296 (c_parser_postfix_expression_after_paren_type): Pass type_loc to
297 maybe_warn_string_init.
298 * c-tree.h (maybe_warn_string_init): Update declaration.
299 * c-typeck.c (maybe_warn_string_init): Add location parameter.
300 Call pedwarn_init with loc instead of with input_location.
301 (digest_init): Pass init_loc to maybe_warn_string_init.
302 (pop_init_level): Call pedwarn_init with loc instead of with
303 input_location.
304 (set_init_index): Likewise.
305 (process_init_element): Likewise.
306
ea58ef42
MP
3072014-05-09 Marek Polacek <polacek@redhat.com>
308
309 PR c/61096
310 * c-parser.c (c_parser_braced_init): Pass brace_loc to push_init_level.
311 (c_parser_initelt): Pass location to set_init_label. Pass array index
312 location to set_init_index.
313 * c-tree.h (push_init_level): Update declaration.
314 (pop_init_level): Likewise.
315 (set_init_index): Likewise.
316 (set_init_label): Likewise.
317 * c-typeck.c (error_init): Add location parameter. Call error_at
318 instead of error.
319 (digest_init): Pass init_loc to error_init.
320 (really_start_incremental_init):
321 (push_init_level): Add location parameter. Pass loc to pop_init_level
322 and error_init.
323 (pop_init_level): Likewise.
324 (set_designator): Add location parameter. Pass loc to pop_init_level,
325 push_init_level, and error_init.
326 (set_init_index): Add location parameter. Pass loc to error_init and
327 set_designator.
328 (set_init_label): Likewise.
329 (output_init_element): Pass loc to error_init.
330 (process_init_element): Pass loc to error_init, pop_init_level,
331 pedwarn_init, and push_init_level.
332
661a0813
MP
3332014-05-09 Marek Polacek <polacek@redhat.com>
334
335 PR c/50459
336 * c-parser.c (c_parser_attributes): Parse the arguments as an
337 expression-list if the attribute takes identifier.
338
2793eeab
MP
3392014-05-08 Marek Polacek <polacek@redhat.com>
340
341 PR c/61053
342 * c-decl.c (grokdeclarator): Use min_align_of_type instead of
343 TYPE_ALIGN_UNIT.
344
f827930a
MP
3452014-05-08 Marek Polacek <polacek@redhat.com>
346
347 PR c/61077
348 * c-decl.c (start_function): Warn for _Atomic-qualified return type
349 of main.
350
1d60af08
KZ
3512014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
352 Mike Stump <mikestump@comcast.net>
353 Richard Sandiford <rdsandiford@googlemail.com>
354
355 * c-decl.c (check_bitfield_type_and_width): Use TYPE_SIGN.
356 (finish_enum): Use wide-int interfaces.
357 * c-parser.c (c_parser_cilk_clause_vectorlength): Likewise.
358 * c-typeck.c (build_c_cast): Likewise.
359 (set_nonincremental_init_from_string): Likewise.
360 (c_tree_equal): Likewise.
361
a0e24419
MP
3622014-05-02 Marek Polacek <polacek@redhat.com>
363
364 PR c/25801
365 * c-typeck.c (c_size_in_bytes): Update comment. Don't call error.
366 Return size_one_node when the type is not complete.
367 (pointer_diff): Remove comment.
368 (build_unary_op): Improve error messages.
369
19fc9faa
MP
3702014-05-02 Marek Polacek <polacek@redhat.com>
371
372 * c-typeck.c (c_finish_return): Separate warning_at calls.
373
63bc4e87
MP
3742014-05-02 Marek Polacek <polacek@redhat.com>
375
376 * c-tree.h (error_init): Remove declaration.
377 (pedwarn_init): Likewise.
378 * c-typeck.c (error_init): Make static and move above.
379 (pedwarn_init): Likewise.
380 (warning_init): Move above.
381 (maybe_warn_string_init): Likewise.
382
4bd2511b
JL
3832014-05-01 Jeff Law <law@redhat.com>
384
385 Revert:
386
387 2014-04-24 Prathamesh Kulkarni <bilbotheelffriend@gmail.com>
388 * c-parser.c (c_parser_sizeof_expression): Reorganize slightly to
389 avoid goto.
390
6a358dcb
MP
3912014-05-02 Marek Polacek <polacek@redhat.com>
392
393 PR c/60784
394 * c-typeck.c (push_init_level): Set constructor_designated to
395 p->designated for structures.
396
ae5ebda4
MP
3972014-05-01 Marek Polacek <polacek@redhat.com>
398
399 PR c/60915
400 * c-parser.c (c_parser_declaration_or_fndef): Give better error if
401 function-definition has an attribute after the declarator.
402
96b40f8d
MP
4032014-05-01 Marek Polacek <polacek@redhat.com>
404
405 PR c/60257
406 * c-typeck.c (warning_init): Add location_t parameter. Call
407 warning_at instead of warning.
408 (push_init_level): Pass input_location to warning_init.
409 (add_pending_init): Add location_t parameter. Pass loc to
410 warning_init.
411 (set_nonincremental_init): Pass input_location to add_pending_init.
412 (set_nonincremental_init_from_string): Likewise.
413 (output_init_element): Pass loc to warning_init and to
414 add_pending_init.
415
32e00768
MP
4162014-05-01 Marek Polacek <polacek@redhat.com>
417
418 PR c/43395
419 * c-typeck.c (c_finish_return): Distinguish between label and variable
420 when warning about returning local address.
421
c9379ce2
MP
4222014-05-01 Marek Polacek <polacek@redhat.com>
423
424 PR c/29467
425 * c-decl.c (declspecs_add_type): Pedwarn if boolean types are used
426 in C89 mode.
427
d00887e8
MP
4282014-05-01 Marek Polacek <polacek@redhat.com>
429
430 PR c/43245
431 * c-typeck.c (convert_for_assignment): Pass OPT_Wdiscarded_qualifiers
432 instead of 0 to WARN_FOR_QUALIFIERS.
433
5436fa2e
MP
4342014-05-01 Marek Polacek <polacek@redhat.com>
435
436 PR c/56989
437 * c-typeck.c (default_conversion): Use better location for
438 error call.
439
f8ed5150
MP
4402014-04-30 Marek Polacek <polacek@redhat.com>
441
442 * c-typeck.c (build_binary_op): Call ubsan_instrument_division
443 also when SANITIZE_FLOAT_DIVIDE is on.
444
8337d1db
MP
4452014-04-30 Marek Polacek <polacek@redhat.com>
446
447 PR c/60139
448 * c-typeck.c (output_init_element): Pass OPT_Wpedantic to pedwarn
449 and pedwarn_init. Use loc insted of input_location.
450
c4bdc42f
MP
4512014-04-30 Marek Polacek <polacek@redhat.com>
452
453 PR c/60351
454 * c-typeck.c (build_binary_op): Use location when warning about
455 shift count.
456
45484dcf
MP
4572014-04-25 Marek Polacek <polacek@redhat.com>
458
459 PR c/18079
460 * c-decl.c (diagnose_mismatched_decls): Warn for mismatched
461 always_inline/noinline and hot/cold attributes.
462
34cf811f
MP
4632014-04-25 Marek Polacek <polacek@redhat.com>
464
465 PR c/60114
466 * c-parser.c (c_parser_initelt): Pass input_location to
467 process_init_element.
468 (c_parser_initval): Pass loc to process_init_element.
469 * c-tree.h (process_init_element): Adjust declaration.
470 * c-typeck.c (push_init_level): Pass input_location to
471 process_init_element.
472 (pop_init_level): Likewise.
473 (set_designator): Likewise.
474 (output_init_element): Add location_t parameter. Pass loc to
475 digest_init.
476 (output_pending_init_elements): Pass input_location to
477 output_init_element.
478 (process_init_element): Add location_t parameter. Pass loc to
479 output_init_element.
480
42056eac
JJ
4812014-04-24 Jakub Jelinek <jakub@redhat.com>
482
483 * c-parser.c (c_parser_omp_atomic): Allow seq_cst before
484 atomic-clause, allow comma in between atomic-clause and
485 seq_cst.
486
e162a134
JJ
4872014-04-22 Jakub Jelinek <jakub@redhat.com>
488
489 PR c/59073
490 * c-parser.c (c_parser_omp_parallel): If c_parser_omp_for
491 fails, don't set OM_PARALLEL_COMBINED and return NULL.
492
2f6babac
IZ
4932014-04-12 Igor Zamyatin <igor.zamyatin@intel.com>
494
495 PR middle-end/60469
496 * c-array-notation.c (fix_builtin_array_notation_fn): Use
497 create_tmp_var instead build_decl for creating temps.
498 (build_array_notation_expr): Likewise.
499 (fix_conditional_array_notations_1): Likewise.
500 (fix_array_notation_expr): Likewise.
501 (fix_array_notation_call_expr): Likewise.
502
8edbfaa6
JJ
5032014-03-28 Jakub Jelinek <jakub@redhat.com>
504
505 PR c++/60689
506 * c-tree.h (c_build_function_call_vec): New prototype.
507 * c-typeck.c (build_function_call_vec): Don't call
508 resolve_overloaded_builtin here.
509 (c_build_function_call_vec): New wrapper function around
510 build_function_call_vec. Call resolve_overloaded_builtin here.
511 (convert_lvalue_to_rvalue, build_function_call, build_atomic_assign):
512 Call c_build_function_call_vec instead of build_function_call_vec.
513 * c-parser.c (c_parser_postfix_expression_after_primary): Likewise.
514 * c-decl.c (finish_decl): Likewise.
515
7485aeea
MLI
5162014-03-18 Manuel López-Ibáñez <manu@gcc.gnu.org>
517
518 PR c/55383
519 * c-typeck.c: Use correct format string in cast-qual warning
520
b17a8b07
TS
5212014-03-07 Thomas Schwinge <thomas@codesourcery.com>
522
523 * c-decl.c (c_decl_attributes): Use
524 lang_hooks.types.omp_mappable_type.
525 * c-typeck.c (c_finish_omp_clauses): Likewise.
526
3af9c5e9
MP
5272014-03-06 Marek Polacek <polacek@redhat.com>
528
529 PR c/60197
530 * c-typeck.c (c_finish_return): Call contains_cilk_spawn_stmt instead
531 of checking tree code.
532
1c9f5f33
PK
5332014-02-19 Prathamesh Kulkarni <bilbotheelffriend@gmail.com>
534
535 * c-parser.c (c_parser_declspecs): Replace call to error by error_at.
536 (c_parser_parameter_declaration): Likewise.
537
cc28fc7f
MP
5382014-02-19 Marek Polacek <polacek@redhat.com>
539
540 PR c/60195
541 * c-typeck.c (convert_lvalue_to_rvalue): Set TREE_NO_WARNING on tmp.
542 Call mark_exp_read on exp.value.
543 (build_atomic_assign): Set TREE_NO_WARNING on val and old. Set
544 TREE_ADDRESSABLE on old instead of val.
545 (emit_side_effect_warnings): Warn only if RHS has !TREE_NO_WARNING.
546
b581c05c
PK
5472014-02-07 Prathamesh Kulkarni <bilbotheelffriend@gmail.com>
548
549 * c-parser.c (c_parser_get_builtin_args): Replace calls to
550 C_EXPR_APPEND by vec_safe_push.
551 * c-tree.h (C_EXPR_APPEND): Remove.
552
81e5eca8
MP
5532014-01-31 Marek Polacek <polacek@redhat.com>
554
555 PR c/59963
556 * c-typeck.c (convert_lvalue_to_rvalue): Pass vNULL to
557 build_function_call_vec.
558 (build_function_call): Likewise.
559 (build_atomic_assign): Likewise.
560 (build_function_call_vec): Add arg_loc parameter. Use it.
561 (convert_arguments): Likewise.
562 (convert_for_assignment): Rename rhs_loc to expr_loc.
563 * c-parser.c (c_parser_attributes): Pass NULL to c_parser_expr_list.
564 (c_parser_objc_keywordexpr): Likewise.
565 (c_parser_postfix_expression_after_primary): Call
566 build_function_call_vec with expr_loc rather than op_loc.
567 Call c_parser_expr_list to fill arg_loc. Pass arg_loc to
568 build_function_call_vec.
569 (c_parser_expr_list): Add locations parameter. Fill it with locations
570 of function arguments.
571 * c-decl.c (finish_decl): Pass vNULL to build_function_call_vec.
572
68fca595
MP
5732014-01-30 Marek Polacek <polacek@redhat.com>
574
575 PR c/59940
576 * c-typeck.c (build_function_call_vec): Use loc parameter.
577 (convert_arguments): Add location parameter. Use it.
578 (ep_convert_and_check): Likewise.
579 (build_atomic_assign): Adjust convert_for_assignment call.
580 (build_modify_expr): Likewise.
581 (digest_init): Likewise.
582 (c_finish_return): Likewise.
583 (build_conditional_expr): Adjust ep_convert_and_check calls.
584 (convert_for_assignment): Add rhs_loc parameter. Use it.
585 (build_binary_op): Adjust convert_and_check and ep_convert_and_check
586 calls.
587
fa337f3a
RB
5882014-01-30 Richard Biener <rguenther@suse.de>
589
590 PR c/59905
591 * c-typeck.c (build_function_call_vec): Do not replace calls
592 to a function via an incompatible type with a runtime abort.
593
b72271b9
BI
5942014-01-24 Balaji V. Iyer <balaji.v.iyer@intel.com>
595
596 * c-parser.c (c_parser_declaration_or_fndef): Replaced
597 flag_enable_cilkplus with flag_cilkplus.
598 (c_parser_direct_declarator_inner): Likewise.
599 (c_parser_attribute_any_word): Likewise.
600 (c_parser_attributes): Likewise.
601 (c_parser_compound_statement): Likewise.
602 (c_parser_statement_after_labels): Likewise.
603 (c_parser_if_statement): Likewise.
604 (c_parser_switch_statement): Likewise.
605 (c_parser_do_statement): Likewise.
606 (c_parser_for_statement): Likewise.
607 (c_parser_unary_expression): Likewise.
608 (c_parser_postfix_expression): Likewise.
609 (c_parser_postfix_expression_after_primary): Likewise.
610 (c_parser_postfix_expression_after_primary): Likewise.
611 (c_parser_omp_clause_name): Likewise.
612 (c_finish_omp_declare_simd): Likewise.
613 (c_parser_cilk_verify_simd): Likewise.
614 * c-typeck.c (build_array_ref): Likewise.
615 (build_function_call_vec): Likewise.
616 (convert_arguments): Likewise.
617 (build_compound_expr): Likewise.
618 (c_finish_return): Likewise.
619 (c_finish_if_stmt): Likewise.
620 (c_finish_loop): Likewise.
621 (build_binary_op): Likewise.
622
393e8e8b
MP
6232014-01-23 Marek Polacek <polacek@redhat.com>
624
625 PR c/59846
626 * c-typeck.c (parser_build_binary_op): Use location instead of
627 input_location.
628 (build_binary_op): Pass location to shorten_compare.
629
f04dda30
MP
6302014-01-23 Marek Polacek <polacek@redhat.com>
631
632 PR c/58346
633 * c-typeck.c (pointer_diff): Give an error on arithmetic on pointer to
634 an empty aggregate.
635
789eadcd
MP
6362014-01-23 Marek Polacek <polacek@redhat.com>
637
638 PR c/59871
639 * c-typeck.c (build_compound_expr): Warn even for right-hand operand
640 of a comma expression.
641 (emit_side_effect_warnings): Likewise.
642
40f14e9f
BI
6432014-01-23 Balaji V. Iyer <balaji.v.iyer@intel.com>
644
645 PR c/59825
646 * c-array-notation.c (expand_array_notation_exprs): Rewrote this
647 function to use walk_tree and moved a lot of its functionality to
648 expand_array_notations.
649 (expand_array_notations): New function.
650
74558dd9
BI
6512014-01-23 Balaji V. Iyer <balaji.v.iyer@intel.com>
652
653 * c-parser.c (c_finish_omp_declare_simd): Made "cilk simd function"
654 attribute an attribute without value.
655
652fea39
JJ
6562014-01-23 Jakub Jelinek <jakub@redhat.com>
657
658 PR middle-end/58809
659 * c-typeck.c (c_finish_omp_clause): Reject MIN_EXPR, MAX_EXPR,
660 BIT_AND_EXPR, BIT_IOR_EXPR and BIT_XOR_EXPR on COMPLEX_TYPEs.
661
f34f1c87
MP
6622014-01-22 Marek Polacek <polacek@redhat.com>
663
664 PR c/59891
665 * c-typeck.c (build_conditional_expr): Call c_fully_fold instead
666 of remove_c_maybe_const_expr on op1 and op2.
667
241f845a
JJ
6682014-01-15 Jakub Jelinek <jakub@redhat.com>
669
670 PR c/58943
671 * c-typeck.c (build_modify_expr): For lhs op= rhs, if rhs has side
672 effects, preevaluate rhs using SAVE_EXPR first.
673
9a74f20c
BI
6742014-01-09 Balaji V. Iyer <balaji.v.iyer@intel.com>
675
676 PR c++/59631
677 * c-parser.c (c_parser_postfix_expression): Replaced consecutive if
678 statements with if-elseif statements.
679
96066ce1
MP
6802014-01-06 Marek Polacek <polacek@redhat.com>
681
682 PR c/57773
683 * c-decl.c (check_bitfield_type_and_width): Warn for implementation
684 defined bit-field types only in ISO C.
685
23a5b65a
RS
6862014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
687
688 Update copyright years
689
f9030485
RS
6902014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
691
692 * c-array-notation.c: Use the standard form for the copyright notice.
693
41958c28
BI
6942013-12-18 Balaji V. Iyer <balaji.v.iyer@intel.com>
695
696 * c-parser.c (struct c_parser::cilk_simd_fn_tokens): Added new field.
697 (c_parser_declaration_or_fndef): Added a check if cilk_simd_fn_tokens
698 field in parser is not empty. If not-empty, call the function
699 c_parser_finish_omp_declare_simd.
700 (c_parser_cilk_clause_vectorlength): Modified function to be shared
701 between SIMD-enabled functions and #pragma simd. Added new parameter.
702 (c_parser_cilk_all_clauses): Modified the usage of the function
703 c_parser_cilk_clause_vectorlength as mentioned above.
704 (c_parser_cilk_simd_fn_vector_attrs): New function.
705 (c_finish_cilk_simd_fn_tokens): Likewise.
706 (is_cilkplus_vector_p): Likewise.
707 (c_parser_omp_clause_name): Added checking for "vectorlength,"
708 "nomask," and "mask" strings in clause name.
709 (c_parser_omp_all_clauses): Added 3 new case statements:
710 PRAGMA_CILK_CLAUSE_VECTORLENGTH, PRAGMA_CILK_CLAUSE_MASK and
711 PRAGMA_CILK_CLAUSE_NOMASK.
712 (c_parser_attributes): Added a cilk_simd_fn_tokens parameter. Added a
713 check for vector attribute and if so call the function
714 c_parser_cilk_simd_fn_vector_attrs. Also, when Cilk plus is enabled,
715 called the function c_finish_cilk_simd_fn_tokens.
716 (c_finish_omp_declare_simd): Added a check if cilk_simd_fn_tokens in
717 parser field is non-empty. If so, parse them as you would parse
718 the omp declare simd pragma.
719 (c_parser_omp_clause_linear): Added a new bool parm. is_cilk_simd_fn.
720 Added a check when step is a parameter and flag it as error.
721 (CILK_SIMD_FN_CLAUSE_MASK): New #define.
722 (c_parser_cilk_clause_name): Changed pragma_cilk_clause to
723 pragma_omp_clause.
724
cef0fd0e
TS
7252013-12-17 Thomas Schwinge <thomas@codesourcery.com>
726
727 * c-parser.c (c_parser_omp_parallel): Fix description.
728
12893402
BI
7292013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com>
730
731 * c-objc-common.h (LANG_HOOKS_CILKPLUS_FRAME_CLEANUP): Remove.
732 (LANG_HOOKS_CILKPLUS_DETECT_SPAWN_AND_UNWRAP): Likewise.
733 (LANG_HOOKS_CILKPLUS_CILKPLUS_GIMPLIFY_SPAWN): Likewise.
734 * c-typeck.c (cilk_install_body_with_frame_cleanup): New function.
735
296674db
JM
7362013-12-04 Joseph Myers <joseph@codesourcery.com>
737
738 PR c/52023
739 * c-parser.c (c_parser_alignas_specifier): Use
740 c_sizeof_or_alignof_type instead of c_alignof.
741 (c_parser_alignof_expression): Likewise, with min_alignof
742 parameter depending on alignof spelling used.
743
edd28054
MP
7442013-12-04 Marek Polacek <polacek@redhat.com>
745
746 PR c/54113
747 * c-decl.c (start_function): Don't warn for missing prototype for
748 inline functions.
749
da0fc454
MP
7502013-12-03 Marek Polacek <polacek@redhat.com>
751
752 PR c/59351
753 * c-decl.c (build_compound_literal): Allow compound literals with
754 empty initial value.
755
4c2ecab0
JM
7562013-12-02 Joseph Myers <joseph@codesourcery.com>
757
758 PR c/58235
759 * c-typeck.c (build_modify_expr): Diagnose assignment to
760 expression with array type.
761
340baef7
JM
7622013-11-29 Joseph Myers <joseph@codesourcery.com>
763
764 PR c/42262
765 * c-typeck.c (process_init_element): Do not treat a string as
766 initializing a whole array when used with a designator for an
767 individual element.
768
6763b9f7
JM
7692013-11-29 Joseph Myers <joseph@codesourcery.com>
770
771 PR c/57574
772 * c-decl.c (merge_decls): Clear DECL_EXTERNAL for a definition of
773 an inline function following a static declaration.
774
e7bd1de1
JJ
7752013-11-28 Jakub Jelinek <jakub@redhat.com>
776
777 PR c/59310
778 * c-parser.c (c_parser_omp_target): Copy "#pragma omp target"
779 to p_name before calling c_parser_omp_teams instead of after.
780 (c_parser_cilk_simd): Remove wrong ATTRIBUTE_UNUSED from parser
781 argument. Remove unused p_name variable.
782
0136f8f0
AH
7832013-11-27 Aldy Hernandez <aldyh@redhat.com>
784 Jakub Jelinek <jakub@redhat.com>
785
786 * c-decl.c (c_builtin_function_ext_scope): Avoid binding if
787 external_scope is NULL.
788
241b71bb
TV
7892013-11-27 Tom de Vries <tom@codesourcery.com>
790 Marc Glisse <marc.glisse@inria.fr>
791
792 PR c++/59032
793 * c-typeck.c (build_unary_op): Allow vector increment and decrement.
794
2fb9a547
AM
7952013-11-22 Andrew MacLeod <amacleod@redhat.com>
796
797 * c-typeck.c: Add required include files from gimple.h.
798
8400e75e
DM
7992013-11-22 David Malcolm <dmalcolm@redhat.com>
800
801 * c-decl.c (define_label, shadow_tag_warned)
802 (check_bitfield_type_and_width, grokdeclarator, grokparms,
803 store_parm_decls_newstyle, store_parm_decls_oldstyle)
804 (declspecs_add_type): Remove use of in_system_header macro.
805 * c-parser.c (c_parser_unary_expression): Likewise.
806 * c-typeck.c (store_init_value, process_init_element)
807 (c_start_case): Likewise.
808
809 * c-decl.c (build_enumerator): Remove use of EXPR_LOC_OR_HERE
810 macro.
811
812 * c-parser.c (c_parser_set_source_position_from_token): Remove
813 reference to in_system_header from comment.
814
386b1f1f
RS
8152013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
816
817 * c-decl.c (grokdeclarator): Update comment to refer to
818 tree_to_[su]hwi rather than tree_low_cst.
819
ae7e9ddd
RS
8202013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
821
822 * c-decl.c, c-typeck.c: Replace tree_low_cst (..., 1) with
823 tree_to_uhwi throughout.
824
9439e9a1
RS
8252013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
826
827 * c-parser.c: Replace tree_low_cst (..., 0) with tree_to_shwi
828 throughout.
829
9541ffee
RS
8302013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
831
832 * c-parser.c: Replace host_integerp (..., 0) with tree_fits_shwi_p
833 throughout.
834
c02065fc
AH
8352013-11-15 Aldy Hernandez <aldyh@redhat.com>
836
837 * c-parser.c (c_parser_cilk_simd): New.
838 (c_parser_cilk_verify_simd): New.
839 (c_parser_pragma): Add case for PRAGMA_CILK_SIMD.
840 (c_parser_omp_for_loop): Add case for NE_EXPR.
841 Set c_break_label for CILK_SIMD.
842 (c_parser_cilk_clause_vectorlength): New.
843 (c_parser_cilk_clause_linear): New.
844 (c_parser_cilk_clause_name): New.
845 (c_parser_cilk_all_clauses): New.
846 * c-typeck.c (build_unary_op): Pass location argument to
847 readonly_error.
848 (build_modify_expr): Same.
849 (build_asm_expr): Same.
850 (c_finish_bc_stmt): Error on break/continue in loops.
851
18f429e2
AM
8522013-11-14 Andrew MacLeod <amacleod@redhat.com>
853
854 * c-typeck.c: Include only gimplify.h and gimple.h as needed.
855
d8a2d370
DN
8562013-11-14 Diego Novillo <dnovillo@google.com>
857
858 * c-decl.c: Include print-tree.h.
859 Include stor-layout.h.
860 Include varasm.h.
861 Include attribs.h.
862 Include stringpool.h.
863 * c-lang.c: Include fold-const.h.
864 * c-parser.c: Include stringpool.h.
865 Include attribs.h.
866 Include stor-layout.h.
867 Include varasm.h.
868 Include trans-mem.h.
869 * c-typeck.c: Include stor-layout.h.
870 Include trans-mem.h.
871 Include varasm.h.
872 Include stmt.h.
873
38b7bc7f
JM
8742013-11-13 Joseph Myers <joseph@codesourcery.com>
875
876 * c-tree.h (c_typespec_keyword): Add cts_auto_type.
877 * c-decl.c (declspecs_add_type, finish_declspecs): Handle
878 __auto_type.
879 * c-parser.c (c_token_starts_typename, c_token_starts_declspecs)
880 (c_parser_attribute_any_word, c_parser_objc_selector): Handle
881 RID_AUTO_TYPE.
882 (c_parser_declspecs): Take argument AUTO_TYPE_OK.
883 (c_parser_declaration_or_fndef, c_parser_struct_declaration)
884 (c_parser_declarator, c_parser_direct_declarator_inner)
885 (c_parser_parameter_declaration, c_parser_type_name): All callers
886 changed.
887 (c_parser_declaration_or_fndef): Handle declarations with type
888 determined from the initializer.
889
45b0be94
AM
8902013-11-12 Andrew MacLeod <amacleod@redhat.com>
891
18f429e2 892 * c-typeck.c: Include gimplify.h.
45b0be94 893
582d9b50
JM
8942013-11-12 Joseph Myers <joseph@codesourcery.com>
895
896 * c-tree.h (struct c_declspecs): Add thread_gnu_p field.
897 * c-parser.c (c_parser_declspecs): Mention _Thread_local in
898 comment.
899 * c-decl.c (shadow_tag_warned, grokdeclarator): Mention __thread
900 or _Thread_local as appropriate in diagnostics.
901 (build_null_declspecs): Initialize ret->thread_gnu_p.
902 (declspecs_add_scspec): Handle either __thread or _Thread_local
903 for RID_THREAD. Diagnose _Thread_local for pre-C11 standards if
904 pedantic. Do not disallow _Thread_local extern and _Thread_local
905 static.
906
267bac10
JM
9072013-11-07 Joseph Myers <joseph@codesourcery.com>
908 Andrew MacLeod <amacleod@redhat.com>
909
910 * c-aux-info.c (gen_type): Handle atomic qualifier.
911 * c-decl.c (validate_proto_after_old_defn): Do not remove atomic
912 qualifiers when compating types.
913 (shadow_tag_warned): Handle atomic_p in declspecs.
914 (quals_from_declspecs): Likewise.
915 (start_decl): Use c_type_promotes_to when promoting argument
916 types.
917 (grokdeclarator): Handle _Atomic.
918 (get_parm_info): Diagnose any qualifier on "void" as only
919 parameter.
920 (store_parm_decls_oldstyle): Do not remove atomic qualifiers when
921 comparing types. Use c_type_promotes_to when promoting argument
922 types.
923 (finish_function): Use c_type_promotes_to when promoting argument
924 types.
925 (build_null_declspecs): Handle atomic_p in declspecs.
926 (declspecs_add_qual): Handle RID_ATOMIC.
927 * c-parser.c (c_token_starts_typename, c_token_is_qualifier)
928 (c_token_starts_declspecs): Handle RID_ATOMIC.
929 (c_parser_declspecs): Handle atomic type specifiers and
930 qualifiers.
931 (c_parser_typeof_specifier): Remove const and _Atomic qualifiers
932 from types of expressions with atomic type.
933 (c_parser_direct_declarator_inner): Use convert_lvalue_to_rvalue.
934 (c_parser_attribute_any_word): Handle RID_ATOMIC.
935 (c_parser_initializer, c_parser_initelt, c_parser_initval)
936 (c_parser_statement_after_labels, c_parser_switch_statement)
937 (c_parser_for_statement, c_parser_expr_no_commas)
938 (c_parser_conditional_expression, c_parser_binary_expression)
939 (c_parser_cast_expression, c_parser_unary_expression)
940 (c_parser_postfix_expression)
941 (c_parser_postfix_expression_after_primary, c_parser_expression):
942 Use convert_lvalue_to_rvalue.
943 (c_parser_expression_conv, c_parser_expr_list): Document
944 conversion of lvalues to rvalues. Use convert_lvalue_to_rvalue.
945 (c_parser_objc_synchronized_statement): Use
946 convert_lvalue_to_rvalue.
947 (c_parser_objc_selector): Handle RID_ATOMIC.
948 (c_parser_objc_receiver, c_parser_array_notation): Use
949 convert_lvalue_to_rvalue.
950 * c-tree.h (ctsk_typeof): Adjust comment to mention use for
951 _Atomic (type-name).
952 (struct c_declspecs): Add atomic_p field.
953 (convert_lvalue_to_rvalue): Declare.
954 * c-typeck.c (c_type_promotes_to): Promote atomic types to
955 corresponding atomic types.
956 (qualify_type): Don't add _Atomic qualifiers from second argument.
957 (comp_target_types): Do not allow _Atomic mismatches.
958 (type_lists_compatible_p): Do not remove atomic qualifiers when
959 comparing types.
960 (really_atomic_lvalue, convert_lvalue_to_rvalue)
961 (build_atomic_assign): New functions.
962 (build_unary_op): Use build_atomic_assign for atomic increment and
963 decrement.
964 (build_conditional_expr): Do not treat _Atomic void as a qualified
965 version of void.
966 (build_modify_expr): Use build_atomic_assign for atomic LHS.
967 (find_anonymous_field_with_type, convert_to_anonymous_field)
968 (convert_for_assignment): Do not remove atomic qualifiers when
969 comparing types.
970 (digest_init): Do not accept initialization of arrays of atomic
971 elements by string constants.
972 (build_asm_expr): Use convert_lvalue_to_rvalue.
973 (build_binary_op): Do not treat _Atomic void as a qualified
974 version of void.
975
0c249d4b
DD
9762013-11-06 DJ Delorie <dj@redhat.com>
977
978 * c-decl.c (locate_old_decl): If a previous conflicting decl is
979 both explicit and builtin, print the location of the explicit one.
980
6d7f7e0a
TB
9812013-11-05 Tobias Burnus <burnus@net-b.de>
982
983 * c-parser.c (c_parser_omp_for, c_parser_omp_parallel,
984 c_parser_omp_distribute, c_parser_omp_teams,
985 c_parser_omp_target, c_parser_omp_declare): Handle
986 -fopenmp-simd.
987
b906f4ca
MP
9882013-11-03 Marek Polacek <polacek@redhat.com>
989
990 * c-decl.c (grokdeclarator): Add VLA instrumentation.
991
ee1d5a02
JJ
9922013-11-01 Jakub Jelinek <jakub@redhat.com>
993
994 * c-typeck.c (c_finish_omp_clauses) <case OMP_CLAUSE_UNIFORM>: Go to
995 check_dup_generic at the end, unless remove is true.
996 (c_finish_omp_clauses) <case OMP_CLAUSE_REDUCTION>: Add break; after
997 remove = true;.
998 (c_finish_omp_clauses) <case OMP_CLAUSE_COPYIN>: Likewise.
999
5a9785fb
JJ
10002013-10-31 Jakub Jelinek <jakub@redhat.com>
1001
1002 * c-typeck.c (c_finish_omp_clauses): Diagnose aligned clause
1003 with decl that is not pointer nor array.
1004
939b37da
BI
10052013-10-29 Balaji V. Iyer <balaji.v.iyer@intel.com>
1006
1007 * c-decl.c (finish_function): Added a call for insert_cilk_frame when
1008 a spawning function is found.
1009 * c-objc-common.h (LANG_HOOKS_CILKPLUS_GIMPLIFY_SPAWN): New #define.
1010 (LANG_HOOKS_CILKPLUS_FRAME_CLEANUP): Likewise.
1011 (LANG_HOOKS_CILKPLUS_DETECT_SPAWN_AND_UNWRAP): Likewise.
1012 * c-parser.c (c_parser_statement_after_labels): Added RID_CILK_SYNC
1013 case.
1014 (c_parser_postfix_expression): Added RID_CILK_SPAWN case.
1015 * c-typeck.c (build_compound_expr): Reject _Cilk_spawn in a comma
1016 expr.
1017 (c_finish_return): Added a check to reject _Cilk_spawn in return
1018 expression.
1019 (build_cilk_spawn): New function.
1020 (build_cilk_sync): Likewise.
1021 * Makefile.in (c-decl.o): Added cilk.h in dependency list.
1022
d4af74d4
TB
10232013-10-27 Tobias Burnus <burnus@net-b.de>
1024
1025 PR other/33426
1026 * c-parser.c (c_parser_while_statement, c_parser_while_statement,
1027 c_parser_pragma): Add GCC ivdep support to 'do' and 'while'.
1028 (c_parser_statement_after_labels): Update calls.
1029
d73749df 10302013-10-24 Tobias Burnus <burnus@net-b.de>
8170608b
TB
1031
1032 PR other/33426
1033 * c-parser.c (c_parser_pragma, c_parser_for_statement):
1034 Handle PRAGMA_IVDEP.
1035 (c_parser_statement_after_labels): Update call.
1036
f28aa681
MP
10372013-10-24 Marek Polacek <polacek@redhat.com>
1038
1039 * c-parser.c (c_parser_struct_declaration): Add a comment.
1040 (c_parser_declarator): Don't allow _Alignas here.
1041
0645c1a2
AM
10422013-10-17 Andrew MacLeod <amacleod@redhat.com>
1043
1044 * c-parser.c: Include omp-low.h.
1045 * c-typeck.c: Likewise.
1046
568a31f2
MP
10472013-10-17 Marek Polacek <polacek@redhat.com>
1048
1049 PR c/58267
1050 * c-parser.c (c_parser_declspecs): Add alignspec_ok parameter.
1051 Document syntax of the array-declarator.
1052 (c_parser_declspecs) <RID_ALIGNAS>: Bail out if alignment specs
1053 are not permitted.
1054 (c_parser_declaration_or_fndef): Adjust c_parser_declspecs call.
1055 (c_parser_struct_declaration): Likewise.
1056 (c_parser_declarator): Likewise.
1057 (c_parser_direct_declarator_inner): Likewise.
1058 (c_parser_parameter_declaration): Likewise.
1059 (c_parser_type_name): Likewise.
1060
acf0174b
JJ
10612013-10-11 Jakub Jelinek <jakub@redhat.com>
1062
1063 * c-lang.h (current_omp_declare_target_attribute): New extern
1064 decl.
1065 * c-parser.c: Include c-lang.h.
1066 (struct c_parser): Change tokens to c_token *.
1067 Add tokens_buf field. Change tokens_avail type to unsigned int.
1068 (c_parser_consume_token): If parser->tokens isn't
1069 &parser->tokens_buf[0], increment parser->tokens.
1070 (c_parser_consume_pragma): Likewise.
1071 (enum pragma_context): Add pragma_struct and pragma_param.
1072 (c_parser_external_declaration): Adjust
1073 c_parser_declaration_or_fndef caller.
1074 (c_parser_declaration_or_fndef): Add omp_declare_simd_clauses
1075 argument, if it is non-vNULL vector, call c_finish_omp_declare_simd.
1076 Adjust recursive call.
1077 (c_parser_struct_or_union_specifier): Use pragma_struct instead
1078 of pragma_external.
1079 (c_parser_parameter_declaration): Use pragma_param instead of
1080 pragma_external.
1081 (c_parser_compound_statement_nostart, c_parser_label,
1082 c_parser_for_statement): Adjust
1083 c_parser_declaration_or_fndef callers.
1084 (c_parser_expr_no_commas): Add omp_atomic_lhs argument, pass
1085 it through to c_parser_conditional_expression.
1086 (c_parser_conditional_expression): Add omp_atomic_lhs argument,
1087 pass it through to c_parser_binary_expression. Adjust recursive
1088 call.
1089 (c_parser_binary_expression): Remove prec argument, add
1090 omp_atomic_lhs argument instead. Always start from PREC_NONE, if
1091 omp_atomic_lhs is non-NULL and one of the arguments of toplevel
1092 binop matches it, use build2 instead of parser_build_binary_op.
1093 (c_parser_pragma): Handle PRAGMA_OMP_CANCEL,
1094 PRAGMA_OMP_CANCELLATION_POINT, PRAGMA_OMP_TARGET,
1095 PRAGMA_OMP_END_DECLARE_TARGET, PRAGMA_OMP_DECLARE_REDUCTION.
1096 Handle pragma_struct and pragma_param the same as pragma_external.
1097 (c_parser_omp_clause_name): Parse new OpenMP 4.0 clause names.
1098 (c_parser_omp_variable_list): Parse array sections for
1099 OMP_CLAUSE_{DEPEND,MAP,TO,FROM} clauses.
1100 (c_parser_omp_clause_collapse): Fully fold collapse expression.
1101 (c_parser_omp_clause_reduction): Handle user defined reductions.
1102 (c_parser_omp_clause_branch, c_parser_omp_clause_cancelkind,
1103 c_parser_omp_clause_num_teams, c_parser_omp_clause_thread_limit,
1104 c_parser_omp_clause_aligned, c_parser_omp_clause_linear,
1105 c_parser_omp_clause_safelen, c_parser_omp_clause_simdlen,
1106 c_parser_omp_clause_depend, c_parser_omp_clause_map,
1107 c_parser_omp_clause_device, c_parser_omp_clause_dist_schedule,
1108 c_parser_omp_clause_proc_bind, c_parser_omp_clause_to,
1109 c_parser_omp_clause_from, c_parser_omp_clause_uniform): New functions.
1110 (c_parser_omp_all_clauses): Add finish_p argument. Don't call
1111 c_finish_omp_clauses if it is false. Handle new OpenMP 4.0 clauses.
1112 (c_parser_omp_atomic): Parse seq_cst clause, pass true if it is
1113 present to c_finish_omp_atomic. Handle OpenMP 4.0 atomic forms.
1114 (c_parser_omp_for_loop): Add CODE argument, pass it through
1115 to c_finish_omp_for. Change last argument to cclauses,
1116 and adjust uses to grab parallel clauses from the array of all
1117 the split clauses. Adjust c_parser_binary_expression,
1118 c_parser_declaration_or_fndef and c_finish_omp_for callers.
1119 (omp_split_clauses): New function.
1120 (c_parser_omp_simd): New function.
1121 (c_parser_omp_for): Add p_name, mask and cclauses arguments.
1122 Allow the function to be called also when parsing combined constructs,
1123 and call c_parser_omp_simd when parsing for simd.
1124 (c_parser_omp_sections_scope): If section-sequence doesn't start with
1125 #pragma omp section, require exactly one structured-block instead of
1126 sequence of statements.
1127 (c_parser_omp_sections): Add p_name, mask and cclauses arguments.
1128 Allow the function to be called also when parsing combined constructs.
1129 (c_parser_omp_parallel): Add p_name, mask and cclauses arguments.
1130 Allow the function to be called also when parsing combined
1131 constructs.
1132 (c_parser_omp_taskgroup, c_parser_omp_cancel,
1133 c_parser_omp_cancellation_point, c_parser_omp_distribute,
1134 c_parser_omp_teams, c_parser_omp_target_data,
1135 c_parser_omp_target_update, c_parser_omp_target,
1136 c_parser_omp_declare_simd, c_finish_omp_declare_simd,
1137 c_parser_omp_declare_target, c_parser_omp_end_declare_target,
1138 c_parser_omp_declare_reduction, c_parser_omp_declare): New functions.
1139 (c_parser_omp_construct): Add p_name and mask vars. Handle
1140 PRAGMA_OMP_DISTRIBUTE, PRAGMA_OMP_SIMD, PRAGMA_OMP_TASKGROUP,
1141 PRAGMA_OMP_TEAMS. Adjust c_parser_omp_for, c_parser_omp_parallel
1142 and c_parser_omp_sections callers.
1143 (c_parse_file): Initialize tparser.tokens and the_parser->tokens here.
1144 (OMP_FOR_CLAUSE_MASK, OMP_SECTIONS_CLAUSE_MASK,
1145 OMP_SINGLE_CLAUSE_MASK): Use OMP_CLAUSE_MASK_1 instead of 1.
1146 (OMP_PARALLEL_CLAUSE_MASK): Likewise. Add OMP_CLAUSE_PROC_BIND.
1147 (OMP_TASK_CLAUSE_MASK): Use OMP_CLAUSE_MASK_1 instead of 1. Add
1148 OMP_CLAUSE_DEPEND.
1149 (OMP_SIMD_CLAUSE_MASK, OMP_CANCEL_CLAUSE_MASK,
1150 OMP_CANCELLATION_POINT_CLAUSE_MASK, OMP_DISTRIBUTE_CLAUSE_MASK,
1151 OMP_TEAMS_CLAUSE_MASK, OMP_TARGET_DATA_CLAUSE_MASK,
1152 OMP_TARGET_UPDATE_CLAUSE_MASK, OMP_TARGET_CLAUSE_MASK,
1153 OMP_DECLARE_SIMD_CLAUSE_MASK): Define.
1154 * c-typeck.c: Include tree-inline.h.
1155 (c_finish_omp_cancel, c_finish_omp_cancellation_point,
1156 handle_omp_array_sections_1, handle_omp_array_sections,
1157 c_clone_omp_udr, c_find_omp_placeholder_r): New functions.
1158 (c_finish_omp_clauses): Handle new OpenMP 4.0 clauses and
1159 user defined reductions.
1160 (c_tree_equal): New function.
1161 * c-tree.h (temp_store_parm_decls, temp_pop_parm_decls,
1162 c_finish_omp_cancel, c_finish_omp_cancellation_point, c_tree_equal,
1163 c_omp_reduction_id, c_omp_reduction_decl, c_omp_reduction_lookup,
1164 c_check_omp_declare_reduction_r): New prototypes.
1165 * c-decl.c (current_omp_declare_target_attribute): New variable.
1166 (c_decl_attributes): New function.
1167 (start_decl, start_function): Use it instead of decl_attributes.
1168 (temp_store_parm_decls, temp_pop_parm_decls, c_omp_reduction_id,
1169 c_omp_reduction_decl, c_omp_reduction_lookup,
1170 c_check_omp_declare_reduction_r): New functions.
1171
0a6c2227
TT
11722013-09-25 Tom Tromey <tromey@redhat.com>
1173
1174 * Make-lang.in (c/gccspec.o): Remove.
1175 (CFLAGS-c/gccspec.o): New variable.
1176 (cc1-checksum.o, C_TREE_H, c/c-aux-info.o, c/c-convert.o)
1177 (c/c-decl.o, c/c-errors.o, c/c-lang.o, c/c-objc-common.o)
1178 (c/c-parser.o, c/c-typeck.o, c/c-array-notation.o): Remove.
1179
f3bc55f0
TT
11802013-09-25 Tom Tromey <tromey@redhat.com>
1181
1182 * Make-lang.in (c/gccspec.o): Don't use subshell.
1183
a24d975c
MP
11842013-09-18 Marek Polacek <polacek@redhat.com>
1185
1186 PR sanitize/58443
1187 * c-typeck.c (build_binary_op): Properly honor -fsanitize options.
1188 Remove unnecessary check.
1189
ce6923c5
MP
11902013-09-18 Marek Polacek <polacek@redhat.com>
1191
1192 PR sanitizer/58411
1193 * c-typeck.c (build_binary_op): Don't sanitize function if it has the
1194 no_sanitize_undefined attribute.
1195
a1e51df9
KT
11962013-09-13 Kai Tietz <ktietz@redhat.com>
1197
1198 PR target/57848
1199 * c-decl.c (c_builtin_function_ext_scope): Remove
1200 wrong assumption that it is never called on prexisting
1201 symbol.
1202
0af94e6f
JR
12032013-09-08 Joern Rennecke <joern.rennecke@embecosm.com>
1204
1205 * c-typeck.c (build_binary_op): Use vector_types_compatible_elements_p.
1206
20059c8b
GDR
12072013-09-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
1208
1209 * c-objc-common.c (c_tree_printer): Tidy.
1210
de5a5fa1
MP
12112013-08-30 Marek Polacek <polacek@redhat.com>
1212
1213 * c-typeck.c (build_binary_op): Add division by zero and shift
1214 instrumentation.
1215
2531a1d9 12162013-08-26 Joern Rennecke <joern.rennecke@embecosm.com>
0fdd4508 1217 Joseph Myers <joseph@codesourcery.com>
2531a1d9 1218
6e2bcc98 1219 PR c/35649
2531a1d9
JR
1220 * c-typeck.c (c_common_type): Prefer double_type_node over
1221 other REAL_TYPE types with the same precision.
1222 (convert_arguments): Likewise.
1223
025311c4
GDR
12242013-08-23 Gabriel Dos Reis <gdr@integrable-solutions.net>
1225
1226 * c-objc-common.c (c_tree_printer): Document the nature of the cast.
1227 (c_initialize_diagnostics): Call a destructor for the early printer.
1228
da6ca2b5
GDR
12292013-08-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
1230
1231 * c-objc-common.c (c_initialize_diagnostics): Simplify C pretty
1232 printer initialization.
1233
318cda85 12342013-08-19 Balaji V. Iyer <balaji.v.iyer@intel.com>
da6ca2b5 1235
318cda85
BI
1236 PR c/57490
1237 * c-array-notation.c (fix_conditional_array_notations_1): Added a
1238 check for truth values.
1239 (expand_array_notation_exprs): Added truth values case. Removed an
1240 unwanted else. Added for-loop to walk through subtrees in default
1241 case.
1242
b066401f
GDR
12432013-08-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
1244
1245 * c-objc-common.c (c_initialize_diagnostics): Don't call pp_base.
1246
fb48aadc
JM
12472013-07-23 Joseph Myers <joseph@codesourcery.com>
1248
1249 * c-parser.c (struct c_generic_association): Fix typo.
1250
433cc7b0
TT
12512013-07-23 Tom Tromey <tromey@redhat.com>
1252 Joseph Myers <joseph@codesourcery.com>
1253
1254 * c-parser.c (struct c_generic_association): New.
1255 (c_generic_association_d): New typedef.
1256 (c_parser_generic_selection): New function.
1257 (c_parser_postfix_expression): Handle RID_GENERIC.
1258
26d40c3d
JM
12592013-07-13 Jason Merrill <jason@redhat.com>
1260
1261 PR c++/57793
1262 * c-decl.c (finish_struct): Check for too-large class.
1263
ecdbd01a 12642013-07-04 Joern Rennecke <joern.rennecke@embecosm.com>
40d3d530
JR
1265
1266 PR c/57821
1267 * c-typeck.c (set_init_index): When folding, check for index overflow.
1268
1141ed3f
BI
12692013-06-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
1270
1271 * c-parser.c (c_parser_array_notation): Removed rejection of array
1272 notations in an array of function pointers.
1273
713b46fa
BI
12742013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
1275
1276 * c-array-notation.c (make_triplet_val_inv): New function.
1277 (create_cmp_incr): Likewise.
1278 (create_array_refs): Likewise.
1279 (fix_builtin_array_notation_fn): Replaced all mallocs with tree vec.
1280 Also modularized common parts between functions and called the function.
1281 (build_array_notation_expr): Likewise.
1282 (fix_conditional_array_notations_1): Likewise.
1283 (fix_array_notation_expr): Likewise.
1284 (fix_array_notation_call_expr): Likewise.
1285
92f20202
MP
12862013-06-18 Marek Polacek <polacek@redhat.com>
1287
1288 PR c/57630
1289 * c-decl.c (check_for_loop_decls): Improve diagnostics messages.
1290
73a23b06
BI
12912013-06-12 Balaji V. Iyer <balaji.v.iyer@intel.com>
1292
1293 * c-array-notation.c (build_array_notation_expr): Reject array notation
1294 mismatch between LHS and RHS even inside a call_expr. Also, removed
1295 a couple while statements that were dead code.
1296
00b8517d
BI
12972013-06-10 Balaji V. Iyer <balaji.v.iyer@intel.com>
1298
1299 * c-array-notation.c (fix_builtin_array_notation_fn): Fully folded
1300 excessive precision expressions in function parameters. Also removed
1301 couple unwanted while statements.
1302
1509bdda
BI
13032013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
1304
1305 * c-array-notation.c (expand_array_notation_exprs): Added
1306 ARRAY_NOTATION_REF case.
1307
d60f1706
BI
13082013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
1309
1310 * c-array-notation.c (length_mismatch_in_expr_p): Moved this
1311 function to c-family/array-notation-common.c.
1312 (is_cilkplus_reduce_builtin): Likewise.
1313 (find_rank): Likewise.
1314 (extract_array_notation_exprs): Likewise.
1315 (replace_array_notations): Likewise.
1316 (find_inv_trees): Likewise.
1317 (replace_inv_trees): Likewise.
1318 (contains_array_notation_expr): Likewise.
1319 (find_correct_array_notation_type): Likewise.
1320 (replace_invariant_exprs): Initialized additional_tcodes to NULL.
1321 (struct inv_list): Moved this to c-family/array-notation-common.c.
1322 * c-tree.h (is_cilkplus_builtin_reduce): Remove prototype.
1323
6d6efbb3
BI
13242013-06-05 Balaji V. Iyer <balaji.v.iyer@intel.com>
1325
1326 * c-typeck.c (convert_arguments): Moved checking of builtin cilkplus
1327 reduction functions outside the for-loop. Added a check if the fundecl
1328 is non-NULL. Finally, removed an unwanted if-statement, and made the
1329 body unconditional.
1330
25c22937
BI
13312013-06-03 Balaji V. Iyer <balaji.v.iyer@intel.com>
1332
1333 * c-typeck.c (c_finish_if_stmt): Added a check to see if the rank of the
1334 condition of the if-statement matches the rank of else-block and then-
1335 block when array notations are used.
1336 * c-parser.c (c_parser_declaration_or_fndef): Expanded array notation
1337 expression after the entire function body is parsed.
1338 (c_parser_expr_no_commas): Delayed creating array notation expressions
1339 to the end of function parsing.
1340 * c-array-notation.c (fix_conditional_array_notations_1): Expanded the
1341 whole if-statement instead of just the condition.
1342 (expand_array_notation_exprs): Added MODIFY_EXPR case.
1343
edd25645
BI
13442013-06-03 Balaji V. Iyer <balaji.v.iyer@intel.com>
1345
1346 PR c/57474
1347 * c-array-notation.c (build_array_notation_expr): Initialized rhs_length
1348 array to NULL_TREE if they are unused. Also added a check for the
1349 field to be NULL before its fields are used in future.
1350
065ce7f1
RO
13512013-05-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1352
1353 PR bootstrap/57450
1354 * c-array-notation.c (length_mismatch_in_expr_p): Use absu_hwi.
1355 (build_array_notation_expr): Likewise.
1356
36536d79
BI
13572013-05-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
1358
1359 * c-typeck.c (build_array_ref): Added a check to see if array's
1360 index is greater than one. If true, then emit an error.
1361 (build_function_call_vec): Exclude error reporting and checking
1362 for builtin array-notation functions.
1363 (convert_arguments): Likewise.
1364 (c_finish_return): Added a check for array notations as a return
1365 expression. If true, then emit an error.
1366 (c_finish_loop): Added a check for array notations in a loop
1367 condition. If true then emit an error.
1368 (lvalue_p): Added a ARRAY_NOTATION_REF case.
1369 (build_binary_op): Added a check for array notation expr inside
1370 op1 and op0. If present, we call another function to find correct
1371 type.
1372 * Make-lang.in (C_AND_OBJC_OBJS): Added c-array-notation.o.
1373 * c-parser.c (c_parser_compound_statement): Check if array
1374 notation code is used in tree, if so, then transform them into
1375 appropriate C code.
1376 (c_parser_expr_no_commas): Check if array notation is used in LHS
1377 or RHS, if so, then build array notation expression instead of
1378 regular modify.
1379 (c_parser_postfix_expression_after_primary): Added a check for
1380 colon(s) after square braces, if so then handle it like an array
1381 notation. Also, break up array notations in unary op if found.
1382 (c_parser_direct_declarator_inner): Added a check for array
1383 notation.
1384 (c_parser_compound_statement): Added a check for array notation in
1385 a stmt. If one is present, then expand array notation expr.
1386 (c_parser_if_statement): Likewise.
1387 (c_parser_switch_statement): Added a check for array notations in
1388 a switch statement's condition. If true, then output an error.
1389 (c_parser_while_statement): Similarly, but for a while.
1390 (c_parser_do_statement): Similarly, but for a do-while.
1391 (c_parser_for_statement): Similarly, but for a for-loop.
1392 (c_parser_unary_expression): Check if array notation is used in a
1393 pre-increment or pre-decrement expression. If true, then expand
1394 them.
1395 (c_parser_array_notation): New function.
1396 * c-array-notation.c: New file.
1397 * c-tree.h (is_cilkplus_reduce_builtin): Protoize.
1398
cd192ccc
MS
13992013-05-23 Mike Stump <mikestump@comcast.net>
1400
1401 * c-typeck.c (convert_for_assignment): Handle references to memory
1402 spaces better.
1403
427b248d
JM
14042013-05-16 Jason Merrill <jason@redhat.com>
1405
1406 * Make-lang.in (cc1$(exeext)): Use link mutex.
1407
44d90fe1
PC
14082013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
1409
1410 * c-typeck.c (pointer_diff): Change -Wpointer-arith pedwarns
1411 to simply use OPT_Wpointer_arith.
1412 (build_unary_op): Likewise.
1413
4e7d7b3d
JJ
14142013-04-03 Jakub Jelinek <jakub@redhat.com>
1415
1416 PR c/19449
1417 * c-parser.c (c_parser_get_builtin_args): Add choose_expr_p
1418 argument. If set, or it temporarily for parsing of the first
1419 argument into force_folding_builtin_constant_p.
1420 (c_parser_postfix_expression): Adjust callers.
1421
839b422f
RB
14222013-03-21 Richard Biener <rguenther@suse.de>
1423
1424 * c-objc-common.c (c_tree_printer): Use DECL_HAS_DEBUG_EXPR_P
1425 instead of DECL_DEBUG_EXPR_IS_FROM. Guard properly.
1426
2ee028f1
MP
14272013-02-12 Marek Polacek <polacek@redhat.com>
1428
1429 PR c/44938
1430 * c-parser.c (c_parser_postfix_expression_after_primary): Initialize
1431 origtypes to NULL.
1432
8824edff
JJ
14332013-01-24 Jakub Jelinek <jakub@redhat.com>
1434
1435 PR c/56078
1436 * c-typeck.c (set_nonincremental_init_from_string): If
1437 constructor_max_index is NULL, treat it as if tree_int_cst_lt
1438 returned false.
1439 (process_init_element): Likewise.
1440
eadd3d0d
JJ
14412012-12-20 Jakub Jelinek <jakub@redhat.com>
1442
1443 PR c++/55619
1444 * c-parser.c (c_parser_asm_operands): Remove CONVERT_P
1445 argument, don't call default_function_array_conversion
1446 nor c_fully_fold here.
1447 (c_parser_asm_statement): Adjust callers.
1448 * c-typeck.c (build_asm_expr): Call c_fully_fold on inputs
1449 and outputs here, and call default_function_array_conversion
1450 on inputs that don't need to be addressable.
1451
f8a93a2e
JJ
14522012-12-18 Jakub Jelinek <jakub@redhat.com>
1453
1454 PR c/39464
1455 * c-typeck.c (convert_for_assignment): For -Wpointer-sign
1456 warning require that both c_common_unsigned_type as well as
1457 c_common_signed_type is the same for both mvl and mvr types.
1458
9771b263
DN
14592012-11-16 Diego Novillo <dnovillo@google.com>
1460
1461 Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
1462
1463 * c-common.c: Use new vec API in vec.h.
1464 * c-common.h: Likewise.
1465 * c-gimplify.c: Likewise.
1466 * c-pragma.c: Likewise.
1467 * c-pretty-print.c: Likewise.
1468 * c-pretty-print.h: Likewise.
1469 * c-semantics.c: Likewise.
1470 * c-decl.c: Likewise.
1471 * c-parser.c: Likewise.
1472 * c-tree.h: Likewise.
1473 * c-typeck.c: Likewise.
1474
880661a4
JW
14752012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
1476
1477 PR c++/54930
1478 * c-typeck.c (c_finish_return): Use OPT_Wreturn_local_addr.
1479
077d1abe
MLI
14802012-10-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
1481
1482 PR c/53066
1483 * c-decl.c (warn_if_shadowing): Do not warn if a variable
1484 shadows a function, unless the variable is a function or a
1485 pointer-to-function.
1486
3a785c97
JJ
14872012-10-12 Jakub Jelinek <jakub@redhat.com>
1488
1489 PR c/54381
1490 * c-parser.c (struct c_tree_loc_pair): Removed.
1491 (c_parser_expr_list): Remove struct c_tree_loc_pair * argument,
1492 add location_t * and tree * arguments, fill in array of 3
1493 sizeof_arg trees and corresponding locs.
1494 (c_parser_attributes, c_parser_objc_keywordexpr): Adjust
1495 c_parser_expr_list callers.
1496 (c_parser_postfix_expression_after_primary): Likewise. Pass
1497 array of 3 sizeof_arg trees and locs (corresponding to first
1498 3 arguments) to sizeof_pointer_memaccess_warning.
1499
703c8606
LC
15002012-10-09 Lawrence Crowl <crowl@google.com>
1501
1502 * Make-lang.in (c-decl.o): Add dependence on hash-table.h.
1503 * c-decl.c (detect_field_duplicates_hash): Change to new type-safe
1504 hash table.
1505
5d9de0d0
PC
15062012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
1507
1508 PR c++/54194
1509 * c-typeck.c (parser_build_binary_op): Update warn_about_parentheses
1510 call.
1511
a212e43f
MG
15122012-10-09 Marc Glisse <marc.glisse@inria.fr>
1513
1514 PR c++/54427
1515 * c-typeck.c: Include c-common.h.
1516 (enum stv_conv): Moved to c-common.h.
1517 (scalar_to_vector): Moved to c-common.c.
1518 (build_binary_op): Adapt to scalar_to_vector's new prototype.
1519 * Make-lang.in: c-typeck.c depends on c-common.h.
1520
3b78de56
AC
15212012-10-04 Arnaud Charlet <charlet@adacore.com>
1522
1523 * c-decl.c (c_write_global_declarations): Fix handling of
1524 -fdump-ada-spec*.
1525
78c60e3d
SS
15262012-09-30 Sharad Singhai <singhai@google.com>
1527
1528 * c-decl.c (c_write_global_declarations): Use a different method
1529 to determine if the dump has ben initialized.
1530
9f33203d
JM
15312012-09-14 Joseph Myers <joseph@codesourcery.com>
1532
1533 PR c/54552
1534 * c-typeck.c (c_cast_expr): When casting to a type requiring
1535 C_MAYBE_CONST_EXPR to be created, pass the inner expression to
1536 c_fully_fold first.
1537
a27d595d
JM
15382012-09-14 Joseph Myers <joseph@codesourcery.com>
1539
1540 PR c/54103
1541 * c-typeck.c (build_unary_op): Pass original argument of
1542 TRUTH_NOT_EXPR to c_objc_common_truthvalue_conversion, then remove
1543 any C_MAYBE_CONST_EXPR, if it has integer operands.
1544 (build_binary_op): Pass original arguments of TRUTH_ANDIF_EXPR,
1545 TRUTH_ORIF_EXPR, TRUTH_AND_EXPR, TRUTH_OR_EXPR and TRUTH_XOR_EXPR
1546 to c_objc_common_truthvalue_conversion, then remove any
1547 C_MAYBE_CONST_EXPR, if they have integer operands. Use
1548 c_objc_common_truthvalue_conversion not
1549 c_common_truthvalue_conversion.
1550 (c_objc_common_truthvalue_conversion): Build NE_EXPR directly and
1551 call note_integer_operands for arguments with integer operands
1552 that are not integer constants.
1553
9feb29df
JJ
15542012-09-13 Jakub Jelinek <jakub@redhat.com>
1555
1556 PR c/54559
1557 * c-typeck.c (c_finish_return): Do convert to BOOLEAN_TYPE or
1558 COMPLEX_TYPE with in_late_binary_op set temporarily to true.
1559
d409320c
JJ
15602012-08-31 Jakub Jelinek <jakub@redhat.com>
1561
1562 PR c/54428
1563 * c-convert.c (convert): Don't call fold_convert_loc if
1564 TYPE_MAIN_VARIANT of a COMPLEX_TYPE is the same, unless e
1565 is a COMPLEX_EXPR. Remove TYPE_MAIN_VARIANT check from
1566 COMPLEX_TYPE -> COMPLEX_TYPE conversion.
1567
6265d07c
JJ
15682012-08-24 Jakub Jelinek <jakub@redhat.com>
1569
1570 PR c/54355
1571 * c-decl.c (c_parser_label): Pass true as nested and fix up comments
1572 for nested and empty_ok arguments in the call to
1573 c_parser_declaration_or_fndef.
1574
1a4049e7
JJ
15752012-08-17 Jakub Jelinek <jakub@redhat.com>
1576
1577 * c-tree.h (c_last_sizeof_arg): Declare.
1578 * c-parser.c (struct c_tree_loc_pair): New type.
1579 (c_parser_expr_list): Add sizeof_arg argument. Fill it in if
1580 non-NULL.
1581 (c_parser_attributes, c_parser_objc_keywordexpr): Adjust callers.
1582 (c_parser_postfix_expression_after_primary): Likewise. Call
1583 sizeof_pointer_memaccess_warning if needed.
1584 (sizeof_ptr_memacc_comptypes): New function.
1585 * c-typeck.c (c_last_sizeof_arg): New global variable.
1586 (c_expr_sizeof_expr, c_expr_sizeof_type): Initialize it.
1587
0229aee9
UB
15882012-07-24 Uros Bizjak <ubizjak@gmail.com>
1589
1590 * c-lang.h (lang_decl): Add variable_size GTY option.
1591
7ee2468b
SB
15922012-07-16 Steven Bosscher <steven@gcc.gnu.org>
1593
1594 * c-decl.c: Include dumpfile.h instead of tree-dump.h.
1595 * Make-lang.in: Fix dependencies.
1596
d4a10d0a
SB
15972012-06-29 Steven Bosscher <steven@gcc.gnu.org>
1598
1599 * Make-lang.in: New file, rules migrated from gcc/Makefile.in
1600 and add language Makefile hooks.
1601 * config-lang.in: New file.
1602 * c-config-lang.in: Moved from gcc/config-lang.in to here, and
1603 add the required "normal" config-lang.in rules.
1604 * c-lang.h: Moved from gcc/ to here.
1605 * c-tree.h: Likewise.
1606 * c-objc-common.c: Likewise.
1607 * c-objc-common.h: Likewise.
1608 * c-typeck.c: Likewise.
1609 * c-convert.c: Likewise.
1610 * c-lang.c: Likewise.
1611 * c-aux-info.c: Likewise.
1612 * c-errors.c: Likewise.
1613 * gccspec.c: Likewise.
1614 * c-decl.c: Likewise. Include gt-c-c-decl.h, not gt-c-decl.h.
1615 * c-parser.c: Likewise. Include gt-c-c-parser.h, not gt-c-parser.h.
1616\f
23a5b65a 1617Copyright (C) 2012-2014 Free Software Foundation, Inc.
d4a10d0a
SB
1618
1619Copying and distribution of this file, with or without modification,
1620are permitted in any medium without royalty provided the copyright
1621notice and this notice are preserved.
This page took 0.714328 seconds and 5 git commands to generate.