]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/c/ChangeLog
Daily bump.
[thirdparty/gcc.git] / gcc / c / ChangeLog
CommitLineData
26d40c3d
JM
12013-07-13 Jason Merrill <jason@redhat.com>
2
3 PR c++/57793
4 * c-decl.c (finish_struct): Check for too-large class.
5
40d3d530
JR
62013-07-04 Joern Rennecke <joern.rennecke@embecosm.com>
7
8 PR c/57821
9 * c-typeck.c (set_init_index): When folding, check for index overflow.
10
1141ed3f
BI
112013-06-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
12
13 * c-parser.c (c_parser_array_notation): Removed rejection of array
14 notations in an array of function pointers.
15
713b46fa
BI
162013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
17
18 * c-array-notation.c (make_triplet_val_inv): New function.
19 (create_cmp_incr): Likewise.
20 (create_array_refs): Likewise.
21 (fix_builtin_array_notation_fn): Replaced all mallocs with tree vec.
22 Also modularized common parts between functions and called the function.
23 (build_array_notation_expr): Likewise.
24 (fix_conditional_array_notations_1): Likewise.
25 (fix_array_notation_expr): Likewise.
26 (fix_array_notation_call_expr): Likewise.
27
92f20202
MP
282013-06-18 Marek Polacek <polacek@redhat.com>
29
30 PR c/57630
31 * c-decl.c (check_for_loop_decls): Improve diagnostics messages.
32
73a23b06
BI
332013-06-12 Balaji V. Iyer <balaji.v.iyer@intel.com>
34
35 * c-array-notation.c (build_array_notation_expr): Reject array notation
36 mismatch between LHS and RHS even inside a call_expr. Also, removed
37 a couple while statements that were dead code.
38
00b8517d
BI
392013-06-10 Balaji V. Iyer <balaji.v.iyer@intel.com>
40
41 * c-array-notation.c (fix_builtin_array_notation_fn): Fully folded
42 excessive precision expressions in function parameters. Also removed
43 couple unwanted while statements.
44
1509bdda
BI
452013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
46
47 * c-array-notation.c (expand_array_notation_exprs): Added
48 ARRAY_NOTATION_REF case.
49
d60f1706
BI
502013-06-07 Balaji V. Iyer <balaji.v.iyer@intel.com>
51
52 * c-array-notation.c (length_mismatch_in_expr_p): Moved this
53 function to c-family/array-notation-common.c.
54 (is_cilkplus_reduce_builtin): Likewise.
55 (find_rank): Likewise.
56 (extract_array_notation_exprs): Likewise.
57 (replace_array_notations): Likewise.
58 (find_inv_trees): Likewise.
59 (replace_inv_trees): Likewise.
60 (contains_array_notation_expr): Likewise.
61 (find_correct_array_notation_type): Likewise.
62 (replace_invariant_exprs): Initialized additional_tcodes to NULL.
63 (struct inv_list): Moved this to c-family/array-notation-common.c.
64 * c-tree.h (is_cilkplus_builtin_reduce): Remove prototype.
65
6d6efbb3
BI
662013-06-05 Balaji V. Iyer <balaji.v.iyer@intel.com>
67
68 * c-typeck.c (convert_arguments): Moved checking of builtin cilkplus
69 reduction functions outside the for-loop. Added a check if the fundecl
70 is non-NULL. Finally, removed an unwanted if-statement, and made the
71 body unconditional.
72
25c22937
BI
732013-06-03 Balaji V. Iyer <balaji.v.iyer@intel.com>
74
75 * c-typeck.c (c_finish_if_stmt): Added a check to see if the rank of the
76 condition of the if-statement matches the rank of else-block and then-
77 block when array notations are used.
78 * c-parser.c (c_parser_declaration_or_fndef): Expanded array notation
79 expression after the entire function body is parsed.
80 (c_parser_expr_no_commas): Delayed creating array notation expressions
81 to the end of function parsing.
82 * c-array-notation.c (fix_conditional_array_notations_1): Expanded the
83 whole if-statement instead of just the condition.
84 (expand_array_notation_exprs): Added MODIFY_EXPR case.
85
edd25645
BI
862013-06-03 Balaji V. Iyer <balaji.v.iyer@intel.com>
87
88 PR c/57474
89 * c-array-notation.c (build_array_notation_expr): Initialized rhs_length
90 array to NULL_TREE if they are unused. Also added a check for the
91 field to be NULL before its fields are used in future.
92
065ce7f1
RO
932013-05-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
94
95 PR bootstrap/57450
96 * c-array-notation.c (length_mismatch_in_expr_p): Use absu_hwi.
97 (build_array_notation_expr): Likewise.
98
36536d79
BI
992013-05-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
100
101 * c-typeck.c (build_array_ref): Added a check to see if array's
102 index is greater than one. If true, then emit an error.
103 (build_function_call_vec): Exclude error reporting and checking
104 for builtin array-notation functions.
105 (convert_arguments): Likewise.
106 (c_finish_return): Added a check for array notations as a return
107 expression. If true, then emit an error.
108 (c_finish_loop): Added a check for array notations in a loop
109 condition. If true then emit an error.
110 (lvalue_p): Added a ARRAY_NOTATION_REF case.
111 (build_binary_op): Added a check for array notation expr inside
112 op1 and op0. If present, we call another function to find correct
113 type.
114 * Make-lang.in (C_AND_OBJC_OBJS): Added c-array-notation.o.
115 * c-parser.c (c_parser_compound_statement): Check if array
116 notation code is used in tree, if so, then transform them into
117 appropriate C code.
118 (c_parser_expr_no_commas): Check if array notation is used in LHS
119 or RHS, if so, then build array notation expression instead of
120 regular modify.
121 (c_parser_postfix_expression_after_primary): Added a check for
122 colon(s) after square braces, if so then handle it like an array
123 notation. Also, break up array notations in unary op if found.
124 (c_parser_direct_declarator_inner): Added a check for array
125 notation.
126 (c_parser_compound_statement): Added a check for array notation in
127 a stmt. If one is present, then expand array notation expr.
128 (c_parser_if_statement): Likewise.
129 (c_parser_switch_statement): Added a check for array notations in
130 a switch statement's condition. If true, then output an error.
131 (c_parser_while_statement): Similarly, but for a while.
132 (c_parser_do_statement): Similarly, but for a do-while.
133 (c_parser_for_statement): Similarly, but for a for-loop.
134 (c_parser_unary_expression): Check if array notation is used in a
135 pre-increment or pre-decrement expression. If true, then expand
136 them.
137 (c_parser_array_notation): New function.
138 * c-array-notation.c: New file.
139 * c-tree.h (is_cilkplus_reduce_builtin): Protoize.
140
cd192ccc
MS
1412013-05-23 Mike Stump <mikestump@comcast.net>
142
143 * c-typeck.c (convert_for_assignment): Handle references to memory
144 spaces better.
145
427b248d
JM
1462013-05-16 Jason Merrill <jason@redhat.com>
147
148 * Make-lang.in (cc1$(exeext)): Use link mutex.
149
44d90fe1
PC
1502013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
151
152 * c-typeck.c (pointer_diff): Change -Wpointer-arith pedwarns
153 to simply use OPT_Wpointer_arith.
154 (build_unary_op): Likewise.
155
4e7d7b3d
JJ
1562013-04-03 Jakub Jelinek <jakub@redhat.com>
157
158 PR c/19449
159 * c-parser.c (c_parser_get_builtin_args): Add choose_expr_p
160 argument. If set, or it temporarily for parsing of the first
161 argument into force_folding_builtin_constant_p.
162 (c_parser_postfix_expression): Adjust callers.
163
839b422f
RB
1642013-03-21 Richard Biener <rguenther@suse.de>
165
166 * c-objc-common.c (c_tree_printer): Use DECL_HAS_DEBUG_EXPR_P
167 instead of DECL_DEBUG_EXPR_IS_FROM. Guard properly.
168
2ee028f1
MP
1692013-02-12 Marek Polacek <polacek@redhat.com>
170
171 PR c/44938
172 * c-parser.c (c_parser_postfix_expression_after_primary): Initialize
173 origtypes to NULL.
174
8824edff
JJ
1752013-01-24 Jakub Jelinek <jakub@redhat.com>
176
177 PR c/56078
178 * c-typeck.c (set_nonincremental_init_from_string): If
179 constructor_max_index is NULL, treat it as if tree_int_cst_lt
180 returned false.
181 (process_init_element): Likewise.
182
eadd3d0d
JJ
1832012-12-20 Jakub Jelinek <jakub@redhat.com>
184
185 PR c++/55619
186 * c-parser.c (c_parser_asm_operands): Remove CONVERT_P
187 argument, don't call default_function_array_conversion
188 nor c_fully_fold here.
189 (c_parser_asm_statement): Adjust callers.
190 * c-typeck.c (build_asm_expr): Call c_fully_fold on inputs
191 and outputs here, and call default_function_array_conversion
192 on inputs that don't need to be addressable.
193
f8a93a2e
JJ
1942012-12-18 Jakub Jelinek <jakub@redhat.com>
195
196 PR c/39464
197 * c-typeck.c (convert_for_assignment): For -Wpointer-sign
198 warning require that both c_common_unsigned_type as well as
199 c_common_signed_type is the same for both mvl and mvr types.
200
9771b263
DN
2012012-11-16 Diego Novillo <dnovillo@google.com>
202
203 Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
204
205 * c-common.c: Use new vec API in vec.h.
206 * c-common.h: Likewise.
207 * c-gimplify.c: Likewise.
208 * c-pragma.c: Likewise.
209 * c-pretty-print.c: Likewise.
210 * c-pretty-print.h: Likewise.
211 * c-semantics.c: Likewise.
212 * c-decl.c: Likewise.
213 * c-parser.c: Likewise.
214 * c-tree.h: Likewise.
215 * c-typeck.c: Likewise.
216
880661a4
JW
2172012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
218
219 PR c++/54930
220 * c-typeck.c (c_finish_return): Use OPT_Wreturn_local_addr.
221
077d1abe
MLI
2222012-10-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
223
224 PR c/53066
225 * c-decl.c (warn_if_shadowing): Do not warn if a variable
226 shadows a function, unless the variable is a function or a
227 pointer-to-function.
228
3a785c97
JJ
2292012-10-12 Jakub Jelinek <jakub@redhat.com>
230
231 PR c/54381
232 * c-parser.c (struct c_tree_loc_pair): Removed.
233 (c_parser_expr_list): Remove struct c_tree_loc_pair * argument,
234 add location_t * and tree * arguments, fill in array of 3
235 sizeof_arg trees and corresponding locs.
236 (c_parser_attributes, c_parser_objc_keywordexpr): Adjust
237 c_parser_expr_list callers.
238 (c_parser_postfix_expression_after_primary): Likewise. Pass
239 array of 3 sizeof_arg trees and locs (corresponding to first
240 3 arguments) to sizeof_pointer_memaccess_warning.
241
703c8606
LC
2422012-10-09 Lawrence Crowl <crowl@google.com>
243
244 * Make-lang.in (c-decl.o): Add dependence on hash-table.h.
245 * c-decl.c (detect_field_duplicates_hash): Change to new type-safe
246 hash table.
247
5d9de0d0
PC
2482012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
249
250 PR c++/54194
251 * c-typeck.c (parser_build_binary_op): Update warn_about_parentheses
252 call.
253
a212e43f
MG
2542012-10-09 Marc Glisse <marc.glisse@inria.fr>
255
256 PR c++/54427
257 * c-typeck.c: Include c-common.h.
258 (enum stv_conv): Moved to c-common.h.
259 (scalar_to_vector): Moved to c-common.c.
260 (build_binary_op): Adapt to scalar_to_vector's new prototype.
261 * Make-lang.in: c-typeck.c depends on c-common.h.
262
3b78de56
AC
2632012-10-04 Arnaud Charlet <charlet@adacore.com>
264
265 * c-decl.c (c_write_global_declarations): Fix handling of
266 -fdump-ada-spec*.
267
78c60e3d
SS
2682012-09-30 Sharad Singhai <singhai@google.com>
269
270 * c-decl.c (c_write_global_declarations): Use a different method
271 to determine if the dump has ben initialized.
272
9f33203d
JM
2732012-09-14 Joseph Myers <joseph@codesourcery.com>
274
275 PR c/54552
276 * c-typeck.c (c_cast_expr): When casting to a type requiring
277 C_MAYBE_CONST_EXPR to be created, pass the inner expression to
278 c_fully_fold first.
279
a27d595d
JM
2802012-09-14 Joseph Myers <joseph@codesourcery.com>
281
282 PR c/54103
283 * c-typeck.c (build_unary_op): Pass original argument of
284 TRUTH_NOT_EXPR to c_objc_common_truthvalue_conversion, then remove
285 any C_MAYBE_CONST_EXPR, if it has integer operands.
286 (build_binary_op): Pass original arguments of TRUTH_ANDIF_EXPR,
287 TRUTH_ORIF_EXPR, TRUTH_AND_EXPR, TRUTH_OR_EXPR and TRUTH_XOR_EXPR
288 to c_objc_common_truthvalue_conversion, then remove any
289 C_MAYBE_CONST_EXPR, if they have integer operands. Use
290 c_objc_common_truthvalue_conversion not
291 c_common_truthvalue_conversion.
292 (c_objc_common_truthvalue_conversion): Build NE_EXPR directly and
293 call note_integer_operands for arguments with integer operands
294 that are not integer constants.
295
9feb29df
JJ
2962012-09-13 Jakub Jelinek <jakub@redhat.com>
297
298 PR c/54559
299 * c-typeck.c (c_finish_return): Do convert to BOOLEAN_TYPE or
300 COMPLEX_TYPE with in_late_binary_op set temporarily to true.
301
d409320c
JJ
3022012-08-31 Jakub Jelinek <jakub@redhat.com>
303
304 PR c/54428
305 * c-convert.c (convert): Don't call fold_convert_loc if
306 TYPE_MAIN_VARIANT of a COMPLEX_TYPE is the same, unless e
307 is a COMPLEX_EXPR. Remove TYPE_MAIN_VARIANT check from
308 COMPLEX_TYPE -> COMPLEX_TYPE conversion.
309
6265d07c
JJ
3102012-08-24 Jakub Jelinek <jakub@redhat.com>
311
312 PR c/54355
313 * c-decl.c (c_parser_label): Pass true as nested and fix up comments
314 for nested and empty_ok arguments in the call to
315 c_parser_declaration_or_fndef.
316
1a4049e7
JJ
3172012-08-17 Jakub Jelinek <jakub@redhat.com>
318
319 * c-tree.h (c_last_sizeof_arg): Declare.
320 * c-parser.c (struct c_tree_loc_pair): New type.
321 (c_parser_expr_list): Add sizeof_arg argument. Fill it in if
322 non-NULL.
323 (c_parser_attributes, c_parser_objc_keywordexpr): Adjust callers.
324 (c_parser_postfix_expression_after_primary): Likewise. Call
325 sizeof_pointer_memaccess_warning if needed.
326 (sizeof_ptr_memacc_comptypes): New function.
327 * c-typeck.c (c_last_sizeof_arg): New global variable.
328 (c_expr_sizeof_expr, c_expr_sizeof_type): Initialize it.
329
0229aee9
UB
3302012-07-24 Uros Bizjak <ubizjak@gmail.com>
331
332 * c-lang.h (lang_decl): Add variable_size GTY option.
333
7ee2468b
SB
3342012-07-16 Steven Bosscher <steven@gcc.gnu.org>
335
336 * c-decl.c: Include dumpfile.h instead of tree-dump.h.
337 * Make-lang.in: Fix dependencies.
338
d4a10d0a
SB
3392012-06-29 Steven Bosscher <steven@gcc.gnu.org>
340
341 * Make-lang.in: New file, rules migrated from gcc/Makefile.in
342 and add language Makefile hooks.
343 * config-lang.in: New file.
344 * c-config-lang.in: Moved from gcc/config-lang.in to here, and
345 add the required "normal" config-lang.in rules.
346 * c-lang.h: Moved from gcc/ to here.
347 * c-tree.h: Likewise.
348 * c-objc-common.c: Likewise.
349 * c-objc-common.h: Likewise.
350 * c-typeck.c: Likewise.
351 * c-convert.c: Likewise.
352 * c-lang.c: Likewise.
353 * c-aux-info.c: Likewise.
354 * c-errors.c: Likewise.
355 * gccspec.c: Likewise.
356 * c-decl.c: Likewise. Include gt-c-c-decl.h, not gt-c-decl.h.
357 * c-parser.c: Likewise. Include gt-c-c-parser.h, not gt-c-parser.h.
358\f
d1e082c2 359Copyright (C) 2012-2013 Free Software Foundation, Inc.
d4a10d0a
SB
360
361Copying and distribution of this file, with or without modification,
362are permitted in any medium without royalty provided the copyright
363notice and this notice are preserved.