gimple-parser.c (c_parser_gimple_compound_statement): Handle nops.
[gcc.git] / gcc / c / ChangeLog
1 2017-01-13 Richard Biener <rguenther@suse.de>
2
3 * gimple-parser.c (c_parser_gimple_compound_statement): Handle
4 nops.
5
6 2017-01-13 Richard Biener <rguenther@suse.de>
7
8 * gimple-parser.c (c_parser_gimple_postfix_expression): Parse
9 _Literal ( type-name ) number.
10
11 2017-01-12 Richard Biener <rguenther@suse.de>
12
13 * gimple-parser.c (c_parser_gimple_postfix_expression): Parse
14 __MEM.
15
16 2017-01-11 Jakub Jelinek <jakub@redhat.com>
17
18 PR c++/72813
19 * c-decl.c (pop_file_scope): Set flag_syntax_only to 1 after writing
20 PCH file.
21
22 2017-01-11 Richard Biener <rguenther@suse.de>
23
24 PR bootstrap/79052
25 * gimple-parser.c (c_parser_gimple_switch_stmt): Add missing
26 returns on parse errors.
27
28 2017-01-04 Marek Polacek <polacek@redhat.com>
29
30 PR c++/64767
31 * c-parser.c (c_parser_postfix_expression): Mark zero character
32 constants by setting original_type in c_expr.
33 * c-typeck.c (parser_build_binary_op): Warn when a pointer is compared
34 with a zero character constant.
35 (char_type_p): New function.
36
37 2017-01-04 David Malcolm <dmalcolm@redhat.com>
38
39 * c-parser.c (c_parser_declaration_or_fndef): Create a
40 rich_location at init_loc and parse it to start_init.
41 (last_init_list_comma): New global.
42 (c_parser_braced_init): Update last_init_list_comma when parsing
43 commas. Pass it to pop_init_level. Pass location of closing
44 brace to pop_init_level.
45 (c_parser_postfix_expression_after_paren_type): Create a
46 rich_location at type_loc and parse it to start_init.
47 (c_parser_omp_declare_reduction): Likewise for loc.
48 * c-tree.h (start_init): Add rich_location * param.
49 (pop_init_level): Add location_t param.
50 * c-typeck.c (struct initializer_stack): Add field
51 "missing_brace_richloc".
52 (start_init): Add richloc param, use it to initialize
53 the stack node's missing_brace_richloc.
54 (last_init_list_comma): New decl.
55 (finish_implicit_inits): Pass last_init_list_comma to
56 pop_init_level.
57 (push_init_level): When finding missing open braces, add fix-it
58 hints to the richloc.
59 (pop_init_level): Add "insert_before" param and pass it
60 when calling pop_init_level. Add fixits about missing
61 close braces to any richloc. Use the richloc for the
62 -Wmissing-braces warning.
63 (set_designator): Pass last_init_list_comma to pop_init_level.
64 (process_init_element): Likewise.
65
66 2017-01-01 Jakub Jelinek <jakub@redhat.com>
67
68 Update copyright years.
69
70 2016-12-21 Jakub Jelinek <jakub@redhat.com>
71
72 PR bootstrap/78817
73 * c-typeck.c (build_function_call_vec): If check_function_arguments
74 returns true, set TREE_NO_WARNING on CALL_EXPR.
75
76 PR c/77767
77 * c-decl.c (grokdeclarator): If *expr is non-NULL, append expression
78 to *expr instead of overwriting it.
79
80 2016-12-20 Richard Biener <rguenther@suse.de>
81
82 * gimple-parser.c (c_parser_gimple_compound_statement): Improve
83 error recovery.
84 (c_parser_gimple_statement): Only build assigns for non-error
85 stmts.
86 (c_parser_gimple_postfix_expression_after): Improve error recovery.
87
88 2016-12-14 Martin Jambor <mjambor@suse.cz>
89
90 * c-parser.c: Include omp-general.h and omp-offload.h instead of
91 omp-low.h.
92 (c_finish_oacc_routine): Adjusted call to
93 get_oacc_fn_attrib, build_oacc_routine_dims and replace_oacc_fn_attrib
94 to use their new names.
95 (c_parser_oacc_enter_exit_data): Adjusted call to find_omp_clause to
96 use its new name.
97 (c_parser_oacc_update): Likewise.
98 (c_parser_omp_simd): Likewise.
99 (c_parser_omp_target_update): Likewise.
100 * c-typeck.c: Include omp-general.h instead of omp-low.h.
101 (c_finish_omp_cancel): Adjusted call to find_omp_clause to use its new
102 name.
103 (c_finish_omp_cancellation_point): Likewise.
104 * gimple-parser.c: Do not include omp-low.h
105
106 2016-12-02 Cesar Philippidis <cesar@codesourcery.com>
107 James Norris <jnorris@codesourcery.com>
108
109 * c-parser.c (c_parser_pragma): Error when PRAGMA_OACC_{ENTER_DATA,
110 EXIT_DATA,WAIT} are not used in compound statements.
111 (c_parser_oacc_enter_exit_data): Update diagnostics.
112
113 2016-11-21 Bernd Edlinger <bernd.edlinger@hotmail.de>
114
115 PR c++/71973
116 * c-decl.c (diagnose_mismatched_decls): Use
117 OPT_Wbuiltin_declaration_mismatch here too.
118
119 2016-11-18 Richard Sandiford <richard.sandiford@arm.com>
120 Alan Hayward <alan.hayward@arm.com>
121 David Sherwood <david.sherwood@arm.com>
122
123 * c-decl.c (merge_decls): Use SET_DECL_MODE.
124 (make_label, finish_struct): Likewise.
125
126 2016-11-14 Prasad Ghangal <prasad.ghangal@gmail.com>
127 Richard Biener <rguenther@suse.de>
128
129 * Make-lang.in (C_AND_OBJC_OBJS): Add gimple-parser.o.
130 * config-lang.in (gtfiles): Add c/c-parser.h.
131 * c-tree.h (enum c_declspec_word): Add cdw_gimple.
132 (struct c_declspecs): Add gimple_pass member and gimple_p flag.
133 * c-parser.c (enum c_id_kind, struct c_token,
134 c_parser_next_token_is, c_parser_next_token_is_not,
135 c_parser_next_token_is_keyword,
136 enum c_lookahead_kind, enum c_dtr_syn, enum c_parser_prec):
137 Split out to ...
138 * c-parser.h: ... new header.
139 * c-parser.c: Include c-parser.h and gimple-parser.h.
140 (c_parser_peek_token, c_parser_peek_2nd_token,
141 c_token_starts_typename, c_parser_next_token_starts_declspecs,
142 c_parser_next_tokens_start_declaration, c_parser_consume_token,
143 c_parser_error, c_parser_require, c_parser_skip_until_found,
144 c_parser_declspecs, c_parser_declarator, c_parser_peek_nth_token,
145 c_parser_type_name): Export.
146 (c_parser_tokens_buf): New function.
147 (c_parser_error): Likewise.
148 (c_parser_set_error): Likewise.
149 (c_parser_declspecs): Handle RID_GIMPLE.
150 (c_parser_declaration_or_fndef): Parse __GIMPLE marked body
151 via c_parser_parse_gimple_body.
152 * c-parser.h (c_parser_peek_token, c_parser_peek_2nd_token,
153 c_token_starts_typename, c_parser_next_token_starts_declspecs,
154 c_parser_next_tokens_start_declaration, c_parser_consume_token,
155 c_parser_error, c_parser_require, c_parser_skip_until_found,
156 c_parser_declspecs, c_parser_declarator, c_parser_peek_nth_token,
157 c_parser_type_name): Declare.
158 (struct c_parser): Declare forward.
159 (c_parser_tokens_buf): Declare.
160 (c_parser_error): Likewise.
161 (c_parser_set_error): Likewise.
162 * gimple-parser.c: New file.
163 * gimple-parser.h: Likewise.
164
165 2016-11-13 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
166
167 PR c/35503
168 * c-parser.c (c_parser_postfix_expression_after_primary): Call
169 warn_for_restrict.
170
171 2016-09-11 Le-Chun Wu <lcwu@google.com>
172 Mark Wielaard <mjw@redhat.com>
173
174 * c-decl.c (warn_if_shadowing): Use the warning code corresponding
175 to the given -Wshadow= variant.
176
177 2016-10-13 Thomas Preud'homme <thomas.preudhomme@arm.com>
178
179 * c-typeck.c: Include memmodel.h.
180
181 2016-10-13 Jakub Jelinek <jakub@redhat.com>
182
183 PR target/77957
184 * c-objc-common.h (LANG_HOOKS_GETDECLS): Use hook_tree_void_null
185 instead of lhd_return_null_tree_v.
186
187 2016-10-07 Bernd Schmidt <bschmidt@redhat.com>
188
189 PR c++/69733
190 * c-decl.c (smallest_type_quals_location): New static function.
191 (grokdeclarator): Try to find the correct location for an ignored
192 qualifier.
193
194 2016-09-26 Marek Polacek <polacek@redhat.com>
195
196 PR c/7652
197 * c-decl.c (pop_scope): Add gcc_fallthrough.
198
199 2016-09-26 Marek Polacek <polacek@redhat.com>
200
201 PR c/7652
202 * c-parser.c (struct c_token): Add flags field.
203 (c_lex_one_token): Pass it to c_lex_with_flags.
204 (c_parser_declaration_or_fndef): Turn __attribute__((fallthrough));
205 into IFN_FALLTHROUGH.
206 (c_parser_label): Set FALLTHROUGH_LABEL_P on labels. Handle
207 attribute fallthrough after a case label or default label.
208 (c_parser_statement_after_labels): Handle RID_ATTRIBUTE.
209
210 2016-09-24 Marek Polacek <polacek@redhat.com>
211
212 PR c/77490
213 * c-typeck.c (build_unary_op): Warn about bit not on expressions that
214 have boolean value. Warn about ++/-- on booleans.
215
216 2016-09-23 Jakub Jelinek <jakub@redhat.com>
217
218 * c-parser.c (incomplete_record_decls): Remove unnecessary
219 = vNULL initialization of file scope vec.
220
221 2016-09-16 Marek Polacek <polacek@redhat.com>
222
223 * c-typeck.c (lvalue_p): Use true and false instead of 1 and 0.
224
225 2016-09-14 Marek Polacek <polacek@redhat.com>
226
227 * c-array-notation.c (create_cmp_incr): Use false instead of 0.
228 (fix_array_notation_expr): Likewise.
229 * c-decl.c (finish_decl): Likewise.
230 * c-parser.c (c_parser_postfix_expression_after_primary): Likewise.
231 * c-typeck.c (array_to_pointer_conversion): Use true instead of 1.
232 (function_to_pointer_conversion): Use false instead of 0.
233 (convert_lvalue_to_rvalue): Likewise.
234 (parser_build_unary_op): Likewise.
235 (build_atomic_assign): Likewise.
236 (build_unary_op): Change nonconvert parameter type to bool, use
237 true/false instead of 1/0.
238 (build_binary_op): Use true instead of 1.
239
240 2016-09-13 David Malcolm <dmalcolm@redhat.com>
241
242 * c-parser.c (c_parser_declaration_or_fndef): Update for renaming
243 of add_fixit_insert to add_fixit_insert_before.
244
245 2016-09-13 Marek Polacek <polacek@redhat.com>
246
247 * c-typeck.c (build_unary_op): Rename FLAG parameter to NOCONVERT. Use
248 it.
249
250 2016-09-12 Bernd Edlinger <bernd.edlinger@hotmail.de>
251
252 PR c++/77496
253 * c-parser.c (c_parser_conditional_expression): Pass the rightmost
254 COMPOUND_EXPR to warn_for_omitted_condop.
255
256 2016-09-07 David Malcolm <dmalcolm@redhat.com>
257
258 * c-lang.c (LANG_HOOKS_GET_SUBSTRING_LOCATION): Use
259 c_get_substring_location for this new langhook.
260
261 2016-09-02 Jakub Jelinek <jakub@redhat.com>
262
263 PR c/65467
264 * c-parser.c (c_parser_declspecs): Don't sorry about _Atomic if
265 flag_openmp.
266 (c_parser_omp_variable_list): Use convert_lvalue_to_rvalue
267 instead of mark_exp_read on low_bound/length expression.
268 (c_parser_omp_clause_num_gangs, c_parser_omp_clause_num_threads,
269 c_parser_omp_clause_num_tasks, c_parser_omp_clause_grainsize,
270 c_parser_omp_clause_priority, c_parser_omp_clause_hint,
271 c_parser_omp_clause_num_workers, c_parser_oacc_shape_clause,
272 c_parser_oacc_clause_tile, c_parser_omp_clause_schedule,
273 c_parser_omp_clause_vector_length, c_parser_omp_clause_num_teams,
274 c_parser_omp_clause_thread_limit, c_parser_omp_clause_aligned,
275 c_parser_omp_clause_linear, c_parser_omp_clause_safelen,
276 c_parser_omp_clause_simdlen, c_parser_omp_clause_device,
277 c_parser_omp_clause_dist_schedule): Use convert_lvalue_to_rvalue
278 instead of mark_expr_read.
279 (c_parser_omp_declare_reduction): Reject _Atomic qualified types.
280 * c-objc-common.h (LANG_HOOKS_OMP_CLAUSE_COPY_CTOR,
281 LANG_HOOKS_OMP_CLAUSE_ASSIGN_OP): Redefine.
282 * c-tree.h (c_omp_clause_copy_ctor): New prototype.
283 * c-typeck.c (handle_omp_array_sections_1): Diagnose _Atomic qualified
284 array section bases outside of depend clause, for depend clause
285 use convert_lvalue_to_rvalue on the base.
286 (c_finish_omp_clauses): Reject _Atomic qualified vars in reduction,
287 linear, aligned, map, to and from clauses.
288 (c_omp_clause_copy_ctor): New function.
289
290 2016-09-01 Marek Polacek <polacek@redhat.com>
291
292 PR c/7652
293 * c-typeck.c (composite_type): Add FALLTHRU comment.
294
295 2016-08-31 David Malcolm <dmalcolm@redhat.com>
296
297 * c-parser.c (c_parser_declaration_or_fndef): Add trailing space
298 to the insertion fixits for "struct", "union", and "enum".
299
300 2016-08-30 David Malcolm <dmalcolm@redhat.com>
301
302 * c-decl.c (implicit_decl_warning): Use add_fixit_replace
303 rather than add_fixit_misspelled_id.
304 (undeclared_variable): Likewise.
305 * c-parser.c (c_parser_declaration_or_fndef): Likewise. Remove
306 now-redundant "here" params from add_fixit_insert method calls.
307 (c_parser_parameter_declaration): Likewise.
308 * c-typeck.c (build_component_ref): Remove now-redundant range
309 param from add_fixit_replace method calls.
310
311 2016-08-25 Marek Polacek <polacek@redhat.com>
312
313 * c-typeck.c (parser_build_binary_op): Pass LHS to
314 warn_logical_not_parentheses.
315
316 2016-08-25 Marek Polacek <polacek@redhat.com>
317
318 PR c/77323
319 * c-decl.c (declspecs_add_type): Set typespec_word even when __intN
320 or _FloatN or _FloatNx is not supported.
321 (finish_declspecs): Set type to integer_type_node when _FloatN or
322 _FloatNx is not supported.
323
324 2016-08-19 Joseph Myers <joseph@codesourcery.com>
325
326 PR c/32187
327 * c-tree.h (cts_floatn_nx): New enum c_typespec_keyword value.
328 (struct c_declspecs): Add field floatn_nx_idx.
329 * c-decl.c (declspecs_add_type, finish_declspecs): Handle _FloatN
330 and _FloatNx type specifiers.
331 * c-parser.c (c_keyword_starts_typename, c_token_starts_declspecs)
332 (c_parser_declspecs, c_parser_attribute_any_word)
333 (c_parser_objc_selector): Use CASE_RID_FLOATN_NX.
334 * c-typeck.c (c_common_type): Handle _FloatN and _FloatNx types.
335 (convert_arguments): Avoid promoting _FloatN and _FloatNx types
336 narrower than double.
337
338 2016-08-12 Jakub Jelinek <jakub@redhat.com>
339 Martin Liska <mliska@suse.cz>
340
341 PR c/67410
342 * c-typeck.c (set_nonincremental_init_from_string): Use / instead of
343 % to determine val element to change. Assert that
344 wchar_bytes * charwidth fits into val array.
345
346 2016-08-12 Marek Polacek <polacek@redhat.com>
347
348 PR c/7652
349 * c-parser.c (c_parser_external_declaration): Add FALLTHRU.
350 (c_parser_postfix_expression): Likewise.
351 * c-typeck.c (build_unary_op): Adjust fall through comment.
352 (c_mark_addressable): Likewise.
353
354 2016-08-11 Jakub Jelinek <jakub@redhat.com>
355
356 PR c/72816
357 * c-decl.c (grokdeclarator): When adding TYPE_DOMAIN for flexible
358 array member through typedef, for orig_qual_indirect == 0 clear
359 orig_qual_type.
360
361 2016-08-08 David Malcolm <dmalcolm@redhat.com>
362
363 PR c/64955
364 * c-lang.c (LANG_HOOKS_RUN_LANG_SELFTESTS): If CHECKING_P, wire
365 this up to selftest::run_c_tests.
366 (selftest::run_c_tests): New function.
367
368 2016-08-04 Thomas Schwinge <thomas@codesourcery.com>
369
370 * c-parser.c (struct oacc_routine_data): Add error_seen and
371 fndecl_seen members.
372 (c_finish_oacc_routine): Use these.
373 (c_parser_declaration_or_fndef): Adjust.
374 (c_parser_oacc_routine): Likewise. Support more C language
375 constructs, and improve diagnostics. Move pragma context
376 checking...
377 (c_parser_pragma): ... here.
378
379 * c-parser.c (struct oacc_routine_data): New.
380 (c_parser_declaration_or_fndef, c_parser_oacc_routine): Use it.
381 Simplify code.
382 (c_finish_oacc_routine): Likewise. Don't attach clauses to "omp
383 declare target" attribute.
384
385 2016-08-01 Jan Beulich <jbeulich@suse.com>
386
387 * c-fold.c (c_fully_fold_internal): Also emit shift count
388 warnings for vector types.
389 * c-typeck.c (build_binary_op): Likewise.
390
391 2016-07-29 Marek Polacek <polacek@redhat.com>
392
393 PR c/71742
394 * c-decl.c (finish_struct): Rephrase an error message.
395
396 PR c/71853
397 * c-parser.c (c_parser_switch_statement): Initialize ce.original_type
398 to error node for invalid code.
399
400 PR c/71573
401 * c-decl.c (implicitly_declare): Return decl early not only for
402 error_mark_nodes, but for anything that is not a FUNCTION_DECL.
403
404 2016-07-29 Jakub Jelinek <jakub@redhat.com>
405
406 PR c/71969
407 * c-decl.c (finish_function): Only set DECL_DISREGARD_INLINE_LIMITS
408 on GNU extern inline functions.
409
410 2016-07-29 Marek Polacek <polacek@redhat.com>
411
412 PR c/71583
413 * c-parser.c (c_parser_postfix_expression_after_paren_type): Also
414 check expr.value.
415
416 2016-07-22 Uros Bizjak <ubizjak@gmail.com>
417
418 * c-typeck.c: Use HOST_WIDE_INT_1 instead of (HOST_WIDE_INT) 1,
419
420 2016-07-20 David Malcolm <dmalcolm@redhat.com>
421
422 * c-decl.c (struct edit_distance_traits<cpp_hashnode *>): Move to
423 spellcheck-tree.h
424 (best_macro_match): Likewise, converting from a typedef to a
425 subclass.
426 (find_closest_macro_cpp_cb): Move to spellcheck-tree.c.
427 (lookup_name_fuzzy): Update for change of best_macro_match to a
428 subclass with a ctor that calls cpp_forall_identifiers.
429
430 2016-07-20 David Malcolm <dmalcolm@redhat.com>
431
432 * c-decl.c (implicit_decl_warning): Update for conversion of
433 return type of lookup_name_fuzzy to const char *.
434 (undeclared_variable): Likewise.
435 (lookup_name_fuzzy): Convert return type from tree to
436 const char *.
437 * c-parser.c (c_parser_declaration_or_fndef): Update for
438 conversion of return type of lookup_name_fuzzy to const char *.
439 (c_parser_parameter_declaration): Likewise.
440
441 2016-07-15 Cesar Philippidis <cesar@codesourcery.com>
442
443 * c-parser.c (c_parser_oacc_declare): Don't scan for
444 GOMP_MAP_POINTER.
445 * c-typeck.c (handle_omp_array_sections): Mark data clauses with
446 GOMP_MAP_FORCE_{PRESENT,TO,FROM,TOFROM} as potentially having
447 zero-length subarrays.
448
449 2016-07-15 Jakub Jelinek <jakub@redhat.com>
450
451 PR c/71858
452 * c-decl.c (implicit_decl_warning): Use FUZZY_LOOKUP_FUNCTION_NAME
453 instead of FUZZY_LOOKUP_NAME.
454 (lookup_name_fuzzy): For FUZZY_LOOKUP_FUNCTION_NAME consider
455 FUNCTION_DECLs, {VAR,PARM}_DECLs function pointers and macros.
456
457 2016-07-14 Jakub Jelinek <jakub@redhat.com>
458
459 PR c/71858
460 * c-decl.c (lookup_name_fuzzy): Ignore binding->invisible.
461
462 2016-07-12 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
463
464 * c-parser.c (c_parser_generic_selection): Make type of variable
465 auto_vec.
466 (c_parser_omp_declare_simd): Likewise.
467
468 2016-07-12 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
469
470 * c-decl.c (struct c_struct_parse_info): Change member types
471 from vec to auto_vec.
472 (start_struct): Adjust.
473 (finish_struct): Likewise.
474
475 2016-07-02 Jakub Jelinek <jakub@redhat.com>
476
477 PR c/71719
478 * c-typeck.c (mark_exp_read): Handle VIEW_CONVERT_EXPR.
479
480 2016-06-29 Thomas Schwinge <thomas@codesourcery.com>
481
482 * c-parser.c (c_parser_pragma) <PRAGMA_OMP_CANCELLATION_POINT>:
483 Move pragma context checking into...
484 (c_parser_omp_cancellation_point): ... here, and improve
485 diagnostic messages.
486 * c-typeck.c (c_finish_omp_cancel)
487 (c_finish_omp_cancellation_point): Improve diagnostic messages.
488
489 2016-06-29 Jakub Jelinek <jakub@redhat.com>
490
491 PR c/71685
492 * c-typeck.c (c_build_qualified_type): Don't clear
493 C_TYPE_INCOMPLETE_VARS for the main variant.
494
495 2016-06-28 Martin Sebor <msebor@redhat.com>
496
497 PR c/71552
498 * c-typeck.c (output_init_element): Diagnose incompatible types
499 before non-constant initializers.
500
501 2016-06-28 Jakub Jelinek <jakub@redhat.com>
502
503 * Make-lang.in: Don't cat ../stage_current if it does not exist.
504
505 2016-06-23 Andi Kleen <ak@linux.intel.com>
506
507 * Make-lang.in: Add support for autofdo.
508
509 2016-06-22 David Malcolm <dmalcolm@redhat.com>
510
511 PR c/70339
512 * c-decl.c: Include spellcheck-tree.h and gcc-rich-location.h.
513 (implicit_decl_warning): When issuing warnings for implicit
514 declarations, attempt to provide a suggestion via
515 lookup_name_fuzzy.
516 (undeclared_variable): Likewise when issuing errors.
517 (lookup_name_in_scope): Likewise.
518 (struct edit_distance_traits<cpp_hashnode *>): New struct.
519 (best_macro_match): New typedef.
520 (find_closest_macro_cpp_cb): New function.
521 (lookup_name_fuzzy): New function.
522 * c-parser.c: Include gcc-rich-location.h.
523 (c_token_starts_typename): Split out case CPP_KEYWORD into...
524 (c_keyword_starts_typename): ...this new function.
525 (c_parser_declaration_or_fndef): When issuing errors about
526 missing "struct" etc, add a fixit. For other kinds of errors,
527 attempt to provide a suggestion via lookup_name_fuzzy.
528 (c_parser_parms_declarator): When looking ahead to detect typos in
529 type names, also reject CPP_KEYWORD.
530 (c_parser_parameter_declaration): When issuing errors about
531 unknown type names, attempt to provide a suggestion via
532 lookup_name_fuzzy.
533 * c-tree.h (c_keyword_starts_typename): New prototype.
534
535 2016-06-20 Joseph Myers <joseph@codesourcery.com>
536
537 PR c/71601
538 * c-typeck.c (build_conditional_expr): Return error_mark_node if
539 c_common_type returns error_mark_node.
540
541 2016-06-19 Martin Sebor <msebor@redhat.com>
542
543 PR c/69507
544 * c-parser.c (c_parser_alignof_expression): Avoid diagnosing
545 __alignof__ (expression).
546
547 2016-06-14 David Malcolm <dmalcolm@redhat.com>
548
549 * c-typeck.c: Include spellcheck-tree.h rather than spellcheck.h.
550
551 2016-06-14 David Malcolm <dmalcolm@redhat.com>
552
553 * c-typeck.c (build_component_ref): Simplify fixit code by
554 using gcc_rich_location::add_fixit_misspelled_id.
555 (set_init_label): Likewise.
556
557 2016-06-13 David Malcolm <dmalcolm@redhat.com>
558
559 * c-parser.c (c_parser_initelt): Provide location of name for new
560 location_t param of set_init_label.
561 * c-tree.h (set_init_label): Add location_t param.
562 * c-typeck.c (set_init_index): Add "fieldname_loc" location_t
563 param and use it when issuing error messages about unrecognized
564 field names. Attempt to provide a fixit hint if appropriate,
565 otherwise update the error message to provide the type name.
566
567 2016-06-10 Thomas Schwinge <thomas@codesourcery.com>
568
569 PR c/71381
570 * c-parser.c (c_parser_omp_variable_list) <OMP_CLAUSE__CACHE_>:
571 Loosen checking.
572
573 2016-06-08 Martin Sebor <msebor@redhat.com>
574 Jakub Jelinek <jakub@redhat.com>
575
576 PR c++/70507
577 PR c/68120
578 * c-typeck.c (convert_arguments): Don't promote last argument
579 of BUILT_IN_{ADD,SUB,MUL}_OVERFLOW_P.
580
581 2016-06-08 Marek Polacek <polacek@redhat.com>
582
583 PR c/71418
584 * c-decl.c (grokdeclarator): Check TYPE_P.
585
586 PR c/71426
587 * c-decl.c (get_parm_info): Don't crash on an assert on invalid
588 code.
589
590 2016-06-07 David Malcolm <dmalcolm@redhat.com>
591
592 * c-parser.c (c_parser_postfix_expression): In __builtin_offsetof
593 and structure element reference, capture the location of the
594 element name token and pass it to build_component_ref.
595 (c_parser_postfix_expression_after_primary): Likewise for
596 structure element dereference.
597 (c_parser_omp_variable_list): Likewise for
598 OMP_CLAUSE_{_CACHE, MAP, FROM, TO},
599 * c-tree.h (build_component_ref): Add location_t param.
600 * c-typeck.c (build_component_ref): Add location_t param
601 COMPONENT_LOC. Use it, if available, when issuing hints about
602 mispelled member names to provide a fixit replacement hint.
603
604 2016-06-06 Marek Polacek <polacek@redhat.com>
605
606 PR c/71362
607 * c-parser.c (c_parser_direct_declarator): Set location.
608
609 2016-06-06 Marek Polacek <polacek@redhat.com>
610
611 * c-typeck.c (comptypes_internal): Handle comparisons of
612 INTEGER_TYPE, FIXED_POINT_TYPE, and REAL_TYPE nodes. Don't check
613 TYPE_REF_CAN_ALIAS_ALL.
614
615 2016-06-03 Chung-Lin Tang <cltang@codesourcery.com>
616
617 * c-typeck.c (c_finish_omp_clauses): Mark OpenACC reduction
618 arguments as addressable when async clause exists.
619
620 2016-05-30 Jakub Jelinek <jakub@redhat.com>
621
622 PR c++/71349
623 * c-parser.c (c_parser_omp_for): Don't disallow nowait clause
624 when combined with target construct.
625
626 2016-05-26 Jakub Jelinek <jakub@redhat.com>
627
628 * c-parser.c (c_parser_omp_clause_schedule): Warn if
629 OMP_CLAUSE_SCHEDULE_CHUNK_EXPR is known not to be positive.
630
631 2016-05-25 Marek Polacek <polacek@redhat.com>
632
633 PR c/71265
634 * c-decl.c (c_make_fname_decl): Don't check seen_error.
635
636 PR c/71266
637 * c-decl.c (store_parm_decls_oldstyle): Skip non-PARM_DECLs.
638
639 2016-05-24 Cesar Philippidis <cesar@codesourcery.com>
640
641 * c-parser.c (c_parser_oacc_declare): Add support for
642 GOMP_MAP_FIRSTPRIVATE_POINTER.
643 * c-typeck.c (handle_omp_array_sections_1): Replace bool is_omp
644 argument with enum c_omp_region_type ort.
645 (handle_omp_array_sections): Likewise. Update call to
646 handle_omp_array_sections_1.
647 (c_finish_omp_clauses): Add specific errors and warning messages for
648 OpenACC. Use firsrtprivate pointers for OpenACC subarrays. Update
649 call to handle_omp_array_sections.
650
651 2016-05-24 Thomas Schwinge <thomas@codesourcery.com>
652
653 * c-parser.c (c_parser_oacc_routine): Tighten syntax checks.
654
655 2016-05-24 Richard Biener <rguenther@suse.de>
656
657 PR middle-end/70434
658 PR c/69504
659 * c-typeck.c (build_array_ref): Do not complain about indexing
660 non-lvalue vectors. Adjust for function name change.
661
662 2016-05-20 Martin Sebor <msebor@redhat.com>
663
664 PR c/71115
665 * c-typeck.c (error_init): Use
666 expansion_point_location_if_in_system_header.
667 (warning_init): Same.
668
669 2016-05-19 David Malcolm <dmalcolm@redhat.com>
670
671 PR c/71171
672 * c-parser.c (c_parser_generic_selection): Use c_expr::set_error
673 in error-handling.
674 (c_parser_postfix_expression): Likewise.
675 * c-tree.h (c_expr::set_error): New method.
676 * c-typeck.c (parser_build_binary_op): In error-handling, ensure
677 that result's range is initialized.
678
679 2016-05-17 James Greenhalgh <james.greenhalgh@arm.com>
680
681 * c-typeck.c (parser_build_unary_op): Fix formatting.
682
683 2016-05-16 Matthew Wahab <matthew.wahab@arm.com>
684
685 * c-decl.c (grokdeclarator): Remove errmsg and use of
686 targetm.invalid_return_type.
687 (grokparms): Remove errmsg and use of
688 targetm.invalid_parameter_type.
689
690 2016-05-13 Joseph Myers <joseph@codesourcery.com>
691
692 * c-decl.c (grokdeclarator): For C11, discard qualifiers on
693 function return type.
694
695 2016-05-12 Marek Polacek <polacek@redhat.com>
696
697 PR c/70756
698 * c-decl.c (build_compound_literal): Pass LOC down to
699 c_incomplete_type_error.
700 * c-tree.h (require_complete_type): Adjust declaration.
701 (c_incomplete_type_error): Likewise.
702 * c-typeck.c (require_complete_type): Add location parameter, pass it
703 down to c_incomplete_type_error.
704 (c_incomplete_type_error): Add location parameter, pass it down to
705 error_at.
706 (build_component_ref): Pass location down to c_incomplete_type_error.
707 (default_conversion): Pass location down to require_complete_type.
708 (build_array_ref): Likewise.
709 (build_function_call_vec): Likewise.
710 (convert_arguments): Likewise.
711 (build_unary_op): Likewise.
712 (build_c_cast): Likewise.
713 (build_modify_expr): Likewise.
714 (convert_for_assignment): Likewise.
715 (c_finish_omp_clauses): Likewise.
716
717 2016-05-11 Mikhail Maltsev <maltsevm@gmail.com>
718
719 PR c/43651
720 * c-decl.c (declspecs_add_qual): Warn when -Wduplicate-decl-specifier
721 is enabled.
722 * c-errors.c (pedwarn_c90): Return true if warned.
723 * c-tree.h (pedwarn_c90): Change return type to bool.
724 (enum c_declspec_word): Add new enumerator cdw_atomic.
725
726 2016-05-11 Marek Polacek <polacek@redhat.com>
727
728 PR c++/71024
729 * c-decl.c (diagnose_mismatched_decls): Factor out code to
730 diagnose_mismatched_attributes and call it.
731
732 2016-05-10 Marek Polacek <polacek@redhat.com>
733
734 PR c/70255
735 * c-decl.c (diagnose_mismatched_decls): Warn for optimize attribute
736 on a declaration following the definition.
737
738 2016-05-05 Jakub Jelinek <jakub@redhat.com>
739
740 * c-parser.c (c_parser_switch_statement): Add IF_P argument,
741 parse it through to c_parser_c99_block_statement.
742 (c_parser_statement_after_labels): Adjust c_parser_switch_statement
743 caller.
744
745 2016-05-04 Marek Polacek <polacek@redhat.com>
746
747 * c-parser.c (c_parser_if_statement): Replace OPT_Wparentheses with
748 OPT_Wdangling_else.
749
750 2016-05-04 Marek Polacek <polacek@redhat.com>
751
752 PR c/48778
753 * c-typeck.c (build_binary_op): Don't issue -Waddress warnings
754 for macro expansions.
755
756 2016-05-03 Marek Polacek <polacek@redhat.com>
757
758 PR c/70859
759 * c-typeck.c (build_function_call_vec): Pass LOC and ARG_LOC down to
760 check_builtin_function_arguments.
761
762 2016-05-03 Richard Biener <rguenther@suse.de>
763
764 * Make-lang.in (cc1-checksum.c): For stage-final re-use
765 the checksum from the previous stage.
766
767 2016-05-02 Cesar Philippidis <cesar@codesourcery.com>
768
769 * c-parser.c (c_parser_oacc_all_clauses): Update call to
770 c_finish_omp_clauses.
771 (c_parser_omp_all_clauses): Likewise.
772 (c_parser_oacc_cache): Likewise.
773 (c_parser_oacc_loop): Likewise.
774 (omp_split_clauses): Likewise.
775 (c_parser_omp_declare_target): Likewise.
776 (c_parser_cilk_all_clauses): Likewise.
777 (c_parser_cilk_for): Likewise.
778 * c-typeck.c (c_finish_omp_clauses): Replace bool arguments
779 is_omp, declare_simd, and is_cilk with enum c_omp_region_type ort.
780
781 2016-05-02 Marek Polacek <polacek@redhat.com>
782
783 PR c/70851
784 * c-decl.c (grokdeclarator): Diagnose when array's size has an
785 incomplete type.
786
787 2016-04-29 Cesar Philippidis <cesar@codesourcery.com>
788
789 PR middle-end/70626
790 * c-parser.c (c_parser_oacc_loop): Don't augment mask with
791 OACC_LOOP_CLAUSE_MASK.
792 (c_parser_oacc_kernels_parallel): Update call to
793 c_oacc_split_loop_clauses.
794
795 2016-04-28 Andrew MacLeod <amacleod@redhat.com>
796
797 * c-array-notation.c (fix_builtin_array_notation_fn): Fix final
798 argument to build_modify_expr in two cases.
799
800 2016-04-27 Bernd Schmidt <bschmidt@redhat.com>
801
802 * c-parser.c (c_parser_postfix_expression_after_primary): Call
803 warn_for_memset instead of warning directly here.
804
805 2016-04-26 Marek Polacek <polacek@redhat.com>
806
807 PR c/67784
808 * c-parser.c (c_parser_maybe_reclassify_token): New function factored
809 out of ...
810 (c_parser_for_statement): ... here.
811 (c_parser_if_statement): Use it.
812 (c_parser_switch_statement): Use it.
813 (c_parser_while_statement): Use it.
814
815 PR c/70791
816 * c-decl.c (pushdecl): Pass LOCUS down to warning.
817
818 2016-04-20 Ilya Verbin <ilya.verbin@intel.com>
819
820 PR c++/69363
821 * c-parser.c (c_parser_cilk_all_clauses): Use c_finish_omp_clauses
822 instead of c_finish_cilk_clauses.
823 * c-tree.h (c_finish_omp_clauses): Add new default argument.
824 * c-typeck.c (c_finish_omp_clauses): Add new argument. Allow
825 floating-point variables in the linear clause for Cilk Plus.
826
827 2016-04-18 Michael Matz <matz@suse.de>
828
829 * c-decl.c (merge_decls): Use SET_DECL_ALIGN and SET_TYPE_ALIGN.
830 (grokdeclarator, parser_xref_tag, finish_enum): Use SET_TYPE_ALIGN.
831
832 2016-04-15 Marek Polacek <polacek@redhat.com>
833
834 PR c/70671
835 * c-typeck.c (build_unary_op): Pass location down to error and
836 warning call.
837
838 2016-04-15 Jakub Jelinek <jakub@redhat.com>
839
840 PR c/70436
841 * c-parser.c (c_parser_pragma): Add IF_P argument, pass it down
842 where needed.
843 (c_parser_external_declaration, c_parser_struct_or_union_specifier,
844 c_parser_parameter_declaration, c_parser_compound_statement_nostart,
845 c_parser_objc_class_instance_variables, c_parser_objc_methodprotolist):
846 Adjust c_parser_pragma callers.
847 (c_parser_statement_after_labels): Likewise. Adjust c_parser_cilk_for
848 caller.
849 (c_parser_omp_structured_block): Add IF_P argument, pass it down to
850 c_parser_statement.
851 (c_parser_oacc_data, c_parser_oacc_host_data, c_parser_oacc_loop,
852 c_parser_oacc_kernels_parallel, c_parser_omp_critical,
853 c_parser_omp_simd, c_parser_omp_for, c_parser_omp_master,
854 c_parser_omp_ordered, c_parser_omp_parallel, c_parser_omp_single,
855 c_parser_omp_task, c_parser_omp_taskgroup, c_parser_omp_distribute,
856 c_parser_omp_teams, c_parser_omp_target_data, c_parser_omp_target,
857 c_parser_omp_taskloop, c_parser_omp_construct, c_parser_cilk_grainsize,
858 c_parser_cilk_simd, c_parser_cilk_for): Add IF_P argument, pass it
859 down where needed.
860 (c_parser_omp_for_loop): Likewise. Clear IF_P if nbraces.
861 (c_parser_omp_sections_scope): Adjust c_parser_omp_structured_block
862 calls.
863
864 2016-04-13 Marek Polacek <polacek@redhat.com>
865
866 PR c/70436
867 * c-parser.c (c_parser_statement_after_labels): Add IF_P argument and
868 adjust callers.
869 (c_parser_statement): Likewise.
870 (c_parser_c99_block_statement): Likewise.
871 (c_parser_while_statement): Likewise.
872 (c_parser_for_statement): Likewise.
873 (c_parser_if_body): Don't set IF_P here.
874 (c_parser_if_statement): Add IF_P argument. Set IF_P here. Warn
875 about dangling else here.
876 * c-tree.h (c_finish_if_stmt): Adjust declaration.
877 * c-typeck.c (c_finish_if_stmt): Remove NESTED_IF parameter. Don't
878 warn about dangling else here.
879
880 2016-04-04 Marek Polacek <polacek@redhat.com>
881
882 PR c/70307
883 * c-fold.c (c_fully_fold_internal): Handle VEC_COND_EXPR.
884
885 2016-03-31 Marek Polacek <polacek@redhat.com>
886
887 PR c/70297
888 * c-decl.c (merge_decls): Also set TYPE_ALIGN and TYPE_USER_ALIGN.
889
890 2016-03-18 David Malcolm <dmalcolm@redhat.com>
891
892 PR c/70281
893 * c-parser.c (c_parser_postfix_expression): Set the source range
894 for uses of "__builtin_types_compatible_p".
895
896 2016-03-17 Jakub Jelinek <jakub@redhat.com>
897
898 PR c/70280
899 * c-typeck.c (composite_type): Don't count void_list_node
900 into len, if the list is terminated by void_list_node, start
901 with void_list_node instead of NULL for newargs. Stop
902 at void_list_node.
903
904 2016-03-16 Marek Polacek <polacek@redhat.com>
905
906 PR c/70093
907 * c-typeck.c (build_function_call_vec): Create a TARGET_EXPR for
908 nested functions returning VM types.
909
910 2016-03-09 Cesar Philippidis <cesar@codesourcery.com>
911
912 * c-parser.c (c_parser_oacc_loop): Update cclauses and clauses
913 when calling c_finish_omp_clauses.
914
915 2016-03-04 Bernd Schmidt <bschmidt@redhat.com>
916
917 PR c/69824
918 * c-decl.c (get_parm_info): Don't queue implicit function declarations
919 for later.
920
921 2016-03-04 Marek Polacek <polacek@redhat.com>
922
923 PR c/69798
924 * c-parser.c (c_parser_postfix_expression): Call
925 c_parser_cast_expression rather than c_parser_postfix_expression.
926
927 2016-03-01 Jakub Jelinek <jakub@redhat.com>
928
929 PR c/69796
930 PR c/69974
931 * c-parser.c (c_parser_translation_unit): Don't change TREE_TYPE
932 of incomplete decls to error_mark_node.
933
934 2016-02-24 Marek Polacek <polacek@redhat.com>
935
936 PR c/69819
937 * c-decl.c (finish_decl): Don't update the copy of the type of a
938 different decl type.
939
940 2016-02-23 Jakub Jelinek <jakub@redhat.com>
941
942 PR objc/69844
943 * c-parser.c (c_parser_for_statement): Properly handle ObjC classes
944 in id_kind reclassification.
945
946 2016-02-16 Jakub Jelinek <jakub@redhat.com>
947
948 PR c/69835
949 * c-typeck.c (build_binary_op): Revert 2015-09-09 change.
950
951 2016-02-16 James Norris <jnorris@codesourcery.com>
952
953 PR c/64748
954 * c-parser.c (c_parser_oacc_data_clause_deviceptr): Allow parms.
955
956 2016-02-12 Bernd Schmidt <bschmidt@redhat.com>
957
958 * c-decl.c (build_null_declspecs): Zero the entire struct.
959
960 PR c/69522
961 * c-parser.c (c_parser_braced_init): New arg outer_obstack. All
962 callers changed. If nested_p is true, use it to call
963 finish_implicit_inits.
964 * c-tree.h (finish_implicit_inits): Declare.
965 * c-typeck.c (finish_implicit_inits): New function. Move code
966 from ...
967 (push_init_level): ... here.
968 (set_designator, process_init_element): Call finish_implicit_inits.
969
970 2016-02-11 Jakub Jelinek <jakub@redhat.com>
971
972 PR c/69768
973 * c-typeck.c (parser_build_binary_op): Strip nops from integer_zerop
974 arguments for -Waddress warning.
975
976 2016-02-04 Jakub Jelinek <jakub@redhat.com>
977
978 PR c/69669
979 * c-decl.c (finish_enum): When honoring mode attribute,
980 make sure to use proper TYPE_MIN_VALUE and TYPE_MAX_VALUE.
981
982 2016-01-29 Jakub Jelinek <jakub@redhat.com>
983
984 PR debug/69518
985 * c-decl.c (finish_struct): Clear C_TYPE_INCOMPLETE_VARS in
986 all type variants, not just TYPE_MAIN_VARIANT.
987
988 2016-01-27 Jakub Jelinek <jakub@redhat.com>
989
990 PR debug/66869
991 * c-decl.c (c_write_global_declarations_1): Warn with
992 warn_unused_function if static prototype without definition
993 is not C_DECL_USED.
994
995 2016-01-27 Marek Polacek <polacek@redhat.com>
996
997 PR c/68062
998 * c-typeck.c (build_binary_op) [EQ_EXPR, GE_EXPR]: Promote operand
999 to unsigned, if needed. Add -Wsign-compare warning.
1000
1001 2016-01-26 Jakub Jelinek <jakub@redhat.com>
1002
1003 PR tree-optimization/69483
1004 * c-parser.c (c_parser_translation_unit): Use FOR_EACH_VEC_ELT.
1005
1006 2016-01-20 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
1007
1008 PR c/24293
1009 * c-tree.h (incomplete_record_decls): Declare.
1010 * c-parser.c (incomplete_record_decls): Define.
1011 (c_parser_translation_unit): Iterate through incomplete_record_decls and
1012 report error if any decl has zero size.
1013 * c-decl.c (finish_decl): Append static decl with incomplete struct/union
1014 or enum type to incomplete_record_decls.
1015
1016 2016-01-14 Tom de Vries <tom@codesourcery.com>
1017
1018 PR tree-optimization/68773
1019 * c-parser.c (c_parser_oacc_declare, c_parser_omp_declare_target): Don't
1020 set force_output.
1021
1022 2016-01-14 Marek Polacek <polacek@redhat.com>
1023
1024 PR c/69262
1025 * c-decl.c (grokdeclarator): Provide more information for invalid
1026 array declarations.
1027
1028 2016-01-06 David Malcolm <dmalcolm@redhat.com>
1029
1030 * c-parser.c (c_parser_unary_expression): For dereferences, build
1031 a combined location before calling build_indirect_ref, so that
1032 error reports cover the full range, manually updating the c_expr
1033 src_range.
1034
1035 2016-01-06 Marek Polacek <polacek@redhat.com>
1036
1037 PR sanitizer/69099
1038 * c-convert.c (convert) [INTEGER_TYPE]: Drop ARG. Don't pass ARG to
1039 ubsan_instrument_float_cast. Fold EXPR. Use NULL_TREE instead of
1040 NULL.
1041
1042 2016-01-04 Jakub Jelinek <jakub@redhat.com>
1043
1044 Update copyright years.
1045
1046 2016-01-04 Marek Polacek <polacek@redhat.com>
1047
1048 PR c/68908
1049 * c-typeck.c (build_atomic_assign): Improve commentary. Add
1050 optimization to use __atomic_fetch_* built-in if possible.
1051
1052 2015-12-23 Thomas Schwinge <thomas@codesourcery.com>
1053
1054 * c-parser.c (c_parser_oacc_clause_use_device): Merge function
1055 into...
1056 (c_parser_omp_clause_use_device_ptr): ... this function. Adjust
1057 all users.
1058
1059 2015-12-22 Marek Polacek <polacek@redhat.com>
1060
1061 PR c/69002
1062 * c-typeck.c (build_component_ref): Warn when acessing elements of
1063 atomic structures or unions.
1064
1065 2015-12-21 David Malcolm <dmalcolm@redhat.com>
1066
1067 * c-typeck.c: Include "gcc-rich-location.h".
1068 (build_binary_op): In the two places that call binary_op_error,
1069 create a gcc_rich_location and populate it with the location of
1070 the binary op and its two operands.
1071
1072 2015-12-16 David Malcolm <dmalcolm@redhat.com>
1073
1074 * c-parser.c (c_parser_statement_after_labels): When calling
1075 c_finish_return, Use the return expression's location if it has
1076 one, falling back to the location of the first token within it.
1077 * c-typeck.c (c_finish_return): When issuing warnings about
1078 the incorrect presence/absence of a return value, issue a note
1079 showing the declaration of the function.
1080
1081 2015-12-16 David Malcolm <dmalcolm@redhat.com>
1082
1083 * c-parser.c (struct c_parser): Expand array "tokens_buf" from 2
1084 to 4.
1085 (c_parser_peek_nth_token): New function.
1086 (c_parser_peek_conflict_marker): New function.
1087 (c_parser_error): Detect conflict markers and report them as such.
1088
1089 2015-12-16 David Malcolm <dmalcolm@redhat.com>
1090
1091 * c-parser.c (c_parser_postfix_expression): Use EXPR_LOC_OR_LOC
1092 to preserve range information for the primary expression
1093 in the call to c_parser_postfix_expression_after_primary.
1094
1095 2015-12-16 David Malcolm <dmalcolm@redhat.com>
1096
1097 * c-parser.c (c_parser_static_assert_declaration_no_semi): Use the
1098 expression location, falling back on the first token location,
1099 rather than always using the latter.
1100
1101 2015-12-16 Marek Polacek <polacek@redhat.com>
1102
1103 PR c/64637
1104 * c-typeck.c (c_process_expr_stmt): Use location of the expression if
1105 available.
1106
1107 2015-12-15 Marek Polacek <polacek@redhat.com>
1108
1109 PR c/68907
1110 * c-typeck.c (build_atomic_assign): Set TREE_NO_WARNING on an
1111 artificial decl.
1112
1113 2015-12-08 David Malcolm <dmalcolm@redhat.com>
1114
1115 * c-parser.c (c_parser_alignof_expression): Capture location of
1116 closing parenthesis (if any), or of end of unary expression, and
1117 use it to build a src_range for the expression.
1118
1119 2015-12-08 David Malcolm <dmalcolm@redhat.com>
1120
1121 PR c/68757
1122 * c-parser.c (c_parser_get_builtin_args): Add
1123 "out_close_paren_loc" param, and write back to it.
1124 (c_parser_postfix_expression): Capture the closing
1125 parenthesis location for RID_CHOOSE_EXPR,
1126 RID_BUILTIN_CALL_WITH_STATIC_CHAIN, RID_BUILTIN_COMPLEX,
1127 RID_BUILTIN_SHUFFLE and use it to set the source range
1128 for such expressions; within RID_BUILTIN_COMPLEX set
1129 the underlying location.
1130
1131 2015-12-07 Marek Polacek <polacek@redhat.com>
1132
1133 PR c/68668
1134 * c-decl.c (grokdeclarator): If ORIG_QUAL_INDIRECT is indirect, use
1135 TREE_TYPE of ORIG_QUAL_TYPE, otherwise decrement ORIG_QUAL_INDIRECT.
1136
1137 2015-12-04 Eric Botcazou <ebotcazou@adacore.com>
1138
1139 * c-tree.h (c_build_va_arg): Adjust prototype.
1140 * c-parser.c (c_parser_postfix_expression): Adjust call to above.
1141 * c-typeck.c (c_build_va_arg): Rename LOC parameter to LOC2, add LOC1
1142 parameter, adjust throughout and issue an error if EXPR is a component
1143 with reverse storage order.
1144
1145 2015-12-02 Jason Merrill <jason@redhat.com>
1146
1147 * c-fold.c (c_disable_warnings, c_enable_warnings, c_fully_fold)
1148 (c_fully_fold_internal, decl_constant_value_for_optimization):
1149 Move from c-common.c.
1150 * c-tree.h: Declare decl_constant_value_for_optimization.
1151 * Make-lang.in (C_AND_OBJC_OBJS): Add c-fold.o.
1152
1153 2015-12-02 Joseph Myers <joseph@codesourcery.com>
1154
1155 PR c/68162
1156 * c-decl.c (grokdeclarator): Set first_non_attr_kind before
1157 following link from declarator to next declarator. Track original
1158 qualified type and pass it to c_build_qualified_type.
1159 * c-typeck.c (c_build_qualified_type): Add arguments
1160 orig_qual_type and orig_qual_indirect.
1161
1162 2015-12-02 Thomas Schwinge <thomas@codesourcery.com>
1163
1164 * c-parser.c (c_parser_omp_clause_name)
1165 (c_parser_oacc_all_clauses): Alphabetical sorting.
1166
1167 2015-12-02 Jakub Jelinek <jakub@redhat.com>
1168
1169 PR c/68533
1170 * c-decl.c (get_parm_info): Use b->locus instead of input_location
1171 for diagnostics.
1172
1173 2015-12-01 Julian Brown <julian@codesourcery.com>
1174 Cesar Philippidis <cesar@codesourcery.com>
1175 James Norris <James_Norris@mentor.com>
1176
1177 * c-parser.c (c_parser_omp_clause_name): Add use_device support.
1178 (c_parser_oacc_clause_use_device): New function.
1179 (c_parser_oacc_all_clauses): Add use_device support.
1180 (OACC_HOST_DATA_CLAUSE_MASK): New macro.
1181 (c_parser_oacc_host_data): New function.
1182 (c_parser_omp_construct): Add host_data support.
1183 * c-tree.h (c_finish_oacc_host_data): Add prototype.
1184 * c-typeck.c (c_finish_oacc_host_data): New function.
1185 (c_finish_omp_clauses): Add use_device support.
1186
1187 2015-11-29 Jan Hubicka <hubicka@ucw.cz>
1188
1189 PR c/67106
1190 * c-decl.c: Set TYPE_PACKED in variants.
1191
1192 2015-11-27 Martin Liska <mliska@suse.cz>
1193
1194 PR c++/68312
1195 * c-array-notation.c (fix_builtin_array_notation_fn):
1196 Use release_vec_vec instead of vec::release.
1197 (build_array_notation_expr): Likewise.
1198 (fix_conditional_array_notations_1): Likewise.
1199 (fix_array_notation_expr): Likewise.
1200 (fix_array_notation_call_expr): Likewise.
1201
1202 2015-11-27 Jakub Jelinek <jakub@redhat.com>
1203
1204 PR c/63326
1205 * c-parser.c (c_parser_compound_statement_nostart): If
1206 last_label is true, use pragma_stmt instead of pragma_compound
1207 as second c_parser_pragma argument.
1208 (c_parser_omp_ordered, c_parser_omp_target_update,
1209 c_parser_omp_target_enter_data, c_parser_omp_target_exit_data): Pass
1210 false as second argument to c_parser_skip_to_pragma_eol after
1211 diagnosing standalone directives used in pragma_stmt context.
1212
1213 2015-11-24 Ilya Verbin <ilya.verbin@intel.com>
1214
1215 * c-parser.c (c_parser_oacc_declare): Replace "ifdef ENABLE_OFFLOADING"
1216 with "if (ENABLE_OFFLOADING)".
1217
1218 2015-11-23 David Malcolm <dmalcolm@redhat.com>
1219
1220 PR objc/68438
1221 * c-parser.c (c_parser_postfix_expression): Set up source ranges
1222 for various Objective-C constructs: Class.name syntax,
1223 @selector(), @protocol(), @encode(), and [] message syntax.
1224
1225 2015-11-20 David Malcolm <dmalcolm@redhat.com>
1226
1227 PR 62314
1228 * c-typeck.c (should_suggest_deref_p): New function.
1229 (build_component_ref): Special-case POINTER_TYPE when
1230 generating a "not a structure of union" error message, and
1231 suggest a "->" rather than a ".", providing a fix-it hint.
1232
1233 2015-11-19 David Malcolm <dmalcolm@redhat.com>
1234
1235 * c-typeck.c (lookup_field_fuzzy): Move determination of closest
1236 candidate into a new function, find_closest_identifier.
1237
1238 2015-11-19 Marek Polacek <polacek@redhat.com>
1239
1240 PR c/68412
1241 * c-typeck.c (parser_build_binary_op): Properly handle
1242 C_MAYBE_CONST_EXPR before calling warn_tautological_cmp.
1243
1244 2015-11-17 David Malcolm <dmalcolm@redhat.com>
1245
1246 * c-parser.c (set_c_expr_source_range): Bulletproof both
1247 overloaded implementations against NULL expr->value.
1248 (c_parser_braced_init): Set src_range for "ret" to a sane pair of
1249 values.
1250 (c_parser_unary_expression): Likewise when handling addresses of
1251 labels.
1252 (c_parser_postfix_expression): Likewise for statement expressions,
1253 for __FUNCTION__, __PRETTY_FUNCTION_ and __func__ keywords, for
1254 __builtin_va_arg, and for __builtin_offset_of.
1255 (c_parser_postfix_expression_after_paren_type): Initialize expr's
1256 src_range using the range of the braced initializer.
1257 (c_parser_transaction_expression): Set src_range for "ret" to a
1258 sane pair of values.
1259
1260 2015-11-16 Kirill Yukhin <kirill.yukhin@intel.com>
1261
1262 * c-parser.c (c_finish_omp_declare_simd): Look for
1263 "simd" attribute as well. Update error message.
1264
1265 2015-11-14 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
1266
1267 * c-parser.c (c_parser_omp_declare_target): Adjust.
1268
1269 2015-11-14 Jakub Jelinek <jakub@redhat.com>
1270
1271 * c-typeck.c (c_finish_omp_clauses): Don't mark
1272 GOMP_MAP_FIRSTPRIVATE_POINTER decls addressable.
1273
1274 2015-11-14 Marek Polacek <polacek@redhat.com>
1275
1276 * c-decl.c: Use RECORD_OR_UNION_TYPE_P throughout.
1277 * c-typeck.c: Likewise.
1278
1279 2015-11-13 David Malcolm <dmalcolm@redhat.com>
1280
1281 * c-decl.c (warn_defaults_to): Pass line_table to
1282 rich_location ctor.
1283 * c-errors.c (pedwarn_c99): Likewise.
1284 (pedwarn_c90): Likewise.
1285 * c-parser.c (set_c_expr_source_range): New functions.
1286 (c_token::get_range): New method.
1287 (c_token::get_finish): New method.
1288 (c_parser_expr_no_commas): Call set_c_expr_source_range on the ret
1289 based on the range from the start of the LHS to the end of the
1290 RHS.
1291 (c_parser_conditional_expression): Likewise, based on the range
1292 from the start of the cond.value to the end of exp2.value.
1293 (c_parser_binary_expression): Call set_c_expr_source_range on
1294 the stack values for TRUTH_ANDIF_EXPR and TRUTH_ORIF_EXPR.
1295 (c_parser_cast_expression): Call set_c_expr_source_range on ret
1296 based on the cast_loc through to the end of the expr.
1297 (c_parser_unary_expression): Likewise, based on the
1298 op_loc through to the end of op.
1299 (c_parser_sizeof_expression) Likewise, based on the start of the
1300 sizeof token through to either the closing paren or the end of
1301 expr.
1302 (c_parser_postfix_expression): Likewise, using the token range,
1303 or from the open paren through to the close paren for
1304 parenthesized expressions.
1305 (c_parser_postfix_expression_after_primary): Likewise, for
1306 various kinds of expression.
1307 * c-tree.h (struct c_expr): Add field "src_range".
1308 (c_expr::get_start): New method.
1309 (c_expr::get_finish): New method.
1310 (set_c_expr_source_range): New decls.
1311 * c-typeck.c (parser_build_unary_op): Call set_c_expr_source_range
1312 on ret for prefix unary ops.
1313 (parser_build_binary_op): Likewise, running from the start of
1314 arg1.value through to the end of arg2.value.
1315
1316 2015-11-13 Marek Polacek <polacek@redhat.com>
1317
1318 PR c/68320
1319 * c-parser.c (c_parser_for_statement): Treat unknown tokens as IDs.
1320
1321 2015-11-13 David Malcolm <dmalcolm@redhat.com>
1322
1323 * c-typeck.c: Include spellcheck.h.
1324 (lookup_field_fuzzy_find_candidates): New function.
1325 (lookup_field_fuzzy): New function.
1326 (build_component_ref): If the field was not found, try using
1327 lookup_field_fuzzy and potentially offer a suggestion.
1328
1329 2015-11-12 James Norris <jnorris@codesourcery.com>
1330 Joseph Myers <joseph@codesourcery.com>
1331
1332 * c-parser.c (c_parser_pragma): Handle PRAGMA_OACC_DECLARE.
1333 (c_parser_omp_clause_name): Handle 'device_resident' clause.
1334 (c_parser_oacc_data_clause): Handle PRAGMA_OACC_CLAUSE_DEVICE_RESIDENT
1335 and PRAGMA_OMP_CLAUSE_LINK.
1336 (c_parser_oacc_all_clauses): Handle PRAGMA_OACC_CLAUSE_DEVICE_RESIDENT
1337 and PRAGMA_OACC_CLAUSE_LINK.
1338 (OACC_DECLARE_CLAUSE_MASK): New definition.
1339 (c_parser_oacc_declare): New function.
1340
1341 2015-11-12 Marek Polacek <polacek@redhat.com>
1342
1343 PR c/67784
1344 * c-parser.c (c_parser_for_statement): Reclassify the token in
1345 a correct scope.
1346
1347 2015-11-11 Marek Polacek <polacek@redhat.com>
1348
1349 PR c/68107
1350 PR c++/68266
1351 * c-decl.c (grokdeclarator): Call valid_array_size_p. Remove code
1352 checking the size of an array.
1353
1354 2015-11-11 Andrew MacLeod <amacleod@redhat.com>
1355
1356 * c-array-notation.c: Remove unused header files.
1357 * c-aux-info.c: Likewise.
1358 * c-convert.c: Likewise.
1359 * c-decl.c: Likewise.
1360 * c-errors.c: Likewise.
1361 * c-lang.c: Likewise.
1362 * c-objc-common.c: Likewise.
1363 * c-parser.c: Likewise.
1364 * c-typeck.c: Likewise.
1365 * gccspec.c: Likewise.
1366
1367 2015-11-09 Thomas Schwinge <thomas@codesourcery.com>
1368 Cesar Philippidis <cesar@codesourcery.com>
1369 James Norris <jnorris@codesourcery.com>
1370 Julian Brown <julian@codesourcery.com>
1371 Nathan Sidwell <nathan@codesourcery.com>
1372
1373 c/
1374 * c-parser.c (c_parser_declaration_or_fndef): Add OpenACC
1375 routine arg.
1376 (c_parser_declaration_or_fndef): Call c_finish_oacc_routine.
1377 (c_parser_pragma): Parse 'acc routine'.
1378 (OACC_ROUTINE_CLAUSE_MARK): Define.
1379 (c_parser_oacc_routine, (c_finish_oacc_routine): New.
1380
1381 2015-11-09 Andreas Arnez <arnez@linux.vnet.ibm.com>
1382
1383 PR debug/67192
1384 * c-typeck.c (c_finish_loop): For unconditional loops, set the
1385 location of the backward-goto to the start of the loop body.
1386
1387 2015-11-09 Andreas Arnez <arnez@linux.vnet.ibm.com>
1388
1389 PR debug/67192
1390 * c-parser.c (c_parser_while_statement): Finish the loop before
1391 parsing ahead for misleading indentation.
1392 (c_parser_for_statement): Likewise.
1393
1394 2015-11-08 Eric Botcazou <ebotcazou@adacore.com>
1395
1396 * c-decl.c (finish_struct): If the structure has reverse storage
1397 order, rewrite the type of array fields with scalar component. Call
1398 maybe_apply_pragma_scalar_storage_order on entry.
1399 * c-typeck.c (build_unary_op) <ADDR_EXPR>: Remove left-overs. Issue
1400 errors on bit-fields and reverse SSO here and not...
1401 (c_mark_addressable): ...here.
1402 (output_init_element): Adjust call to initializer_constant_valid_p.
1403 (c_build_qualified_type): Propagate TYPE_REVERSE_STORAGE_ORDER.
1404
1405 2015-11-06 David Malcolm <dmalcolm@redhat.com>
1406
1407 * c-decl.c (warn_defaults_to): Update for change in signature
1408 of diagnostic_set_info.
1409 * c-errors.c (pedwarn_c99): Likewise.
1410 (pedwarn_c90): Likewise.
1411 * c-objc-common.c (c_tree_printer): Update for new "caret_p" param
1412 for textinfo::set_location.
1413
1414 2015-11-05 Cesar Philippidis <cesar@codesourcery.com>
1415 Thomas Schwinge <thomas@codesourcery.com>
1416 James Norris <jnorris@codesourcery.com>
1417
1418 * c-parser.c (c_parser_omp_clause_name): Add support for
1419 PRAGMA_OACC_CLAUSE_INDEPENDENT and PRAGMA_OACC_CLAUSE_TILE.
1420 (c_parser_omp_clause_default): Add is_oacc argument. Handle
1421 default(none) in OpenACC.
1422 (c_parser_oacc_shape_clause): Allow pointer variables as gang static
1423 arguments.
1424 (c_parser_oacc_clause_tile): New function.
1425 (c_parser_oacc_all_clauses): Add support for OMP_CLAUSE_DEFAULT,
1426 OMP_CLAUSE_INDEPENDENT and OMP_CLAUSE_TILE.
1427 (OACC_LOOP_CLAUSE_MASK): Add PRAGMA_OACC_CLAUSE_{PRIVATE,INDEPENDENT,
1428 TILE}.
1429 (OACC_KERNELS_MASK): Add PRAGMA_OACC_CLAUSE_DEFAULT.
1430 (OACC_PARALLEL_MASK): Add PRAGMA_OACC_CLAUSE_{DEFAULT,PRIVATE,
1431 FIRSTPRIVATE}.
1432 (c_parser_omp_all_clauses): Update call to c_parser_omp_clause_default.
1433 (c_parser_oacc_update): Update the error message for missing clauses.
1434 * c-typeck.c (c_finish_omp_clauses): Add support for OMP_CLAUSE_TILE
1435 and OMP_CLAUSE_INDEPENDENT.
1436
1437 2015-11-05 Marek Polacek <polacek@redhat.com>
1438
1439 PR c/68090
1440 * c-parser.c (c_parser_postfix_expression_after_paren_type): Don't
1441 deal with pre-evaluation on invalid types.
1442
1443 2015-11-05 Jakub Jelinek <jakub@redhat.com>
1444 Ilya Verbin <ilya.verbin@intel.com>
1445
1446 * c-parser.c: Include context.h and gimple-expr.h.
1447 (c_parser_omp_clause_schedule): Parse schedule modifiers, diagnose
1448 monotonic together with nonmonotonic.
1449 (c_parser_omp_for_loop): Call c_omp_check_loop_iv. Call add_stmt here.
1450 (OMP_DISTRIBUTE_CLAUSE_MASK): Add lastprivate clause.
1451 (c_parser_omp_target_data, c_parser_omp_target_enter_data,
1452 c_parser_omp_target_exit_data): Allow GOMP_MAP_ALWAYS_POINTER.
1453 (c_parser_omp_target): Likewise. Evaluate num_teams and thread_limit
1454 expressions on combined target teams before the target.
1455 (c_parser_omp_declare_target): If decl has "omp declare target" or
1456 "omp declare target link" attribute, and cgraph or varpool node already
1457 exists, then set corresponding flags. Call c_finish_omp_clauses
1458 in the parenthesized extended-list syntax case.
1459 * c-decl.c (c_decl_attributes): Don't diagnose block scope vars inside
1460 declare target.
1461 * c-typeck.c (handle_omp_array_sections_1): Allow non-zero low-bound
1462 on OMP_CLAUSE_REDUCTION array sections.
1463 (handle_omp_array_sections): Encode low-bound into the MEM_REF, either
1464 into the constant offset, or for variable low-bound using
1465 POINTER_PLUS_EXPR. For structure element based array sections use
1466 GOMP_MAP_ALWAYS_POINTER instead of GOMP_MAP_FIRSTPRIVATE_POINTER.
1467 (c_finish_omp_clauses): Drop generic_field_head, structure
1468 elements are now always mapped even as array section bases,
1469 diagnose same var in data sharing and mapping clauses. Diagnose if
1470 linear step on declare simd is neither a constant nor a uniform
1471 parameter. Look through POINTER_PLUS_EXPR for array section
1472 reductions. Diagnose the same var or function appearing multiple
1473 times on the same directive. Fix up wording for the to clause if t
1474 is neither a FUNCTION_DECL nor a VAR_DECL. Diagnose nonmonotonic
1475 modifier on kinds other than dynamic or guided or nonmonotonic
1476 modifier together with ordered clause.
1477
1478 2015-11-03 Thomas Schwinge <thomas@codesourcery.com>
1479 Chung-Lin Tang <cltang@codesourcery.com>
1480
1481 * c-parser.c (c_parser_omp_construct): Handle PRAGMA_OACC_ATOMIC.
1482
1483 2015-10-29 Andrew MacLeod <amacleod@redhat.com>
1484
1485 * c-array-notation.c: Reorder #include's and remove duplicates.
1486 * c-aux-info.c: Likewise.
1487 * c-convert.c: Likewise.
1488 * c-decl.c: Likewise.
1489 * c-errors.c: Likewise.
1490 * c-lang.c: Likewise.
1491 * c-objc-common.c: Likewise.
1492 * c-parser.c: Likewise.
1493 * c-typeck.c: Likewise.
1494
1495 2015-10-26 Jim Wilson <jim.wilson@linaro.org>
1496
1497 PR debug/66068
1498 * c-typeck.c (c_build_qualified_type): Clear C_TYPE_INCOMPLETE_VARS
1499 after calling build_qualified_type.
1500
1501 2015-10-27 Cesar Philippidis <cesar@codesourcery.com>
1502 Thomas Schwinge <thomas@codesourcery.com>
1503 James Norris <jnorris@codesourcery.com>
1504 Joseph Myers <joseph@codesourcery.com>
1505 Julian Brown <julian@codesourcery.com>
1506 Bernd Schmidt <bschmidt@redhat.com>
1507
1508 * c-parser.c (c_parser_oacc_shape_clause): New.
1509 (c_parser_oacc_simple_clause): New.
1510 (c_parser_oacc_all_clauses): Add auto, gang, seq, vector, worker.
1511 (OACC_LOOP_CLAUSE_MASK): Add gang, worker, vector, auto, seq.
1512
1513 2015-10-27 Thomas Schwinge <thomas@codesourcery.com>
1514 James Norris <jnorris@codesourcery.com>
1515 Cesar Philippidis <cesar@codesourcery.com>
1516
1517 PR c/64765
1518 PR c/64880
1519 * c-parser.c (c_parser_oacc_loop): Add mask, cclauses formal
1520 parameters, and handle these. Adjust all users.
1521 (c_parser_oacc_kernels, c_parser_oacc_parallel): Merge functions
1522 into...
1523 (c_parser_oacc_kernels_parallel): ... this new function. Adjust
1524 all users.
1525 * c-tree.h (c_finish_oacc_parallel, c_finish_oacc_kernels): Don't
1526 declare functions.
1527 (c_finish_omp_construct): Declare function.
1528 * c-typeck.c (c_finish_oacc_parallel, c_finish_oacc_kernels):
1529 Merge functions into...
1530 (c_finish_omp_construct): ... this new function.
1531
1532 2015-10-22 Richard Biener <rguenther@suse.de>
1533
1534 * c-typeck.c (c_finish_omp_clauses): Properly convert operands
1535 before folding a MINUS_EXPR.
1536
1537 2015-10-21 Marek Polacek <polacek@redhat.com>
1538
1539 PR c/68024
1540 * c-decl.c (start_function): Warn about vararg functions without
1541 a prototype.
1542
1543 2015-10-21 Ilya Enkovich <enkovich.gnu@gmail.com>
1544
1545 * c-typeck.c (build_conditional_expr): Use boolean vector
1546 type for vector comparison.
1547 (build_vec_cmp): New.
1548 (build_binary_op): Use build_vec_cmp for comparison.
1549
1550 2015-10-20 Marek Polacek <polacek@redhat.com>
1551
1552 * c-parser.c (is_cilkplus_vector_p): Don't define here.
1553
1554 2015-10-20 Marek Polacek <polacek@redhat.com>
1555
1556 PR c/67964
1557 * c-parser.c (c_parser_attributes): Break out of the loop if the
1558 token after an attribute isn't a comma.
1559
1560 2015-10-13 Jakub Jelinek <jakub@redhat.com>
1561 Aldy Hernandez <aldyh@redhat.com>
1562
1563 * c-parser.c (c_parser_pragma): Handle PRAGMA_OMP_ORDERED here.
1564 (c_parser_omp_clause_name): Handle OpenMP 4.5 clauses.
1565 (c_parser_omp_variable_list): Handle structure elements for
1566 map, to and from clauses. Handle array sections in reduction
1567 clause. Formatting fixes.
1568 (c_parser_omp_clause_if): Add IS_OMP argument, handle parsing of
1569 if clause modifiers.
1570 (c_parser_omp_clause_num_tasks, c_parser_omp_clause_grainsize,
1571 c_parser_omp_clause_priority, c_parser_omp_clause_hint,
1572 c_parser_omp_clause_defaultmap, c_parser_omp_clause_use_device_ptr,
1573 c_parser_omp_clause_is_device_ptr): New functions.
1574 (c_parser_omp_clause_ordered): Parse optional parameter.
1575 (c_parser_omp_clause_reduction): Handle array reductions.
1576 (c_parser_omp_clause_schedule): Parse optional simd modifier.
1577 (c_parser_omp_clause_nogroup, c_parser_omp_clause_orderedkind): New
1578 functions.
1579 (c_parser_omp_clause_linear): Parse linear clause modifiers.
1580 (c_parser_omp_clause_depend_sink): New function.
1581 (c_parser_omp_clause_depend): Parse source/sink depend kinds.
1582 (c_parser_omp_clause_map): Parse release/delete map kinds and
1583 optional always modifier.
1584 (c_parser_oacc_all_clauses): Adjust c_parser_omp_clause_if
1585 and c_finish_omp_clauses callers.
1586 (c_parser_omp_all_clauses): Likewise. Parse OpenMP 4.5 clauses.
1587 Parse "to" as OMP_CLAUSE_TO_DECLARE if on declare target directive.
1588 (c_parser_oacc_cache): Adjust c_finish_omp_clauses caller.
1589 (OMP_CRITICAL_CLAUSE_MASK): Define.
1590 (c_parser_omp_critical): Parse critical clauses.
1591 (c_parser_omp_for_loop): Handle doacross loops, adjust
1592 c_finish_omp_for and c_finish_omp_clauses callers.
1593 (OMP_SIMD_CLAUSE_MASK): Add simdlen clause.
1594 (c_parser_omp_simd): Allow ordered clause if it has no parameter.
1595 (OMP_FOR_CLAUSE_MASK): Add linear clause.
1596 (c_parser_omp_for): Disallow ordered clause when combined with
1597 distribute. Disallow linear clause when combined with distribute
1598 and not combined with simd.
1599 (OMP_ORDERED_CLAUSE_MASK, OMP_ORDERED_DEPEND_CLAUSE_MASK): Define.
1600 (c_parser_omp_ordered): Add CONTEXT argument, remove LOC argument,
1601 parse clauses and if depend clause is found, don't parse a body.
1602 (c_parser_omp_parallel): Disallow copyin clause on target parallel.
1603 Allow target parallel without for after it.
1604 (OMP_TASK_CLAUSE_MASK): Add priority clause.
1605 (OMP_TARGET_DATA_CLAUSE_MASK): Add use_device_ptr clause.
1606 (c_parser_omp_target_data): Diagnose no map clauses or clauses with
1607 invalid kinds.
1608 (OMP_TARGET_UPDATE_CLAUSE_MASK): Add depend and nowait clauses.
1609 (OMP_TARGET_ENTER_DATA_CLAUSE_MASK,
1610 OMP_TARGET_EXIT_DATA_CLAUSE_MASK): Define.
1611 (c_parser_omp_target_enter_data, c_parser_omp_target_exit_data): New
1612 functions.
1613 (OMP_TARGET_CLAUSE_MASK): Add depend, nowait, private, firstprivate,
1614 defaultmap and is_device_ptr clauses.
1615 (c_parser_omp_target): Parse target parallel and target simd. Set
1616 OMP_TARGET_COMBINED on combined constructs. Parse target enter data
1617 and target exit data. Diagnose invalid map kinds.
1618 (OMP_DECLARE_TARGET_CLAUSE_MASK): Define.
1619 (c_parser_omp_declare_target): Parse OpenMP 4.5 forms of this
1620 construct.
1621 (c_parser_omp_declare_reduction): Use STRIP_NOPS when checking for
1622 &omp_priv.
1623 (OMP_TASKLOOP_CLAUSE_MASK): Define.
1624 (c_parser_omp_taskloop): New function.
1625 (c_parser_omp_construct): Don't handle PRAGMA_OMP_ORDERED here,
1626 handle PRAGMA_OMP_TASKLOOP.
1627 (c_parser_cilk_for): Adjust c_finish_omp_clauses callers.
1628 * c-tree.h (c_finish_omp_clauses): Add two new arguments.
1629 * c-typeck.c (handle_omp_array_sections_1): Fix comment typo.
1630 Add IS_OMP argument, handle structure element bases, diagnose
1631 bitfields, pass IS_OMP recursively, diagnose known zero length
1632 array sections in depend clauses, handle array sections in reduction
1633 clause, diagnose negative length even for pointers.
1634 (handle_omp_array_sections): Add IS_OMP argument, use auto_vec for
1635 types, pass IS_OMP down to handle_omp_array_sections_1, handle
1636 array sections in reduction clause, set
1637 OMP_CLAUSE_MAP_MAYBE_ZERO_LENGTH_ARRAY_SECTION if map could be zero
1638 length array section, use GOMP_MAP_FIRSTPRIVATE_POINTER for IS_OMP.
1639 (c_finish_omp_clauses): Add IS_OMP and DECLARE_SIMD arguments.
1640 Handle new OpenMP 4.5 clauses and new restrictions for the old ones.
1641
1642 2015-10-06 Marek Polacek <polacek@redhat.com>
1643
1644 * c-parser.c (c_parser_statement_after_labels): Use
1645 protected_set_expr_location.
1646 (c_parser_omp_clause_num_gangs): Likewise.
1647 (c_parser_omp_clause_num_threads): Likewise.
1648 (c_parser_omp_clause_num_workers): Likewise.
1649 (c_parser_omp_clause_vector_length): Likewise.
1650 (c_parser_omp_clause_num_teams): Likewise.
1651 (c_parser_omp_clause_thread_limit): Likewise.
1652 * c-typeck.c (build_c_cast): Likewise.
1653 (c_cast_expr): Likewise.
1654
1655 2015-10-05 Richard Sandiford <richard.sandiford@arm.com>
1656
1657 * c-typeck.c (c_tree_equal): Use real_equal instead of
1658 REAL_VALUES_EQUAL.
1659
1660 2015-10-04 Jason Merrill <jason@redhat.com>
1661
1662 * c-parser.c (c_lex_one_token): Handle @synchronized.
1663 * c-decl.c (match_builtin_function_types): A declaration of a built-in
1664 can change whether the function is transaction_safe.
1665
1666 2015-10-02 Marek Polacek <polacek@redhat.com>
1667
1668 PR c/67730
1669 * c-typeck.c (convert_for_assignment): Use the expansion point
1670 location throughout.
1671
1672 2015-10-02 Marek Polacek <polacek@redhat.com>
1673
1674 PR c/64249
1675 * c-parser.c (c_parser_statement_after_labels): Add CHAIN parameter
1676 and pass it down to c_parser_if_statement.
1677 (c_parser_else_body): Add CHAIN parameter and pass it down to
1678 c_parser_statement_after_labels.
1679 (c_parser_if_statement): Add CHAIN parameter. Add code to warn about
1680 duplicated if-else-if conditions.
1681
1682 2015-10-01 Marek Polacek <polacek@redhat.com>
1683
1684 * c-typeck.c (convert_for_assignment): Improve commentary.
1685
1686 2015-09-30 Marek Polacek <polacek@redhat.com>
1687
1688 PR c/67730
1689 * c-typeck.c (c_finish_return): Use the expansion point location for
1690 certain "return with value" warnings.
1691
1692 2015-09-18 Manuel López-Ibáñez <manu@gcc.gnu.org>
1693
1694 * c-parser.c (pragma_lex): Add loc argument.
1695
1696 2015-09-15 Marek Polacek <polacek@redhat.com>
1697
1698 PR c/67580
1699 * c-decl.c (tag_exists_p): New function.
1700 * c-parser.c (c_parser_declaration_or_fndef): Give a hint when
1701 struct/union/enum keywords are missing.
1702 * c-tree.h (tag_exists_p): Declare.
1703
1704 2015-09-15 Marek Polacek <polacek@redhat.com>
1705
1706 * c-decl.c (lookup_label): Return NULL_TREE instead of 0.
1707 (lookup_tag): Change the type of THISLEVEL_ONLY to bool.
1708 Return NULL_TREE instead of 0.
1709 (lookup_name): Return NULL_TREE instead of 0.
1710 (lookup_name_in_scope): Likewise.
1711 (shadow_tag_warned): Use true instead of 1 and NULL_TREE instead of 0.
1712 (parser_xref_tag): Use false instead of 0.
1713 (start_struct): Use true instead of 1.
1714 (start_enum): Use true instead of 1 and NULL_TREE instead of 0.
1715
1716 2015-09-14 Marek Polacek <polacek@redhat.com>
1717
1718 * c-typeck.c (set_nonincremental_init_from_string): Use
1719 HOST_WIDE_INT_M1U when shifting a negative value.
1720
1721 2015-09-09 Mark Wielaard <mjw@redhat.com>
1722
1723 * c-typeck.c (build_binary_op): Check and warn when nonnull arg
1724 parm against NULL.
1725
1726 2015-09-10 Jakub Jelinek <jakub@redhat.com>
1727
1728 PR c/67502
1729 * c-parser.c (c_parser_omp_for_loop): Emit DECL_EXPR stmts
1730 into OMP_FOR_PRE_BODY rather than before the loop.
1731
1732 2015-09-09 Jakub Jelinek <jakub@redhat.com>
1733
1734 PR c/67501
1735 * c-parser.c (c_parser_oacc_all_clauses,
1736 c_parser_omp_all_clauses): Remove invalid clause from
1737 list of clauses even if parser->error is set.
1738
1739 PR c/67500
1740 * c-parser.c (c_parser_omp_clause_aligned,
1741 c_parser_omp_clause_safelen, c_parser_omp_clause_simdlen): Fix up
1742 test for errors.
1743 * c-decl.c (temp_pop_parm_decls): Allow b->decl equal to
1744 error_mark_node.
1745
1746 PR c/67495
1747 * c-parser.c (c_parser_omp_atomic): Use c_parser_cast_expression
1748 instead of c_parser_unary_expression. If the result is !lvalue_p,
1749 wrap the result of c_fully_fold into NON_LVALUE_EXPR.
1750
1751 2015-09-04 Marek Polacek <polacek@redhat.com>
1752
1753 PR sanitizer/67279
1754 * c-typeck.c (build_binary_op): Don't instrument static initializers.
1755
1756 2015-09-03 Martin Sebor <msebor@redhat.com>
1757
1758 PR c/66516
1759 * c-typeck.c (convert_arguments, parser_build_unary_op,
1760 build_conditional_expr, c_cast_expr, convert_for_assignment,
1761 build_binary_op, _objc_common_truthvalue_conversion): Call
1762 reject_gcc_builtin.
1763 (c_decl_implicit): Define.
1764
1765 2015-09-02 Marek Polacek <polacek@redhat.com>
1766
1767 PR c/67432
1768 * c-parser.c (c_parser_enum_specifier): Give a better error for
1769 an empty enum.
1770
1771 2015-08-18 Trevor Saunders <tbsaunde@tbsaunde.org>
1772
1773 * c-aux-info.c, c-parser.c, c-tree.h: Remove useless typedefs.
1774
1775 2015-08-12 Marek Polacek <polacek@redhat.com>
1776
1777 * c-decl.c (grokdeclarator): Call error_at instead of error and pass
1778 LOC to it.
1779
1780 2015-08-03 Marek Polacek <polacek@redhat.com>
1781
1782 PR c/67088
1783 * c-decl.c (check_bitfield_type_and_width): Add location parameter.
1784 Use it.
1785 (grokdeclarator): Pass LOC down to check_bitfield_type_and_width.
1786
1787 2015-08-02 Patrick Palka <ppalka@gcc.gnu.org>
1788
1789 * c-parser.c (c_parser_if_body): Take token_indent_info
1790 argument. Call warn_for_misleading_indentation even when the
1791 body is a semicolon. Extract token_indent_infos corresponding
1792 to the guard, body and next tokens. Adjust call to
1793 warn_for_misleading_indentation accordingly.
1794 (c_parser_else_body): Likewise.
1795 (c_parser_if_statement): Likewise.
1796 (c_parser_while_statement): Likewise.
1797 (c_parser_for_statement): Likewise.
1798
1799 2015-07-28 Luis Felipe Strano Moraes <luis.strano@gmail.com>
1800 Manuel López-Ibáñez <manu@gcc.gnu.org>
1801
1802 * c-decl.c (get_parm_info): Remove static var. Update warning
1803 message.
1804
1805 2015-07-27 Marek Polacek <polacek@redhat.com>
1806
1807 PR c++/66555
1808 PR c/54979
1809 * c-typeck.c (parser_build_binary_op): Call warn_tautological_cmp.
1810
1811 2015-07-20 Marek Polacek <polacek@redhat.com>
1812
1813 PR c++/55095
1814 * c-typeck.c (digest_init): Pass OPT_Wpedantic to pedwarn_init.
1815 (build_binary_op): Warn about left shift overflows.
1816
1817 2015-07-09 Andrew MacLeod <amacleod@redhat.com>
1818
1819 * c-array-notation.c: Adjust includes for flags.h changes.
1820 * c-objc-common.c: Likewise.
1821
1822 2015-07-07 Andrew MacLeod <amacleod@redhat.com>
1823
1824 * c-array-notation.c: Adjust includes.
1825 * c-aux-info.c: Likewise.
1826 * c-convert.c: Likewise.
1827 * c-decl.c: Likewise.
1828 * c-errors.c: Likewise.
1829 * c-lang.c: Likewise.
1830 * c-objc-common.c: Likewise.
1831 * c-parser.c: Likewise.
1832 * c-typeck.c: Likewise.
1833
1834 2015-06-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
1835
1836 PR fortran/66605
1837 * c-decl.c (finish_function): Call do_warn_unused_parameter.
1838
1839 2015-06-29 Marek Polacek <polacek@redhat.com>
1840
1841 PR c/66322
1842 * c-typeck.c (struct c_switch): Add BOOL_COND_P and OUTSIDE_RANGE_P.
1843 (c_start_case): Set BOOL_COND_P and OUTSIDE_RANGE_P. Don't warn
1844 about -Wswitch-bool here.
1845 (do_case): Update c_add_case_label call.
1846 (c_finish_case): Update c_do_switch_warnings call.
1847
1848 2015-06-27 Marek Polacek <polacek@redhat.com>
1849
1850 * c-typeck.c: Use VECTOR_TYPE_P throughout.
1851
1852 2015-06-26 Marek Polacek <polacek@redhat.com>
1853
1854 * c-array-notation.c (fix_builtin_array_notation_fn): Use
1855 INDIRECT_REF_P.
1856 * c-typeck.c (array_to_pointer_conversion): Likewise.
1857 (build_unary_op): Likewise.
1858 (c_finish_return): Likewise.
1859
1860 2015-06-25 Andrew MacLeod <amacleod@redhat.com>
1861
1862 * c-decl.c: Remove ipa-ref.h and plugin-api.h from include list.
1863 * c-parser.c: Likewise.
1864
1865 2015-06-25 Richard Sandiford <richard.sandiford@arm.com>
1866
1867 * c-decl.c (detect_field_duplicates_hash): Use nofree_ptr_hash
1868 instead of pointer_hash.
1869 (detect_field_duplicates): Likewise.
1870
1871 2015-06-25 Marek Polacek <polacek@redhat.com>
1872
1873 * c-array-notation.c: Use VAR_P throughout.
1874 * c-decl.c: Likewise.
1875 * c-objc-common.c: Likewise.
1876 * c-parser.c: Likewise.
1877 * c-typeck.c: Likewise.
1878
1879 2015-06-25 Marek Polacek <polacek@redhat.com>
1880
1881 * c-decl.c: Use is_global_var throughout.
1882 * c-parser.c: Likewise.
1883 * c-typeck.c: Likewise.
1884
1885 2015-06-17 Andrew MacLeod <amacleod@redhat.com>
1886
1887 * c-array-notation.c: Do not include input.h, line-map.h or is-a.h.
1888 * c-aux-info.c: Likewise.
1889 * c-convert.c: Likewise.
1890 * c-decl.c: Likewise.
1891 * c-errors.c: Likewise.
1892 * c-lang.c: Likewise.
1893 * c-objc-common.c: Likewise.
1894 * c-parser.c: Likewise.
1895 * c-typeck.c: Likewise.
1896
1897 2015-06-11 Jan Hubicka <hubicka@ucw.cz>
1898
1899 PR middle-end/66325
1900 * c-decl.c (start_enum): Set TYPE_PACKED consistently among type
1901 variants.
1902
1903 2015-06-11 Pierre-Marie de Rodat <derodat@adacore.com>
1904
1905 * c-decl.c (pop_scope): Register the main translation unit
1906 through the new debug hook.
1907
1908 2015-06-08 Andrew MacLeod <amacleod@redhat.com>
1909
1910 * c-array-notation.c : Adjust include files.
1911 * c-aux-info.c : Likewise.
1912 * c-convert.c : Likewise.
1913 * c-decl.c : Likewise.
1914 * c-errors.c : Likewise.
1915 * c-lang.c : Likewise.
1916 * c-lang.h : Likewise.
1917 * c-objc-common.c : Likewise.
1918 * c-parser.c : Likewise.
1919 * c-typeck.c : Likewise.
1920
1921 2015-06-05 Aldy Hernandez <aldyh@redhat.com>
1922
1923 * c-decl.c (finish_struct): Save C_TYPE_INCOMPLETE_VARS and
1924 immediately clobber it.
1925 (c_write_global_declarations_1): Remove call to
1926 check_global_declaration_1.
1927 (c_write_global_declarations_2): Remove.
1928 (c_write_final_cleanups): Rename from c_write_global_declarations.
1929 Remove call to finalize_compilation_unit.
1930 Remove calls to debugging hooks.
1931 * c-objc-common.c: Adjust comment for c_warn_unused_global_decl.
1932 * c-objc-common.h: Remove LANG_HOOKS_WRITE_GLOBALS.
1933 * c-tree.h: Remove c_write_global_declarations.
1934
1935 2015-06-04 Andrew MacLeod <amacleod@redhat.com>
1936
1937 * c-array-notation.c: Adjust includes for restructured coretypes.h.
1938 * c-aux-info.c: Likewise.
1939 * c-convert.c: Likewise.
1940 * c-decl.c: Likewise.
1941 * c-errors.c: Likewise.
1942 * c-lang.c: Likewise.
1943 * c-objc-common.c: Likewise.
1944 * c-parser.c: Likewise.
1945 * c-typeck.c: Likewise.
1946
1947 2015-06-04 Marek Polacek <polacek@redhat.com>
1948
1949 PR c/66341
1950 * c-typeck.c (build_c_cast): Wrap VALUE into NON_LVALUE_EXPR if
1951 it is a lvalue.
1952
1953 2015-06-03 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
1954
1955 * c-decl.c (warn_cxx_compat_finish_struct): New parameters code, record_loc.
1956 Warn for empty struct.
1957 (finish_struct): Pass TREE_CODE(t) and loc to warn_cxx_compat_finish_struct.
1958
1959 2015-06-02 Andres Tiraboschi <andres.tiraboschi@tallertechnologies.com>
1960
1961 * c-decl.c (start_function): Call plugin before parsing.
1962 (finish_function): Call plugin after parsing.
1963
1964 2015-06-02 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
1965
1966 PR c/49551
1967 * c-decl.c (merge_decls): Merge DECL_COMMON.
1968
1969 2015-05-22 Jim Wilson <jim.wilson@linaro.org>
1970
1971 * Make-lang.in (check_gcc_pallelize): Define.
1972
1973 2015-05-22 Marek Polacek <polacek@redhat.com>
1974
1975 PR c/47043
1976 * c-parser.c (c_parser_enum_specifier): Parse and apply enumerator
1977 attributes.
1978
1979 2015-05-21 Marek Polacek <polacek@redhat.com>
1980
1981 * c-typeck.c (inform_declaration): Use DECL_IS_BUILTIN instead of
1982 DECL_BUILT_IN.
1983
1984 2015-05-20 Marek Polacek <polacek@redhat.com>
1985
1986 * c-decl.c: Use VAR_OR_FUNCTION_DECL_P throughout.
1987 * c-typeck.c: Likewise.
1988
1989 2015-05-19 Marek Polacek <polacek@redhat.com>
1990
1991 * c-typeck.c (start_init): Use AGGREGATE_TYPE_P.
1992
1993 2015-05-19 Jakub Jelinek <jakub@redhat.com>
1994
1995 PR middle-end/66199
1996 * c-parser.c (c_parser_omp_for_loop): Don't add
1997 OMP_CLAUSE_SHARED to OMP_PARALLEL_CLAUSES when moving
1998 OMP_CLAUSE_LASTPRIVATE clause to OMP_FOR_CLAUSES.
1999 (c_parser_omp_teams): Set OMP_TEAMS_COMBINED for combined
2000 constructs.
2001
2002 2015-05-19 Mikhail Maltsev <maltsevm@gmail.com>
2003
2004 * c-typeck.c (build_array_ref): Use std::swap instead of explicit
2005 swaps.
2006
2007 2015-05-16 Manuel López-Ibáñez <manu@gcc.gnu.org>
2008
2009 PR fortran/44054
2010 * c-objc-common.c (c_tree_printer): Replace locus pointer with
2011 accessor function.
2012
2013 2015-05-14 Marek Polacek <polacek@redhat.com>
2014
2015 PR c/66066
2016 PR c/66127
2017 * c-typeck.c (digest_init): Call pedwarn_init with OPT_Wpedantic
2018 rather than with 0.
2019
2020 2015-05-12 David Malcolm <dmalcolm@redhat.com>
2021
2022 * c-parser.c (c_parser_if_body): Add param "if_loc", use it
2023 to add a call to warn_for_misleading_indentation.
2024 (c_parser_else_body): Likewise, adding param "else_loc".
2025 (c_parser_if_statement): Check for misleading indentation.
2026 (c_parser_while_statement): Likewise.
2027 (c_parser_for_statement): Likewise.
2028
2029 2015-05-08 Marek Polacek <polacek@redhat.com>
2030
2031 PR c/64918
2032 * c-typeck.c (add_pending_init): Use OPT_Woverride_init_side_effects.
2033 (output_init_element): Likewise.
2034
2035 2015-05-07 Marek Polacek <polacek@redhat.com>
2036
2037 PR c/65179
2038 * c-typeck.c (build_binary_op): Warn when left shifting a negative
2039 value.
2040
2041 2015-04-30 Marek Polacek <polacek@redhat.com>
2042
2043 * c-typeck.c (set_init_label): Call error_at instead of error and
2044 pass LOC to it.
2045
2046 * c-typeck.c (c_incomplete_type_error): Refactor to use %qT. Print
2047 the type of a decl.
2048
2049 * c-typeck.c (c_build_va_arg): Clarify the error message.
2050
2051 2015-04-29 Thomas Schwinge <thomas@codesourcery.com>
2052
2053 * c-parser.c (c_parser_oacc_enter_exit_data): Use
2054 OMP_STANDALONE_CLAUSES.
2055
2056 2015-04-28 Marek Polacek <polacek@redhat.com>
2057
2058 * c-parser.c (c_parser_binary_expression): Remove duplicate line.
2059
2060 2015-04-28 Marek Polacek <polacek@redhat.com>
2061
2062 PR c/65901
2063 * c-typeck.c (c_build_va_arg): Require TYPE be a complete type.
2064
2065 2015-04-25 Marek Polacek <polacek@redhat.com>
2066
2067 PR c/52085
2068 * c-decl.c (finish_enum): Copy over TYPE_ALIGN. Also check for "mode"
2069 attribute.
2070
2071 2015-04-23 Marek Polacek <polacek@redhat.com>
2072
2073 PR c/65345
2074 * c-decl.c (set_labels_context_r): New function.
2075 (store_parm_decls): Call it via walk_tree_without_duplicates.
2076 * c-typeck.c (convert_lvalue_to_rvalue): Use create_tmp_var_raw
2077 instead of create_tmp_var. Build TARGET_EXPR instead of
2078 COMPOUND_EXPR.
2079 (build_atomic_assign): Use create_tmp_var_raw instead of
2080 create_tmp_var. Build TARGET_EXPRs instead of MODIFY_EXPR.
2081
2082 2015-04-20 Ilya Verbin <ilya.verbin@intel.com>
2083
2084 * c-parser.c (c_parser_oacc_enter_exit_data): Remove excess semicolon.
2085 (c_parser_omp_target_update): Add missed %> to error_at ().
2086
2087 2015-04-10 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
2088
2089 PR target/55143
2090 * c-decl.c (c_default_pointer_mode): Remove definition.
2091 * c-tree.h (c_default_pointer_mode): Remove declaration.
2092
2093 2015-03-27 Tobias Burnus <burnus@net-b.de>
2094
2095 PR c/65586
2096 * c-parser.c (c_parser_skip_to_pragma_eol): Optionally, don't
2097 error out.
2098 (c_parser_omp_for, c_parser_omp_parallel, c_parser_omp_distribute,
2099 c_parser_omp_teams, c_parser_omp_target, c_parser_omp_declare):
2100 Update calls to not error for skipped omp pragmas with -fopenmp-simd.
2101
2102 2015-03-19 Jakub Jelinek <jakub@redhat.com>
2103
2104 * c-decl.c (c_decl_attributes): Also add "omp declare target"
2105 attribute for DECL_EXTERNAL VAR_DECLs.
2106
2107 2015-03-11 Jakub Jelinek <jakub@redhat.com>
2108
2109 * c-parser.c (c_parse_init): Don't call xstrdup on get_identifier
2110 argument.
2111
2112 2015-03-10 Jakub Jelinek <jakub@redhat.com>
2113
2114 PR c/65120
2115 * c-typeck.c (parser_build_binary_op): Check for tcc_comparison
2116 before preparing arguments to warn_logical_not_parentheses.
2117
2118 2015-03-09 Jakub Jelinek <jakub@redhat.com>
2119
2120 PR c/65120
2121 * c-typeck.c (parser_build_binary_op): Don't warn for
2122 !!x == y or !b == y where b is _Bool.
2123
2124 2015-03-09 Marek Polacek <polacek@redhat.com>
2125
2126 * c-convert.c (convert): Make use of do_ubsan_in_current_function.
2127 * c-decl.c (grokdeclarator): Likewise.
2128 * c-typeck.c (build_binary_op): Likewise.
2129
2130 2015-02-27 Marek Polacek <polacek@redhat.com>
2131
2132 PR c/65228
2133 * c-decl.c (start_decl): Return NULL_TREE if decl is an error node.
2134
2135 2015-02-14 Marek Polacek <polacek@redhat.com>
2136
2137 PR c/64768
2138 * c-decl.c (grokdeclarator): Set the range of a flexible array member
2139 declared through a typedef name.
2140
2141 2015-02-13 Marek Polacek <polacek@redhat.com>
2142
2143 PR c/65050
2144 * c-decl.c (grokdeclarator): Print also the type when giving
2145 the error message about array's incomplete element type.
2146
2147 2015-02-11 Jakub Jelinek <jakub@redhat.com>
2148
2149 PR c/64824
2150 * c-parser.c (c_parser_binary_expression): Fix OpenMP stack[sp].prec
2151 check in the POP macro.
2152
2153 2015-02-09 Marek Polacek <polacek@redhat.com>
2154
2155 PR c/64856
2156 * c-typeck.c (process_init_element): Don't always wrap
2157 COMPOUND_LITERAL_EXPR in a SAVE_EXPR in C99 mode when
2158 initializing a range of elements.
2159
2160 2015-02-04 Jakub Jelinek <jakub@redhat.com>
2161
2162 PR c/64824
2163 PR c/64868
2164 * c-parser.c (c_parser_omp_atomic): Handle RDIV_EXPR.
2165
2166 2015-02-02 Bruno Loff <bruno.loff@gmail.com>
2167
2168 * c-parser.c (c_parser_declspecs): Call invoke_plugin_callbacks after
2169 processing enum declaration.
2170
2171 2015-01-29 Marek Polacek <polacek@redhat.com>
2172
2173 PR c/64709
2174 * c-typeck.c (pop_init_level): If constructor_elements has
2175 exactly one element with integer_zerop value, set constructor_zeroinit
2176 to 1. Remove braces around warning_init call.
2177
2178 2015-01-27 Jakub Jelinek <jakub@redhat.com>
2179
2180 PR c/64766
2181 * c-typeck.c (store_init_value): Don't overwrite DECL_INITIAL
2182 of FUNCTION_DECLs with error_mark_node.
2183
2184 2015-01-26 Jakub Jelinek <jakub@redhat.com>
2185
2186 PR c/64778
2187 * c-typeck.c (convert_arguments): Return -1 if there are
2188 error_args, even if we've diagnosed too many arguments.
2189
2190 2015-01-21 Richard Biener <rguenther@suse.de>
2191
2192 PR middle-end/64313
2193 * c-decl.c (merge_decls): Call set_builtin_decl_declared_p
2194 for builtins the user declared correctly.
2195
2196 2015-01-15 Thomas Schwinge <thomas@codesourcery.com>
2197 Bernd Schmidt <bernds@codesourcery.com>
2198 Cesar Philippidis <cesar@codesourcery.com>
2199 James Norris <jnorris@codesourcery.com>
2200 Jakub Jelinek <jakub@redhat.com>
2201 Ilmir Usmanov <i.usmanov@samsung.com>
2202
2203 * c-parser.c: Include "gomp-constants.h".
2204 (c_parser_omp_clause_map): Use enum gomp_map_kind instead of enum
2205 omp_clause_map_kind. Use GOMP_MAP_* instead of OMP_CLAUSE_MAP_*.
2206 Use OMP_CLAUSE_SET_MAP_KIND.
2207 (c_parser_pragma): Handle PRAGMA_OACC_ENTER_DATA,
2208 PRAGMA_OACC_EXIT_DATA, PRAGMA_OACC_UPDATE.
2209 (c_parser_omp_construct): Handle PRAGMA_OACC_CACHE,
2210 PRAGMA_OACC_DATA, PRAGMA_OACC_KERNELS, PRAGMA_OACC_LOOP,
2211 PRAGMA_OACC_PARALLEL, PRAGMA_OACC_WAIT.
2212 (c_parser_omp_clause_name): Handle "auto", "async", "copy",
2213 "copyout", "create", "delete", "deviceptr", "gang", "host",
2214 "num_gangs", "num_workers", "present", "present_or_copy", "pcopy",
2215 "present_or_copyin", "pcopyin", "present_or_copyout", "pcopyout",
2216 "present_or_create", "pcreate", "seq", "self", "vector",
2217 "vector_length", "wait", "worker".
2218 (OACC_DATA_CLAUSE_MASK, OACC_KERNELS_CLAUSE_MASK)
2219 (OACC_ENTER_DATA_CLAUSE_MASK, OACC_EXIT_DATA_CLAUSE_MASK)
2220 (OACC_LOOP_CLAUSE_MASK, OACC_PARALLEL_CLAUSE_MASK)
2221 (OACC_UPDATE_CLAUSE_MASK, OACC_WAIT_CLAUSE_MASK): New macros.
2222 (c_parser_omp_variable_list): Handle OMP_CLAUSE__CACHE_.
2223 (c_parser_oacc_wait_list, c_parser_oacc_data_clause)
2224 (c_parser_oacc_data_clause_deviceptr)
2225 (c_parser_omp_clause_num_gangs, c_parser_omp_clause_num_workers)
2226 (c_parser_oacc_clause_async, c_parser_oacc_clause_wait)
2227 (c_parser_omp_clause_vector_length, c_parser_oacc_all_clauses)
2228 (c_parser_oacc_cache, c_parser_oacc_data, c_parser_oacc_kernels)
2229 (c_parser_oacc_enter_exit_data, c_parser_oacc_loop)
2230 (c_parser_oacc_parallel, c_parser_oacc_update)
2231 (c_parser_oacc_wait): New functions.
2232 * c-tree.h (c_finish_oacc_parallel, c_finish_oacc_kernels)
2233 (c_finish_oacc_data): New prototypes.
2234 * c-typeck.c: Include "gomp-constants.h".
2235 (handle_omp_array_sections): Handle GOMP_MAP_FORCE_DEVICEPTR. Use
2236 GOMP_MAP_* instead of OMP_CLAUSE_MAP_*. Use
2237 OMP_CLAUSE_SET_MAP_KIND.
2238 (c_finish_oacc_parallel, c_finish_oacc_kernels)
2239 (c_finish_oacc_data): New functions.
2240 (c_finish_omp_clauses): Handle OMP_CLAUSE__CACHE_,
2241 OMP_CLAUSE_NUM_GANGS, OMP_CLAUSE_NUM_WORKERS,
2242 OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_ASYNC, OMP_CLAUSE_WAIT,
2243 OMP_CLAUSE_AUTO, OMP_CLAUSE_SEQ, OMP_CLAUSE_GANG,
2244 OMP_CLAUSE_WORKER, OMP_CLAUSE_VECTOR, and OMP_CLAUSE_MAP's
2245 GOMP_MAP_FORCE_DEVICEPTR.
2246
2247 2015-01-09 Michael Collison <michael.collison@linaro.org>
2248
2249 * c-array-notation.c: Include hash-set.h, machmode.h,
2250 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
2251 fold-const.h, wide-int.h, and inchash.h due to flattening of tree.h.
2252 * c-aux-info.c: Ditto.
2253 * c-convert.c: Ditto.
2254 * c-decl.c: Ditto.
2255 * c-errors.c: Ditto.
2256 * c-lang.c: Dittoxs.
2257 * c-objc-common.c: Ditto.
2258 * c-parser.c: Ditto.
2259 * c-typeck.c: Include hash-set.h, machmode.h,
2260 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
2261 fold-const.h, wide-int.h, inchash.h, real.h and
2262 fixed-value.h due to flattening of tree.h.
2263
2264 2015-01-07 Marek Polacek <polacek@redhat.com>
2265
2266 PR c/64417
2267 * c-typeck.c (process_init_element): Disallow initialization of
2268 a flexible array member with a string constant if the structure
2269 is in an array.
2270
2271 2015-01-05 Jakub Jelinek <jakub@redhat.com>
2272
2273 PR sanitizer/64344
2274 * c-typeck.c (convert_for_assignment, c_finish_return): For
2275 -fsanitize=float-cast-overflow casts from REAL_TYPE to integer/enum
2276 types also set in_late_binary_op around convert call.
2277 * c-convert.c (convert): For -fsanitize=float-cast-overflow REAL_TYPE
2278 to integral type casts, if not in_late_binary_op, pass c_fully_fold
2279 result on expr as last argument to ubsan_instrument_float_cast,
2280 if in_late_binary_op, don't use c_save_expr but save_expr.
2281
2282 Update copyright years.
2283
2284 2015-01-05 Marek Polacek <polacek@redhat.com>
2285
2286 PR c/64423
2287 * c-typeck.c (build_array_ref): Pass loc down to
2288 warn_array_subscript_with_type_char.
2289
2290 2014-12-20 Martin Uecker <uecker@eecs.berkeley.edu>
2291
2292 * c-typeck.c: New behavious for pointers to arrays with qualifiers
2293 (common-pointer-type): For pointers to arrays take qualifiers from
2294 element type.
2295 (build_conditional_expr): Add warnings for lost qualifiers.
2296 (comp-target-types): Allow pointers to arrays with different qualifiers.
2297 (convert-for-assignment): Adapt warnings for discarded qualifiers. Add
2298 WARNING_FOR_QUALIFIERS macro and rename WARN_FOR_QUALIFIERS
2299 to PEDWARN_FOR_QUALIFIERS.
2300
2301 2014-12-17 Jakub Jelinek <jakub@redhat.com>
2302
2303 PR sanitizer/64289
2304 * c-convert.c: Include ubsan.h.
2305 (convert): For real -> integral casts and
2306 -fsanitize=float-cast-overflow don't call convert_to_integer, but
2307 instead instrument the float cast directly.
2308
2309 2014-11-29 Jakub Jelinek <jakub@redhat.com>
2310
2311 * c-typeck.c (convert_lvalue_to_rvalue, build_atomic_assign,
2312 c_finish_stmt_expr): Remove NULL last argument from
2313 create_tmp_var_raw and create_tmp_var calls.
2314 * c-array-notation.c (fix_builtin_array_notation_fn,
2315 build_array_notation_expr, fix_conditional_array_notations_1,
2316 fix_array_notation_expr, fix_array_notation_call_expr): Likewise.
2317
2318 2014-11-28 Marek Polacek <polacek@redhat.com>
2319
2320 PR c/63862
2321 * c-typeck.c (build_binary_op) <RSHIFT_EXPR, LSHIFT_EXPR>: Don't
2322 convert the right operand to integer type.
2323
2324 2014-11-25 Marek Polacek <polacek@redhat.com>
2325
2326 PR c/63877
2327 * c-decl.c (start_function): Disable -Wmissing-declarations warning
2328 for inline functions.
2329
2330 2014-11-21 Jakub Jelinek <jakub@redhat.com>
2331
2332 PR target/63764
2333 * c-typeck.c (build_array_ref): Adjust
2334 convert_vector_to_pointer_for_subscript caller. If it returns true,
2335 call non_lvalue_loc on the result.
2336
2337 2014-11-11 Richard Biener <rguenther@suse.de>
2338
2339 * c-decl.c (c_init_decl_processing): Do not set pedantic_lvalues
2340 to true.
2341
2342 2014-11-10 Andi Kleen <ak@linux.intel.com>
2343
2344 PR c/60804
2345 * c-parser.c (c_parser_statement_after_labels): Call
2346 check_no_cilk.
2347 (c_parser_if_statement): Dito.
2348 (c_parser_switch_statement): Dito.
2349 (c_parser_while_statement): Dito.
2350 (c_parser_do_statement): Dito.
2351 (c_parser_for_statement): Dito.
2352 * c-typeck.c (c_finish_loop): Dito.
2353
2354 2014-11-10 Paolo Carlini <paolo.carlini@oracle.com>
2355
2356 * c-typeck.c (build_binary_op): Use OPT_Wshift_count_negative and
2357 OPT_Wshift_count_overflow in the warnings.
2358
2359 2014-10-30 Marek Polacek <polacek@redhat.com>
2360
2361 * c-objc-common.c (c_tree_printer) <case 'T'>: For a typedef name,
2362 print the stripped version as well, if they're not the same.
2363
2364 2014-10-29 Richard Sandiford <richard.sandiford@arm.com>
2365
2366 * c-decl.c, c-tree.h, c-typeck.c: Remove redundant enum from
2367 machine_mode.
2368
2369 2014-10-28 Andrew MacLeod <amacleod@redhat.com>
2370
2371 * c-decl.c: Adjust include files.
2372 * c-parser.c: Ditto.
2373
2374 2014-10-27 Phil Muldoon <pmuldoon@redhat.com>
2375 Tom Tromey <tromey@redhat.com>
2376
2377 * c-tree.h (enum c_oracle_request): New.
2378 (c_binding_oracle_function): New typedef.
2379 (c_binding_oracle, c_pushtag, c_bind): Declare.
2380 * c-decl.c (c_binding_oracle): New global.
2381 (I_SYMBOL_CHECKED): New macro.
2382 (i_symbol_binding): New function.
2383 (I_SYMBOL_BINDING, I_SYMBOL_DECL): Redefine.
2384 (I_TAG_CHECKED): New macro.
2385 (i_tag_binding): New function.
2386 (I_TAG_BINDING, I_TAG_DECL): Redefine.
2387 (I_LABEL_CHECKED): New macro.
2388 (i_label_binding): New function.
2389 (I_LABEL_BINDING, I_LABEL_DECL): Redefine.
2390 (c_print_identifier): Save and restore c_binding_oracle.
2391 (c_pushtag, c_bind): New functions.
2392
2393 2014-10-27 Andrew MacLeod <amacleod@redhat.com>
2394
2395 * c-typeck.c: Adjust include files.
2396
2397 2014-10-26 Manuel López-Ibáñez <manu@gcc.gnu.org>
2398
2399 PR c++/53061
2400 * c-objc-common.c (c_objc_common_init): Do not do diagnostics
2401 initialization here...
2402 (c_initialize_diagnostics): ... but here. Set defaults after
2403 building pretty-printer.
2404
2405 2014-10-23 Marek Polacek <polacek@redhat.com>
2406
2407 PR c/63626
2408 * c-decl.c (pop_scope): Don't print warning in external_scope.
2409
2410 2014-10-19 Marek Polacek <polacek@redhat.com>
2411
2412 PR c/63567
2413 * c-typeck.c (output_init_element): Allow initializing objects with
2414 static storage duration with compound literals even in C99 and add
2415 pedwarn for it.
2416
2417 2014-10-17 Marek Polacek <polacek@redhat.com>
2418
2419 PR c/63567
2420 * c-typeck.c (digest_init): Allow initializing objects with static
2421 storage duration with compound literals even in C99 and add pedwarn
2422 for it.
2423
2424 2014-10-17 Marek Polacek <polacek@redhat.com>
2425
2426 PR c/63543
2427 * c-tree.h (C_TYPE_ERROR_REPORTED): Define.
2428 * c-typeck.c (build_indirect_ref): Don't print the "dereferencing..."
2429 error multiple times. Print the type.
2430
2431 2014-10-17 Marek Polacek <polacek@redhat.com>
2432
2433 PR c/63549
2434 * c-typeck.c (build_array_ref): Bail if the index in an incomplete
2435 type.
2436
2437 2014-10-17 Marek Polacek <polacek@redhat.com>
2438
2439 * c-decl.c (grokdeclarator): Use OPT_Wimplicit_int unconditionally.
2440 (start_function): Use OPT_Wimplicit_int instead of 0.
2441 (store_parm_decls_oldstyle): Likewise.
2442
2443 2014-10-17 Alan Modra <amodra@gmail.com>
2444
2445 PR middle-end/61848
2446 * c-decl.c (merge_decls): Don't merge section name or tls model
2447 to newdecl symtab node, instead merge to olddecl. Override
2448 existing olddecl section name. Set tls_model for all thread-local
2449 vars, not just OMP thread-private ones. Remove incorrect comment.
2450
2451 2014-10-16 Andrew MacLeod <amacleod@redhat.com>
2452
2453 * c-decl.c: Adjust include files.
2454
2455 2014-10-14 DJ Delorie <dj@redhat.com>
2456
2457 * c-parser.c (c_parse_init): Add RID entries for each __intN.
2458 (c_token_starts_typename): Check all __intN, not just __int128.
2459 (c_token_starts_declspecs): Likewise.
2460 (c_parser_declspecs): Likewise.
2461 (c_parser_attribute_any_word): Likewise.
2462 (c_parser_objc_selector): Likewise.
2463 * c-tree.h (c_typespec_keyword): cts_int128 -> cts_int_n.
2464 (struct c_declspecs): Add int_n_idx field to record *which* __intN
2465 is specified.
2466 * c-decl.c (declspecs_add_type): Check for all __intN, not just
2467 __int128.
2468 (finish_declspecs): Likewise.
2469
2470 2014-10-13 Anthony Brandon <anthony.brandon@gmail.com>
2471
2472 * c-parser.c (c_parser_all_labels): New function to replace
2473 the duplicate code.
2474 (c_parser_statement): Call the new function.
2475
2476 2014-10-09 Marek Polacek <polacek@redhat.com>
2477
2478 PR c/63480
2479 * c-typeck.c (pop_init_level): Don't warn about initializing
2480 with { }.
2481
2482 2014-10-07 Marek Polacek <polacek@redhat.com>
2483
2484 PR c/59717
2485 * c-decl.c (header_for_builtin_fn): New function.
2486 (implicitly_declare): Suggest which header to include.
2487
2488 2014-10-07 Marek Polacek <polacek@redhat.com>
2489
2490 * c-convert.c (convert): Use error_operand_p.
2491 * c-typeck.c (require_complete_type): Likewise.
2492 (really_atomic_lvalue): Likewise.
2493 (digest_init): Likewise.
2494 (handle_omp_array_sections_1): Likewise.
2495
2496 2014-10-03 Marek Polacek <polacek@redhat.com>
2497
2498 PR c/63453
2499 * c-decl.c (pop_scope): Don't warn about "inline function declared
2500 but never defined" for functions marked with gnu_inline attribute.
2501
2502 2014-09-25 Jakub Jelinek <jakub@redhat.com>
2503
2504 PR c++/63249
2505 * c-parser.c (c_parser_omp_variable_list): Call mark_exp_read
2506 on low_bound and length.
2507
2508 2014-09-24 Marek Polacek <polacek@redhat.com>
2509
2510 PR c/61405
2511 PR c/53874
2512 * c-parser.c: Don't define CPP_KEYWORD.
2513 (c_parser_switch_statement): Pass original type to c_finish_case.
2514 * c-tree.h (c_finish_case): Update declaration.
2515 * c-typeck.c (c_finish_case): Add TYPE parameter. Pass it
2516 conditionally to c_do_switch_warnings.
2517
2518 2014-09-03 Marek Polacek <polacek@redhat.com>
2519
2520 PR c/62024
2521 * c-parser.c (c_parser_static_assert_declaration_no_semi): Strip no-op
2522 conversions.
2523
2524 2014-09-02 Jakub Jelinek <jakub@redhat.com>
2525 Balaji V. Iyer <balaji.v.iyer@intel.com>
2526 Igor Zamyatin <igor.zamyatin@intel.com>
2527
2528 * c-parser.c (c_parser_cilk_for): New function.
2529 (c_parser_cilk_grainsize): Likewise.
2530 (c_get_temp_regvar): Likewise.
2531 (c_parser_statement_after_labels): Added RID_CILK_FOR case.
2532 (c_parser_pragma): Added PRAGMA_CILK_GRAINSIZE case.
2533 (c_parser_omp_for_loop): Added CILK_FOR and CILK_SIMD checks.
2534 * c-typeck.c (c_finish_omp_clauses): Added OMP_CLAUSE__CILK_FOR_COUNT_
2535 case.
2536
2537 2014-08-27 Chen Gang <gang.chen.5i5j@gmail.com>
2538
2539 * c-aux-info.c (gen_type): Resize 'buff' from 10 to 23 bytes,
2540 with using HOST_WIDE_INT without truncation to 'int'
2541
2542 2014-08-22 Marek Polacek <polacek@redhat.com>
2543
2544 PR c++/62199
2545 * c-typeck.c (parser_build_binary_op): Adjust call to
2546 warn_logical_not_parentheses.
2547
2548 2014-08-22 Igor Zamyatin <igor.zamyatin@intel.com>
2549
2550 PR other/62008
2551 * c-parser.c (c_parser_array_notation): Check for correct
2552 type of an array added.
2553
2554 2014-08-19 Marek Polacek <polacek@redhat.com>
2555
2556 PR c++/62153
2557 * c-typeck.c (build_binary_op): If either operand of a comparison
2558 is a boolean expression, call maybe_warn_bool_compare.
2559
2560 2014-08-19 Patrick Palka <ppalka@gcc.gnu.org>
2561
2562 PR c/45584
2563 * c-typeck.c (build_c_cast): Do a conversion even when the
2564 TYPE_MAIN_VARIANTs are the same.
2565
2566 2014-08-19 Marek Polacek <polacek@redhat.com>
2567
2568 * c-decl.c (diagnose_mismatched_decls): Unconditionally call
2569 pedwarn_c99 instead of pedwarn.
2570 (grokfield): Likewise.
2571 (warn_defaults_to): New function.
2572 (grokdeclarator): Call warn_defaults_to instead of pedwarn_c99.
2573 Unconditionally call pedwarn_c99 instead of pedwarn.
2574 (start_function): Call warn_defaults_to instead of pedwarn_c99.
2575 (declspecs_add_scspec): Call pedwarn_c99 instead of pedwarn, don't
2576 check flag_isoc11 before.
2577 * c-errors.c (pedwarn_c99): Change the return type to bool.
2578 Handle -Wc99-c11-compat.
2579 * c-parser.c (disable_extension_diagnostics): Handle
2580 warn_c99_c11_compat.
2581 (restore_extension_diagnostics): Likewise.
2582 (c_parser_static_assert_declaration_no_semi): Call pedwarn_c99
2583 instead of pedwarn, don't check flag_isoc11 before.
2584 (c_parser_declspecs): Likewise.
2585 (c_parser_alignas_specifier): Likewise.
2586 (c_parser_alignof_expression): Likewise.
2587 (c_parser_generic_selection): Likewise.
2588 * c-tree.h (pedwarn_c99): Update declaration.
2589 * c-typeck.c (c_finish_return): Call pedwarn or warning_at instead
2590 of pedwarn_c99.
2591
2592 2014-08-19 Marek Polacek <polacek@redhat.com>
2593
2594 * c-decl.c (warn_variable_length_array): Pass OPT_Wvla unconditionally
2595 to pedwarn_c90.
2596 * c-errors.c: Include "opts.h".
2597 (pedwarn_c90): Rewrite to handle -Wno-c90-c99-compat better.
2598 * c-parser.c (disable_extension_diagnostics): Handle negative value
2599 of warn_c90_c99_compat, too.
2600 (restore_extension_diagnostics): Likewise.
2601 (c_parser_compound_statement_nostart): Pass
2602 OPT_Wdeclaration_after_statement unconditionally to pedwarn_c90.
2603
2604 2014-08-12 Marek Polacek <polacek@redhat.com>
2605
2606 * c-parser.c (c_parser_postfix_expression) <case RID_FUNCTION_NAME>:
2607 Add pedwarn.
2608 (c_parser_postfix_expression) <case RID_PRETTY_FUNCTION_NAME>:
2609 Likewise.
2610 (c_parser_postfix_expression) <case RID_C99_FUNCTION_NAME>: Likewise.
2611
2612 2014-08-10 Marek Polacek <polacek@redhat.com>
2613
2614 PR c/51849
2615 * c-decl.c (build_array_declarator): Remove check for !flag_isoc99.
2616 Call pedwarn_c90 instead of pedwarn.
2617 (check_bitfield_type_and_width): Likewise.
2618 (declspecs_add_qual): Likewise.
2619 (declspecs_add_type): Likewise.
2620 (warn_variable_length_array): Unify function for -pedantic and -Wvla.
2621 Adjust to only call pedwarn_c90.
2622 (grokdeclarator): Remove pedantic && !flag_isoc99 check. Call
2623 pedwarn_c90 instead of pedwarn.
2624 * c-errors.c (pedwarn_c90): Handle -Wc90-c99-compat.
2625 * c-parser.c (disable_extension_diagnostics): Handle
2626 warn_c90_c99_compat.
2627 (restore_extension_diagnostics): Likewise.
2628 (c_parser_enum_specifier): Remove check for !flag_isoc99. Call
2629 pedwarn_c90 instead of pedwarn.
2630 (c_parser_initelt): Likewise.
2631 (c_parser_postfix_expression): Likewise.
2632 (c_parser_postfix_expression_after_paren_type): Likewise.
2633 (c_parser_compound_statement_nostart): Remove check for !flag_isoc99.
2634 * c-tree.h: Fix formatting.
2635 * c-typeck.c (build_array_ref): Remove check for !flag_isoc99. Call
2636 pedwarn_c90 instead of pedwarn.
2637
2638 2014-08-07 Trevor Saunders <tsaunders@mozilla.com>
2639
2640 * c-typeck.c: Remove include of pointer-set.h.
2641
2642 2014-08-07 Marek Polacek <polacek@redhat.com>
2643
2644 * c-typeck.c (pointer_diff): Remove P - (P + CST) optimization.
2645
2646 2014-08-02 Trevor Saunders <tsaunders@mozilla.com>
2647
2648 * c-typeck.c: Use hash_map instead of pointer_map.
2649
2650 2014-08-02 Trevor Saunders <tsaunders@mozilla.com>
2651
2652 * c-decl.c: Use hash_set instead of pointer_set.
2653
2654 2014-08-01 Igor Zamyatin <igor.zamyatin@intel.com>
2655
2656 PR middle-end/61455
2657 * c-array-notation.c (expand_array_notations): Handling
2658 of DECL_EXPR added.
2659
2660 2014-07-31 Marc Glisse <marc.glisse@inria.fr>
2661
2662 PR c++/60517
2663 * c-typeck.c (c_finish_return): Return 0 instead of the address of
2664 a local variable.
2665
2666 2014-07-30 Tom Tromey <tromey@redhat.com>
2667
2668 * c-typeck.c (struct constructor_stack) <designator_depth>: New
2669 field.
2670 (really_start_incremental_init, push_init_level): Initialize
2671 designator_depth.
2672 (pop_init_level): Set global designator_depth.
2673 (process_init_element): Check for designated_init attribute.
2674
2675 2014-07-20 Marek Polacek <polacek@redhat.com>
2676
2677 PR c/61852
2678 * c-decl.c (implicit_decl_warning): Add location_t parameter. Use it.
2679 (implicitly_declare): Pass location to implicit_decl_warning.
2680
2681 2014-07-14 Jakub Jelinek <jakub@redhat.com>
2682
2683 PR middle-end/61294
2684 * c-parser.c (c_parser_expr_list): Add new argument literal_zero_mask.
2685 If non-NULL, call c_parser_check_literal_zero.
2686 (c_parser_check_literal_zero): New function.
2687 (c_parser_postfix_expression_after_primary): Adjust
2688 c_parser_expr_list caller, handle -Wmemset-transposed-args.
2689
2690 2014-07-06 Marek Polacek <polacek@redhat.com>
2691
2692 PR c/6940
2693 * c-decl.c (grokdeclarator): Set C_ARRAY_PARAMETER.
2694 * c-tree.h (C_ARRAY_PARAMETER): Define.
2695 * c-typeck.c (c_expr_sizeof_expr): Warn when using sizeof on an array
2696 function parameter.
2697
2698 2014-07-02 Jan Hubicka <hubicka@ucw.cz>
2699 Chen Gang <gang.chen.5i5j@gmail.com>
2700
2701 * c-decl.c (duplicate_decls): CLear DECL_STRUCT_FUNCTION before
2702 releasing symbol.
2703
2704 2014-07-01 Marek Polacek <polacek@redhat.com>
2705
2706 * c-typeck.c (convert_for_assignment): Pass OPT_Wint_conversion
2707 instead of 0 to WARN_FOR_ASSIGNMENT.
2708
2709 2014-07-01 Marek Polacek <polacek@redhat.com>
2710
2711 PR c/58286
2712 * c-typeck.c (convert_for_assignment): Pass
2713 OPT_Wincompatible_pointer_types instead of 0 to WARN_FOR_ASSIGNMENT.
2714
2715 2014-06-30 Marek Polacek <polacek@redhat.com>
2716
2717 * c-decl.c (grokdeclarator): Don't instrument VLAs if the function
2718 has no_sanitize_undefined attribute.
2719
2720 2014-06-30 Igor Zamyatin <igor.zamyatin@intel.com>
2721
2722 PR middle-end/57541
2723 * c-array-notation.c (fix_builtin_array_notation_fn):
2724 Check for 0 arguments in builtin call. Check that bultin argument is
2725 correct.
2726 * c-parser.c (c_parser_array_notation): Check for incorrect initial
2727 index.
2728
2729 2014-06-27 Sebastian Huber <sebastian.huber@embedded-brains.de>
2730
2731 * c-parser.c (c_parser_declaration_or_fndef): Discard all type
2732 qualifiers in __auto_type for atomic types.
2733 (c_parser_typeof_specifier): Discard all type qualifiers in
2734 __typeof__ for atomic types.
2735
2736 2014-06-25 Marek Polacek <polacek@redhat.com>
2737
2738 PR c/61162
2739 * c-parser.c (c_parser_statement_after_labels): Pass the location of
2740 the return expression to c_finish_return.
2741
2742 2014-06-25 Jakub Jelinek <jakub@redhat.com>
2743
2744 * c-typeck.c (c_finish_omp_clauses): Make sure
2745 OMP_CLAUSE_LINEAR_STEP has correct type.
2746
2747 2014-06-24 Trevor Saunders <tsaunders@mozilla.com>
2748
2749 * c-decl.c: Adjust.
2750
2751 2014-06-24 Jakub Jelinek <jakub@redhat.com>
2752
2753 * c-parser.c (c_parser_omp_for_loop): For
2754 #pragma omp parallel for simd move lastprivate clause from parallel
2755 to for rather than simd.
2756
2757 2014-06-23 Marek Polacek <polacek@redhat.com>
2758
2759 * c-typeck.c (parser_build_binary_op): Don't call
2760 warn_logical_not_parentheses if the RHS is TRUTH_NOT_EXPR.
2761
2762 2014-06-15 Jan Hubicka <hubicka@ucw.cz>
2763
2764 * c-parser.c (c_parser_omp_threadprivate): Likewise.
2765 * c-decl.c (merge_decls): Likewise.
2766
2767 2014-06-09 Marek Polacek <polacek@redhat.com>
2768
2769 PR c/36446
2770 * c-typeck.c (error_init): Call inform instead of error_at.
2771 (pedwarn_init): Call inform instead of pedwarn.
2772 (warning_init): Call inform instead of warning_at.
2773
2774 2014-06-07 Jan Hubicka <hubicka@ucw.cz>
2775
2776 * c-decl.c (merge_decls): Use set_decl_section_name.
2777 (duplicate_decls): Remove node if it exists.
2778
2779 2014-06-05 S. Gilles <sgilles@terpmail.umd.edu>
2780
2781 PR c/53119
2782 * c-typeck.c (push_init_level, process_init_element,
2783 pop_init_level): Correct check for zero initialization, move
2784 missing brace warning to respect zero initialization.
2785
2786 2014-06-05 Marek Polacek <polacek@redhat.com>
2787
2788 PR c/56724
2789 * c-typeck.c (convert_for_assignment): Use expr_loc for ic_argpass.
2790
2791 2014-06-05 Marek Polacek <polacek@redhat.com>
2792
2793 PR c/49706
2794 * c-typeck.c (parser_build_binary_op): Warn when logical not is used
2795 on the left hand side operand of a comparison.
2796
2797 2014-06-05 Marek Polacek <polacek@redhat.com>
2798
2799 PR c/48062
2800 * c-decl.c (warn_if_shadowing): Call inform instead of warning_at.
2801 Print note only if the warning was printed.
2802
2803 2014-06-04 Igor Zamyatin <igor.zamyatin@intel.com>
2804
2805 PR c/58942
2806 * c-array-notation.c (fix_builtin_array_notation_fn): Handle the case
2807 with a pointer.
2808
2809 2014-06-03 Marek Polacek <polacek@redhat.com>
2810
2811 PR c/60439
2812 * c-parser.c (c_parser_switch_statement): Pass explicit_cast_p to
2813 c_start_case.
2814 * c-tree.h (c_start_case): Update.
2815 * c-typeck.c (c_start_case): Add new boolean parameter. Warn if
2816 switch condition has boolean value.
2817
2818 2014-06-02 Andrew MacLeod <amacleod@redhat.com>
2819
2820 * c-decl.c: Include builtins.h.
2821 * c-parser.c: Likewise.
2822
2823 2014-05-27 Marek Polacek <polacek@redhat.com>
2824
2825 PR c/56724
2826 * c-typeck.c (convert_arguments): Get location of a parameter. Change
2827 error and warning calls to error_at and warning_at. Pass location of
2828 a parameter to it. Call warning_at with OPT_Wtraditional_conversion.
2829 (convert_for_assignment): Add parameter to WARN_FOR_ASSIGNMENT and
2830 WARN_FOR_QUALIFIERS. Pass expr_loc to those.
2831
2832 2014-05-26 Igor Zamyatin <igor.zamyatin@intel.com>
2833
2834 PR c/61191
2835 * c-array-notation.c (fix_builtin_array_notation_fn): Check invalid
2836 function parameters.
2837
2838 2014-05-23 Jan Hubicka <hubicka@ucw.cz>
2839
2840 * c-decl.c (merge_decls): Preserve symtab node pointers.
2841 (duplicate_decls): Free new decl.
2842
2843 2014-05-23 Thomas Schwinge <thomas@codesourcery.com>
2844
2845 * c-typeck.c (c_finish_omp_clauses): Remove duplicated variable
2846 initialization.
2847
2848 * c-parser.c (c_parser_omp_target): Return bool values.
2849
2850 2014-05-22 Thomas Schwinge <thomas@codesourcery.com>
2851
2852 * c-parser.c (c_parser_omp_clause_thread_limit): Rename
2853 num_teams_loc variable to num_thread_limit_loc.
2854
2855 2014-05-21 Richard Sandiford <rsandifo@linux.vnet.ibm.com>
2856
2857 * c-array-notation.c (expand_array_notations): Use void_node
2858 instead of void_zero_node.
2859
2860 2014-05-17 Trevor Saunders <tsaunders@mozilla.com>
2861
2862 * c-decl.c (finish_struct): Adjust.
2863 (finish_enum): Likewise.
2864 (bind): Adjust.
2865 (record_inline_static): Likewise.
2866 (push_scope): Likewise.
2867 (make_label): Likewise.
2868 (lookup_label_for_goto): Likewise.
2869 (finish_struct): Likewise.
2870 (finish_enum): Likewise.
2871 (store_parm_decls): Likewise.
2872 (c_push_function_context): Likewise.
2873 * c-lang.h: Remove usage of variable_size gty attribute.
2874 * c-parser.c (c_parse_init): Adjust.
2875 (c_parse_file): Likewise.
2876
2877 2014-05-13 Marek Polacek <polacek@redhat.com>
2878
2879 PR c/61162
2880 * c-typeck.c (convert_for_assignment): Pass location to
2881 WARN_FOR_ASSIGNMENT instead of input_location.
2882
2883 2014-05-10 Marek Polacek <polacek@redhat.com>
2884
2885 * c-parser.c (c_parser_declaration_or_fndef): Pass init_loc to
2886 maybe_warn_string_init.
2887 (c_parser_postfix_expression_after_paren_type): Pass type_loc to
2888 maybe_warn_string_init.
2889 * c-tree.h (maybe_warn_string_init): Update declaration.
2890 * c-typeck.c (maybe_warn_string_init): Add location parameter.
2891 Call pedwarn_init with loc instead of with input_location.
2892 (digest_init): Pass init_loc to maybe_warn_string_init.
2893 (pop_init_level): Call pedwarn_init with loc instead of with
2894 input_location.
2895 (set_init_index): Likewise.
2896 (process_init_element): Likewise.
2897
2898 2014-05-09 Marek Polacek <polacek@redhat.com>
2899
2900 PR c/61096
2901 * c-parser.c (c_parser_braced_init): Pass brace_loc to push_init_level.
2902 (c_parser_initelt): Pass location to set_init_label. Pass array index
2903 location to set_init_index.
2904 * c-tree.h (push_init_level): Update declaration.
2905 (pop_init_level): Likewise.
2906 (set_init_index): Likewise.
2907 (set_init_label): Likewise.
2908 * c-typeck.c (error_init): Add location parameter. Call error_at
2909 instead of error.
2910 (digest_init): Pass init_loc to error_init.
2911 (really_start_incremental_init):
2912 (push_init_level): Add location parameter. Pass loc to pop_init_level
2913 and error_init.
2914 (pop_init_level): Likewise.
2915 (set_designator): Add location parameter. Pass loc to pop_init_level,
2916 push_init_level, and error_init.
2917 (set_init_index): Add location parameter. Pass loc to error_init and
2918 set_designator.
2919 (set_init_label): Likewise.
2920 (output_init_element): Pass loc to error_init.
2921 (process_init_element): Pass loc to error_init, pop_init_level,
2922 pedwarn_init, and push_init_level.
2923
2924 2014-05-09 Marek Polacek <polacek@redhat.com>
2925
2926 PR c/50459
2927 * c-parser.c (c_parser_attributes): Parse the arguments as an
2928 expression-list if the attribute takes identifier.
2929
2930 2014-05-08 Marek Polacek <polacek@redhat.com>
2931
2932 PR c/61053
2933 * c-decl.c (grokdeclarator): Use min_align_of_type instead of
2934 TYPE_ALIGN_UNIT.
2935
2936 2014-05-08 Marek Polacek <polacek@redhat.com>
2937
2938 PR c/61077
2939 * c-decl.c (start_function): Warn for _Atomic-qualified return type
2940 of main.
2941
2942 2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
2943 Mike Stump <mikestump@comcast.net>
2944 Richard Sandiford <rdsandiford@googlemail.com>
2945
2946 * c-decl.c (check_bitfield_type_and_width): Use TYPE_SIGN.
2947 (finish_enum): Use wide-int interfaces.
2948 * c-parser.c (c_parser_cilk_clause_vectorlength): Likewise.
2949 * c-typeck.c (build_c_cast): Likewise.
2950 (set_nonincremental_init_from_string): Likewise.
2951 (c_tree_equal): Likewise.
2952
2953 2014-05-02 Marek Polacek <polacek@redhat.com>
2954
2955 PR c/25801
2956 * c-typeck.c (c_size_in_bytes): Update comment. Don't call error.
2957 Return size_one_node when the type is not complete.
2958 (pointer_diff): Remove comment.
2959 (build_unary_op): Improve error messages.
2960
2961 2014-05-02 Marek Polacek <polacek@redhat.com>
2962
2963 * c-typeck.c (c_finish_return): Separate warning_at calls.
2964
2965 2014-05-02 Marek Polacek <polacek@redhat.com>
2966
2967 * c-tree.h (error_init): Remove declaration.
2968 (pedwarn_init): Likewise.
2969 * c-typeck.c (error_init): Make static and move above.
2970 (pedwarn_init): Likewise.
2971 (warning_init): Move above.
2972 (maybe_warn_string_init): Likewise.
2973
2974 2014-05-01 Jeff Law <law@redhat.com>
2975
2976 Revert:
2977
2978 2014-04-24 Prathamesh Kulkarni <bilbotheelffriend@gmail.com>
2979 * c-parser.c (c_parser_sizeof_expression): Reorganize slightly to
2980 avoid goto.
2981
2982 2014-05-02 Marek Polacek <polacek@redhat.com>
2983
2984 PR c/60784
2985 * c-typeck.c (push_init_level): Set constructor_designated to
2986 p->designated for structures.
2987
2988 2014-05-01 Marek Polacek <polacek@redhat.com>
2989
2990 PR c/60915
2991 * c-parser.c (c_parser_declaration_or_fndef): Give better error if
2992 function-definition has an attribute after the declarator.
2993
2994 2014-05-01 Marek Polacek <polacek@redhat.com>
2995
2996 PR c/60257
2997 * c-typeck.c (warning_init): Add location_t parameter. Call
2998 warning_at instead of warning.
2999 (push_init_level): Pass input_location to warning_init.
3000 (add_pending_init): Add location_t parameter. Pass loc to
3001 warning_init.
3002 (set_nonincremental_init): Pass input_location to add_pending_init.
3003 (set_nonincremental_init_from_string): Likewise.
3004 (output_init_element): Pass loc to warning_init and to
3005 add_pending_init.
3006
3007 2014-05-01 Marek Polacek <polacek@redhat.com>
3008
3009 PR c/43395
3010 * c-typeck.c (c_finish_return): Distinguish between label and variable
3011 when warning about returning local address.
3012
3013 2014-05-01 Marek Polacek <polacek@redhat.com>
3014
3015 PR c/29467
3016 * c-decl.c (declspecs_add_type): Pedwarn if boolean types are used
3017 in C89 mode.
3018
3019 2014-05-01 Marek Polacek <polacek@redhat.com>
3020
3021 PR c/43245
3022 * c-typeck.c (convert_for_assignment): Pass OPT_Wdiscarded_qualifiers
3023 instead of 0 to WARN_FOR_QUALIFIERS.
3024
3025 2014-05-01 Marek Polacek <polacek@redhat.com>
3026
3027 PR c/56989
3028 * c-typeck.c (default_conversion): Use better location for
3029 error call.
3030
3031 2014-04-30 Marek Polacek <polacek@redhat.com>
3032
3033 * c-typeck.c (build_binary_op): Call ubsan_instrument_division
3034 also when SANITIZE_FLOAT_DIVIDE is on.
3035
3036 2014-04-30 Marek Polacek <polacek@redhat.com>
3037
3038 PR c/60139
3039 * c-typeck.c (output_init_element): Pass OPT_Wpedantic to pedwarn
3040 and pedwarn_init. Use loc insted of input_location.
3041
3042 2014-04-30 Marek Polacek <polacek@redhat.com>
3043
3044 PR c/60351
3045 * c-typeck.c (build_binary_op): Use location when warning about
3046 shift count.
3047
3048 2014-04-25 Marek Polacek <polacek@redhat.com>
3049
3050 PR c/18079
3051 * c-decl.c (diagnose_mismatched_decls): Warn for mismatched
3052 always_inline/noinline and hot/cold attributes.
3053
3054 2014-04-25 Marek Polacek <polacek@redhat.com>
3055
3056 PR c/60114
3057 * c-parser.c (c_parser_initelt): Pass input_location to
3058 process_init_element.
3059 (c_parser_initval): Pass loc to process_init_element.
3060 * c-tree.h (process_init_element): Adjust declaration.
3061 * c-typeck.c (push_init_level): Pass input_location to
3062 process_init_element.
3063 (pop_init_level): Likewise.
3064 (set_designator): Likewise.
3065 (output_init_element): Add location_t parameter. Pass loc to
3066 digest_init.
3067 (output_pending_init_elements): Pass input_location to
3068 output_init_element.
3069 (process_init_element): Add location_t parameter. Pass loc to
3070 output_init_element.
3071
3072 2014-04-24 Jakub Jelinek <jakub@redhat.com>
3073
3074 * c-parser.c (c_parser_omp_atomic): Allow seq_cst before
3075 atomic-clause, allow comma in between atomic-clause and
3076 seq_cst.
3077
3078 2014-04-22 Jakub Jelinek <jakub@redhat.com>
3079
3080 PR c/59073
3081 * c-parser.c (c_parser_omp_parallel): If c_parser_omp_for
3082 fails, don't set OM_PARALLEL_COMBINED and return NULL.
3083
3084 2014-04-12 Igor Zamyatin <igor.zamyatin@intel.com>
3085
3086 PR middle-end/60469
3087 * c-array-notation.c (fix_builtin_array_notation_fn): Use
3088 create_tmp_var instead build_decl for creating temps.
3089 (build_array_notation_expr): Likewise.
3090 (fix_conditional_array_notations_1): Likewise.
3091 (fix_array_notation_expr): Likewise.
3092 (fix_array_notation_call_expr): Likewise.
3093
3094 2014-03-28 Jakub Jelinek <jakub@redhat.com>
3095
3096 PR c++/60689
3097 * c-tree.h (c_build_function_call_vec): New prototype.
3098 * c-typeck.c (build_function_call_vec): Don't call
3099 resolve_overloaded_builtin here.
3100 (c_build_function_call_vec): New wrapper function around
3101 build_function_call_vec. Call resolve_overloaded_builtin here.
3102 (convert_lvalue_to_rvalue, build_function_call, build_atomic_assign):
3103 Call c_build_function_call_vec instead of build_function_call_vec.
3104 * c-parser.c (c_parser_postfix_expression_after_primary): Likewise.
3105 * c-decl.c (finish_decl): Likewise.
3106
3107 2014-03-18 Manuel López-Ibáñez <manu@gcc.gnu.org>
3108
3109 PR c/55383
3110 * c-typeck.c: Use correct format string in cast-qual warning
3111
3112 2014-03-07 Thomas Schwinge <thomas@codesourcery.com>
3113
3114 * c-decl.c (c_decl_attributes): Use
3115 lang_hooks.types.omp_mappable_type.
3116 * c-typeck.c (c_finish_omp_clauses): Likewise.
3117
3118 2014-03-06 Marek Polacek <polacek@redhat.com>
3119
3120 PR c/60197
3121 * c-typeck.c (c_finish_return): Call contains_cilk_spawn_stmt instead
3122 of checking tree code.
3123
3124 2014-02-19 Prathamesh Kulkarni <bilbotheelffriend@gmail.com>
3125
3126 * c-parser.c (c_parser_declspecs): Replace call to error by error_at.
3127 (c_parser_parameter_declaration): Likewise.
3128
3129 2014-02-19 Marek Polacek <polacek@redhat.com>
3130
3131 PR c/60195
3132 * c-typeck.c (convert_lvalue_to_rvalue): Set TREE_NO_WARNING on tmp.
3133 Call mark_exp_read on exp.value.
3134 (build_atomic_assign): Set TREE_NO_WARNING on val and old. Set
3135 TREE_ADDRESSABLE on old instead of val.
3136 (emit_side_effect_warnings): Warn only if RHS has !TREE_NO_WARNING.
3137
3138 2014-02-07 Prathamesh Kulkarni <bilbotheelffriend@gmail.com>
3139
3140 * c-parser.c (c_parser_get_builtin_args): Replace calls to
3141 C_EXPR_APPEND by vec_safe_push.
3142 * c-tree.h (C_EXPR_APPEND): Remove.
3143
3144 2014-01-31 Marek Polacek <polacek@redhat.com>
3145
3146 PR c/59963
3147 * c-typeck.c (convert_lvalue_to_rvalue): Pass vNULL to
3148 build_function_call_vec.
3149 (build_function_call): Likewise.
3150 (build_atomic_assign): Likewise.
3151 (build_function_call_vec): Add arg_loc parameter. Use it.
3152 (convert_arguments): Likewise.
3153 (convert_for_assignment): Rename rhs_loc to expr_loc.
3154 * c-parser.c (c_parser_attributes): Pass NULL to c_parser_expr_list.
3155 (c_parser_objc_keywordexpr): Likewise.
3156 (c_parser_postfix_expression_after_primary): Call
3157 build_function_call_vec with expr_loc rather than op_loc.
3158 Call c_parser_expr_list to fill arg_loc. Pass arg_loc to
3159 build_function_call_vec.
3160 (c_parser_expr_list): Add locations parameter. Fill it with locations
3161 of function arguments.
3162 * c-decl.c (finish_decl): Pass vNULL to build_function_call_vec.
3163
3164 2014-01-30 Marek Polacek <polacek@redhat.com>
3165
3166 PR c/59940
3167 * c-typeck.c (build_function_call_vec): Use loc parameter.
3168 (convert_arguments): Add location parameter. Use it.
3169 (ep_convert_and_check): Likewise.
3170 (build_atomic_assign): Adjust convert_for_assignment call.
3171 (build_modify_expr): Likewise.
3172 (digest_init): Likewise.
3173 (c_finish_return): Likewise.
3174 (build_conditional_expr): Adjust ep_convert_and_check calls.
3175 (convert_for_assignment): Add rhs_loc parameter. Use it.
3176 (build_binary_op): Adjust convert_and_check and ep_convert_and_check
3177 calls.
3178
3179 2014-01-30 Richard Biener <rguenther@suse.de>
3180
3181 PR c/59905
3182 * c-typeck.c (build_function_call_vec): Do not replace calls
3183 to a function via an incompatible type with a runtime abort.
3184
3185 2014-01-24 Balaji V. Iyer <balaji.v.iyer@intel.com>
3186
3187 * c-parser.c (c_parser_declaration_or_fndef): Replaced
3188 flag_enable_cilkplus with flag_cilkplus.
3189 (c_parser_direct_declarator_inner): Likewise.
3190 (c_parser_attribute_any_word): Likewise.
3191 (c_parser_attributes): Likewise.
3192 (c_parser_compound_statement): Likewise.
3193 (c_parser_statement_after_labels): Likewise.
3194 (c_parser_if_statement): Likewise.
3195 (c_parser_switch_statement): Likewise.
3196 (c_parser_do_statement): Likewise.
3197 (c_parser_for_statement): Likewise.
3198 (c_parser_unary_expression): Likewise.
3199 (c_parser_postfix_expression): Likewise.
3200 (c_parser_postfix_expression_after_primary): Likewise.
3201 (c_parser_postfix_expression_after_primary): Likewise.
3202 (c_parser_omp_clause_name): Likewise.
3203 (c_finish_omp_declare_simd): Likewise.
3204 (c_parser_cilk_verify_simd): Likewise.
3205 * c-typeck.c (build_array_ref): Likewise.
3206 (build_function_call_vec): Likewise.
3207 (convert_arguments): Likewise.
3208 (build_compound_expr): Likewise.
3209 (c_finish_return): Likewise.
3210 (c_finish_if_stmt): Likewise.
3211 (c_finish_loop): Likewise.
3212 (build_binary_op): Likewise.
3213
3214 2014-01-23 Marek Polacek <polacek@redhat.com>
3215
3216 PR c/59846
3217 * c-typeck.c (parser_build_binary_op): Use location instead of
3218 input_location.
3219 (build_binary_op): Pass location to shorten_compare.
3220
3221 2014-01-23 Marek Polacek <polacek@redhat.com>
3222
3223 PR c/58346
3224 * c-typeck.c (pointer_diff): Give an error on arithmetic on pointer to
3225 an empty aggregate.
3226
3227 2014-01-23 Marek Polacek <polacek@redhat.com>
3228
3229 PR c/59871
3230 * c-typeck.c (build_compound_expr): Warn even for right-hand operand
3231 of a comma expression.
3232 (emit_side_effect_warnings): Likewise.
3233
3234 2014-01-23 Balaji V. Iyer <balaji.v.iyer@intel.com>
3235
3236 PR c/59825
3237 * c-array-notation.c (expand_array_notation_exprs): Rewrote this
3238 function to use walk_tree and moved a lot of its functionality to
3239 expand_array_notations.
3240 (expand_array_notations): New function.
3241
3242 2014-01-23 Balaji V. Iyer <balaji.v.iyer@intel.com>
3243
3244 * c-parser.c (c_finish_omp_declare_simd): Made "cilk simd function"
3245 attribute an attribute without value.
3246
3247 2014-01-23 Jakub Jelinek <jakub@redhat.com>
3248
3249 PR middle-end/58809
3250 * c-typeck.c (c_finish_omp_clause): Reject MIN_EXPR, MAX_EXPR,
3251 BIT_AND_EXPR, BIT_IOR_EXPR and BIT_XOR_EXPR on COMPLEX_TYPEs.
3252
3253 2014-01-22 Marek Polacek <polacek@redhat.com>
3254
3255 PR c/59891
3256 * c-typeck.c (build_conditional_expr): Call c_fully_fold instead
3257 of remove_c_maybe_const_expr on op1 and op2.
3258
3259 2014-01-15 Jakub Jelinek <jakub@redhat.com>
3260
3261 PR c/58943
3262 * c-typeck.c (build_modify_expr): For lhs op= rhs, if rhs has side
3263 effects, preevaluate rhs using SAVE_EXPR first.
3264
3265 2014-01-09 Balaji V. Iyer <balaji.v.iyer@intel.com>
3266
3267 PR c++/59631
3268 * c-parser.c (c_parser_postfix_expression): Replaced consecutive if
3269 statements with if-elseif statements.
3270
3271 2014-01-06 Marek Polacek <polacek@redhat.com>
3272
3273 PR c/57773
3274 * c-decl.c (check_bitfield_type_and_width): Warn for implementation
3275 defined bit-field types only in ISO C.
3276
3277 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
3278
3279 Update copyright years
3280
3281 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
3282
3283 * c-array-notation.c: Use the standard form for the copyright notice.
3284
3285 2013-12-18 Balaji V. Iyer <balaji.v.iyer@intel.com>
3286
3287 * c-parser.c (struct c_parser::cilk_simd_fn_tokens): Added new field.
3288 (c_parser_declaration_or_fndef): Added a check if cilk_simd_fn_tokens
3289 field in parser is not empty. If not-empty, call the function
3290 c_parser_finish_omp_declare_simd.
3291 (c_parser_cilk_clause_vectorlength): Modified function to be shared
3292 between SIMD-enabled functions and #pragma simd. Added new parameter.
3293 (c_parser_cilk_all_clauses): Modified the usage of the function
3294 c_parser_cilk_clause_vectorlength as mentioned above.
3295 (c_parser_cilk_simd_fn_vector_attrs): New function.
3296 (c_finish_cilk_simd_fn_tokens): Likewise.
3297 (is_cilkplus_vector_p): Likewise.
3298 (c_parser_omp_clause_name): Added checking for "vectorlength,"
3299 "nomask," and "mask" strings in clause name.
3300 (c_parser_omp_all_clauses): Added 3 new case statements:
3301 PRAGMA_CILK_CLAUSE_VECTORLENGTH, PRAGMA_CILK_CLAUSE_MASK and
3302 PRAGMA_CILK_CLAUSE_NOMASK.
3303 (c_parser_attributes): Added a cilk_simd_fn_tokens parameter. Added a
3304 check for vector attribute and if so call the function
3305 c_parser_cilk_simd_fn_vector_attrs. Also, when Cilk plus is enabled,
3306 called the function c_finish_cilk_simd_fn_tokens.
3307 (c_finish_omp_declare_simd): Added a check if cilk_simd_fn_tokens in
3308 parser field is non-empty. If so, parse them as you would parse
3309 the omp declare simd pragma.
3310 (c_parser_omp_clause_linear): Added a new bool parm. is_cilk_simd_fn.
3311 Added a check when step is a parameter and flag it as error.
3312 (CILK_SIMD_FN_CLAUSE_MASK): New #define.
3313 (c_parser_cilk_clause_name): Changed pragma_cilk_clause to
3314 pragma_omp_clause.
3315
3316 2013-12-17 Thomas Schwinge <thomas@codesourcery.com>
3317
3318 * c-parser.c (c_parser_omp_parallel): Fix description.
3319
3320 2013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com>
3321
3322 * c-objc-common.h (LANG_HOOKS_CILKPLUS_FRAME_CLEANUP): Remove.
3323 (LANG_HOOKS_CILKPLUS_DETECT_SPAWN_AND_UNWRAP): Likewise.
3324 (LANG_HOOKS_CILKPLUS_CILKPLUS_GIMPLIFY_SPAWN): Likewise.
3325 * c-typeck.c (cilk_install_body_with_frame_cleanup): New function.
3326
3327 2013-12-04 Joseph Myers <joseph@codesourcery.com>
3328
3329 PR c/52023
3330 * c-parser.c (c_parser_alignas_specifier): Use
3331 c_sizeof_or_alignof_type instead of c_alignof.
3332 (c_parser_alignof_expression): Likewise, with min_alignof
3333 parameter depending on alignof spelling used.
3334
3335 2013-12-04 Marek Polacek <polacek@redhat.com>
3336
3337 PR c/54113
3338 * c-decl.c (start_function): Don't warn for missing prototype for
3339 inline functions.
3340
3341 2013-12-03 Marek Polacek <polacek@redhat.com>
3342
3343 PR c/59351
3344 * c-decl.c (build_compound_literal): Allow compound literals with
3345 empty initial value.
3346
3347 2013-12-02 Joseph Myers <joseph@codesourcery.com>
3348
3349 PR c/58235
3350 * c-typeck.c (build_modify_expr): Diagnose assignment to
3351 expression with array type.
3352
3353 2013-11-29 Joseph Myers <joseph@codesourcery.com>
3354
3355 PR c/42262
3356 * c-typeck.c (process_init_element): Do not treat a string as
3357 initializing a whole array when used with a designator for an
3358 individual element.
3359
3360 2013-11-29 Joseph Myers <joseph@codesourcery.com>
3361
3362 PR c/57574
3363 * c-decl.c (merge_decls): Clear DECL_EXTERNAL for a definition of
3364 an inline function following a static declaration.
3365
3366 2013-11-28 Jakub Jelinek <jakub@redhat.com>
3367
3368 PR c/59310
3369 * c-parser.c (c_parser_omp_target): Copy "#pragma omp target"
3370 to p_name before calling c_parser_omp_teams instead of after.
3371 (c_parser_cilk_simd): Remove wrong ATTRIBUTE_UNUSED from parser
3372 argument. Remove unused p_name variable.
3373
3374 2013-11-27 Aldy Hernandez <aldyh@redhat.com>
3375 Jakub Jelinek <jakub@redhat.com>
3376
3377 * c-decl.c (c_builtin_function_ext_scope): Avoid binding if
3378 external_scope is NULL.
3379
3380 2013-11-27 Tom de Vries <tom@codesourcery.com>
3381 Marc Glisse <marc.glisse@inria.fr>
3382
3383 PR c++/59032
3384 * c-typeck.c (build_unary_op): Allow vector increment and decrement.
3385
3386 2013-11-22 Andrew MacLeod <amacleod@redhat.com>
3387
3388 * c-typeck.c: Add required include files from gimple.h.
3389
3390 2013-11-22 David Malcolm <dmalcolm@redhat.com>
3391
3392 * c-decl.c (define_label, shadow_tag_warned)
3393 (check_bitfield_type_and_width, grokdeclarator, grokparms,
3394 store_parm_decls_newstyle, store_parm_decls_oldstyle)
3395 (declspecs_add_type): Remove use of in_system_header macro.
3396 * c-parser.c (c_parser_unary_expression): Likewise.
3397 * c-typeck.c (store_init_value, process_init_element)
3398 (c_start_case): Likewise.
3399
3400 * c-decl.c (build_enumerator): Remove use of EXPR_LOC_OR_HERE
3401 macro.
3402
3403 * c-parser.c (c_parser_set_source_position_from_token): Remove
3404 reference to in_system_header from comment.
3405
3406 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
3407
3408 * c-decl.c (grokdeclarator): Update comment to refer to
3409 tree_to_[su]hwi rather than tree_low_cst.
3410
3411 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
3412
3413 * c-decl.c, c-typeck.c: Replace tree_low_cst (..., 1) with
3414 tree_to_uhwi throughout.
3415
3416 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
3417
3418 * c-parser.c: Replace tree_low_cst (..., 0) with tree_to_shwi
3419 throughout.
3420
3421 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
3422
3423 * c-parser.c: Replace host_integerp (..., 0) with tree_fits_shwi_p
3424 throughout.
3425
3426 2013-11-15 Aldy Hernandez <aldyh@redhat.com>
3427
3428 * c-parser.c (c_parser_cilk_simd): New.
3429 (c_parser_cilk_verify_simd): New.
3430 (c_parser_pragma): Add case for PRAGMA_CILK_SIMD.
3431 (c_parser_omp_for_loop): Add case for NE_EXPR.
3432 Set c_break_label for CILK_SIMD.
3433 (c_parser_cilk_clause_vectorlength): New.
3434 (c_parser_cilk_clause_linear): New.
3435 (c_parser_cilk_clause_name): New.
3436 (c_parser_cilk_all_clauses): New.
3437 * c-typeck.c (build_unary_op): Pass location argument to
3438 readonly_error.
3439 (build_modify_expr): Same.
3440 (build_asm_expr): Same.
3441 (c_finish_bc_stmt): Error on break/continue in loops.
3442
3443 2013-11-14 Andrew MacLeod <amacleod@redhat.com>
3444
3445 * c-typeck.c: Include only gimplify.h and gimple.h as needed.
3446
3447 2013-11-14 Diego Novillo <dnovillo@google.com>
3448
3449 * c-decl.c: Include print-tree.h.
3450 Include stor-layout.h.
3451 Include varasm.h.
3452 Include attribs.h.
3453 Include stringpool.h.
3454 * c-lang.c: Include fold-const.h.
3455 * c-parser.c: Include stringpool.h.
3456 Include attribs.h.
3457 Include stor-layout.h.
3458 Include varasm.h.
3459 Include trans-mem.h.
3460 * c-typeck.c: Include stor-layout.h.
3461 Include trans-mem.h.
3462 Include varasm.h.
3463 Include stmt.h.
3464
3465 2013-11-13 Joseph Myers <joseph@codesourcery.com>
3466
3467 * c-tree.h (c_typespec_keyword): Add cts_auto_type.
3468 * c-decl.c (declspecs_add_type, finish_declspecs): Handle
3469 __auto_type.
3470 * c-parser.c (c_token_starts_typename, c_token_starts_declspecs)
3471 (c_parser_attribute_any_word, c_parser_objc_selector): Handle
3472 RID_AUTO_TYPE.
3473 (c_parser_declspecs): Take argument AUTO_TYPE_OK.
3474 (c_parser_declaration_or_fndef, c_parser_struct_declaration)
3475 (c_parser_declarator, c_parser_direct_declarator_inner)
3476 (c_parser_parameter_declaration, c_parser_type_name): All callers
3477 changed.
3478 (c_parser_declaration_or_fndef): Handle declarations with type
3479 determined from the initializer.
3480
3481 2013-11-12 Andrew MacLeod <amacleod@redhat.com>
3482
3483 * c-typeck.c: Include gimplify.h.
3484
3485 2013-11-12 Joseph Myers <joseph@codesourcery.com>
3486
3487 * c-tree.h (struct c_declspecs): Add thread_gnu_p field.
3488 * c-parser.c (c_parser_declspecs): Mention _Thread_local in
3489 comment.
3490 * c-decl.c (shadow_tag_warned, grokdeclarator): Mention __thread
3491 or _Thread_local as appropriate in diagnostics.
3492 (build_null_declspecs): Initialize ret->thread_gnu_p.
3493 (declspecs_add_scspec): Handle either __thread or _Thread_local
3494 for RID_THREAD. Diagnose _Thread_local for pre-C11 standards if
3495 pedantic. Do not disallow _Thread_local extern and _Thread_local
3496 static.
3497
3498 2013-11-07 Joseph Myers <joseph@codesourcery.com>
3499 Andrew MacLeod <amacleod@redhat.com>
3500
3501 * c-aux-info.c (gen_type): Handle atomic qualifier.
3502 * c-decl.c (validate_proto_after_old_defn): Do not remove atomic
3503 qualifiers when compating types.
3504 (shadow_tag_warned): Handle atomic_p in declspecs.
3505 (quals_from_declspecs): Likewise.
3506 (start_decl): Use c_type_promotes_to when promoting argument
3507 types.
3508 (grokdeclarator): Handle _Atomic.
3509 (get_parm_info): Diagnose any qualifier on "void" as only
3510 parameter.
3511 (store_parm_decls_oldstyle): Do not remove atomic qualifiers when
3512 comparing types. Use c_type_promotes_to when promoting argument
3513 types.
3514 (finish_function): Use c_type_promotes_to when promoting argument
3515 types.
3516 (build_null_declspecs): Handle atomic_p in declspecs.
3517 (declspecs_add_qual): Handle RID_ATOMIC.
3518 * c-parser.c (c_token_starts_typename, c_token_is_qualifier)
3519 (c_token_starts_declspecs): Handle RID_ATOMIC.
3520 (c_parser_declspecs): Handle atomic type specifiers and
3521 qualifiers.
3522 (c_parser_typeof_specifier): Remove const and _Atomic qualifiers
3523 from types of expressions with atomic type.
3524 (c_parser_direct_declarator_inner): Use convert_lvalue_to_rvalue.
3525 (c_parser_attribute_any_word): Handle RID_ATOMIC.
3526 (c_parser_initializer, c_parser_initelt, c_parser_initval)
3527 (c_parser_statement_after_labels, c_parser_switch_statement)
3528 (c_parser_for_statement, c_parser_expr_no_commas)
3529 (c_parser_conditional_expression, c_parser_binary_expression)
3530 (c_parser_cast_expression, c_parser_unary_expression)
3531 (c_parser_postfix_expression)
3532 (c_parser_postfix_expression_after_primary, c_parser_expression):
3533 Use convert_lvalue_to_rvalue.
3534 (c_parser_expression_conv, c_parser_expr_list): Document
3535 conversion of lvalues to rvalues. Use convert_lvalue_to_rvalue.
3536 (c_parser_objc_synchronized_statement): Use
3537 convert_lvalue_to_rvalue.
3538 (c_parser_objc_selector): Handle RID_ATOMIC.
3539 (c_parser_objc_receiver, c_parser_array_notation): Use
3540 convert_lvalue_to_rvalue.
3541 * c-tree.h (ctsk_typeof): Adjust comment to mention use for
3542 _Atomic (type-name).
3543 (struct c_declspecs): Add atomic_p field.
3544 (convert_lvalue_to_rvalue): Declare.
3545 * c-typeck.c (c_type_promotes_to): Promote atomic types to
3546 corresponding atomic types.
3547 (qualify_type): Don't add _Atomic qualifiers from second argument.
3548 (comp_target_types): Do not allow _Atomic mismatches.
3549 (type_lists_compatible_p): Do not remove atomic qualifiers when
3550 comparing types.
3551 (really_atomic_lvalue, convert_lvalue_to_rvalue)
3552 (build_atomic_assign): New functions.
3553 (build_unary_op): Use build_atomic_assign for atomic increment and
3554 decrement.
3555 (build_conditional_expr): Do not treat _Atomic void as a qualified
3556 version of void.
3557 (build_modify_expr): Use build_atomic_assign for atomic LHS.
3558 (find_anonymous_field_with_type, convert_to_anonymous_field)
3559 (convert_for_assignment): Do not remove atomic qualifiers when
3560 comparing types.
3561 (digest_init): Do not accept initialization of arrays of atomic
3562 elements by string constants.
3563 (build_asm_expr): Use convert_lvalue_to_rvalue.
3564 (build_binary_op): Do not treat _Atomic void as a qualified
3565 version of void.
3566
3567 2013-11-06 DJ Delorie <dj@redhat.com>
3568
3569 * c-decl.c (locate_old_decl): If a previous conflicting decl is
3570 both explicit and builtin, print the location of the explicit one.
3571
3572 2013-11-05 Tobias Burnus <burnus@net-b.de>
3573
3574 * c-parser.c (c_parser_omp_for, c_parser_omp_parallel,
3575 c_parser_omp_distribute, c_parser_omp_teams,
3576 c_parser_omp_target, c_parser_omp_declare): Handle
3577 -fopenmp-simd.
3578
3579 2013-11-03 Marek Polacek <polacek@redhat.com>
3580
3581 * c-decl.c (grokdeclarator): Add VLA instrumentation.
3582
3583 2013-11-01 Jakub Jelinek <jakub@redhat.com>
3584
3585 * c-typeck.c (c_finish_omp_clauses) <case OMP_CLAUSE_UNIFORM>: Go to
3586 check_dup_generic at the end, unless remove is true.
3587 (c_finish_omp_clauses) <case OMP_CLAUSE_REDUCTION>: Add break; after
3588 remove = true;.
3589 (c_finish_omp_clauses) <case OMP_CLAUSE_COPYIN>: Likewise.
3590
3591 2013-10-31 Jakub Jelinek <jakub@redhat.com>
3592
3593 * c-typeck.c (c_finish_omp_clauses): Diagnose aligned clause
3594 with decl that is not pointer nor array.
3595
3596 2013-10-29 Balaji V. Iyer <balaji.v.iyer@intel.com>
3597
3598 * c-decl.c (finish_function): Added a call for insert_cilk_frame when
3599 a spawning function is found.
3600 * c-objc-common.h (LANG_HOOKS_CILKPLUS_GIMPLIFY_SPAWN): New #define.
3601 (LANG_HOOKS_CILKPLUS_FRAME_CLEANUP): Likewise.
3602 (LANG_HOOKS_CILKPLUS_DETECT_SPAWN_AND_UNWRAP): Likewise.
3603 * c-parser.c (c_parser_statement_after_labels): Added RID_CILK_SYNC
3604 case.
3605 (c_parser_postfix_expression): Added RID_CILK_SPAWN case.
3606 * c-typeck.c (build_compound_expr): Reject _Cilk_spawn in a comma
3607 expr.
3608 (c_finish_return): Added a check to reject _Cilk_spawn in return
3609 expression.
3610 (build_cilk_spawn): New function.
3611 (build_cilk_sync): Likewise.
3612 * Makefile.in (c-decl.o): Added cilk.h in dependency list.
3613
3614 2013-10-27 Tobias Burnus <burnus@net-b.de>
3615
3616 PR other/33426
3617 * c-parser.c (c_parser_while_statement, c_parser_while_statement,
3618 c_parser_pragma): Add GCC ivdep support to 'do' and 'while'.
3619 (c_parser_statement_after_labels): Update calls.
3620
3621 2013-10-24 Tobias Burnus <burnus@net-b.de>
3622
3623 PR other/33426
3624 * c-parser.c (c_parser_pragma, c_parser_for_statement):
3625 Handle PRAGMA_IVDEP.
3626 (c_parser_statement_after_labels): Update call.
3627
3628 2013-10-24 Marek Polacek <polacek@redhat.com>
3629
3630 * c-parser.c (c_parser_struct_declaration): Add a comment.
3631 (c_parser_declarator): Don't allow _Alignas here.
3632
3633 2013-10-17 Andrew MacLeod <amacleod@redhat.com>
3634
3635 * c-parser.c: Include omp-low.h.
3636 * c-typeck.c: Likewise.
3637
3638 2013-10-17 Marek Polacek <polacek@redhat.com>
3639
3640 PR c/58267
3641 * c-parser.c (c_parser_declspecs): Add alignspec_ok parameter.
3642 Document syntax of the array-declarator.
3643 (c_parser_declspecs) <RID_ALIGNAS>: Bail out if alignment specs
3644 are not permitted.
3645 (c_parser_declaration_or_fndef): Adjust c_parser_declspecs call.
3646 (c_parser_struct_declaration): Likewise.
3647 (c_parser_declarator): Likewise.
3648 (c_parser_direct_declarator_inner): Likewise.
3649 (c_parser_parameter_declaration): Likewise.
3650 (c_parser_type_name): Likewise.
3651
3652 2013-10-11 Jakub Jelinek <jakub@redhat.com>
3653
3654 * c-lang.h (current_omp_declare_target_attribute): New extern
3655 decl.
3656 * c-parser.c: Include c-lang.h.
3657 (struct c_parser): Change tokens to c_token *.
3658 Add tokens_buf field. Change tokens_avail type to unsigned int.
3659 (c_parser_consume_token): If parser->tokens isn't
3660 &parser->tokens_buf[0], increment parser->tokens.
3661 (c_parser_consume_pragma): Likewise.
3662 (enum pragma_context): Add pragma_struct and pragma_param.
3663 (c_parser_external_declaration): Adjust
3664 c_parser_declaration_or_fndef caller.
3665 (c_parser_declaration_or_fndef): Add omp_declare_simd_clauses
3666 argument, if it is non-vNULL vector, call c_finish_omp_declare_simd.
3667 Adjust recursive call.
3668 (c_parser_struct_or_union_specifier): Use pragma_struct instead
3669 of pragma_external.
3670 (c_parser_parameter_declaration): Use pragma_param instead of
3671 pragma_external.
3672 (c_parser_compound_statement_nostart, c_parser_label,
3673 c_parser_for_statement): Adjust
3674 c_parser_declaration_or_fndef callers.
3675 (c_parser_expr_no_commas): Add omp_atomic_lhs argument, pass
3676 it through to c_parser_conditional_expression.
3677 (c_parser_conditional_expression): Add omp_atomic_lhs argument,
3678 pass it through to c_parser_binary_expression. Adjust recursive
3679 call.
3680 (c_parser_binary_expression): Remove prec argument, add
3681 omp_atomic_lhs argument instead. Always start from PREC_NONE, if
3682 omp_atomic_lhs is non-NULL and one of the arguments of toplevel
3683 binop matches it, use build2 instead of parser_build_binary_op.
3684 (c_parser_pragma): Handle PRAGMA_OMP_CANCEL,
3685 PRAGMA_OMP_CANCELLATION_POINT, PRAGMA_OMP_TARGET,
3686 PRAGMA_OMP_END_DECLARE_TARGET, PRAGMA_OMP_DECLARE_REDUCTION.
3687 Handle pragma_struct and pragma_param the same as pragma_external.
3688 (c_parser_omp_clause_name): Parse new OpenMP 4.0 clause names.
3689 (c_parser_omp_variable_list): Parse array sections for
3690 OMP_CLAUSE_{DEPEND,MAP,TO,FROM} clauses.
3691 (c_parser_omp_clause_collapse): Fully fold collapse expression.
3692 (c_parser_omp_clause_reduction): Handle user defined reductions.
3693 (c_parser_omp_clause_branch, c_parser_omp_clause_cancelkind,
3694 c_parser_omp_clause_num_teams, c_parser_omp_clause_thread_limit,
3695 c_parser_omp_clause_aligned, c_parser_omp_clause_linear,
3696 c_parser_omp_clause_safelen, c_parser_omp_clause_simdlen,
3697 c_parser_omp_clause_depend, c_parser_omp_clause_map,
3698 c_parser_omp_clause_device, c_parser_omp_clause_dist_schedule,
3699 c_parser_omp_clause_proc_bind, c_parser_omp_clause_to,
3700 c_parser_omp_clause_from, c_parser_omp_clause_uniform): New functions.
3701 (c_parser_omp_all_clauses): Add finish_p argument. Don't call
3702 c_finish_omp_clauses if it is false. Handle new OpenMP 4.0 clauses.
3703 (c_parser_omp_atomic): Parse seq_cst clause, pass true if it is
3704 present to c_finish_omp_atomic. Handle OpenMP 4.0 atomic forms.
3705 (c_parser_omp_for_loop): Add CODE argument, pass it through
3706 to c_finish_omp_for. Change last argument to cclauses,
3707 and adjust uses to grab parallel clauses from the array of all
3708 the split clauses. Adjust c_parser_binary_expression,
3709 c_parser_declaration_or_fndef and c_finish_omp_for callers.
3710 (omp_split_clauses): New function.
3711 (c_parser_omp_simd): New function.
3712 (c_parser_omp_for): Add p_name, mask and cclauses arguments.
3713 Allow the function to be called also when parsing combined constructs,
3714 and call c_parser_omp_simd when parsing for simd.
3715 (c_parser_omp_sections_scope): If section-sequence doesn't start with
3716 #pragma omp section, require exactly one structured-block instead of
3717 sequence of statements.
3718 (c_parser_omp_sections): Add p_name, mask and cclauses arguments.
3719 Allow the function to be called also when parsing combined constructs.
3720 (c_parser_omp_parallel): Add p_name, mask and cclauses arguments.
3721 Allow the function to be called also when parsing combined
3722 constructs.
3723 (c_parser_omp_taskgroup, c_parser_omp_cancel,
3724 c_parser_omp_cancellation_point, c_parser_omp_distribute,
3725 c_parser_omp_teams, c_parser_omp_target_data,
3726 c_parser_omp_target_update, c_parser_omp_target,
3727 c_parser_omp_declare_simd, c_finish_omp_declare_simd,
3728 c_parser_omp_declare_target, c_parser_omp_end_declare_target,
3729 c_parser_omp_declare_reduction, c_parser_omp_declare): New functions.
3730 (c_parser_omp_construct): Add p_name and mask vars. Handle
3731 PRAGMA_OMP_DISTRIBUTE, PRAGMA_OMP_SIMD, PRAGMA_OMP_TASKGROUP,
3732 PRAGMA_OMP_TEAMS. Adjust c_parser_omp_for, c_parser_omp_parallel
3733 and c_parser_omp_sections callers.
3734 (c_parse_file): Initialize tparser.tokens and the_parser->tokens here.
3735 (OMP_FOR_CLAUSE_MASK, OMP_SECTIONS_CLAUSE_MASK,
3736 OMP_SINGLE_CLAUSE_MASK): Use OMP_CLAUSE_MASK_1 instead of 1.
3737 (OMP_PARALLEL_CLAUSE_MASK): Likewise. Add OMP_CLAUSE_PROC_BIND.
3738 (OMP_TASK_CLAUSE_MASK): Use OMP_CLAUSE_MASK_1 instead of 1. Add
3739 OMP_CLAUSE_DEPEND.
3740 (OMP_SIMD_CLAUSE_MASK, OMP_CANCEL_CLAUSE_MASK,
3741 OMP_CANCELLATION_POINT_CLAUSE_MASK, OMP_DISTRIBUTE_CLAUSE_MASK,
3742 OMP_TEAMS_CLAUSE_MASK, OMP_TARGET_DATA_CLAUSE_MASK,
3743 OMP_TARGET_UPDATE_CLAUSE_MASK, OMP_TARGET_CLAUSE_MASK,
3744 OMP_DECLARE_SIMD_CLAUSE_MASK): Define.
3745 * c-typeck.c: Include tree-inline.h.
3746 (c_finish_omp_cancel, c_finish_omp_cancellation_point,
3747 handle_omp_array_sections_1, handle_omp_array_sections,
3748 c_clone_omp_udr, c_find_omp_placeholder_r): New functions.
3749 (c_finish_omp_clauses): Handle new OpenMP 4.0 clauses and
3750 user defined reductions.
3751 (c_tree_equal): New function.
3752 * c-tree.h (temp_store_parm_decls, temp_pop_parm_decls,
3753 c_finish_omp_cancel, c_finish_omp_cancellation_point, c_tree_equal,
3754 c_omp_reduction_id, c_omp_reduction_decl, c_omp_reduction_lookup,
3755 c_check_omp_declare_reduction_r): New prototypes.
3756 * c-decl.c (current_omp_declare_target_attribute): New variable.
3757 (c_decl_attributes): New function.
3758 (start_decl, start_function): Use it instead of decl_attributes.
3759 (temp_store_parm_decls, temp_pop_parm_decls, c_omp_reduction_id,
3760 c_omp_reduction_decl, c_omp_reduction_lookup,
3761 c_check_omp_declare_reduction_r): New functions.
3762
3763 2013-09-25 Tom Tromey <tromey@redhat.com>
3764
3765 * Make-lang.in (c/gccspec.o): Remove.
3766 (CFLAGS-c/gccspec.o): New variable.
3767 (cc1-checksum.o, C_TREE_H, c/c-aux-info.o, c/c-convert.o)
3768 (c/c-decl.o, c/c-errors.o, c/c-lang.o, c/c-objc-common.o)
3769 (c/c-parser.o, c/c-typeck.o, c/c-array-notation.o): Remove.
3770
3771 2013-09-25 Tom Tromey <tromey@redhat.com>
3772
3773 * Make-lang.in (c/gccspec.o): Don't use subshell.
3774
3775 2013-09-18 Marek Polacek <polacek@redhat.com>
3776
3777 PR sanitize/58443
3778 * c-typeck.c (build_binary_op): Properly honor -fsanitize options.
3779 Remove unnecessary check.
3780
3781 2013-09-18 Marek Polacek <polacek@redhat.com>
3782
3783 PR sanitizer/58411
3784 * c-typeck.c (build_binary_op): Don't sanitize function if it has the
3785 no_sanitize_undefined attribute.
3786
3787 2013-09-13 Kai Tietz <ktietz@redhat.com>
3788
3789 PR target/57848
3790 * c-decl.c (c_builtin_function_ext_scope): Remove
3791 wrong assumption that it is never called on prexisting
3792 symbol.
3793
3794 2013-09-08 Joern Rennecke <joern.rennecke@embecosm.com>
3795
3796 * c-typeck.c (build_binary_op): Use vector_types_compatible_elements_p.
3797
3798 2013-09-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
3799
3800 * c-objc-common.c (c_tree_printer): Tidy.
3801
3802 2013-08-30 Marek Polacek <polacek@redhat.com>
3803
3804 * c-typeck.c (build_binary_op): Add division by zero and shift
3805 instrumentation.
3806
3807 2013-08-26 Joern Rennecke <joern.rennecke@embecosm.com>
3808 Joseph Myers <joseph@codesourcery.com>
3809
3810 PR c/35649
3811 * c-typeck.c (c_common_type): Prefer double_type_node over
3812 other REAL_TYPE types with the same precision.
3813 (convert_arguments): Likewise.
3814
3815 2013-08-23 Gabriel Dos Reis <gdr@integrable-solutions.net>
3816
3817 * c-objc-common.c (c_tree_printer): Document the nature of the cast.
3818 (c_initialize_diagnostics): Call a destructor for the early printer.
3819
3820 2013-08-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
3821
3822 * c-objc-common.c (c_initialize_diagnostics): Simplify C pretty
3823 printer initialization.
3824
3825 2013-08-19 Balaji V. Iyer <balaji.v.iyer@intel.com>
3826
3827 PR c/57490
3828 * c-array-notation.c (fix_conditional_array_notations_1): Added a
3829 check for truth values.
3830 (expand_array_notation_exprs): Added truth values case. Removed an
3831 unwanted else. Added for-loop to walk through subtrees in default
3832 case.
3833
3834 2013-08-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
3835
3836 * c-objc-common.c (c_initialize_diagnostics): Don't call pp_base.
3837
3838 2013-07-23 Joseph Myers <joseph@codesourcery.com>
3839
3840 * c-parser.c (struct c_generic_association): Fix typo.
3841
3842 2013-07-23 Tom Tromey <tromey@redhat.com>
3843 Joseph Myers <joseph@codesourcery.com>
3844
3845 * c-parser.c (struct c_generic_association): New.
3846 (c_generic_association_d): New typedef.
3847 (c_parser_generic_selection): New function.
3848 (c_parser_postfix_expression): Handle RID_GENERIC.
3849
3850 2013-07-13 Jason Merrill <jason@redhat.com>
3851
3852 PR c++/57793
3853 * c-decl.c (finish_struct): Check for too-large class.
3854
3855 2013-07-04 Joern Rennecke <joern.rennecke@embecosm.com>
3856
3857 PR c/57821
3858 * c-typeck.c (set_init_index): When folding, check for index overflow.
3859
3860 2013-06-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
3861
3862 * c-parser.c (c_parser_array_notation): Removed rejection of array
3863 notations in an array of function pointers.
3864
3865 2013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
3866
3867 * c-array-notation.c (make_triplet_val_inv): New function.
3868 (create_cmp_incr): Likewise.
3869 (create_array_refs): Likewise.
3870 (fix_builtin_array_notation_fn): Replaced all mallocs with tree vec.
3871 Also modularized common parts between functions and called the function.
3872 (build_array_notation_expr): Likewise.
3873 (fix_conditional_array_notations_1): Likewise.
3874 (fix_array_notation_expr): Likewise.
3875 (fix_array_notation_call_expr): Likewise.
3876
3877 2013-06-18 Marek Polacek <polacek@redhat.com>
3878
3879 PR c/57630
3880 * c-decl.c (check_for_loop_decls): Improve diagnostics messages.
3881
3882 2013-06-12 Balaji V. Iyer <balaji.v.iyer@intel.com>
3883
3884 * c-array-notation.c (build_array_notation_expr): Reject array notation
3885 mismatch between LHS and RHS even inside a call_expr. Also, removed
3886 a couple while statements that were dead code.
3887
3888 2013-06-10 Balaji V. Iyer <balaji.v.iyer@intel.com>
3889
3890 * c-array-notation.c (fix_builtin_array_notation_fn): Fully folded
3891 excessive precision expressions in function parameters. Also removed
3892 couple unwanted while statements.
3893
3894 2013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
3895
3896 * c-array-notation.c (expand_array_notation_exprs): Added
3897 ARRAY_NOTATION_REF case.
3898
3899 2013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
3900
3901 * c-array-notation.c (length_mismatch_in_expr_p): Moved this
3902 function to c-family/array-notation-common.c.
3903 (is_cilkplus_reduce_builtin): Likewise.
3904 (find_rank): Likewise.
3905 (extract_array_notation_exprs): Likewise.
3906 (replace_array_notations): Likewise.
3907 (find_inv_trees): Likewise.
3908 (replace_inv_trees): Likewise.
3909 (contains_array_notation_expr): Likewise.
3910 (find_correct_array_notation_type): Likewise.
3911 (replace_invariant_exprs): Initialized additional_tcodes to NULL.
3912 (struct inv_list): Moved this to c-family/array-notation-common.c.
3913 * c-tree.h (is_cilkplus_builtin_reduce): Remove prototype.
3914
3915 2013-06-05 Balaji V. Iyer <balaji.v.iyer@intel.com>
3916
3917 * c-typeck.c (convert_arguments): Moved checking of builtin cilkplus
3918 reduction functions outside the for-loop. Added a check if the fundecl
3919 is non-NULL. Finally, removed an unwanted if-statement, and made the
3920 body unconditional.
3921
3922 2013-06-03 Balaji V. Iyer <balaji.v.iyer@intel.com>
3923
3924 * c-typeck.c (c_finish_if_stmt): Added a check to see if the rank of the
3925 condition of the if-statement matches the rank of else-block and then-
3926 block when array notations are used.
3927 * c-parser.c (c_parser_declaration_or_fndef): Expanded array notation
3928 expression after the entire function body is parsed.
3929 (c_parser_expr_no_commas): Delayed creating array notation expressions
3930 to the end of function parsing.
3931 * c-array-notation.c (fix_conditional_array_notations_1): Expanded the
3932 whole if-statement instead of just the condition.
3933 (expand_array_notation_exprs): Added MODIFY_EXPR case.
3934
3935 2013-06-03 Balaji V. Iyer <balaji.v.iyer@intel.com>
3936
3937 PR c/57474
3938 * c-array-notation.c (build_array_notation_expr): Initialized rhs_length
3939 array to NULL_TREE if they are unused. Also added a check for the
3940 field to be NULL before its fields are used in future.
3941
3942 2013-05-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3943
3944 PR bootstrap/57450
3945 * c-array-notation.c (length_mismatch_in_expr_p): Use absu_hwi.
3946 (build_array_notation_expr): Likewise.
3947
3948 2013-05-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
3949
3950 * c-typeck.c (build_array_ref): Added a check to see if array's
3951 index is greater than one. If true, then emit an error.
3952 (build_function_call_vec): Exclude error reporting and checking
3953 for builtin array-notation functions.
3954 (convert_arguments): Likewise.
3955 (c_finish_return): Added a check for array notations as a return
3956 expression. If true, then emit an error.
3957 (c_finish_loop): Added a check for array notations in a loop
3958 condition. If true then emit an error.
3959 (lvalue_p): Added a ARRAY_NOTATION_REF case.
3960 (build_binary_op): Added a check for array notation expr inside
3961 op1 and op0. If present, we call another function to find correct
3962 type.
3963 * Make-lang.in (C_AND_OBJC_OBJS): Added c-array-notation.o.
3964 * c-parser.c (c_parser_compound_statement): Check if array
3965 notation code is used in tree, if so, then transform them into
3966 appropriate C code.
3967 (c_parser_expr_no_commas): Check if array notation is used in LHS
3968 or RHS, if so, then build array notation expression instead of
3969 regular modify.
3970 (c_parser_postfix_expression_after_primary): Added a check for
3971 colon(s) after square braces, if so then handle it like an array
3972 notation. Also, break up array notations in unary op if found.
3973 (c_parser_direct_declarator_inner): Added a check for array
3974 notation.
3975 (c_parser_compound_statement): Added a check for array notation in
3976 a stmt. If one is present, then expand array notation expr.
3977 (c_parser_if_statement): Likewise.
3978 (c_parser_switch_statement): Added a check for array notations in
3979 a switch statement's condition. If true, then output an error.
3980 (c_parser_while_statement): Similarly, but for a while.
3981 (c_parser_do_statement): Similarly, but for a do-while.
3982 (c_parser_for_statement): Similarly, but for a for-loop.
3983 (c_parser_unary_expression): Check if array notation is used in a
3984 pre-increment or pre-decrement expression. If true, then expand
3985 them.
3986 (c_parser_array_notation): New function.
3987 * c-array-notation.c: New file.
3988 * c-tree.h (is_cilkplus_reduce_builtin): Protoize.
3989
3990 2013-05-23 Mike Stump <mikestump@comcast.net>
3991
3992 * c-typeck.c (convert_for_assignment): Handle references to memory
3993 spaces better.
3994
3995 2013-05-16 Jason Merrill <jason@redhat.com>
3996
3997 * Make-lang.in (cc1$(exeext)): Use link mutex.
3998
3999 2013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
4000
4001 * c-typeck.c (pointer_diff): Change -Wpointer-arith pedwarns
4002 to simply use OPT_Wpointer_arith.
4003 (build_unary_op): Likewise.
4004
4005 2013-04-03 Jakub Jelinek <jakub@redhat.com>
4006
4007 PR c/19449
4008 * c-parser.c (c_parser_get_builtin_args): Add choose_expr_p
4009 argument. If set, or it temporarily for parsing of the first
4010 argument into force_folding_builtin_constant_p.
4011 (c_parser_postfix_expression): Adjust callers.
4012
4013 2013-03-21 Richard Biener <rguenther@suse.de>
4014
4015 * c-objc-common.c (c_tree_printer): Use DECL_HAS_DEBUG_EXPR_P
4016 instead of DECL_DEBUG_EXPR_IS_FROM. Guard properly.
4017
4018 2013-02-12 Marek Polacek <polacek@redhat.com>
4019
4020 PR c/44938
4021 * c-parser.c (c_parser_postfix_expression_after_primary): Initialize
4022 origtypes to NULL.
4023
4024 2013-01-24 Jakub Jelinek <jakub@redhat.com>
4025
4026 PR c/56078
4027 * c-typeck.c (set_nonincremental_init_from_string): If
4028 constructor_max_index is NULL, treat it as if tree_int_cst_lt
4029 returned false.
4030 (process_init_element): Likewise.
4031
4032 2012-12-20 Jakub Jelinek <jakub@redhat.com>
4033
4034 PR c++/55619
4035 * c-parser.c (c_parser_asm_operands): Remove CONVERT_P
4036 argument, don't call default_function_array_conversion
4037 nor c_fully_fold here.
4038 (c_parser_asm_statement): Adjust callers.
4039 * c-typeck.c (build_asm_expr): Call c_fully_fold on inputs
4040 and outputs here, and call default_function_array_conversion
4041 on inputs that don't need to be addressable.
4042
4043 2012-12-18 Jakub Jelinek <jakub@redhat.com>
4044
4045 PR c/39464
4046 * c-typeck.c (convert_for_assignment): For -Wpointer-sign
4047 warning require that both c_common_unsigned_type as well as
4048 c_common_signed_type is the same for both mvl and mvr types.
4049
4050 2012-11-16 Diego Novillo <dnovillo@google.com>
4051
4052 Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
4053
4054 * c-common.c: Use new vec API in vec.h.
4055 * c-common.h: Likewise.
4056 * c-gimplify.c: Likewise.
4057 * c-pragma.c: Likewise.
4058 * c-pretty-print.c: Likewise.
4059 * c-pretty-print.h: Likewise.
4060 * c-semantics.c: Likewise.
4061 * c-decl.c: Likewise.
4062 * c-parser.c: Likewise.
4063 * c-tree.h: Likewise.
4064 * c-typeck.c: Likewise.
4065
4066 2012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
4067
4068 PR c++/54930
4069 * c-typeck.c (c_finish_return): Use OPT_Wreturn_local_addr.
4070
4071 2012-10-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
4072
4073 PR c/53066
4074 * c-decl.c (warn_if_shadowing): Do not warn if a variable
4075 shadows a function, unless the variable is a function or a
4076 pointer-to-function.
4077
4078 2012-10-12 Jakub Jelinek <jakub@redhat.com>
4079
4080 PR c/54381
4081 * c-parser.c (struct c_tree_loc_pair): Removed.
4082 (c_parser_expr_list): Remove struct c_tree_loc_pair * argument,
4083 add location_t * and tree * arguments, fill in array of 3
4084 sizeof_arg trees and corresponding locs.
4085 (c_parser_attributes, c_parser_objc_keywordexpr): Adjust
4086 c_parser_expr_list callers.
4087 (c_parser_postfix_expression_after_primary): Likewise. Pass
4088 array of 3 sizeof_arg trees and locs (corresponding to first
4089 3 arguments) to sizeof_pointer_memaccess_warning.
4090
4091 2012-10-09 Lawrence Crowl <crowl@google.com>
4092
4093 * Make-lang.in (c-decl.o): Add dependence on hash-table.h.
4094 * c-decl.c (detect_field_duplicates_hash): Change to new type-safe
4095 hash table.
4096
4097 2012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
4098
4099 PR c++/54194
4100 * c-typeck.c (parser_build_binary_op): Update warn_about_parentheses
4101 call.
4102
4103 2012-10-09 Marc Glisse <marc.glisse@inria.fr>
4104
4105 PR c++/54427
4106 * c-typeck.c: Include c-common.h.
4107 (enum stv_conv): Moved to c-common.h.
4108 (scalar_to_vector): Moved to c-common.c.
4109 (build_binary_op): Adapt to scalar_to_vector's new prototype.
4110 * Make-lang.in: c-typeck.c depends on c-common.h.
4111
4112 2012-10-04 Arnaud Charlet <charlet@adacore.com>
4113
4114 * c-decl.c (c_write_global_declarations): Fix handling of
4115 -fdump-ada-spec*.
4116
4117 2012-09-30 Sharad Singhai <singhai@google.com>
4118
4119 * c-decl.c (c_write_global_declarations): Use a different method
4120 to determine if the dump has ben initialized.
4121
4122 2012-09-14 Joseph Myers <joseph@codesourcery.com>
4123
4124 PR c/54552
4125 * c-typeck.c (c_cast_expr): When casting to a type requiring
4126 C_MAYBE_CONST_EXPR to be created, pass the inner expression to
4127 c_fully_fold first.
4128
4129 2012-09-14 Joseph Myers <joseph@codesourcery.com>
4130
4131 PR c/54103
4132 * c-typeck.c (build_unary_op): Pass original argument of
4133 TRUTH_NOT_EXPR to c_objc_common_truthvalue_conversion, then remove
4134 any C_MAYBE_CONST_EXPR, if it has integer operands.
4135 (build_binary_op): Pass original arguments of TRUTH_ANDIF_EXPR,
4136 TRUTH_ORIF_EXPR, TRUTH_AND_EXPR, TRUTH_OR_EXPR and TRUTH_XOR_EXPR
4137 to c_objc_common_truthvalue_conversion, then remove any
4138 C_MAYBE_CONST_EXPR, if they have integer operands. Use
4139 c_objc_common_truthvalue_conversion not
4140 c_common_truthvalue_conversion.
4141 (c_objc_common_truthvalue_conversion): Build NE_EXPR directly and
4142 call note_integer_operands for arguments with integer operands
4143 that are not integer constants.
4144
4145 2012-09-13 Jakub Jelinek <jakub@redhat.com>
4146
4147 PR c/54559
4148 * c-typeck.c (c_finish_return): Do convert to BOOLEAN_TYPE or
4149 COMPLEX_TYPE with in_late_binary_op set temporarily to true.
4150
4151 2012-08-31 Jakub Jelinek <jakub@redhat.com>
4152
4153 PR c/54428
4154 * c-convert.c (convert): Don't call fold_convert_loc if
4155 TYPE_MAIN_VARIANT of a COMPLEX_TYPE is the same, unless e
4156 is a COMPLEX_EXPR. Remove TYPE_MAIN_VARIANT check from
4157 COMPLEX_TYPE -> COMPLEX_TYPE conversion.
4158
4159 2012-08-24 Jakub Jelinek <jakub@redhat.com>
4160
4161 PR c/54355
4162 * c-decl.c (c_parser_label): Pass true as nested and fix up comments
4163 for nested and empty_ok arguments in the call to
4164 c_parser_declaration_or_fndef.
4165
4166 2012-08-17 Jakub Jelinek <jakub@redhat.com>
4167
4168 * c-tree.h (c_last_sizeof_arg): Declare.
4169 * c-parser.c (struct c_tree_loc_pair): New type.
4170 (c_parser_expr_list): Add sizeof_arg argument. Fill it in if
4171 non-NULL.
4172 (c_parser_attributes, c_parser_objc_keywordexpr): Adjust callers.
4173 (c_parser_postfix_expression_after_primary): Likewise. Call
4174 sizeof_pointer_memaccess_warning if needed.
4175 (sizeof_ptr_memacc_comptypes): New function.
4176 * c-typeck.c (c_last_sizeof_arg): New global variable.
4177 (c_expr_sizeof_expr, c_expr_sizeof_type): Initialize it.
4178
4179 2012-07-24 Uros Bizjak <ubizjak@gmail.com>
4180
4181 * c-lang.h (lang_decl): Add variable_size GTY option.
4182
4183 2012-07-16 Steven Bosscher <steven@gcc.gnu.org>
4184
4185 * c-decl.c: Include dumpfile.h instead of tree-dump.h.
4186 * Make-lang.in: Fix dependencies.
4187
4188 2012-06-29 Steven Bosscher <steven@gcc.gnu.org>
4189
4190 * Make-lang.in: New file, rules migrated from gcc/Makefile.in
4191 and add language Makefile hooks.
4192 * config-lang.in: New file.
4193 * c-config-lang.in: Moved from gcc/config-lang.in to here, and
4194 add the required "normal" config-lang.in rules.
4195 * c-lang.h: Moved from gcc/ to here.
4196 * c-tree.h: Likewise.
4197 * c-objc-common.c: Likewise.
4198 * c-objc-common.h: Likewise.
4199 * c-typeck.c: Likewise.
4200 * c-convert.c: Likewise.
4201 * c-lang.c: Likewise.
4202 * c-aux-info.c: Likewise.
4203 * c-errors.c: Likewise.
4204 * gccspec.c: Likewise.
4205 * c-decl.c: Likewise. Include gt-c-c-decl.h, not gt-c-decl.h.
4206 * c-parser.c: Likewise. Include gt-c-c-parser.h, not gt-c-parser.h.
4207 \f
4208 Copyright (C) 2012-2017 Free Software Foundation, Inc.
4209
4210 Copying and distribution of this file, with or without modification,
4211 are permitted in any medium without royalty provided the copyright
4212 notice and this notice are preserved.