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