]>
Commit | Line | Data |
---|---|---|
4c5cf0b2 JM |
1 | 2015-02-02 Jason Merrill <jason@redhat.com> |
2 | ||
3 | * tree.c (handle_abi_tag_attribute): Diagnose invalid arguments. | |
4 | ||
40fecdd6 JM |
5 | 2015-01-30 Joseph Myers <joseph@codesourcery.com> |
6 | ||
7 | * class.c, except.c, parser.c, pt.c: All callers of fatal_error | |
8 | changed to pass input_location as first argument. | |
9 | ||
a7c3e87e JJ |
10 | 2015-01-29 Jakub Jelinek <jakub@redhat.com> |
11 | ||
12 | PR c++/64717 | |
13 | * cp-ubsan.c (cp_ubsan_instrument_vptr): Don't wrap vptr | |
14 | into SAVE_EXPR. | |
15 | ||
e1ef8aa9 JM |
16 | 2015-01-29 Jason Merrill <jason@redhat.com> |
17 | ||
3dbb8427 JM |
18 | PR c++/49508 |
19 | * semantics.c (finish_return_stmt): Suppress -Wreturn-type on | |
20 | erroneous return statement. | |
21 | ||
e1ef8aa9 JM |
22 | PR c++/64521 |
23 | * repo.c (repo_emit_p): It's OK for a clone to be extern at this | |
24 | point. | |
25 | ||
f7f049fa CT |
26 | 2015-01-27 Caroline Tice <cmtice@google.com> |
27 | ||
28 | Committing VTV Cywin/Ming patch for Patrick Wollgast | |
29 | * vtable-class-hierarchy.cc (vtv_generate_init_routine): Add | |
30 | check for not TARGET_PECOFF at the VTV_PREINIT_PRIORITY checks. | |
31 | ||
94e54b8d JM |
32 | 2015-01-27 Jason Merrill <jason@redhat.com> |
33 | ||
2cc7f90b JM |
34 | PR c++/58597 |
35 | * lambda.c (maybe_add_lambda_conv_op): Check cfun rather than | |
36 | current_function_decl. | |
37 | ||
94e54b8d JM |
38 | PR c++/63889 |
39 | * pt.c (finish_template_variable): Move from semantics.c. | |
40 | Handle multiple template arg levels. Handle coercion here. | |
41 | (lookup_template_variable): Not here. | |
42 | ||
7c83622c JM |
43 | 2015-01-23 Jason Merrill <jason@redhat.com> |
44 | ||
fa4e8db2 JM |
45 | PR c++/64314 |
46 | PR c++/57510 | |
47 | * typeck2.c (split_nonconstant_init_1): Remove a sub-CONSTRUCTOR | |
48 | that has been completely split out. | |
49 | ||
c6e7c499 | 50 | PR c++/64701 |
8a7261b2 JM |
51 | * constexpr.c (cxx_eval_constant_expression): Don't crash on C++ |
52 | statement codes. | |
c6e7c499 | 53 | |
7c83622c JM |
54 | PR c++/64727 |
55 | * constexpr.c (cxx_eval_constant_expression): Allow for lvalue use | |
56 | of CONST_DECL. | |
57 | ||
f1eac182 JM |
58 | 2015-01-21 Jason Merrill <jason@redhat.com> |
59 | ||
b85a3242 JM |
60 | PR c++/64603 |
61 | * constexpr.c (cxx_eval_constant_expression): Only shortcut | |
62 | constant CONSTRUCTORs. | |
63 | ||
f1eac182 JM |
64 | PR c++/64647 |
65 | * constexpr.c (ensure_literal_type_for_constexpr_object): Don't | |
66 | give a hard error in a template instantiation. | |
67 | ||
cbf5d0e7 RB |
68 | 2015-01-21 Richard Biener <rguenther@suse.de> |
69 | ||
70 | PR middle-end/64313 | |
71 | * decl.c (duplicate_decls): Call set_builtin_decl_declared_p | |
72 | for builtins the user declared correctly. | |
73 | ||
de37b21e PC |
74 | 2015-01-16 Paolo Carlini <paolo.carlini@oracle.com> |
75 | ||
76 | PR c++/58614 | |
77 | * pt.c (unify): When BRACE_ENCLOSED_INITIALIZER_P (arg), handle | |
78 | TREE_TYPE (elt) == error_mark_node. | |
79 | ||
67933728 JH |
80 | 2015-01-15 Jan Hubicka <hubicka@ucw.cz> |
81 | ||
82 | PR tree-optimization/62053 | |
83 | * tree.c (build_cplus_array_type): Layout type after variants are set. | |
84 | ||
35228ac7 JJ |
85 | 2015-01-15 Jakub Jelinek <jakub@redhat.com> |
86 | ||
87 | * cp-gimplify.c (cp_genericize_r): Call | |
88 | cp_ubsan_maybe_instrument_member_call for member calls. | |
89 | (cp_ubsan_check_member_access_r): New function. | |
90 | (cp_genericize_tree): Call cp_ubsan_instrument_member_accesses. | |
91 | * cp-tree.h (cp_ubsan_maybe_instrument_member_call, | |
92 | cp_ubsan_instrument_member_accesses, | |
93 | cp_ubsan_maybe_instrument_downcast, | |
94 | cp_ubsan_maybe_instrument_cast_to_vbase): New prototypes. | |
95 | * cp-ubsan.c: New file. | |
96 | * Make-lang.in (CXX_AND_OBJCXX_OBJS): Add cp/cp-ubsan.o. | |
97 | * constexpr.c (cxx_eval_call_expression): Return void_node | |
98 | for IFN_UBSAN_VPTR. | |
99 | (potential_constant_expression_1): Return true for | |
100 | UBSAN_NULL, UBSAN_BOUNDS and UBSAN_VPTR internal calls. | |
101 | * typeck.c (build_class_member_access_expr): Provide locus | |
102 | for COMPONENT_REFs. | |
103 | (build_static_cast_1): Instrument downcasts. | |
104 | * class.c (build_base_path): For -fsanitize=vptr and !fixed_type_p | |
105 | add ubsan instrumentation for virtual_access. | |
106 | * call.c: Include internal-fn.h. | |
107 | (set_flags_from_callee): Handle internal calls. | |
108 | ||
199b7a35 MV |
109 | 2015-01-15 Momchil Velikov <momchil.velikov@gmail.com> |
110 | ||
111 | PR c++/59366 | |
112 | * name-lookup.c (pushdecl_maybe_friend_1): Hide friend functions | |
113 | and function templates, declared only in the class. | |
114 | * decl.c (duplicate_decls): Reveal hidden friend functions or | |
115 | function templates, if they are redeclared outside the class. | |
116 | ||
c3c29ba5 JM |
117 | 2015-01-15 Jason Merrill <jason@redhat.com> |
118 | ||
134efa82 JM |
119 | PR c++/64356 |
120 | * constexpr.c (cxx_eval_binary_expression): Fix pasto. | |
121 | ||
c3c29ba5 JM |
122 | PR c++/63283 |
123 | * constexpr.c (potential_constant_expression_1): Handle reference | |
124 | args in templates. | |
125 | ||
41dbbb37 TS |
126 | 2015-01-15 Thomas Schwinge <thomas@codesourcery.com> |
127 | James Norris <jnorris@codesourcery.com> | |
128 | Cesar Philippidis <cesar@codesourcery.com> | |
129 | Ilmir Usmanov <i.usmanov@samsung.com> | |
130 | Jakub Jelinek <jakub@redhat.com> | |
131 | ||
132 | * parser.c: Include "gomp-constants.h". | |
133 | (cp_parser_omp_clause_map): Use enum gomp_map_kind instead of enum | |
134 | omp_clause_map_kind. Use GOMP_MAP_* instead of OMP_CLAUSE_MAP_*. | |
135 | Use OMP_CLAUSE_SET_MAP_KIND. | |
136 | (cp_parser_omp_construct, cp_parser_pragma): Handle | |
137 | PRAGMA_OACC_CACHE, PRAGMA_OACC_DATA, PRAGMA_OACC_ENTER_DATA, | |
138 | PRAGMA_OACC_EXIT_DATA, PRAGMA_OACC_KERNELS, PRAGMA_OACC_PARALLEL, | |
139 | PRAGMA_OACC_LOOP, PRAGMA_OACC_UPDATE, PRAGMA_OACC_WAIT. | |
140 | (cp_parser_omp_clause_name): Handle "async", "copy", "copyout", | |
141 | "create", "delete", "deviceptr", "host", "num_gangs", | |
142 | "num_workers", "present", "present_or_copy", "pcopy", | |
143 | "present_or_copyin", "pcopyin", "present_or_copyout", "pcopyout", | |
144 | "present_or_create", "pcreate", "vector_length", "wait". | |
145 | (OACC_DATA_CLAUSE_MASK, OACC_ENTER_DATA_CLAUSE_MASK) | |
146 | (OACC_EXIT_DATA_CLAUSE_MASK, OACC_KERNELS_CLAUSE_MASK) | |
147 | (OACC_LOOP_CLAUSE_MASK, OACC_PARALLEL_CLAUSE_MASK) | |
148 | (OACC_UPDATE_CLAUSE_MASK, OACC_WAIT_CLAUSE_MASK): New macros. | |
149 | (cp_parser_omp_var_list_no_open): Handle OMP_CLAUSE__CACHE_. | |
150 | (cp_parser_oacc_data_clause, cp_parser_oacc_data_clause_deviceptr) | |
151 | (cp_parser_oacc_clause_vector_length, cp_parser_oacc_wait_list) | |
152 | (cp_parser_oacc_clause_wait, cp_parser_omp_clause_num_gangs) | |
153 | (cp_parser_omp_clause_num_workers, cp_parser_oacc_clause_async) | |
154 | (cp_parser_oacc_all_clauses, cp_parser_oacc_cache) | |
155 | (cp_parser_oacc_data, cp_parser_oacc_enter_exit_data) | |
156 | (cp_parser_oacc_kernels, cp_parser_oacc_loop) | |
157 | (cp_parser_oacc_parallel, cp_parser_oacc_update) | |
158 | (cp_parser_oacc_wait): New functions. | |
159 | * cp-tree.h (finish_oacc_data, finish_oacc_kernels) | |
160 | (finish_oacc_parallel): New prototypes. | |
161 | * semantics.c: Include "gomp-constants.h". | |
162 | (handle_omp_array_sections): Handle GOMP_MAP_FORCE_DEVICEPTR. Use | |
163 | GOMP_MAP_* instead of OMP_CLAUSE_MAP_*. Use | |
164 | OMP_CLAUSE_SET_MAP_KIND. | |
165 | (finish_omp_clauses): Handle OMP_CLAUSE_ASYNC, | |
166 | OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_WAIT, OMP_CLAUSE__CACHE_. | |
167 | Use GOMP_MAP_* instead of OMP_CLAUSE_MAP_*. | |
168 | (finish_oacc_data, finish_oacc_kernels, finish_oacc_parallel): New | |
169 | functions. | |
170 | ||
36b218ee PC |
171 | 2015-01-14 Paolo Carlini <paolo.carlini@oracle.com> |
172 | ||
173 | PR c++/58671 | |
174 | * decl2.c (var_defined_without_dynamic_init): Handle gracefully | |
175 | self-initialization. | |
176 | ||
8f413ae2 JM |
177 | 2015-01-13 Jason Merrill <jason@redhat.com> |
178 | ||
caee690e JM |
179 | PR c++/64356 |
180 | PR libstdc++/58777 | |
181 | * constexpr.c (cxx_eval_binary_expression): Don't VERIFY_CONSTANT | |
182 | pointer expressions. | |
183 | (cxx_eval_increment_expression): Likewise. | |
184 | ||
7c368fb2 JM |
185 | PR c++/64514 |
186 | * pt.c (coerce_template_parameter_pack): Return NULL for a | |
187 | zero-length fixed parameter pack with a pack expansion arg. | |
188 | ||
8f413ae2 JM |
189 | PR c++/64520 |
190 | * pt.c (unify): Don't try to deduce to std::initializer_list<T...>. | |
191 | ||
49c8bc0c JM |
192 | 2015-01-12 Jason Merrill <jason@redhat.com> |
193 | ||
194 | PR c++/64547 | |
195 | * constexpr.c (cxx_eval_call_expression): A call to a void | |
196 | function doesn't need to return a value. | |
197 | ||
adfac8df JJ |
198 | 2015-01-09 Michael Collison <michael.collison@linaro.org> |
199 | ||
200 | * call.c: Include hash-set.h, machmode.h, vec.h, double-int.h, | |
201 | input.h, alias.h, symtab.h, options.h, fold-const.h, | |
202 | wide-int.h, and inchash.h due to flattening of tree.h. | |
203 | * class.c: Ditto. | |
204 | * constexpr.c: Ditto. | |
205 | * cp-array-notation.c: Ditto. | |
206 | * cp-gimplify.c: Ditto. | |
207 | * cp-lang.c: Ditto. | |
208 | * cp-objcp-common.c: Ditto. | |
209 | * cvt.c: Ditto. | |
210 | * decl2.c: Ditto. | |
211 | * decl.c: Ditto. | |
212 | * dump.c: Ditto. | |
213 | * error.c: Ditto. | |
214 | * except.c: Ditto. | |
215 | * expr.c: Ditto. | |
216 | * friend.c: Ditto. | |
217 | * init.c: Ditto. | |
218 | * lambda.c: Ditto. | |
219 | * lex.c: Ditto. | |
220 | * mangle.c: Ditto. | |
221 | * name-lookup.c: Ditto. | |
222 | * optimize.c: Ditto. | |
223 | * parser.c: Ditto. | |
224 | * pt.c: Ditto. | |
225 | * ptree.c: Ditto. | |
226 | * repo.c: Ditto. | |
227 | * rtti.c: Ditto. | |
228 | * search.c: Ditto. | |
229 | * semantics.c: Ditto. | |
230 | * tree.c: Ditto. | |
231 | * typeck2.c: Ditto. | |
232 | * typeck.c: Ditto. | |
233 | ||
f5481fc4 JM |
234 | 2015-01-08 Jason Merrill <jason@redhat.com> |
235 | ||
236 | * cp-gimplify.c (cp_genericize): Use do_ubsan_in_current_function. | |
237 | * decl.c (compute_array_index_type): Likewise. | |
238 | * init.c (build_vec_init): Likewise. | |
239 | * typeck.c (cp_build_binary_op): Likewise. | |
240 | ||
46621807 JM |
241 | 2015-01-08 Jason Merrill <jason@redhat.com> |
242 | ||
243 | * init.c (build_vec_init): Call ubsan_instrument_bounds to check | |
244 | whether an initializer-list is too big for a VLA. | |
245 | (throw_bad_array_length): Remove. | |
246 | * cp-tree.h: Remove prototype. | |
247 | ||
247ecdf3 PC |
248 | 2015-01-08 Paolo Carlini <paolo.carlini@oracle.com> |
249 | ||
250 | PR c++/60753 | |
251 | * decl.c (grokfndecl): Add bool parameter. | |
252 | (grokdeclarator): Adjust calls. | |
253 | (start_decl): Don't set DECL_DELETED_FN here. | |
254 | ||
47867b4f JM |
255 | 2015-01-06 Jason Merrill <jason@redhat.com> |
256 | ||
efcdb22f JM |
257 | * parser.c (cp_parser_nested_name_specifier_opt): Diagnose invalid |
258 | template-ids. | |
259 | ||
c6a38536 JM |
260 | PR c++/64455 |
261 | * pt.c (type_dependent_expression_p): Handle variable templates. | |
262 | * constexpr.c (potential_constant_expression_1): Use it. | |
263 | ||
b433d944 JM |
264 | PR c++/64487 |
265 | * semantics.c (finish_offsetof): Handle templates here. | |
266 | * parser.c (cp_parser_builtin_offsetof): Not here. | |
267 | ||
47867b4f JM |
268 | PR c++/64496 |
269 | * semantics.c (process_outer_var_ref): Diagnose lambda in local | |
270 | class NSDMI. | |
271 | ||
864822bd VV |
272 | 2015-01-06 Ville Voutilainen <ville.voutilainen@gmail.com> |
273 | ||
274 | PR c++/64489 | |
275 | * class.c (check_field_decls): Make copy assignment operators | |
276 | complex only in c++98 mode. | |
277 | ||
2f42e5de TS |
278 | 2015-01-05 Trevor Saunders <tsaunders@mozilla.com> |
279 | ||
280 | PR c++/31397 | |
281 | * class.c (check_for_override): Warn when a virtual function is an | |
282 | override not marked override. | |
283 | ||
86cfdb4e TS |
284 | 2015-01-05 Trevor Saunders <tsaunders@mozilla.com> |
285 | ||
286 | * class.c (warn_hidden): Use auto_vec<tree> instead of tree_list to | |
287 | hold base_fndecls. | |
288 | (get_basefndecls): Adjust. | |
289 | ||
5624e564 JJ |
290 | 2015-01-05 Jakub Jelinek <jakub@redhat.com> |
291 | ||
292 | Update copyright years. | |
293 | ||
5bd012f8 MP |
294 | 2015-01-05 Marek Polacek <polacek@redhat.com> |
295 | ||
296 | PR c/64423 | |
297 | * typeck.c (cp_build_array_ref): Pass loc down to | |
298 | warn_array_subscript_with_type_char. | |
299 | ||
ad41bd84 | 300 | \f |
5624e564 | 301 | Copyright (C) 2015 Free Software Foundation, Inc. |
ad41bd84 JM |
302 | |
303 | Copying and distribution of this file, with or without modification, | |
304 | are permitted in any medium without royalty provided the copyright | |
305 | notice and this notice are preserved. |