]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/c/ChangeLog
crtfastmath.c: Compile only for !_SOFT_FLOAT.
[thirdparty/gcc.git] / gcc / c / ChangeLog
CommitLineData
ee1d5a02
JJ
12013-11-01 Jakub Jelinek <jakub@redhat.com>
2
3 * c-typeck.c (c_finish_omp_clauses) <case OMP_CLAUSE_UNIFORM>: Go to
4 check_dup_generic at the end, unless remove is true.
5 (c_finish_omp_clauses) <case OMP_CLAUSE_REDUCTION>: Add break; after
6 remove = true;.
7 (c_finish_omp_clauses) <case OMP_CLAUSE_COPYIN>: Likewise.
8
5a9785fb
JJ
92013-10-31 Jakub Jelinek <jakub@redhat.com>
10
11 * c-typeck.c (c_finish_omp_clauses): Diagnose aligned clause
12 with decl that is not pointer nor array.
13
939b37da
BI
142013-10-29 Balaji V. Iyer <balaji.v.iyer@intel.com>
15
16 * c-decl.c (finish_function): Added a call for insert_cilk_frame when
17 a spawning function is found.
18 * c-objc-common.h (LANG_HOOKS_CILKPLUS_GIMPLIFY_SPAWN): New #define.
19 (LANG_HOOKS_CILKPLUS_FRAME_CLEANUP): Likewise.
20 (LANG_HOOKS_CILKPLUS_DETECT_SPAWN_AND_UNWRAP): Likewise.
21 * c-parser.c (c_parser_statement_after_labels): Added RID_CILK_SYNC
22 case.
23 (c_parser_postfix_expression): Added RID_CILK_SPAWN case.
24 * c-typeck.c (build_compound_expr): Reject _Cilk_spawn in a comma
25 expr.
26 (c_finish_return): Added a check to reject _Cilk_spawn in return
27 expression.
28 (build_cilk_spawn): New function.
29 (build_cilk_sync): Likewise.
30 * Makefile.in (c-decl.o): Added cilk.h in dependency list.
31
d4af74d4
TB
322013-10-27 Tobias Burnus <burnus@net-b.de>
33
34 PR other/33426
35 * c-parser.c (c_parser_while_statement, c_parser_while_statement,
36 c_parser_pragma): Add GCC ivdep support to 'do' and 'while'.
37 (c_parser_statement_after_labels): Update calls.
38
d73749df 392013-10-24 Tobias Burnus <burnus@net-b.de>
8170608b
TB
40
41 PR other/33426
42 * c-parser.c (c_parser_pragma, c_parser_for_statement):
43 Handle PRAGMA_IVDEP.
44 (c_parser_statement_after_labels): Update call.
45
f28aa681
MP
462013-10-24 Marek Polacek <polacek@redhat.com>
47
48 * c-parser.c (c_parser_struct_declaration): Add a comment.
49 (c_parser_declarator): Don't allow _Alignas here.
50
0645c1a2
AM
512013-10-17 Andrew MacLeod <amacleod@redhat.com>
52
53 * c-parser.c: Include omp-low.h.
54 * c-typeck.c: Likewise.
55
568a31f2
MP
562013-10-17 Marek Polacek <polacek@redhat.com>
57
58 PR c/58267
59 * c-parser.c (c_parser_declspecs): Add alignspec_ok parameter.
60 Document syntax of the array-declarator.
61 (c_parser_declspecs) <RID_ALIGNAS>: Bail out if alignment specs
62 are not permitted.
63 (c_parser_declaration_or_fndef): Adjust c_parser_declspecs call.
64 (c_parser_struct_declaration): Likewise.
65 (c_parser_declarator): Likewise.
66 (c_parser_direct_declarator_inner): Likewise.
67 (c_parser_parameter_declaration): Likewise.
68 (c_parser_type_name): Likewise.
69
acf0174b
JJ
702013-10-11 Jakub Jelinek <jakub@redhat.com>
71
72 * c-lang.h (current_omp_declare_target_attribute): New extern
73 decl.
74 * c-parser.c: Include c-lang.h.
75 (struct c_parser): Change tokens to c_token *.
76 Add tokens_buf field. Change tokens_avail type to unsigned int.
77 (c_parser_consume_token): If parser->tokens isn't
78 &parser->tokens_buf[0], increment parser->tokens.
79 (c_parser_consume_pragma): Likewise.
80 (enum pragma_context): Add pragma_struct and pragma_param.
81 (c_parser_external_declaration): Adjust
82 c_parser_declaration_or_fndef caller.
83 (c_parser_declaration_or_fndef): Add omp_declare_simd_clauses
84 argument, if it is non-vNULL vector, call c_finish_omp_declare_simd.
85 Adjust recursive call.
86 (c_parser_struct_or_union_specifier): Use pragma_struct instead
87 of pragma_external.
88 (c_parser_parameter_declaration): Use pragma_param instead of
89 pragma_external.
90 (c_parser_compound_statement_nostart, c_parser_label,
91 c_parser_for_statement): Adjust
92 c_parser_declaration_or_fndef callers.
93 (c_parser_expr_no_commas): Add omp_atomic_lhs argument, pass
94 it through to c_parser_conditional_expression.
95 (c_parser_conditional_expression): Add omp_atomic_lhs argument,
96 pass it through to c_parser_binary_expression. Adjust recursive
97 call.
98 (c_parser_binary_expression): Remove prec argument, add
99 omp_atomic_lhs argument instead. Always start from PREC_NONE, if
100 omp_atomic_lhs is non-NULL and one of the arguments of toplevel
101 binop matches it, use build2 instead of parser_build_binary_op.
102 (c_parser_pragma): Handle PRAGMA_OMP_CANCEL,
103 PRAGMA_OMP_CANCELLATION_POINT, PRAGMA_OMP_TARGET,
104 PRAGMA_OMP_END_DECLARE_TARGET, PRAGMA_OMP_DECLARE_REDUCTION.
105 Handle pragma_struct and pragma_param the same as pragma_external.
106 (c_parser_omp_clause_name): Parse new OpenMP 4.0 clause names.
107 (c_parser_omp_variable_list): Parse array sections for
108 OMP_CLAUSE_{DEPEND,MAP,TO,FROM} clauses.
109 (c_parser_omp_clause_collapse): Fully fold collapse expression.
110 (c_parser_omp_clause_reduction): Handle user defined reductions.
111 (c_parser_omp_clause_branch, c_parser_omp_clause_cancelkind,
112 c_parser_omp_clause_num_teams, c_parser_omp_clause_thread_limit,
113 c_parser_omp_clause_aligned, c_parser_omp_clause_linear,
114 c_parser_omp_clause_safelen, c_parser_omp_clause_simdlen,
115 c_parser_omp_clause_depend, c_parser_omp_clause_map,
116 c_parser_omp_clause_device, c_parser_omp_clause_dist_schedule,
117 c_parser_omp_clause_proc_bind, c_parser_omp_clause_to,
118 c_parser_omp_clause_from, c_parser_omp_clause_uniform): New functions.
119 (c_parser_omp_all_clauses): Add finish_p argument. Don't call
120 c_finish_omp_clauses if it is false. Handle new OpenMP 4.0 clauses.
121 (c_parser_omp_atomic): Parse seq_cst clause, pass true if it is
122 present to c_finish_omp_atomic. Handle OpenMP 4.0 atomic forms.
123 (c_parser_omp_for_loop): Add CODE argument, pass it through
124 to c_finish_omp_for. Change last argument to cclauses,
125 and adjust uses to grab parallel clauses from the array of all
126 the split clauses. Adjust c_parser_binary_expression,
127 c_parser_declaration_or_fndef and c_finish_omp_for callers.
128 (omp_split_clauses): New function.
129 (c_parser_omp_simd): New function.
130 (c_parser_omp_for): Add p_name, mask and cclauses arguments.
131 Allow the function to be called also when parsing combined constructs,
132 and call c_parser_omp_simd when parsing for simd.
133 (c_parser_omp_sections_scope): If section-sequence doesn't start with
134 #pragma omp section, require exactly one structured-block instead of
135 sequence of statements.
136 (c_parser_omp_sections): Add p_name, mask and cclauses arguments.
137 Allow the function to be called also when parsing combined constructs.
138 (c_parser_omp_parallel): Add p_name, mask and cclauses arguments.
139 Allow the function to be called also when parsing combined
140 constructs.
141 (c_parser_omp_taskgroup, c_parser_omp_cancel,
142 c_parser_omp_cancellation_point, c_parser_omp_distribute,
143 c_parser_omp_teams, c_parser_omp_target_data,
144 c_parser_omp_target_update, c_parser_omp_target,
145 c_parser_omp_declare_simd, c_finish_omp_declare_simd,
146 c_parser_omp_declare_target, c_parser_omp_end_declare_target,
147 c_parser_omp_declare_reduction, c_parser_omp_declare): New functions.
148 (c_parser_omp_construct): Add p_name and mask vars. Handle
149 PRAGMA_OMP_DISTRIBUTE, PRAGMA_OMP_SIMD, PRAGMA_OMP_TASKGROUP,
150 PRAGMA_OMP_TEAMS. Adjust c_parser_omp_for, c_parser_omp_parallel
151 and c_parser_omp_sections callers.
152 (c_parse_file): Initialize tparser.tokens and the_parser->tokens here.
153 (OMP_FOR_CLAUSE_MASK, OMP_SECTIONS_CLAUSE_MASK,
154 OMP_SINGLE_CLAUSE_MASK): Use OMP_CLAUSE_MASK_1 instead of 1.
155 (OMP_PARALLEL_CLAUSE_MASK): Likewise. Add OMP_CLAUSE_PROC_BIND.
156 (OMP_TASK_CLAUSE_MASK): Use OMP_CLAUSE_MASK_1 instead of 1. Add
157 OMP_CLAUSE_DEPEND.
158 (OMP_SIMD_CLAUSE_MASK, OMP_CANCEL_CLAUSE_MASK,
159 OMP_CANCELLATION_POINT_CLAUSE_MASK, OMP_DISTRIBUTE_CLAUSE_MASK,
160 OMP_TEAMS_CLAUSE_MASK, OMP_TARGET_DATA_CLAUSE_MASK,
161 OMP_TARGET_UPDATE_CLAUSE_MASK, OMP_TARGET_CLAUSE_MASK,
162 OMP_DECLARE_SIMD_CLAUSE_MASK): Define.
163 * c-typeck.c: Include tree-inline.h.
164 (c_finish_omp_cancel, c_finish_omp_cancellation_point,
165 handle_omp_array_sections_1, handle_omp_array_sections,
166 c_clone_omp_udr, c_find_omp_placeholder_r): New functions.
167 (c_finish_omp_clauses): Handle new OpenMP 4.0 clauses and
168 user defined reductions.
169 (c_tree_equal): New function.
170 * c-tree.h (temp_store_parm_decls, temp_pop_parm_decls,
171 c_finish_omp_cancel, c_finish_omp_cancellation_point, c_tree_equal,
172 c_omp_reduction_id, c_omp_reduction_decl, c_omp_reduction_lookup,
173 c_check_omp_declare_reduction_r): New prototypes.
174 * c-decl.c (current_omp_declare_target_attribute): New variable.
175 (c_decl_attributes): New function.
176 (start_decl, start_function): Use it instead of decl_attributes.
177 (temp_store_parm_decls, temp_pop_parm_decls, c_omp_reduction_id,
178 c_omp_reduction_decl, c_omp_reduction_lookup,
179 c_check_omp_declare_reduction_r): New functions.
180
0a6c2227
TT
1812013-09-25 Tom Tromey <tromey@redhat.com>
182
183 * Make-lang.in (c/gccspec.o): Remove.
184 (CFLAGS-c/gccspec.o): New variable.
185 (cc1-checksum.o, C_TREE_H, c/c-aux-info.o, c/c-convert.o)
186 (c/c-decl.o, c/c-errors.o, c/c-lang.o, c/c-objc-common.o)
187 (c/c-parser.o, c/c-typeck.o, c/c-array-notation.o): Remove.
188
f3bc55f0
TT
1892013-09-25 Tom Tromey <tromey@redhat.com>
190
191 * Make-lang.in (c/gccspec.o): Don't use subshell.
192
a24d975c
MP
1932013-09-18 Marek Polacek <polacek@redhat.com>
194
195 PR sanitize/58443
196 * c-typeck.c (build_binary_op): Properly honor -fsanitize options.
197 Remove unnecessary check.
198
ce6923c5
MP
1992013-09-18 Marek Polacek <polacek@redhat.com>
200
201 PR sanitizer/58411
202 * c-typeck.c (build_binary_op): Don't sanitize function if it has the
203 no_sanitize_undefined attribute.
204
a1e51df9
KT
2052013-09-13 Kai Tietz <ktietz@redhat.com>
206
207 PR target/57848
208 * c-decl.c (c_builtin_function_ext_scope): Remove
209 wrong assumption that it is never called on prexisting
210 symbol.
211
0af94e6f
JR
2122013-09-08 Joern Rennecke <joern.rennecke@embecosm.com>
213
214 * c-typeck.c (build_binary_op): Use vector_types_compatible_elements_p.
215
20059c8b
GDR
2162013-09-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
217
218 * c-objc-common.c (c_tree_printer): Tidy.
219
de5a5fa1
MP
2202013-08-30 Marek Polacek <polacek@redhat.com>
221
222 * c-typeck.c (build_binary_op): Add division by zero and shift
223 instrumentation.
224
2531a1d9 2252013-08-26 Joern Rennecke <joern.rennecke@embecosm.com>
0fdd4508 226 Joseph Myers <joseph@codesourcery.com>
2531a1d9 227
6e2bcc98 228 PR c/35649
2531a1d9
JR
229 * c-typeck.c (c_common_type): Prefer double_type_node over
230 other REAL_TYPE types with the same precision.
231 (convert_arguments): Likewise.
232
025311c4
GDR
2332013-08-23 Gabriel Dos Reis <gdr@integrable-solutions.net>
234
235 * c-objc-common.c (c_tree_printer): Document the nature of the cast.
236 (c_initialize_diagnostics): Call a destructor for the early printer.
237
da6ca2b5
GDR
2382013-08-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
239
240 * c-objc-common.c (c_initialize_diagnostics): Simplify C pretty
241 printer initialization.
242
318cda85 2432013-08-19 Balaji V. Iyer <balaji.v.iyer@intel.com>
da6ca2b5 244
318cda85
BI
245 PR c/57490
246 * c-array-notation.c (fix_conditional_array_notations_1): Added a
247 check for truth values.
248 (expand_array_notation_exprs): Added truth values case. Removed an
249 unwanted else. Added for-loop to walk through subtrees in default
250 case.
251
b066401f
GDR
2522013-08-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
253
254 * c-objc-common.c (c_initialize_diagnostics): Don't call pp_base.
255
fb48aadc
JM
2562013-07-23 Joseph Myers <joseph@codesourcery.com>
257
258 * c-parser.c (struct c_generic_association): Fix typo.
259
433cc7b0
TT
2602013-07-23 Tom Tromey <tromey@redhat.com>
261 Joseph Myers <joseph@codesourcery.com>
262
263 * c-parser.c (struct c_generic_association): New.
264 (c_generic_association_d): New typedef.
265 (c_parser_generic_selection): New function.
266 (c_parser_postfix_expression): Handle RID_GENERIC.
267
26d40c3d
JM
2682013-07-13 Jason Merrill <jason@redhat.com>
269
270 PR c++/57793
271 * c-decl.c (finish_struct): Check for too-large class.
272
ecdbd01a 2732013-07-04 Joern Rennecke <joern.rennecke@embecosm.com>
40d3d530
JR
274
275 PR c/57821
276 * c-typeck.c (set_init_index): When folding, check for index overflow.
277
1141ed3f
BI
2782013-06-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
279
280 * c-parser.c (c_parser_array_notation): Removed rejection of array
281 notations in an array of function pointers.
282
713b46fa
BI
2832013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
284
285 * c-array-notation.c (make_triplet_val_inv): New function.
286 (create_cmp_incr): Likewise.
287 (create_array_refs): Likewise.
288 (fix_builtin_array_notation_fn): Replaced all mallocs with tree vec.
289 Also modularized common parts between functions and called the function.
290 (build_array_notation_expr): Likewise.
291 (fix_conditional_array_notations_1): Likewise.
292 (fix_array_notation_expr): Likewise.
293 (fix_array_notation_call_expr): Likewise.
294
92f20202
MP
2952013-06-18 Marek Polacek <polacek@redhat.com>
296
297 PR c/57630
298 * c-decl.c (check_for_loop_decls): Improve diagnostics messages.
299
73a23b06
BI
3002013-06-12 Balaji V. Iyer <balaji.v.iyer@intel.com>
301
302 * c-array-notation.c (build_array_notation_expr): Reject array notation
303 mismatch between LHS and RHS even inside a call_expr. Also, removed
304 a couple while statements that were dead code.
305
00b8517d
BI
3062013-06-10 Balaji V. Iyer <balaji.v.iyer@intel.com>
307
308 * c-array-notation.c (fix_builtin_array_notation_fn): Fully folded
309 excessive precision expressions in function parameters. Also removed
310 couple unwanted while statements.
311
1509bdda
BI
3122013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
313
314 * c-array-notation.c (expand_array_notation_exprs): Added
315 ARRAY_NOTATION_REF case.
316
d60f1706
BI
3172013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
318
319 * c-array-notation.c (length_mismatch_in_expr_p): Moved this
320 function to c-family/array-notation-common.c.
321 (is_cilkplus_reduce_builtin): Likewise.
322 (find_rank): Likewise.
323 (extract_array_notation_exprs): Likewise.
324 (replace_array_notations): Likewise.
325 (find_inv_trees): Likewise.
326 (replace_inv_trees): Likewise.
327 (contains_array_notation_expr): Likewise.
328 (find_correct_array_notation_type): Likewise.
329 (replace_invariant_exprs): Initialized additional_tcodes to NULL.
330 (struct inv_list): Moved this to c-family/array-notation-common.c.
331 * c-tree.h (is_cilkplus_builtin_reduce): Remove prototype.
332
6d6efbb3
BI
3332013-06-05 Balaji V. Iyer <balaji.v.iyer@intel.com>
334
335 * c-typeck.c (convert_arguments): Moved checking of builtin cilkplus
336 reduction functions outside the for-loop. Added a check if the fundecl
337 is non-NULL. Finally, removed an unwanted if-statement, and made the
338 body unconditional.
339
25c22937
BI
3402013-06-03 Balaji V. Iyer <balaji.v.iyer@intel.com>
341
342 * c-typeck.c (c_finish_if_stmt): Added a check to see if the rank of the
343 condition of the if-statement matches the rank of else-block and then-
344 block when array notations are used.
345 * c-parser.c (c_parser_declaration_or_fndef): Expanded array notation
346 expression after the entire function body is parsed.
347 (c_parser_expr_no_commas): Delayed creating array notation expressions
348 to the end of function parsing.
349 * c-array-notation.c (fix_conditional_array_notations_1): Expanded the
350 whole if-statement instead of just the condition.
351 (expand_array_notation_exprs): Added MODIFY_EXPR case.
352
edd25645
BI
3532013-06-03 Balaji V. Iyer <balaji.v.iyer@intel.com>
354
355 PR c/57474
356 * c-array-notation.c (build_array_notation_expr): Initialized rhs_length
357 array to NULL_TREE if they are unused. Also added a check for the
358 field to be NULL before its fields are used in future.
359
065ce7f1
RO
3602013-05-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
361
362 PR bootstrap/57450
363 * c-array-notation.c (length_mismatch_in_expr_p): Use absu_hwi.
364 (build_array_notation_expr): Likewise.
365
36536d79
BI
3662013-05-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
367
368 * c-typeck.c (build_array_ref): Added a check to see if array's
369 index is greater than one. If true, then emit an error.
370 (build_function_call_vec): Exclude error reporting and checking
371 for builtin array-notation functions.
372 (convert_arguments): Likewise.
373 (c_finish_return): Added a check for array notations as a return
374 expression. If true, then emit an error.
375 (c_finish_loop): Added a check for array notations in a loop
376 condition. If true then emit an error.
377 (lvalue_p): Added a ARRAY_NOTATION_REF case.
378 (build_binary_op): Added a check for array notation expr inside
379 op1 and op0. If present, we call another function to find correct
380 type.
381 * Make-lang.in (C_AND_OBJC_OBJS): Added c-array-notation.o.
382 * c-parser.c (c_parser_compound_statement): Check if array
383 notation code is used in tree, if so, then transform them into
384 appropriate C code.
385 (c_parser_expr_no_commas): Check if array notation is used in LHS
386 or RHS, if so, then build array notation expression instead of
387 regular modify.
388 (c_parser_postfix_expression_after_primary): Added a check for
389 colon(s) after square braces, if so then handle it like an array
390 notation. Also, break up array notations in unary op if found.
391 (c_parser_direct_declarator_inner): Added a check for array
392 notation.
393 (c_parser_compound_statement): Added a check for array notation in
394 a stmt. If one is present, then expand array notation expr.
395 (c_parser_if_statement): Likewise.
396 (c_parser_switch_statement): Added a check for array notations in
397 a switch statement's condition. If true, then output an error.
398 (c_parser_while_statement): Similarly, but for a while.
399 (c_parser_do_statement): Similarly, but for a do-while.
400 (c_parser_for_statement): Similarly, but for a for-loop.
401 (c_parser_unary_expression): Check if array notation is used in a
402 pre-increment or pre-decrement expression. If true, then expand
403 them.
404 (c_parser_array_notation): New function.
405 * c-array-notation.c: New file.
406 * c-tree.h (is_cilkplus_reduce_builtin): Protoize.
407
cd192ccc
MS
4082013-05-23 Mike Stump <mikestump@comcast.net>
409
410 * c-typeck.c (convert_for_assignment): Handle references to memory
411 spaces better.
412
427b248d
JM
4132013-05-16 Jason Merrill <jason@redhat.com>
414
415 * Make-lang.in (cc1$(exeext)): Use link mutex.
416
44d90fe1
PC
4172013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
418
419 * c-typeck.c (pointer_diff): Change -Wpointer-arith pedwarns
420 to simply use OPT_Wpointer_arith.
421 (build_unary_op): Likewise.
422
4e7d7b3d
JJ
4232013-04-03 Jakub Jelinek <jakub@redhat.com>
424
425 PR c/19449
426 * c-parser.c (c_parser_get_builtin_args): Add choose_expr_p
427 argument. If set, or it temporarily for parsing of the first
428 argument into force_folding_builtin_constant_p.
429 (c_parser_postfix_expression): Adjust callers.
430
839b422f
RB
4312013-03-21 Richard Biener <rguenther@suse.de>
432
433 * c-objc-common.c (c_tree_printer): Use DECL_HAS_DEBUG_EXPR_P
434 instead of DECL_DEBUG_EXPR_IS_FROM. Guard properly.
435
2ee028f1
MP
4362013-02-12 Marek Polacek <polacek@redhat.com>
437
438 PR c/44938
439 * c-parser.c (c_parser_postfix_expression_after_primary): Initialize
440 origtypes to NULL.
441
8824edff
JJ
4422013-01-24 Jakub Jelinek <jakub@redhat.com>
443
444 PR c/56078
445 * c-typeck.c (set_nonincremental_init_from_string): If
446 constructor_max_index is NULL, treat it as if tree_int_cst_lt
447 returned false.
448 (process_init_element): Likewise.
449
eadd3d0d
JJ
4502012-12-20 Jakub Jelinek <jakub@redhat.com>
451
452 PR c++/55619
453 * c-parser.c (c_parser_asm_operands): Remove CONVERT_P
454 argument, don't call default_function_array_conversion
455 nor c_fully_fold here.
456 (c_parser_asm_statement): Adjust callers.
457 * c-typeck.c (build_asm_expr): Call c_fully_fold on inputs
458 and outputs here, and call default_function_array_conversion
459 on inputs that don't need to be addressable.
460
f8a93a2e
JJ
4612012-12-18 Jakub Jelinek <jakub@redhat.com>
462
463 PR c/39464
464 * c-typeck.c (convert_for_assignment): For -Wpointer-sign
465 warning require that both c_common_unsigned_type as well as
466 c_common_signed_type is the same for both mvl and mvr types.
467
9771b263
DN
4682012-11-16 Diego Novillo <dnovillo@google.com>
469
470 Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
471
472 * c-common.c: Use new vec API in vec.h.
473 * c-common.h: Likewise.
474 * c-gimplify.c: Likewise.
475 * c-pragma.c: Likewise.
476 * c-pretty-print.c: Likewise.
477 * c-pretty-print.h: Likewise.
478 * c-semantics.c: Likewise.
479 * c-decl.c: Likewise.
480 * c-parser.c: Likewise.
481 * c-tree.h: Likewise.
482 * c-typeck.c: Likewise.
483
880661a4
JW
4842012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
485
486 PR c++/54930
487 * c-typeck.c (c_finish_return): Use OPT_Wreturn_local_addr.
488
077d1abe
MLI
4892012-10-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
490
491 PR c/53066
492 * c-decl.c (warn_if_shadowing): Do not warn if a variable
493 shadows a function, unless the variable is a function or a
494 pointer-to-function.
495
3a785c97
JJ
4962012-10-12 Jakub Jelinek <jakub@redhat.com>
497
498 PR c/54381
499 * c-parser.c (struct c_tree_loc_pair): Removed.
500 (c_parser_expr_list): Remove struct c_tree_loc_pair * argument,
501 add location_t * and tree * arguments, fill in array of 3
502 sizeof_arg trees and corresponding locs.
503 (c_parser_attributes, c_parser_objc_keywordexpr): Adjust
504 c_parser_expr_list callers.
505 (c_parser_postfix_expression_after_primary): Likewise. Pass
506 array of 3 sizeof_arg trees and locs (corresponding to first
507 3 arguments) to sizeof_pointer_memaccess_warning.
508
703c8606
LC
5092012-10-09 Lawrence Crowl <crowl@google.com>
510
511 * Make-lang.in (c-decl.o): Add dependence on hash-table.h.
512 * c-decl.c (detect_field_duplicates_hash): Change to new type-safe
513 hash table.
514
5d9de0d0
PC
5152012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
516
517 PR c++/54194
518 * c-typeck.c (parser_build_binary_op): Update warn_about_parentheses
519 call.
520
a212e43f
MG
5212012-10-09 Marc Glisse <marc.glisse@inria.fr>
522
523 PR c++/54427
524 * c-typeck.c: Include c-common.h.
525 (enum stv_conv): Moved to c-common.h.
526 (scalar_to_vector): Moved to c-common.c.
527 (build_binary_op): Adapt to scalar_to_vector's new prototype.
528 * Make-lang.in: c-typeck.c depends on c-common.h.
529
3b78de56
AC
5302012-10-04 Arnaud Charlet <charlet@adacore.com>
531
532 * c-decl.c (c_write_global_declarations): Fix handling of
533 -fdump-ada-spec*.
534
78c60e3d
SS
5352012-09-30 Sharad Singhai <singhai@google.com>
536
537 * c-decl.c (c_write_global_declarations): Use a different method
538 to determine if the dump has ben initialized.
539
9f33203d
JM
5402012-09-14 Joseph Myers <joseph@codesourcery.com>
541
542 PR c/54552
543 * c-typeck.c (c_cast_expr): When casting to a type requiring
544 C_MAYBE_CONST_EXPR to be created, pass the inner expression to
545 c_fully_fold first.
546
a27d595d
JM
5472012-09-14 Joseph Myers <joseph@codesourcery.com>
548
549 PR c/54103
550 * c-typeck.c (build_unary_op): Pass original argument of
551 TRUTH_NOT_EXPR to c_objc_common_truthvalue_conversion, then remove
552 any C_MAYBE_CONST_EXPR, if it has integer operands.
553 (build_binary_op): Pass original arguments of TRUTH_ANDIF_EXPR,
554 TRUTH_ORIF_EXPR, TRUTH_AND_EXPR, TRUTH_OR_EXPR and TRUTH_XOR_EXPR
555 to c_objc_common_truthvalue_conversion, then remove any
556 C_MAYBE_CONST_EXPR, if they have integer operands. Use
557 c_objc_common_truthvalue_conversion not
558 c_common_truthvalue_conversion.
559 (c_objc_common_truthvalue_conversion): Build NE_EXPR directly and
560 call note_integer_operands for arguments with integer operands
561 that are not integer constants.
562
9feb29df
JJ
5632012-09-13 Jakub Jelinek <jakub@redhat.com>
564
565 PR c/54559
566 * c-typeck.c (c_finish_return): Do convert to BOOLEAN_TYPE or
567 COMPLEX_TYPE with in_late_binary_op set temporarily to true.
568
d409320c
JJ
5692012-08-31 Jakub Jelinek <jakub@redhat.com>
570
571 PR c/54428
572 * c-convert.c (convert): Don't call fold_convert_loc if
573 TYPE_MAIN_VARIANT of a COMPLEX_TYPE is the same, unless e
574 is a COMPLEX_EXPR. Remove TYPE_MAIN_VARIANT check from
575 COMPLEX_TYPE -> COMPLEX_TYPE conversion.
576
6265d07c
JJ
5772012-08-24 Jakub Jelinek <jakub@redhat.com>
578
579 PR c/54355
580 * c-decl.c (c_parser_label): Pass true as nested and fix up comments
581 for nested and empty_ok arguments in the call to
582 c_parser_declaration_or_fndef.
583
1a4049e7
JJ
5842012-08-17 Jakub Jelinek <jakub@redhat.com>
585
586 * c-tree.h (c_last_sizeof_arg): Declare.
587 * c-parser.c (struct c_tree_loc_pair): New type.
588 (c_parser_expr_list): Add sizeof_arg argument. Fill it in if
589 non-NULL.
590 (c_parser_attributes, c_parser_objc_keywordexpr): Adjust callers.
591 (c_parser_postfix_expression_after_primary): Likewise. Call
592 sizeof_pointer_memaccess_warning if needed.
593 (sizeof_ptr_memacc_comptypes): New function.
594 * c-typeck.c (c_last_sizeof_arg): New global variable.
595 (c_expr_sizeof_expr, c_expr_sizeof_type): Initialize it.
596
0229aee9
UB
5972012-07-24 Uros Bizjak <ubizjak@gmail.com>
598
599 * c-lang.h (lang_decl): Add variable_size GTY option.
600
7ee2468b
SB
6012012-07-16 Steven Bosscher <steven@gcc.gnu.org>
602
603 * c-decl.c: Include dumpfile.h instead of tree-dump.h.
604 * Make-lang.in: Fix dependencies.
605
d4a10d0a
SB
6062012-06-29 Steven Bosscher <steven@gcc.gnu.org>
607
608 * Make-lang.in: New file, rules migrated from gcc/Makefile.in
609 and add language Makefile hooks.
610 * config-lang.in: New file.
611 * c-config-lang.in: Moved from gcc/config-lang.in to here, and
612 add the required "normal" config-lang.in rules.
613 * c-lang.h: Moved from gcc/ to here.
614 * c-tree.h: Likewise.
615 * c-objc-common.c: Likewise.
616 * c-objc-common.h: Likewise.
617 * c-typeck.c: Likewise.
618 * c-convert.c: Likewise.
619 * c-lang.c: Likewise.
620 * c-aux-info.c: Likewise.
621 * c-errors.c: Likewise.
622 * gccspec.c: Likewise.
623 * c-decl.c: Likewise. Include gt-c-c-decl.h, not gt-c-decl.h.
624 * c-parser.c: Likewise. Include gt-c-c-parser.h, not gt-c-parser.h.
625\f
d1e082c2 626Copyright (C) 2012-2013 Free Software Foundation, Inc.
d4a10d0a
SB
627
628Copying and distribution of this file, with or without modification,
629are permitted in any medium without royalty provided the copyright
630notice and this notice are preserved.