1 2012-03-07 Jason Merrill <jason@redhat.com>
4 * mangle.c (write_literal_operator_name): The length comes after the
7 2012-03-05 Jakub Jelinek <jakub@redhat.com>
9 * pt.c (local_specializations): Change from htab_t into
10 struct pointer_map_t *.
11 (retrieve_local_specializations, register_local_specialization,
12 tsubst_pack_expansion, instantiate_decl): Adjust users.
13 (eq_local_specializations, hash_local_specialization): Remove.
15 2012-03-05 Jason Merrill <jason@redhat.com>
18 * decl2.c (determine_visibility): Correct calculation of class
20 * decl.c (check_tag_decl): Adjust warning.
22 * method.c (synthesized_method_walk): Cleanups don't affect the EH
25 2012-03-03 Jason Merrill <jason@redhat.com>
27 * init.c (perform_member_init): Cope with uninstantiated NSDMI.
30 * call.c (build_aggr_conv): Call reshape_init.
31 (convert_like_real): Likewise.
32 * typeck2.c (process_init_constructor): Clear TREE_CONSTANT if
35 * mangle.c (write_nested_name): Use decl_mangling_context.
36 (write_prefix, write_template_prefix): Likewise.
39 * mangle.c (write_expression): Improve diagnostic for TRAIT_EXPR.
41 * class.c (add_method): Always build an OVERLOAD for using-decls.
42 * search.c (lookup_member): Handle getting an OVERLOAD for a
45 2012-03-02 Paolo Carlini <paolo.carlini@oracle.com>
48 * typeck2.c (build_x_arrow): Take a tsubst_flags_t argument and
50 * cp-tree.h (build_x_arrow): Adjust prototype.
51 * pt.c (tsubst_copy_and_build): Adjust call.
52 * parser.c (cp_parser_postfix_dot_deref_expression): Likewise.
54 2012-03-02 Paolo Carlini <paolo.carlini@oracle.com>
56 * name-lookup.c (binding_to_template_parms_of_scope_p): Clean up.
58 2012-02-29 Jason Merrill <jason@redhat.com>
61 * decl.c (check_tag_decl): Move warning for misplaced attributes here.
62 (shadow_tag): From here.
63 * parser.c (cp_parser_explicit_instantiation): Don't warn here.
65 2012-02-21 Jakub Jelinek <jakub@redhat.com>
68 * typeck.c (check_literal_operator_args): Initialize *long_double_p
69 and *long_long_unsigned_p even if processing_template_decl.
71 2012-02-16 Jason Merrill <jason@redhat.com>
74 * decl.c (define_label): Use timevar_cond_start/stop.
76 2012-02-16 Fabien ChĂȘne <fabien@gcc.gnu.org>
79 * decl.c (xref_basetypes): call dependent_scope_p instead of
82 2012-02-16 Jason Merrill <jason@redhat.com>
85 * error.c (dump_expr): Handle lambda closures specifically.
87 2012-02-14 Jason Merrill <jason@redhat.com>
89 * parser.c (cp_parser_explicit_instantiation): Give a warning
90 for ignored attributes on explicit class instantiation.
92 2012-02-14 Jakub Jelinek <jakub@redhat.com>
95 * pt.c (tsubst_copy_asm_operands): For LABEL_DECL values call
96 lookup_label on label's name and set TREE_USED.
98 2012-02-14 Jason Merrill <jason@redhat.com>
101 * decl.c (local_variable_p_walkfn): Don't check DECL_ARTIFICIAL.
103 2012-02-14 Jakub Jelinek <jakub@redhat.com>
106 * decl.c (duplicate_decls): If olddecl has bigger DECL_ALIGN than
107 newdecl, copy DECL_ALIGN to newdecl and or DECL_USER_ALIGN bits.
109 2012-02-07 Jason Merrill <jason@redhat.com>
112 * semantics.c (cx_check_missing_mem_inits): Handle unions.
113 Fix constexpr default constructor logic.
116 * pt.c (tsubst): Strip uninstantiated typedef.
118 2012-02-06 Jason Merrill <jason@redhat.com>
121 * cvt.c (build_expr_type_conversion): Check for template conversion.
123 2012-01-31 Jason Merrill <jason@redhat.com>
126 * cp-tree.h (PACK_EXPANSION_LOCAL_P): New.
127 * pt.c (make_pack_expansion, tsubst_initializer_list): Set it.
128 (tsubst_pack_expansion): Check it.
130 2012-01-29 Paolo Carlini <paolo.carlini@oracle.com>
133 * class.c (explain_non_literal_class): Correctly handle implicitly
134 deleted constructors.
136 2012-01-27 Jakub Jelinek <jakub@redhat.com>
139 * pt.c (tsubst_pack_expansion): Delete and restore
140 local_specialization whenever need_local_specialization, not just
141 when saved_local_specializations is non-NULL.
143 2012-01-26 Paolo Carlini <paolo.carlini@oracle.com>
146 * error.c (dump_decl, [TEMPLATE_ID_EXPR]): Handle error_mark_node
147 as TREE_OPERAND (t, 1).
149 2012-01-24 Jason Merrill <jason@redhat.com>
152 * decl.c (xref_basetypes): Check VEC_length instead of VEC_space.
155 * tree.c (called_fns_equal): Check template args.
156 (cp_tree_equal): Call it.
158 2012-01-24 Aldy Hernandez <aldyh@redhat.com>
159 Patrick Marlier <patrick.marlier@gmail.com>
162 * class.c (set_method_tm_attributes): Use TARGET_THUNK instead of
163 thunk for set_one_vmethod_tm_attributes.
165 2012-01-24 Paolo Carlini <paolo.carlini@oracle.com>
168 * call.c (build_over_call): Check for error_mark_node as
169 TREE_VALUE when default arguments are processed.
171 2012-01-23 Jason Merrill <jason@redhat.com>
174 * decl2.c (determine_visibility): Check for visibility attribute
175 on template specialization.
177 2012-01-23 Paolo Carlini <paolo.carlini@oracle.com>
180 * pt.c (parameter_of_template_p): Skip error_mark_node parameters.
182 2012-01-23 Jason Merrill <jason@redhat.com>
185 * class.c (add_method): Set OVL_USED for using-decls.
186 * tree.c (ovl_scope): New.
187 * cp-tree.h: Declare it.
188 * parser.c (cp_parser_template_name): Use it.
189 * semantics.c (baselink_for_fns): Likewise.
190 * name-lookup.c (set_inherited_value_binding_p): Likewise.
192 2012-01-20 Paolo Carlini <paolo.carlini@oracle.com>
195 * pt.c (lookup_template_class_1): Check context returned by
196 tsubst for error_mark_node.
198 2012-01-19 Kai Tietz <ktietz@redhat.com>
201 * decl2.c (save_template_attributes): Use merge_attributes
202 instead of chaining up via TREE_CHAIN.
204 2012-01-19 Jason Merrill <jason@redhat.com>
207 * class.c (finish_struct): Call add_method here for function usings.
208 * semantics.c (finish_member_declaration): Not here.
210 2012-01-18 Paolo Carlini <paolo.carlini@oracle.com>
213 * typeck2.c (store_init_value): Within a template guard
214 cxx_constant_value with require_potential_constant_expression.
215 * pt.c (convert_nontype_argument): Likewise.
217 2012-01-16 Jakub Jelinek <jakub@redhat.com>
220 * mangle.c (write_template_arg_literal): Handle complex.
222 2012-01-16 Jason Merrill <jason@redhat.com>
225 * mangle.c (mangle_decl): Don't mangle uninstantiated templates.
228 * typeck.c (build_static_cast_1): Handle bit-fields properly.
230 2012-01-13 Ian Lance Taylor <iant@google.com>
233 * typeck.c (enum_cast_to_int): New static function.
234 (cp_build_binary_op): When handling warn_sign_compare, don't test
235 for TREE_NO_WARNING. Do call enum_cast_to_int.
236 * call.c (avoid_sign_compare_warnings): Remove static function.
237 (build_new_op_1): Don't call avoid_sign_compare_warnings.
239 2012-01-13 Steven Bosscher <steven@gcc.gnu.org>
241 * decl2.c: Do not include tree-mudflap.h
242 * semantics.c: Likewise.
244 2012-01-13 Jason Merrill <jason@redhat.com>
247 * semantics.c (finish_break_stmt): Avoid adding an unreachable
251 * decl2.c (constrain_visibility): Clear DECL_VISIBILITY_SPECIFIED
252 when reducing the visibility.
255 * class.c (build_vtbl_initializer): Use __cxa_deleted_virtual.
257 2012-01-12 Jason Merrill <jason@redhat.com>
260 * pt.c (value_dependent_expression_p): Treat STMT_EXPR as
263 2012-01-13 Dodji Seketeli <dodji@redhat.com>
266 * semantics.c (cp_parser_ctor_initializer_opt_and_function_body):
267 Set the pointer to the last block of the constructor to the
269 (build_constexpr_constructor_member_initializers): Get
270 build_data_member_initialization a chance to deal with more
271 statements before we choke.
273 2012-01-12 Jason Merrill <jason@redhat.com>
276 * mangle.c (write_expression): Mangle BASELINK scope if
277 BASELINK_QUALIFIED_P.
278 * search.c (adjust_result_of_qualified_name_lookup): Set
279 BASELINK_QUALIFIED_P.
280 * tree.c (cp_tree_equal) [BASELINK]: Compare BASELINK_QUALIFIED_P.
281 * parser.c (cp_parser_postfix_dot_deref_expression): Don't call
282 adjust_result_of_qualified_name_lookup for non-qualified names.
285 * pt.c (unify): Handle error_mark_node.
287 2012-01-11 Jason Merrill <jason@redhat.com>
290 * call.c (standard_conversion): For ptrmemfuncs, compare the
294 * mangle.c (find_substitution): A type is only a substitution
295 match if we're looking for a type.
296 (write_nested_name): Use decl_mangling_context.
298 * decl.c (decls_match): Assert that the arguments are decls.
301 * pt.c (resolve_overloaded_unification): Compare types with
302 same_type_p, not decls_match.
304 2012-01-10 Jason Merrill <jason@redhat.com>
307 * class.c (build_base_path): Diagnose ambiguous base.
310 * semantics.c (cxx_eval_call_expression): Always retry previously
311 non-constant expressions.
313 2012-01-06 Jason Merrill <jason@redhat.com>
317 * parser.c (cp_parser_new_expression): Set
318 type_definition_forbidden_message.
324 * mangle.c (write_expression): Support NEW_EXPR, DELETE_EXPR,
325 THROW_EXPR, CONSTRUCTOR, OVERLOAD. Fix PREINCREMENT_EXPR and
327 (write_template_arg): Fix mangling of class-scope functions and
329 (mangle_decl): Update suggested -fabi-version argument.
330 * operators.def: Add DOTSTAR_EXPR, REINTERPRET_CAST_EXPR,
331 DYNAMIC_CAST_EXPR; correct CONST_CAST_EXPR, STATIC_CAST_EXPR.
332 * tree.c (dependent_name): No longer static.
333 * cp-tree.h: Declare it.
334 * pt.c (unify): Defer handling of unconverted functions.
336 * mangle.c (mangle_decl): Don't generate mangling aliases
337 for maybe-in-charge [cd]tors.
339 * error.c (dump_expr): Print type of CONSTRUCTOR.
341 2012-01-05 Dodji Seketeli <dodji@redhat.com>
344 * parser.c (cp_parser_alias_declaration): Get out early upon
345 errors in the identifier or the attributes.
347 2012-01-04 Paolo Carlini <paolo.carlini@oracle.com>
350 * pt.c (tsubst_copy_and_build): Maybe set TREE_NO_WARNING on
351 the tree returned by build_x_binary_op.
353 2012-01-03 Paolo Carlini <paolo.carlini@oracle.com>
356 * parser.c (cp_parser_postfix_open_square_expression): Handle
357 postfix-expression [ braced-init-list ].
359 2012-01-03 Paolo Carlini <paolo.carlini@oracle.com>
362 * rtti.c (build_dynamic_cast_1): In case of T a pointer type,
363 call decay_conversion on v.
365 2012-01-03 Paolo Carlini <paolo.carlini@oracle.com>
368 * decl.c (duplicate_decls): With -Wredundant-decls don't warn for
369 declaration followed by specialization.
371 2012-01-03 Jakub Jelinek <jakub@redhat.com>
374 * semantics.c (finish_omp_clauses): Call fold_build_cleanup_point_expr
375 on OMP_CLAUSE_{IF,FINAL,NUM_THREADS,SCHEDULE_CHUNK}_EXPR.
377 2012-01-02 Jason Merrill <jason@redhat.com>
381 * method.c (walk_field_subobs): Don't check for uninitialized
383 (synthesized_method_walk): Check here.
387 * parser.c (cp_parser_cache_defarg): Split out...
388 (cp_parser_parameter_declaration): ...from here.
389 (cp_parser_save_nsdmi): Use it.
390 (cp_parser_cache_group): Remove CPP_COMMA support.
392 2012-01-02 Dodji Seketeli <dodji@redhat.com>
395 * semantics.c (cx_check_missing_mem_inits): Don't assert in case
398 2012-01-02 Paolo Carlini <paolo.carlini@oracle.com>
401 * typeck2.c (digest_init_r): Use copy_init when initializing
404 2012-01-01 Paolo Carlini <paolo.carlini@oracle.com>
407 * decl.c (build_enumerator): Don't call perform_integral_promotions
410 2012-01-01 Paolo Carlini <paolo.carlini@oracle.com>
413 * typeck.c (build_reinterpret_cast_1): Implement resolution of
416 2012-01-01 Fabien ChĂȘne <fabien@gcc.gnu.org>
418 * parser.c (cp_parser_using_declaration): Add a warning about
419 deprecated access declarations when no errors were encountered
420 while parsing the access declaration. Save the first token in
421 order to emit the warning at the right place.
423 Copyright (C) 2012 Free Software Foundation, Inc.
425 Copying and distribution of this file, with or without modification,
426 are permitted in any medium without royalty provided the copyright
427 notice and this notice are preserved.