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