]> gcc.gnu.org Git - gcc.git/blame - gcc/c/ChangeLog
altivec.md (UNSPEC_VPERM_X, [...]): Remove.
[gcc.git] / gcc / c / ChangeLog
CommitLineData
18f429e2
AM
12013-11-14 Andrew MacLeod <amacleod@redhat.com>
2
3 * c-typeck.c: Include only gimplify.h and gimple.h as needed.
4
38b7bc7f
JM
52013-11-13 Joseph Myers <joseph@codesourcery.com>
6
7 * c-tree.h (c_typespec_keyword): Add cts_auto_type.
8 * c-decl.c (declspecs_add_type, finish_declspecs): Handle
9 __auto_type.
10 * c-parser.c (c_token_starts_typename, c_token_starts_declspecs)
11 (c_parser_attribute_any_word, c_parser_objc_selector): Handle
12 RID_AUTO_TYPE.
13 (c_parser_declspecs): Take argument AUTO_TYPE_OK.
14 (c_parser_declaration_or_fndef, c_parser_struct_declaration)
15 (c_parser_declarator, c_parser_direct_declarator_inner)
16 (c_parser_parameter_declaration, c_parser_type_name): All callers
17 changed.
18 (c_parser_declaration_or_fndef): Handle declarations with type
19 determined from the initializer.
20
45b0be94
AM
212013-11-12 Andrew MacLeod <amacleod@redhat.com>
22
18f429e2 23 * c-typeck.c: Include gimplify.h.
45b0be94 24
582d9b50
JM
252013-11-12 Joseph Myers <joseph@codesourcery.com>
26
27 * c-tree.h (struct c_declspecs): Add thread_gnu_p field.
28 * c-parser.c (c_parser_declspecs): Mention _Thread_local in
29 comment.
30 * c-decl.c (shadow_tag_warned, grokdeclarator): Mention __thread
31 or _Thread_local as appropriate in diagnostics.
32 (build_null_declspecs): Initialize ret->thread_gnu_p.
33 (declspecs_add_scspec): Handle either __thread or _Thread_local
34 for RID_THREAD. Diagnose _Thread_local for pre-C11 standards if
35 pedantic. Do not disallow _Thread_local extern and _Thread_local
36 static.
37
267bac10
JM
382013-11-07 Joseph Myers <joseph@codesourcery.com>
39 Andrew MacLeod <amacleod@redhat.com>
40
41 * c-aux-info.c (gen_type): Handle atomic qualifier.
42 * c-decl.c (validate_proto_after_old_defn): Do not remove atomic
43 qualifiers when compating types.
44 (shadow_tag_warned): Handle atomic_p in declspecs.
45 (quals_from_declspecs): Likewise.
46 (start_decl): Use c_type_promotes_to when promoting argument
47 types.
48 (grokdeclarator): Handle _Atomic.
49 (get_parm_info): Diagnose any qualifier on "void" as only
50 parameter.
51 (store_parm_decls_oldstyle): Do not remove atomic qualifiers when
52 comparing types. Use c_type_promotes_to when promoting argument
53 types.
54 (finish_function): Use c_type_promotes_to when promoting argument
55 types.
56 (build_null_declspecs): Handle atomic_p in declspecs.
57 (declspecs_add_qual): Handle RID_ATOMIC.
58 * c-parser.c (c_token_starts_typename, c_token_is_qualifier)
59 (c_token_starts_declspecs): Handle RID_ATOMIC.
60 (c_parser_declspecs): Handle atomic type specifiers and
61 qualifiers.
62 (c_parser_typeof_specifier): Remove const and _Atomic qualifiers
63 from types of expressions with atomic type.
64 (c_parser_direct_declarator_inner): Use convert_lvalue_to_rvalue.
65 (c_parser_attribute_any_word): Handle RID_ATOMIC.
66 (c_parser_initializer, c_parser_initelt, c_parser_initval)
67 (c_parser_statement_after_labels, c_parser_switch_statement)
68 (c_parser_for_statement, c_parser_expr_no_commas)
69 (c_parser_conditional_expression, c_parser_binary_expression)
70 (c_parser_cast_expression, c_parser_unary_expression)
71 (c_parser_postfix_expression)
72 (c_parser_postfix_expression_after_primary, c_parser_expression):
73 Use convert_lvalue_to_rvalue.
74 (c_parser_expression_conv, c_parser_expr_list): Document
75 conversion of lvalues to rvalues. Use convert_lvalue_to_rvalue.
76 (c_parser_objc_synchronized_statement): Use
77 convert_lvalue_to_rvalue.
78 (c_parser_objc_selector): Handle RID_ATOMIC.
79 (c_parser_objc_receiver, c_parser_array_notation): Use
80 convert_lvalue_to_rvalue.
81 * c-tree.h (ctsk_typeof): Adjust comment to mention use for
82 _Atomic (type-name).
83 (struct c_declspecs): Add atomic_p field.
84 (convert_lvalue_to_rvalue): Declare.
85 * c-typeck.c (c_type_promotes_to): Promote atomic types to
86 corresponding atomic types.
87 (qualify_type): Don't add _Atomic qualifiers from second argument.
88 (comp_target_types): Do not allow _Atomic mismatches.
89 (type_lists_compatible_p): Do not remove atomic qualifiers when
90 comparing types.
91 (really_atomic_lvalue, convert_lvalue_to_rvalue)
92 (build_atomic_assign): New functions.
93 (build_unary_op): Use build_atomic_assign for atomic increment and
94 decrement.
95 (build_conditional_expr): Do not treat _Atomic void as a qualified
96 version of void.
97 (build_modify_expr): Use build_atomic_assign for atomic LHS.
98 (find_anonymous_field_with_type, convert_to_anonymous_field)
99 (convert_for_assignment): Do not remove atomic qualifiers when
100 comparing types.
101 (digest_init): Do not accept initialization of arrays of atomic
102 elements by string constants.
103 (build_asm_expr): Use convert_lvalue_to_rvalue.
104 (build_binary_op): Do not treat _Atomic void as a qualified
105 version of void.
106
0c249d4b
DD
1072013-11-06 DJ Delorie <dj@redhat.com>
108
109 * c-decl.c (locate_old_decl): If a previous conflicting decl is
110 both explicit and builtin, print the location of the explicit one.
111
6d7f7e0a
TB
1122013-11-05 Tobias Burnus <burnus@net-b.de>
113
114 * c-parser.c (c_parser_omp_for, c_parser_omp_parallel,
115 c_parser_omp_distribute, c_parser_omp_teams,
116 c_parser_omp_target, c_parser_omp_declare): Handle
117 -fopenmp-simd.
118
b906f4ca
MP
1192013-11-03 Marek Polacek <polacek@redhat.com>
120
121 * c-decl.c (grokdeclarator): Add VLA instrumentation.
122
ee1d5a02
JJ
1232013-11-01 Jakub Jelinek <jakub@redhat.com>
124
125 * c-typeck.c (c_finish_omp_clauses) <case OMP_CLAUSE_UNIFORM>: Go to
126 check_dup_generic at the end, unless remove is true.
127 (c_finish_omp_clauses) <case OMP_CLAUSE_REDUCTION>: Add break; after
128 remove = true;.
129 (c_finish_omp_clauses) <case OMP_CLAUSE_COPYIN>: Likewise.
130
5a9785fb
JJ
1312013-10-31 Jakub Jelinek <jakub@redhat.com>
132
133 * c-typeck.c (c_finish_omp_clauses): Diagnose aligned clause
134 with decl that is not pointer nor array.
135
939b37da
BI
1362013-10-29 Balaji V. Iyer <balaji.v.iyer@intel.com>
137
138 * c-decl.c (finish_function): Added a call for insert_cilk_frame when
139 a spawning function is found.
140 * c-objc-common.h (LANG_HOOKS_CILKPLUS_GIMPLIFY_SPAWN): New #define.
141 (LANG_HOOKS_CILKPLUS_FRAME_CLEANUP): Likewise.
142 (LANG_HOOKS_CILKPLUS_DETECT_SPAWN_AND_UNWRAP): Likewise.
143 * c-parser.c (c_parser_statement_after_labels): Added RID_CILK_SYNC
144 case.
145 (c_parser_postfix_expression): Added RID_CILK_SPAWN case.
146 * c-typeck.c (build_compound_expr): Reject _Cilk_spawn in a comma
147 expr.
148 (c_finish_return): Added a check to reject _Cilk_spawn in return
149 expression.
150 (build_cilk_spawn): New function.
151 (build_cilk_sync): Likewise.
152 * Makefile.in (c-decl.o): Added cilk.h in dependency list.
153
d4af74d4
TB
1542013-10-27 Tobias Burnus <burnus@net-b.de>
155
156 PR other/33426
157 * c-parser.c (c_parser_while_statement, c_parser_while_statement,
158 c_parser_pragma): Add GCC ivdep support to 'do' and 'while'.
159 (c_parser_statement_after_labels): Update calls.
160
d73749df 1612013-10-24 Tobias Burnus <burnus@net-b.de>
8170608b
TB
162
163 PR other/33426
164 * c-parser.c (c_parser_pragma, c_parser_for_statement):
165 Handle PRAGMA_IVDEP.
166 (c_parser_statement_after_labels): Update call.
167
f28aa681
MP
1682013-10-24 Marek Polacek <polacek@redhat.com>
169
170 * c-parser.c (c_parser_struct_declaration): Add a comment.
171 (c_parser_declarator): Don't allow _Alignas here.
172
0645c1a2
AM
1732013-10-17 Andrew MacLeod <amacleod@redhat.com>
174
175 * c-parser.c: Include omp-low.h.
176 * c-typeck.c: Likewise.
177
568a31f2
MP
1782013-10-17 Marek Polacek <polacek@redhat.com>
179
180 PR c/58267
181 * c-parser.c (c_parser_declspecs): Add alignspec_ok parameter.
182 Document syntax of the array-declarator.
183 (c_parser_declspecs) <RID_ALIGNAS>: Bail out if alignment specs
184 are not permitted.
185 (c_parser_declaration_or_fndef): Adjust c_parser_declspecs call.
186 (c_parser_struct_declaration): Likewise.
187 (c_parser_declarator): Likewise.
188 (c_parser_direct_declarator_inner): Likewise.
189 (c_parser_parameter_declaration): Likewise.
190 (c_parser_type_name): Likewise.
191
acf0174b
JJ
1922013-10-11 Jakub Jelinek <jakub@redhat.com>
193
194 * c-lang.h (current_omp_declare_target_attribute): New extern
195 decl.
196 * c-parser.c: Include c-lang.h.
197 (struct c_parser): Change tokens to c_token *.
198 Add tokens_buf field. Change tokens_avail type to unsigned int.
199 (c_parser_consume_token): If parser->tokens isn't
200 &parser->tokens_buf[0], increment parser->tokens.
201 (c_parser_consume_pragma): Likewise.
202 (enum pragma_context): Add pragma_struct and pragma_param.
203 (c_parser_external_declaration): Adjust
204 c_parser_declaration_or_fndef caller.
205 (c_parser_declaration_or_fndef): Add omp_declare_simd_clauses
206 argument, if it is non-vNULL vector, call c_finish_omp_declare_simd.
207 Adjust recursive call.
208 (c_parser_struct_or_union_specifier): Use pragma_struct instead
209 of pragma_external.
210 (c_parser_parameter_declaration): Use pragma_param instead of
211 pragma_external.
212 (c_parser_compound_statement_nostart, c_parser_label,
213 c_parser_for_statement): Adjust
214 c_parser_declaration_or_fndef callers.
215 (c_parser_expr_no_commas): Add omp_atomic_lhs argument, pass
216 it through to c_parser_conditional_expression.
217 (c_parser_conditional_expression): Add omp_atomic_lhs argument,
218 pass it through to c_parser_binary_expression. Adjust recursive
219 call.
220 (c_parser_binary_expression): Remove prec argument, add
221 omp_atomic_lhs argument instead. Always start from PREC_NONE, if
222 omp_atomic_lhs is non-NULL and one of the arguments of toplevel
223 binop matches it, use build2 instead of parser_build_binary_op.
224 (c_parser_pragma): Handle PRAGMA_OMP_CANCEL,
225 PRAGMA_OMP_CANCELLATION_POINT, PRAGMA_OMP_TARGET,
226 PRAGMA_OMP_END_DECLARE_TARGET, PRAGMA_OMP_DECLARE_REDUCTION.
227 Handle pragma_struct and pragma_param the same as pragma_external.
228 (c_parser_omp_clause_name): Parse new OpenMP 4.0 clause names.
229 (c_parser_omp_variable_list): Parse array sections for
230 OMP_CLAUSE_{DEPEND,MAP,TO,FROM} clauses.
231 (c_parser_omp_clause_collapse): Fully fold collapse expression.
232 (c_parser_omp_clause_reduction): Handle user defined reductions.
233 (c_parser_omp_clause_branch, c_parser_omp_clause_cancelkind,
234 c_parser_omp_clause_num_teams, c_parser_omp_clause_thread_limit,
235 c_parser_omp_clause_aligned, c_parser_omp_clause_linear,
236 c_parser_omp_clause_safelen, c_parser_omp_clause_simdlen,
237 c_parser_omp_clause_depend, c_parser_omp_clause_map,
238 c_parser_omp_clause_device, c_parser_omp_clause_dist_schedule,
239 c_parser_omp_clause_proc_bind, c_parser_omp_clause_to,
240 c_parser_omp_clause_from, c_parser_omp_clause_uniform): New functions.
241 (c_parser_omp_all_clauses): Add finish_p argument. Don't call
242 c_finish_omp_clauses if it is false. Handle new OpenMP 4.0 clauses.
243 (c_parser_omp_atomic): Parse seq_cst clause, pass true if it is
244 present to c_finish_omp_atomic. Handle OpenMP 4.0 atomic forms.
245 (c_parser_omp_for_loop): Add CODE argument, pass it through
246 to c_finish_omp_for. Change last argument to cclauses,
247 and adjust uses to grab parallel clauses from the array of all
248 the split clauses. Adjust c_parser_binary_expression,
249 c_parser_declaration_or_fndef and c_finish_omp_for callers.
250 (omp_split_clauses): New function.
251 (c_parser_omp_simd): New function.
252 (c_parser_omp_for): Add p_name, mask and cclauses arguments.
253 Allow the function to be called also when parsing combined constructs,
254 and call c_parser_omp_simd when parsing for simd.
255 (c_parser_omp_sections_scope): If section-sequence doesn't start with
256 #pragma omp section, require exactly one structured-block instead of
257 sequence of statements.
258 (c_parser_omp_sections): Add p_name, mask and cclauses arguments.
259 Allow the function to be called also when parsing combined constructs.
260 (c_parser_omp_parallel): Add p_name, mask and cclauses arguments.
261 Allow the function to be called also when parsing combined
262 constructs.
263 (c_parser_omp_taskgroup, c_parser_omp_cancel,
264 c_parser_omp_cancellation_point, c_parser_omp_distribute,
265 c_parser_omp_teams, c_parser_omp_target_data,
266 c_parser_omp_target_update, c_parser_omp_target,
267 c_parser_omp_declare_simd, c_finish_omp_declare_simd,
268 c_parser_omp_declare_target, c_parser_omp_end_declare_target,
269 c_parser_omp_declare_reduction, c_parser_omp_declare): New functions.
270 (c_parser_omp_construct): Add p_name and mask vars. Handle
271 PRAGMA_OMP_DISTRIBUTE, PRAGMA_OMP_SIMD, PRAGMA_OMP_TASKGROUP,
272 PRAGMA_OMP_TEAMS. Adjust c_parser_omp_for, c_parser_omp_parallel
273 and c_parser_omp_sections callers.
274 (c_parse_file): Initialize tparser.tokens and the_parser->tokens here.
275 (OMP_FOR_CLAUSE_MASK, OMP_SECTIONS_CLAUSE_MASK,
276 OMP_SINGLE_CLAUSE_MASK): Use OMP_CLAUSE_MASK_1 instead of 1.
277 (OMP_PARALLEL_CLAUSE_MASK): Likewise. Add OMP_CLAUSE_PROC_BIND.
278 (OMP_TASK_CLAUSE_MASK): Use OMP_CLAUSE_MASK_1 instead of 1. Add
279 OMP_CLAUSE_DEPEND.
280 (OMP_SIMD_CLAUSE_MASK, OMP_CANCEL_CLAUSE_MASK,
281 OMP_CANCELLATION_POINT_CLAUSE_MASK, OMP_DISTRIBUTE_CLAUSE_MASK,
282 OMP_TEAMS_CLAUSE_MASK, OMP_TARGET_DATA_CLAUSE_MASK,
283 OMP_TARGET_UPDATE_CLAUSE_MASK, OMP_TARGET_CLAUSE_MASK,
284 OMP_DECLARE_SIMD_CLAUSE_MASK): Define.
285 * c-typeck.c: Include tree-inline.h.
286 (c_finish_omp_cancel, c_finish_omp_cancellation_point,
287 handle_omp_array_sections_1, handle_omp_array_sections,
288 c_clone_omp_udr, c_find_omp_placeholder_r): New functions.
289 (c_finish_omp_clauses): Handle new OpenMP 4.0 clauses and
290 user defined reductions.
291 (c_tree_equal): New function.
292 * c-tree.h (temp_store_parm_decls, temp_pop_parm_decls,
293 c_finish_omp_cancel, c_finish_omp_cancellation_point, c_tree_equal,
294 c_omp_reduction_id, c_omp_reduction_decl, c_omp_reduction_lookup,
295 c_check_omp_declare_reduction_r): New prototypes.
296 * c-decl.c (current_omp_declare_target_attribute): New variable.
297 (c_decl_attributes): New function.
298 (start_decl, start_function): Use it instead of decl_attributes.
299 (temp_store_parm_decls, temp_pop_parm_decls, c_omp_reduction_id,
300 c_omp_reduction_decl, c_omp_reduction_lookup,
301 c_check_omp_declare_reduction_r): New functions.
302
0a6c2227
TT
3032013-09-25 Tom Tromey <tromey@redhat.com>
304
305 * Make-lang.in (c/gccspec.o): Remove.
306 (CFLAGS-c/gccspec.o): New variable.
307 (cc1-checksum.o, C_TREE_H, c/c-aux-info.o, c/c-convert.o)
308 (c/c-decl.o, c/c-errors.o, c/c-lang.o, c/c-objc-common.o)
309 (c/c-parser.o, c/c-typeck.o, c/c-array-notation.o): Remove.
310
f3bc55f0
TT
3112013-09-25 Tom Tromey <tromey@redhat.com>
312
313 * Make-lang.in (c/gccspec.o): Don't use subshell.
314
a24d975c
MP
3152013-09-18 Marek Polacek <polacek@redhat.com>
316
317 PR sanitize/58443
318 * c-typeck.c (build_binary_op): Properly honor -fsanitize options.
319 Remove unnecessary check.
320
ce6923c5
MP
3212013-09-18 Marek Polacek <polacek@redhat.com>
322
323 PR sanitizer/58411
324 * c-typeck.c (build_binary_op): Don't sanitize function if it has the
325 no_sanitize_undefined attribute.
326
a1e51df9
KT
3272013-09-13 Kai Tietz <ktietz@redhat.com>
328
329 PR target/57848
330 * c-decl.c (c_builtin_function_ext_scope): Remove
331 wrong assumption that it is never called on prexisting
332 symbol.
333
0af94e6f
JR
3342013-09-08 Joern Rennecke <joern.rennecke@embecosm.com>
335
336 * c-typeck.c (build_binary_op): Use vector_types_compatible_elements_p.
337
20059c8b
GDR
3382013-09-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
339
340 * c-objc-common.c (c_tree_printer): Tidy.
341
de5a5fa1
MP
3422013-08-30 Marek Polacek <polacek@redhat.com>
343
344 * c-typeck.c (build_binary_op): Add division by zero and shift
345 instrumentation.
346
2531a1d9 3472013-08-26 Joern Rennecke <joern.rennecke@embecosm.com>
0fdd4508 348 Joseph Myers <joseph@codesourcery.com>
2531a1d9 349
6e2bcc98 350 PR c/35649
2531a1d9
JR
351 * c-typeck.c (c_common_type): Prefer double_type_node over
352 other REAL_TYPE types with the same precision.
353 (convert_arguments): Likewise.
354
025311c4
GDR
3552013-08-23 Gabriel Dos Reis <gdr@integrable-solutions.net>
356
357 * c-objc-common.c (c_tree_printer): Document the nature of the cast.
358 (c_initialize_diagnostics): Call a destructor for the early printer.
359
da6ca2b5
GDR
3602013-08-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
361
362 * c-objc-common.c (c_initialize_diagnostics): Simplify C pretty
363 printer initialization.
364
318cda85 3652013-08-19 Balaji V. Iyer <balaji.v.iyer@intel.com>
da6ca2b5 366
318cda85
BI
367 PR c/57490
368 * c-array-notation.c (fix_conditional_array_notations_1): Added a
369 check for truth values.
370 (expand_array_notation_exprs): Added truth values case. Removed an
371 unwanted else. Added for-loop to walk through subtrees in default
372 case.
373
b066401f
GDR
3742013-08-04 Gabriel Dos Reis <gdr@integrable-solutions.net>
375
376 * c-objc-common.c (c_initialize_diagnostics): Don't call pp_base.
377
fb48aadc
JM
3782013-07-23 Joseph Myers <joseph@codesourcery.com>
379
380 * c-parser.c (struct c_generic_association): Fix typo.
381
433cc7b0
TT
3822013-07-23 Tom Tromey <tromey@redhat.com>
383 Joseph Myers <joseph@codesourcery.com>
384
385 * c-parser.c (struct c_generic_association): New.
386 (c_generic_association_d): New typedef.
387 (c_parser_generic_selection): New function.
388 (c_parser_postfix_expression): Handle RID_GENERIC.
389
26d40c3d
JM
3902013-07-13 Jason Merrill <jason@redhat.com>
391
392 PR c++/57793
393 * c-decl.c (finish_struct): Check for too-large class.
394
ecdbd01a 3952013-07-04 Joern Rennecke <joern.rennecke@embecosm.com>
40d3d530
JR
396
397 PR c/57821
398 * c-typeck.c (set_init_index): When folding, check for index overflow.
399
1141ed3f
BI
4002013-06-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
401
402 * c-parser.c (c_parser_array_notation): Removed rejection of array
403 notations in an array of function pointers.
404
713b46fa
BI
4052013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
406
407 * c-array-notation.c (make_triplet_val_inv): New function.
408 (create_cmp_incr): Likewise.
409 (create_array_refs): Likewise.
410 (fix_builtin_array_notation_fn): Replaced all mallocs with tree vec.
411 Also modularized common parts between functions and called the function.
412 (build_array_notation_expr): Likewise.
413 (fix_conditional_array_notations_1): Likewise.
414 (fix_array_notation_expr): Likewise.
415 (fix_array_notation_call_expr): Likewise.
416
92f20202
MP
4172013-06-18 Marek Polacek <polacek@redhat.com>
418
419 PR c/57630
420 * c-decl.c (check_for_loop_decls): Improve diagnostics messages.
421
73a23b06
BI
4222013-06-12 Balaji V. Iyer <balaji.v.iyer@intel.com>
423
424 * c-array-notation.c (build_array_notation_expr): Reject array notation
425 mismatch between LHS and RHS even inside a call_expr. Also, removed
426 a couple while statements that were dead code.
427
00b8517d
BI
4282013-06-10 Balaji V. Iyer <balaji.v.iyer@intel.com>
429
430 * c-array-notation.c (fix_builtin_array_notation_fn): Fully folded
431 excessive precision expressions in function parameters. Also removed
432 couple unwanted while statements.
433
1509bdda
BI
4342013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
435
436 * c-array-notation.c (expand_array_notation_exprs): Added
437 ARRAY_NOTATION_REF case.
438
d60f1706
BI
4392013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
440
441 * c-array-notation.c (length_mismatch_in_expr_p): Moved this
442 function to c-family/array-notation-common.c.
443 (is_cilkplus_reduce_builtin): Likewise.
444 (find_rank): Likewise.
445 (extract_array_notation_exprs): Likewise.
446 (replace_array_notations): Likewise.
447 (find_inv_trees): Likewise.
448 (replace_inv_trees): Likewise.
449 (contains_array_notation_expr): Likewise.
450 (find_correct_array_notation_type): Likewise.
451 (replace_invariant_exprs): Initialized additional_tcodes to NULL.
452 (struct inv_list): Moved this to c-family/array-notation-common.c.
453 * c-tree.h (is_cilkplus_builtin_reduce): Remove prototype.
454
6d6efbb3
BI
4552013-06-05 Balaji V. Iyer <balaji.v.iyer@intel.com>
456
457 * c-typeck.c (convert_arguments): Moved checking of builtin cilkplus
458 reduction functions outside the for-loop. Added a check if the fundecl
459 is non-NULL. Finally, removed an unwanted if-statement, and made the
460 body unconditional.
461
25c22937
BI
4622013-06-03 Balaji V. Iyer <balaji.v.iyer@intel.com>
463
464 * c-typeck.c (c_finish_if_stmt): Added a check to see if the rank of the
465 condition of the if-statement matches the rank of else-block and then-
466 block when array notations are used.
467 * c-parser.c (c_parser_declaration_or_fndef): Expanded array notation
468 expression after the entire function body is parsed.
469 (c_parser_expr_no_commas): Delayed creating array notation expressions
470 to the end of function parsing.
471 * c-array-notation.c (fix_conditional_array_notations_1): Expanded the
472 whole if-statement instead of just the condition.
473 (expand_array_notation_exprs): Added MODIFY_EXPR case.
474
edd25645
BI
4752013-06-03 Balaji V. Iyer <balaji.v.iyer@intel.com>
476
477 PR c/57474
478 * c-array-notation.c (build_array_notation_expr): Initialized rhs_length
479 array to NULL_TREE if they are unused. Also added a check for the
480 field to be NULL before its fields are used in future.
481
065ce7f1
RO
4822013-05-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
483
484 PR bootstrap/57450
485 * c-array-notation.c (length_mismatch_in_expr_p): Use absu_hwi.
486 (build_array_notation_expr): Likewise.
487
36536d79
BI
4882013-05-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
489
490 * c-typeck.c (build_array_ref): Added a check to see if array's
491 index is greater than one. If true, then emit an error.
492 (build_function_call_vec): Exclude error reporting and checking
493 for builtin array-notation functions.
494 (convert_arguments): Likewise.
495 (c_finish_return): Added a check for array notations as a return
496 expression. If true, then emit an error.
497 (c_finish_loop): Added a check for array notations in a loop
498 condition. If true then emit an error.
499 (lvalue_p): Added a ARRAY_NOTATION_REF case.
500 (build_binary_op): Added a check for array notation expr inside
501 op1 and op0. If present, we call another function to find correct
502 type.
503 * Make-lang.in (C_AND_OBJC_OBJS): Added c-array-notation.o.
504 * c-parser.c (c_parser_compound_statement): Check if array
505 notation code is used in tree, if so, then transform them into
506 appropriate C code.
507 (c_parser_expr_no_commas): Check if array notation is used in LHS
508 or RHS, if so, then build array notation expression instead of
509 regular modify.
510 (c_parser_postfix_expression_after_primary): Added a check for
511 colon(s) after square braces, if so then handle it like an array
512 notation. Also, break up array notations in unary op if found.
513 (c_parser_direct_declarator_inner): Added a check for array
514 notation.
515 (c_parser_compound_statement): Added a check for array notation in
516 a stmt. If one is present, then expand array notation expr.
517 (c_parser_if_statement): Likewise.
518 (c_parser_switch_statement): Added a check for array notations in
519 a switch statement's condition. If true, then output an error.
520 (c_parser_while_statement): Similarly, but for a while.
521 (c_parser_do_statement): Similarly, but for a do-while.
522 (c_parser_for_statement): Similarly, but for a for-loop.
523 (c_parser_unary_expression): Check if array notation is used in a
524 pre-increment or pre-decrement expression. If true, then expand
525 them.
526 (c_parser_array_notation): New function.
527 * c-array-notation.c: New file.
528 * c-tree.h (is_cilkplus_reduce_builtin): Protoize.
529
cd192ccc
MS
5302013-05-23 Mike Stump <mikestump@comcast.net>
531
532 * c-typeck.c (convert_for_assignment): Handle references to memory
533 spaces better.
534
427b248d
JM
5352013-05-16 Jason Merrill <jason@redhat.com>
536
537 * Make-lang.in (cc1$(exeext)): Use link mutex.
538
44d90fe1
PC
5392013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
540
541 * c-typeck.c (pointer_diff): Change -Wpointer-arith pedwarns
542 to simply use OPT_Wpointer_arith.
543 (build_unary_op): Likewise.
544
4e7d7b3d
JJ
5452013-04-03 Jakub Jelinek <jakub@redhat.com>
546
547 PR c/19449
548 * c-parser.c (c_parser_get_builtin_args): Add choose_expr_p
549 argument. If set, or it temporarily for parsing of the first
550 argument into force_folding_builtin_constant_p.
551 (c_parser_postfix_expression): Adjust callers.
552
839b422f
RB
5532013-03-21 Richard Biener <rguenther@suse.de>
554
555 * c-objc-common.c (c_tree_printer): Use DECL_HAS_DEBUG_EXPR_P
556 instead of DECL_DEBUG_EXPR_IS_FROM. Guard properly.
557
2ee028f1
MP
5582013-02-12 Marek Polacek <polacek@redhat.com>
559
560 PR c/44938
561 * c-parser.c (c_parser_postfix_expression_after_primary): Initialize
562 origtypes to NULL.
563
8824edff
JJ
5642013-01-24 Jakub Jelinek <jakub@redhat.com>
565
566 PR c/56078
567 * c-typeck.c (set_nonincremental_init_from_string): If
568 constructor_max_index is NULL, treat it as if tree_int_cst_lt
569 returned false.
570 (process_init_element): Likewise.
571
eadd3d0d
JJ
5722012-12-20 Jakub Jelinek <jakub@redhat.com>
573
574 PR c++/55619
575 * c-parser.c (c_parser_asm_operands): Remove CONVERT_P
576 argument, don't call default_function_array_conversion
577 nor c_fully_fold here.
578 (c_parser_asm_statement): Adjust callers.
579 * c-typeck.c (build_asm_expr): Call c_fully_fold on inputs
580 and outputs here, and call default_function_array_conversion
581 on inputs that don't need to be addressable.
582
f8a93a2e
JJ
5832012-12-18 Jakub Jelinek <jakub@redhat.com>
584
585 PR c/39464
586 * c-typeck.c (convert_for_assignment): For -Wpointer-sign
587 warning require that both c_common_unsigned_type as well as
588 c_common_signed_type is the same for both mvl and mvr types.
589
9771b263
DN
5902012-11-16 Diego Novillo <dnovillo@google.com>
591
592 Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
593
594 * c-common.c: Use new vec API in vec.h.
595 * c-common.h: Likewise.
596 * c-gimplify.c: Likewise.
597 * c-pragma.c: Likewise.
598 * c-pretty-print.c: Likewise.
599 * c-pretty-print.h: Likewise.
600 * c-semantics.c: Likewise.
601 * c-decl.c: Likewise.
602 * c-parser.c: Likewise.
603 * c-tree.h: Likewise.
604 * c-typeck.c: Likewise.
605
880661a4
JW
6062012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
607
608 PR c++/54930
609 * c-typeck.c (c_finish_return): Use OPT_Wreturn_local_addr.
610
077d1abe
MLI
6112012-10-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
612
613 PR c/53066
614 * c-decl.c (warn_if_shadowing): Do not warn if a variable
615 shadows a function, unless the variable is a function or a
616 pointer-to-function.
617
3a785c97
JJ
6182012-10-12 Jakub Jelinek <jakub@redhat.com>
619
620 PR c/54381
621 * c-parser.c (struct c_tree_loc_pair): Removed.
622 (c_parser_expr_list): Remove struct c_tree_loc_pair * argument,
623 add location_t * and tree * arguments, fill in array of 3
624 sizeof_arg trees and corresponding locs.
625 (c_parser_attributes, c_parser_objc_keywordexpr): Adjust
626 c_parser_expr_list callers.
627 (c_parser_postfix_expression_after_primary): Likewise. Pass
628 array of 3 sizeof_arg trees and locs (corresponding to first
629 3 arguments) to sizeof_pointer_memaccess_warning.
630
703c8606
LC
6312012-10-09 Lawrence Crowl <crowl@google.com>
632
633 * Make-lang.in (c-decl.o): Add dependence on hash-table.h.
634 * c-decl.c (detect_field_duplicates_hash): Change to new type-safe
635 hash table.
636
5d9de0d0
PC
6372012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
638
639 PR c++/54194
640 * c-typeck.c (parser_build_binary_op): Update warn_about_parentheses
641 call.
642
a212e43f
MG
6432012-10-09 Marc Glisse <marc.glisse@inria.fr>
644
645 PR c++/54427
646 * c-typeck.c: Include c-common.h.
647 (enum stv_conv): Moved to c-common.h.
648 (scalar_to_vector): Moved to c-common.c.
649 (build_binary_op): Adapt to scalar_to_vector's new prototype.
650 * Make-lang.in: c-typeck.c depends on c-common.h.
651
3b78de56
AC
6522012-10-04 Arnaud Charlet <charlet@adacore.com>
653
654 * c-decl.c (c_write_global_declarations): Fix handling of
655 -fdump-ada-spec*.
656
78c60e3d
SS
6572012-09-30 Sharad Singhai <singhai@google.com>
658
659 * c-decl.c (c_write_global_declarations): Use a different method
660 to determine if the dump has ben initialized.
661
9f33203d
JM
6622012-09-14 Joseph Myers <joseph@codesourcery.com>
663
664 PR c/54552
665 * c-typeck.c (c_cast_expr): When casting to a type requiring
666 C_MAYBE_CONST_EXPR to be created, pass the inner expression to
667 c_fully_fold first.
668
a27d595d
JM
6692012-09-14 Joseph Myers <joseph@codesourcery.com>
670
671 PR c/54103
672 * c-typeck.c (build_unary_op): Pass original argument of
673 TRUTH_NOT_EXPR to c_objc_common_truthvalue_conversion, then remove
674 any C_MAYBE_CONST_EXPR, if it has integer operands.
675 (build_binary_op): Pass original arguments of TRUTH_ANDIF_EXPR,
676 TRUTH_ORIF_EXPR, TRUTH_AND_EXPR, TRUTH_OR_EXPR and TRUTH_XOR_EXPR
677 to c_objc_common_truthvalue_conversion, then remove any
678 C_MAYBE_CONST_EXPR, if they have integer operands. Use
679 c_objc_common_truthvalue_conversion not
680 c_common_truthvalue_conversion.
681 (c_objc_common_truthvalue_conversion): Build NE_EXPR directly and
682 call note_integer_operands for arguments with integer operands
683 that are not integer constants.
684
9feb29df
JJ
6852012-09-13 Jakub Jelinek <jakub@redhat.com>
686
687 PR c/54559
688 * c-typeck.c (c_finish_return): Do convert to BOOLEAN_TYPE or
689 COMPLEX_TYPE with in_late_binary_op set temporarily to true.
690
d409320c
JJ
6912012-08-31 Jakub Jelinek <jakub@redhat.com>
692
693 PR c/54428
694 * c-convert.c (convert): Don't call fold_convert_loc if
695 TYPE_MAIN_VARIANT of a COMPLEX_TYPE is the same, unless e
696 is a COMPLEX_EXPR. Remove TYPE_MAIN_VARIANT check from
697 COMPLEX_TYPE -> COMPLEX_TYPE conversion.
698
6265d07c
JJ
6992012-08-24 Jakub Jelinek <jakub@redhat.com>
700
701 PR c/54355
702 * c-decl.c (c_parser_label): Pass true as nested and fix up comments
703 for nested and empty_ok arguments in the call to
704 c_parser_declaration_or_fndef.
705
1a4049e7
JJ
7062012-08-17 Jakub Jelinek <jakub@redhat.com>
707
708 * c-tree.h (c_last_sizeof_arg): Declare.
709 * c-parser.c (struct c_tree_loc_pair): New type.
710 (c_parser_expr_list): Add sizeof_arg argument. Fill it in if
711 non-NULL.
712 (c_parser_attributes, c_parser_objc_keywordexpr): Adjust callers.
713 (c_parser_postfix_expression_after_primary): Likewise. Call
714 sizeof_pointer_memaccess_warning if needed.
715 (sizeof_ptr_memacc_comptypes): New function.
716 * c-typeck.c (c_last_sizeof_arg): New global variable.
717 (c_expr_sizeof_expr, c_expr_sizeof_type): Initialize it.
718
0229aee9
UB
7192012-07-24 Uros Bizjak <ubizjak@gmail.com>
720
721 * c-lang.h (lang_decl): Add variable_size GTY option.
722
7ee2468b
SB
7232012-07-16 Steven Bosscher <steven@gcc.gnu.org>
724
725 * c-decl.c: Include dumpfile.h instead of tree-dump.h.
726 * Make-lang.in: Fix dependencies.
727
d4a10d0a
SB
7282012-06-29 Steven Bosscher <steven@gcc.gnu.org>
729
730 * Make-lang.in: New file, rules migrated from gcc/Makefile.in
731 and add language Makefile hooks.
732 * config-lang.in: New file.
733 * c-config-lang.in: Moved from gcc/config-lang.in to here, and
734 add the required "normal" config-lang.in rules.
735 * c-lang.h: Moved from gcc/ to here.
736 * c-tree.h: Likewise.
737 * c-objc-common.c: Likewise.
738 * c-objc-common.h: Likewise.
739 * c-typeck.c: Likewise.
740 * c-convert.c: Likewise.
741 * c-lang.c: Likewise.
742 * c-aux-info.c: Likewise.
743 * c-errors.c: Likewise.
744 * gccspec.c: Likewise.
745 * c-decl.c: Likewise. Include gt-c-c-decl.h, not gt-c-decl.h.
746 * c-parser.c: Likewise. Include gt-c-c-parser.h, not gt-c-parser.h.
747\f
d1e082c2 748Copyright (C) 2012-2013 Free Software Foundation, Inc.
d4a10d0a
SB
749
750Copying and distribution of this file, with or without modification,
751are permitted in any medium without royalty provided the copyright
752notice and this notice are preserved.
This page took 0.442001 seconds and 5 git commands to generate.