1 2012-03-29 Jason Merrill <jason@redhat.com>
4 * call.c (compare_ics): Handle ck_aggr like ck_list.
6 2012-03-28 Jason Merrill <jason@redhat.com>
9 * typeck.c (lookup_destructor): Clear BASELINK_QUALIFIED_P if
10 we didn't get an explicit scope.
11 * pt.c (tsubst_baselink): Likewise.
13 2012-03-22 Paolo Carlini <paolo.carlini@oracle.com>
16 * class.c (check_field_decls): Call literal_type_p only
19 2012-03-22 Jakub Jelinek <jakub@redhat.com>
22 * decl.c (check_tag_decl): Only use CLASSTYPE_TEMPLATE_INSTANTIATION
23 on CLASS_TYPE_P types.
25 2012-03-22 Jason Merrill <jason@redhat.com>
28 * method.c (implicitly_declare_fn): Set DECL_EXTERNAL.
30 2012-03-22 Jakub Jelinek <jakub@redhat.com>
32 Backported from mainline
33 2012-03-14 Jakub Jelinek <jakub@redhat.com>
36 * parser.c (lookup_literal_operator): Return fn only if
37 processed all arguments from args vector and argtypes is
40 2012-03-22 Release Manager
44 2012-03-20 Jason Merrill <jason@redhat.com>
46 * mangle.c (write_type): Handle 'auto'.
47 * init.c (build_new): Don't do auto deduction where it might
48 affect template mangling.
50 2012-03-07 Jason Merrill <jason@redhat.com>
53 * mangle.c (write_literal_operator_name): The length comes after the
56 2012-02-29 Jason Merrill <jason@redhat.com>
59 * decl.c (check_tag_decl): Move warning for misplaced attributes here.
60 (shadow_tag): From here.
61 * parser.c (cp_parser_explicit_instantiation): Don't warn here.
63 2012-02-21 Jakub Jelinek <jakub@redhat.com>
66 * typeck.c (check_literal_operator_args): Initialize *long_double_p
67 and *long_long_unsigned_p even if processing_template_decl.
69 2012-02-16 Jason Merrill <jason@redhat.com>
72 * decl.c (define_label): Use timevar_cond_start/stop.
74 2012-02-16 Fabien ChĂȘne <fabien@gcc.gnu.org>
77 * decl.c (xref_basetypes): call dependent_scope_p instead of
80 2012-02-16 Jason Merrill <jason@redhat.com>
83 * error.c (dump_expr): Handle lambda closures specifically.
85 2012-02-14 Jason Merrill <jason@redhat.com>
87 * parser.c (cp_parser_explicit_instantiation): Give a warning
88 for ignored attributes on explicit class instantiation.
90 2012-02-14 Jakub Jelinek <jakub@redhat.com>
93 * pt.c (tsubst_copy_asm_operands): For LABEL_DECL values call
94 lookup_label on label's name and set TREE_USED.
96 2012-02-14 Jason Merrill <jason@redhat.com>
99 * decl.c (local_variable_p_walkfn): Don't check DECL_ARTIFICIAL.
101 2012-02-14 Jakub Jelinek <jakub@redhat.com>
104 * decl.c (duplicate_decls): If olddecl has bigger DECL_ALIGN than
105 newdecl, copy DECL_ALIGN to newdecl and or DECL_USER_ALIGN bits.
107 2012-02-07 Jason Merrill <jason@redhat.com>
110 * semantics.c (cx_check_missing_mem_inits): Handle unions.
111 Fix constexpr default constructor logic.
114 * pt.c (tsubst): Strip uninstantiated typedef.
116 2012-02-06 Jason Merrill <jason@redhat.com>
119 * cvt.c (build_expr_type_conversion): Check for template conversion.
121 2012-01-31 Jason Merrill <jason@redhat.com>
124 * cp-tree.h (PACK_EXPANSION_LOCAL_P): New.
125 * pt.c (make_pack_expansion, tsubst_initializer_list): Set it.
126 (tsubst_pack_expansion): Check it.
128 2012-01-29 Paolo Carlini <paolo.carlini@oracle.com>
131 * class.c (explain_non_literal_class): Correctly handle implicitly
132 deleted constructors.
134 2012-01-27 Jakub Jelinek <jakub@redhat.com>
137 * pt.c (tsubst_pack_expansion): Delete and restore
138 local_specialization whenever need_local_specialization, not just
139 when saved_local_specializations is non-NULL.
141 2012-01-26 Paolo Carlini <paolo.carlini@oracle.com>
144 * error.c (dump_decl, [TEMPLATE_ID_EXPR]): Handle error_mark_node
145 as TREE_OPERAND (t, 1).
147 2012-01-24 Jason Merrill <jason@redhat.com>
150 * decl.c (xref_basetypes): Check VEC_length instead of VEC_space.
153 * tree.c (called_fns_equal): Check template args.
154 (cp_tree_equal): Call it.
156 2012-01-24 Aldy Hernandez <aldyh@redhat.com>
157 Patrick Marlier <patrick.marlier@gmail.com>
160 * class.c (set_method_tm_attributes): Use TARGET_THUNK instead of
161 thunk for set_one_vmethod_tm_attributes.
163 2012-01-24 Paolo Carlini <paolo.carlini@oracle.com>
166 * call.c (build_over_call): Check for error_mark_node as
167 TREE_VALUE when default arguments are processed.
169 2012-01-23 Jason Merrill <jason@redhat.com>
172 * decl2.c (determine_visibility): Check for visibility attribute
173 on template specialization.
175 2012-01-23 Paolo Carlini <paolo.carlini@oracle.com>
178 * pt.c (parameter_of_template_p): Skip error_mark_node parameters.
180 2012-01-23 Jason Merrill <jason@redhat.com>
183 * class.c (add_method): Set OVL_USED for using-decls.
184 * tree.c (ovl_scope): New.
185 * cp-tree.h: Declare it.
186 * parser.c (cp_parser_template_name): Use it.
187 * semantics.c (baselink_for_fns): Likewise.
188 * name-lookup.c (set_inherited_value_binding_p): Likewise.
190 2012-01-20 Paolo Carlini <paolo.carlini@oracle.com>
193 * pt.c (lookup_template_class_1): Check context returned by
194 tsubst for error_mark_node.
196 2012-01-19 Kai Tietz <ktietz@redhat.com>
199 * decl2.c (save_template_attributes): Use merge_attributes
200 instead of chaining up via TREE_CHAIN.
202 2012-01-19 Jason Merrill <jason@redhat.com>
205 * class.c (finish_struct): Call add_method here for function usings.
206 * semantics.c (finish_member_declaration): Not here.
208 2012-01-18 Paolo Carlini <paolo.carlini@oracle.com>
211 * typeck2.c (store_init_value): Within a template guard
212 cxx_constant_value with require_potential_constant_expression.
213 * pt.c (convert_nontype_argument): Likewise.
215 2012-01-16 Jakub Jelinek <jakub@redhat.com>
218 * mangle.c (write_template_arg_literal): Handle complex.
220 2012-01-16 Jason Merrill <jason@redhat.com>
223 * mangle.c (mangle_decl): Don't mangle uninstantiated templates.
226 * typeck.c (build_static_cast_1): Handle bit-fields properly.
228 2012-01-13 Ian Lance Taylor <iant@google.com>
231 * typeck.c (enum_cast_to_int): New static function.
232 (cp_build_binary_op): When handling warn_sign_compare, don't test
233 for TREE_NO_WARNING. Do call enum_cast_to_int.
234 * call.c (avoid_sign_compare_warnings): Remove static function.
235 (build_new_op_1): Don't call avoid_sign_compare_warnings.
237 2012-01-13 Steven Bosscher <steven@gcc.gnu.org>
239 * decl2.c: Do not include tree-mudflap.h
240 * semantics.c: Likewise.
242 2012-01-13 Jason Merrill <jason@redhat.com>
245 * semantics.c (finish_break_stmt): Avoid adding an unreachable
249 * decl2.c (constrain_visibility): Clear DECL_VISIBILITY_SPECIFIED
250 when reducing the visibility.
253 * class.c (build_vtbl_initializer): Use __cxa_deleted_virtual.
255 2012-01-12 Jason Merrill <jason@redhat.com>
258 * pt.c (value_dependent_expression_p): Treat STMT_EXPR as
261 2012-01-13 Dodji Seketeli <dodji@redhat.com>
264 * semantics.c (cp_parser_ctor_initializer_opt_and_function_body):
265 Set the pointer to the last block of the constructor to the
267 (build_constexpr_constructor_member_initializers): Get
268 build_data_member_initialization a chance to deal with more
269 statements before we choke.
271 2012-01-12 Jason Merrill <jason@redhat.com>
274 * mangle.c (write_expression): Mangle BASELINK scope if
275 BASELINK_QUALIFIED_P.
276 * search.c (adjust_result_of_qualified_name_lookup): Set
277 BASELINK_QUALIFIED_P.
278 * tree.c (cp_tree_equal) [BASELINK]: Compare BASELINK_QUALIFIED_P.
279 * parser.c (cp_parser_postfix_dot_deref_expression): Don't call
280 adjust_result_of_qualified_name_lookup for non-qualified names.
283 * pt.c (unify): Handle error_mark_node.
285 2012-01-11 Jason Merrill <jason@redhat.com>
288 * call.c (standard_conversion): For ptrmemfuncs, compare the
292 * mangle.c (find_substitution): A type is only a substitution
293 match if we're looking for a type.
294 (write_nested_name): Use decl_mangling_context.
296 * decl.c (decls_match): Assert that the arguments are decls.
299 * pt.c (resolve_overloaded_unification): Compare types with
300 same_type_p, not decls_match.
302 2012-01-10 Jason Merrill <jason@redhat.com>
305 * class.c (build_base_path): Diagnose ambiguous base.
308 * semantics.c (cxx_eval_call_expression): Always retry previously
309 non-constant expressions.
311 2012-01-06 Jason Merrill <jason@redhat.com>
315 * parser.c (cp_parser_new_expression): Set
316 type_definition_forbidden_message.
322 * mangle.c (write_expression): Support NEW_EXPR, DELETE_EXPR,
323 THROW_EXPR, CONSTRUCTOR, OVERLOAD. Fix PREINCREMENT_EXPR and
325 (write_template_arg): Fix mangling of class-scope functions and
327 (mangle_decl): Update suggested -fabi-version argument.
328 * operators.def: Add DOTSTAR_EXPR, REINTERPRET_CAST_EXPR,
329 DYNAMIC_CAST_EXPR; correct CONST_CAST_EXPR, STATIC_CAST_EXPR.
330 * tree.c (dependent_name): No longer static.
331 * cp-tree.h: Declare it.
332 * pt.c (unify): Defer handling of unconverted functions.
334 * mangle.c (mangle_decl): Don't generate mangling aliases
335 for maybe-in-charge [cd]tors.
337 * error.c (dump_expr): Print type of CONSTRUCTOR.
339 2012-01-05 Dodji Seketeli <dodji@redhat.com>
342 * parser.c (cp_parser_alias_declaration): Get out early upon
343 errors in the identifier or the attributes.
345 2012-01-04 Paolo Carlini <paolo.carlini@oracle.com>
348 * pt.c (tsubst_copy_and_build): Maybe set TREE_NO_WARNING on
349 the tree returned by build_x_binary_op.
351 2012-01-03 Paolo Carlini <paolo.carlini@oracle.com>
354 * parser.c (cp_parser_postfix_open_square_expression): Handle
355 postfix-expression [ braced-init-list ].
357 2012-01-03 Paolo Carlini <paolo.carlini@oracle.com>
360 * rtti.c (build_dynamic_cast_1): In case of T a pointer type,
361 call decay_conversion on v.
363 2012-01-03 Paolo Carlini <paolo.carlini@oracle.com>
366 * decl.c (duplicate_decls): With -Wredundant-decls don't warn for
367 declaration followed by specialization.
369 2012-01-03 Jakub Jelinek <jakub@redhat.com>
372 * semantics.c (finish_omp_clauses): Call fold_build_cleanup_point_expr
373 on OMP_CLAUSE_{IF,FINAL,NUM_THREADS,SCHEDULE_CHUNK}_EXPR.
375 2012-01-02 Jason Merrill <jason@redhat.com>
379 * method.c (walk_field_subobs): Don't check for uninitialized
381 (synthesized_method_walk): Check here.
385 * parser.c (cp_parser_cache_defarg): Split out...
386 (cp_parser_parameter_declaration): ...from here.
387 (cp_parser_save_nsdmi): Use it.
388 (cp_parser_cache_group): Remove CPP_COMMA support.
390 2012-01-02 Dodji Seketeli <dodji@redhat.com>
393 * semantics.c (cx_check_missing_mem_inits): Don't assert in case
396 2012-01-02 Paolo Carlini <paolo.carlini@oracle.com>
399 * typeck2.c (digest_init_r): Use copy_init when initializing
402 2012-01-01 Paolo Carlini <paolo.carlini@oracle.com>
405 * decl.c (build_enumerator): Don't call perform_integral_promotions
408 2012-01-01 Paolo Carlini <paolo.carlini@oracle.com>
411 * typeck.c (build_reinterpret_cast_1): Implement resolution of
414 2012-01-01 Fabien ChĂȘne <fabien@gcc.gnu.org>
416 * parser.c (cp_parser_using_declaration): Add a warning about
417 deprecated access declarations when no errors were encountered
418 while parsing the access declaration. Save the first token in
419 order to emit the warning at the right place.
421 Copyright (C) 2012 Free Software Foundation, Inc.
423 Copying and distribution of this file, with or without modification,
424 are permitted in any medium without royalty provided the copyright
425 notice and this notice are preserved.