]>
Commit | Line | Data |
---|---|---|
b676a079 JM |
1 | 2016-01-31 Jason Merrill <jason@redhat.com> |
2 | ||
b1568582 JM |
3 | * mangle.c (maybe_check_abi_tags): New. |
4 | (write_guarded_var_name): Call it. | |
5 | (mangle_ref_init_variable): Call check_abi_tags. | |
6 | ||
b676a079 JM |
7 | * pt.c (lookup_template_class_1): Don't share TYPE_ATTRIBUTES |
8 | between template and instantiation. | |
9 | ||
16b77b32 JJ |
10 | 2016-01-29 Jakub Jelinek <jakub@redhat.com> |
11 | ||
12 | PR debug/66869 | |
13 | * decl.c (wrapup_globals_for_namespace): Warn about unused static | |
14 | function declarations. | |
15 | ||
5453bfed MP |
16 | 2016-01-29 Marek Polacek <polacek@redhat.com> |
17 | ||
18 | PR c++/69509 | |
19 | PR c++/69516 | |
20 | * constexpr.c (cxx_eval_array_reference): Give the "array subscript | |
21 | out of bound" error earlier. | |
22 | * init.c (build_vec_init): Change NE_EXPR into GT_EXPR. Update the | |
23 | commentary. | |
24 | ||
e9f69069 PP |
25 | 2016-01-29 Patrick Palka <ppalka@gcc.gnu.org> |
26 | ||
27 | * name-lookup.c (begin_scope): After reusing a cp_binding_level | |
28 | structure, update free_binding_level before the structure's | |
29 | level_chain field gets cleared, not after. | |
30 | ||
e448880c JM |
31 | 2016-01-28 Jason Merrill <jason@redhat.com> |
32 | ||
33 | PR c++/67407 | |
34 | * search.c (dfs_walk_once, dfs_walk_once_r) | |
35 | (dfs_walk_once_accessible_r, dfs_walk_once_accessible): Use | |
36 | hash_set instead of BINFO_MARKED. | |
37 | (dfs_unmark_r): Remove. | |
38 | ||
2b4f7b94 PP |
39 | 2016-01-28 Patrick Palka <ppalka@gcc.gnu.org> |
40 | ||
41 | PR c++/24208 | |
42 | * parser.c (LEXER_DEBUGGING_ENABLED_P): New macro. | |
43 | (cp_lexer_debugging_p): Use it. | |
44 | (cp_lexer_start_debugging): Likewise. | |
45 | (cp_lexer_stop_debugging): Likewise. | |
46 | ||
fa74a4bc MP |
47 | 2016-01-27 Marek Polacek <polacek@redhat.com> |
48 | ||
49 | PR c/68062 | |
50 | * typeck.c (cp_build_binary_op): Promote operand to unsigned, if | |
51 | needed. Add -Wsign-compare warning. | |
52 | ||
5d70666e RB |
53 | 2016-01-27 Ryan Burn <contact@rnburn.com> |
54 | ||
55 | PR cilkplus/69267 | |
56 | * cp-gimplify.c (cilk_cp_gimplify_call_params_in_spawned_fn): Removed | |
57 | superfluous post_p argument in call to | |
58 | cilk_gimplify_call_params_in_spawned_fn. | |
59 | ||
05bf54c3 MP |
60 | 2016-01-27 Marek Polacek <polacek@redhat.com> |
61 | ||
62 | PR c++/69379 | |
63 | * constexpr.c (cxx_eval_constant_expression): Handle PTRMEM_CSTs | |
64 | wrapped in NOP_EXPRs. | |
65 | ||
60214d0d MS |
66 | 2016-01-27 Martin Sebor <msebor@redhat.com> |
67 | ||
68 | PR c++/69317 | |
69 | * mangle.c (mangle_decl): Reference the correct (saved) version | |
70 | of the ABI in -Wabi diagnostics. | |
71 | ||
95e3030c MP |
72 | 2016-01-27 Marek Polacek <polacek@redhat.com> |
73 | ||
74 | PR c++/69496 | |
75 | * constexpr.c (cxx_eval_array_reference): Evaluate the number of | |
76 | elements of the array. | |
77 | ||
ca30abcd JM |
78 | 2016-01-26 Jason Merrill <jason@redhat.com> |
79 | ||
80 | PR c++/68949 | |
81 | * constexpr.c (register_constexpr_fundef): Keep the un-massaged body. | |
82 | (cxx_eval_call_expression): Don't look through clones. | |
83 | * optimize.c (maybe_clone_body): Clear DECL_SAVED_TREE of the alias. | |
84 | * semantics.c (expand_or_defer_fn_1): Keep DECL_SAVED_TREE of | |
85 | maybe-in-charge *tor. | |
86 | ||
2d63bc39 JM |
87 | 2016-01-26 Jason Merrill <jason@redhat.com> |
88 | ||
89 | PR c++/68782 | |
90 | * constexpr.c (cxx_eval_bare_aggregate): Update TREE_CONSTANT | |
91 | and TREE_SIDE_EFFECTS. | |
92 | (cxx_eval_constant_expression) [CONSTRUCTOR]: Call | |
93 | verify_constructor_flags. | |
94 | ||
476805ae JJ |
95 | 2016-01-26 Jakub Jelinek <jakub@redhat.com> |
96 | ||
97 | PR c++/68357 | |
98 | * cp-gimplify.c (cp_fold): If some operand folds to error_mark_node, | |
99 | return error_mark_node instead of building trees with error_mark_node | |
100 | operands. | |
101 | ||
01e1dea3 DM |
102 | 2016-01-26 David Malcolm <dmalcolm@redhat.com> |
103 | ||
104 | PR other/69006 | |
105 | * error.c (print_instantiation_partial_context_line): Add missing | |
106 | newlines from output for the t == NULL case. | |
107 | (print_instantiation_partial_context): Remove call to pp_newline. | |
108 | ||
a59b92b0 PP |
109 | 2016-01-24 Patrick Palka <ppalka@gcc.gnu.org> |
110 | ||
111 | Revert: | |
112 | 2016-01-18 Patrick Palka <ppalka@gcc.gnu.org> | |
113 | ||
114 | PR c++/11858 | |
115 | PR c++/24663 | |
116 | PR c++/24664 | |
117 | * decl.c (grokdeclarator): Don't decay array parameter type to | |
118 | a pointer type if it's dependent. | |
119 | (grokparms): Invoke strip_top_quals instead of directly invoking | |
120 | cp_build_qualified_type. | |
121 | * pt.c (decay_dependent_array_parm_type): New static function. | |
122 | (type_unification_real): Call decay_dependent_array_parm_type | |
123 | to decay a dependent array parameter type to its corresponding | |
124 | pointer type before unification. | |
125 | (more_specialized_fn): Likewise. | |
126 | (get_bindings): Likewise. | |
127 | * tree.c (cp_build_qualified_type): Trivial typofix in | |
128 | documentation. | |
129 | ||
69da7802 MS |
130 | 2016-01-23 Martin Sebor <msebor@redhat.com> |
131 | ||
132 | PR c++/58109 | |
133 | PR c++/69022 | |
134 | * decl2.c (is_late_template_attribute): Handle dependent argument | |
135 | to attribute align and attribute vector_size. | |
136 | ||
97ca3d0d JM |
137 | 2016-01-21 Jason Merrill <jason@redhat.com> |
138 | ||
130ee9a9 JM |
139 | PR c++/69392 |
140 | * lambda.c (lambda_capture_field_type): Handle 'this' specially | |
141 | for init-capture, too. | |
142 | ||
020491e6 JM |
143 | PR c++/65687 |
144 | * decl.c (type_is_deprecated): Don't look into a typedef. | |
145 | ||
2f3932b9 JM |
146 | PR c++/40751 |
147 | PR c++/64987 | |
148 | * decl.c (copy_type_enum): Respect TYPE_USER_ALIGN. | |
149 | ||
97ca3d0d JM |
150 | PR c++/43407 |
151 | * decl.c (start_enum): Add attributes parameter. | |
152 | * parser.c (cp_parser_enum_specifier): Pass it. | |
153 | * pt.c (lookup_template_class_1): Pass it. | |
154 | * cp-tree.h: Adjust. | |
155 | ||
33f48842 JM |
156 | 2016-01-19 Jason Merrill <jason@redhat.com> |
157 | ||
158 | PR c++/59759 | |
159 | * pt.c (convert_template_argument): Handle VAR_DECL properly. | |
160 | ||
1e297006 MP |
161 | 2016-01-19 Marek Polacek <polacek@redhat.com> |
162 | ||
163 | PR c++/68586 | |
164 | * constexpr.c (clear_cv_cache): New. | |
165 | * cp-gimplify.c (clear_fold_cache): New. | |
166 | * cp-tree.h (clear_cv_cache, clear_fold_cache): Declare. | |
167 | * decl.c (finish_enum_value_list): Call them. | |
168 | ||
38a979f2 MP |
169 | PR c++/68965 |
170 | * pt.c (tsubst_copy): Mark elements in expanded vector as used. | |
171 | ||
17c15cb9 PP |
172 | 2016-01-18 Patrick Palka <ppalka@gcc.gnu.org> |
173 | ||
174 | PR c++/11858 | |
175 | PR c++/24663 | |
176 | PR c++/24664 | |
177 | * decl.c (grokdeclarator): Don't decay array parameter type to | |
178 | a pointer type if it's dependent. | |
179 | (grokparms): Invoke strip_top_quals instead of directly invoking | |
180 | cp_build_qualified_type. | |
181 | * pt.c (decay_dependent_array_parm_type): New static function. | |
182 | (type_unification_real): Call decay_dependent_array_parm_type | |
183 | to decay a dependent array parameter type to its corresponding | |
184 | pointer type before unification. | |
185 | (more_specialized_fn): Likewise. | |
186 | (get_bindings): Likewise. | |
187 | * tree.c (cp_build_qualified_type): Trivial typofix in | |
188 | documentation. | |
189 | ||
7f26f7df JM |
190 | 2016-01-18 Jason Merrill <jason@redhat.com> |
191 | ||
4b0b30ef JM |
192 | * cp-gimplify.c (cp_fold) [CONSTRUCTOR]: Don't clobber the input. |
193 | ||
8d8f3235 JM |
194 | * cp-gimplify.c (cp_fold): Remove unnecessary special cases. |
195 | ||
7f26f7df JM |
196 | PR c++/68767 |
197 | * cp-gimplify.c (cp_fold) [COND_EXPR]: Simplify. Do fold COND_EXPR. | |
198 | (contains_label_1, contains_label_p): Remove. | |
199 | ||
ec7886c1 PP |
200 | 2016-01-16 Patrick Palka <ppalka@gcc.gnu.org> |
201 | ||
202 | PR c++/69091 | |
203 | * pt.c (type_dependent_expression_p): For a function template | |
204 | specialization, a type is dependent iff any of its template | |
205 | arguments are. | |
206 | ||
203484bb PP |
207 | 2016-01-16 Patrick Palka <ppalka@gcc.gnu.org> |
208 | ||
209 | * cp-array-notation.c (cp_expand_cond_array_notations): Return | |
210 | error_mark_node only if find_rank failed, not if it was | |
211 | successful. | |
212 | ||
aa2500e9 PP |
213 | 2016-01-16 Patrick Palka <ppalka@gcc.gnu.org> |
214 | ||
215 | PR c++/68936 | |
216 | * tree.c (build_min_non_dep_call_vec): Don't retain the | |
217 | KOENIG_LOOKUP_P flag of the non-dependent expression that's | |
218 | been built. | |
219 | (build_min_non_dep_op_overload): Instead, do it here. | |
220 | ||
e0a575ff JJ |
221 | 2016-01-15 Jakub Jelinek <jakub@redhat.com> |
222 | ||
223 | PR bootstrap/68271 | |
224 | * parser.h (cp_token): Remove pragma_kind field. Add comment | |
225 | with number of unused bits. | |
226 | * parser.c (eof_token): Remove pragma_kind field initializer. | |
227 | (cp_lexer_get_preprocessor_token): Don't set pragma_kind | |
228 | field, don't clear CPP_PRAGMA u.value. | |
229 | (cp_parser_pragma_kind): New function. | |
230 | (cp_parser_omp_sections_scope, cp_parser_oacc_kernels_parallel, | |
231 | cp_parser_omp_construct, cp_parser_initial_pragma, | |
232 | cp_parser_pragma): Use cp_parser_pragma_kind instead of accessing | |
233 | pragma_kind field. | |
234 | ||
56233bd6 JM |
235 | 2016-01-15 Jason Merrill <jason@redhat.com> |
236 | ||
c5e3b6fc JM |
237 | PR c++/68847 |
238 | * call.c (build_cxx_call): Use fold_non_dependent_expr. | |
239 | ||
f3255019 JM |
240 | * typeck2.c (cxx_incomplete_type_diagnostic): Use the location of |
241 | value. | |
242 | ||
56233bd6 JM |
243 | PR c++/69257 |
244 | * typeck.c (decay_conversion): Don't call mark_rvalue_use for | |
245 | array/function-to-pointer conversion. Call | |
246 | complete_type_or_maybe_complain for lvalue-to-rvalue conversion. | |
247 | * call.c (convert_like_real): Print call context if | |
248 | decay_conversion errors. | |
249 | ||
e6d6ec9e TV |
250 | 2016-01-14 Tom de Vries <tom@codesourcery.com> |
251 | ||
252 | PR tree-optimization/68773 | |
253 | * parser.c (cp_parser_oacc_declare, cp_parser_omp_declare_target): Don't | |
254 | set force_output. | |
255 | ||
a7ccb9e7 JM |
256 | 2016-01-14 Jason Merrill <jason@redhat.com> |
257 | ||
258 | PR c++/69261 | |
259 | * constexpr.c (find_array_ctor_elt): Handle splitting RANGE_EXPR. | |
260 | ||
5342156c MP |
261 | 2016-01-12 Marek Polacek <polacek@redhat.com> |
262 | ||
263 | PR c++/68979 | |
264 | * constexpr.c (cxx_eval_check_shift_p): Use permerror rather than | |
265 | error_at and adjust the return value. | |
266 | ||
723033a6 JJ |
267 | 2016-01-12 Jakub Jelinek <jakub@redhat.com> |
268 | ||
65364cc5 JJ |
269 | PR objc++/68511 |
270 | PR c++/69213 | |
271 | * cp-gimplify.c (cp_gimplify_expr) <case INIT_EXPR>: Don't return | |
272 | GS_ERROR whenever seen_error (), only if *expr_p contains | |
273 | cilk spawn stmt, but cilk_detect_spawn_and_unwrap failed. | |
274 | ||
723033a6 JJ |
275 | PR c++/66808 |
276 | PR c++/69000 | |
277 | * pt.c (tsubst_decl): If not local_p, clear DECL_TEMPLATE_INFO. | |
278 | ||
9fc21977 JM |
279 | 2016-01-11 Jason Merrill <jason@redhat.com> |
280 | ||
281 | PR c++/69131 | |
282 | * method.c (walk_field_subobs): Add dtor_from_ctor parm. | |
283 | (process_subob_fn): Likewise. Don't consider triviality if true. | |
284 | (synthesize_method_walk): Pass it. | |
285 | ||
655441d6 DM |
286 | 2016-01-11 David Malcolm <dmalcolm@redhat.com> |
287 | ||
288 | PR c++/68795 | |
289 | * parser.c (cp_parser_postfix_expression): Initialize | |
290 | close_paren_loc to UNKNOWN_LOCATION; only use it if | |
291 | it has been written to by | |
292 | cp_parser_parenthesized_expression_list. | |
293 | (cp_parser_parenthesized_expression_list): Document the behavior | |
294 | with respect to the CLOSE_PAREN_LOC param. | |
295 | ||
9cb6bd74 JJ |
296 | 2016-01-11 Jakub Jelinek <jakub@redhat.com> |
297 | ||
298 | PR c++/69211 | |
299 | * cp-gimplify.c (cp_fold): If COMPOUND_EXPR or MODIFY_EXPR | |
300 | folded operands have side-effects, but folding changed any of them, | |
301 | build a new tree with the folded operands instead of returning the | |
302 | unfolded tree. | |
303 | ||
73f0dae2 MP |
304 | 2016-01-09 Marek Polacek <polacek@redhat.com> |
305 | ||
306 | PR c++/69113 | |
307 | * decl2.c (comdat_linkage): Only set DECL_COMDAT if TREE_PUBLIC is set. | |
308 | ||
c50e614b JJ |
309 | 2016-01-09 Jakub Jelinek <jakub@redhat.com> |
310 | ||
311 | PR c++/69164 | |
312 | * class.c (layout_class_type): Use copy_node to copy FIELD_DECLs. | |
313 | ||
fe71aa4e JM |
314 | 2016-01-08 Jason Merrill <jason@redhat.com> |
315 | ||
316 | PR c++/69158 | |
317 | * constexpr.c (cxx_fold_indirect_ref): Handle array type differing | |
318 | in completion. | |
319 | ||
bd8f5bb2 MP |
320 | 2016-01-08 Marek Polacek <polacek@redhat.com> |
321 | ||
322 | PR c++/68449 | |
323 | * constexpr.c (cxx_eval_constant_expression): Handle NULL initializer. | |
324 | ||
0795b6f2 JM |
325 | 2016-01-08 Jason Merrill <jason@redhat.com> |
326 | ||
550c5f8a JM |
327 | * constexpr.c (cxx_eval_call_expression): Remove convert_to_void |
328 | workaround. | |
329 | ||
45177337 JM |
330 | PR c++/68983 |
331 | PR c++/67557 | |
332 | * cvt.c (convert_to_void): Don't strip a TARGET_EXPR of | |
333 | TREE_ADDRESSABLE type. | |
334 | ||
0795b6f2 JM |
335 | PR c++/68983 |
336 | PR c++/67557 | |
337 | * call.c (unsafe_copy_elision_p): Look through COMPOUND_EXPR. | |
338 | ||
ce3e43d7 NS |
339 | 2016-01-05 Nathan Sidwell <nathan@acm.org> |
340 | ||
341 | PR c++/58583 | |
342 | * pt.c (build_non_dependent_expr): Don't try a checking fold when | |
343 | parsing an nsdmi. | |
344 | ||
818ab71a | 345 | 2016-01-04 Jakub Jelinek <jakub@redhat.com> |
5624e564 JJ |
346 | |
347 | Update copyright years. | |
ad41bd84 | 348 | \f |
818ab71a | 349 | Copyright (C) 2016 Free Software Foundation, Inc. |
ad41bd84 JM |
350 | |
351 | Copying and distribution of this file, with or without modification, | |
352 | are permitted in any medium without royalty provided the copyright | |
353 | notice and this notice are preserved. |