1 2012-03-22 Jakub Jelinek <jakub@redhat.com>
3 Backported from mainline
4 2012-03-14 Jakub Jelinek <jakub@redhat.com>
7 * parser.c (lookup_literal_operator): Return fn only if
8 processed all arguments from args vector and argtypes is
11 2012-03-22 Release Manager
15 2012-03-20 Jason Merrill <jason@redhat.com>
17 * mangle.c (write_type): Handle 'auto'.
18 * init.c (build_new): Don't do auto deduction where it might
19 affect template mangling.
21 2012-03-07 Jason Merrill <jason@redhat.com>
24 * mangle.c (write_literal_operator_name): The length comes after the
27 2012-02-29 Jason Merrill <jason@redhat.com>
30 * decl.c (check_tag_decl): Move warning for misplaced attributes here.
31 (shadow_tag): From here.
32 * parser.c (cp_parser_explicit_instantiation): Don't warn here.
34 2012-02-21 Jakub Jelinek <jakub@redhat.com>
37 * typeck.c (check_literal_operator_args): Initialize *long_double_p
38 and *long_long_unsigned_p even if processing_template_decl.
40 2012-02-16 Jason Merrill <jason@redhat.com>
43 * decl.c (define_label): Use timevar_cond_start/stop.
45 2012-02-16 Fabien ChĂȘne <fabien@gcc.gnu.org>
48 * decl.c (xref_basetypes): call dependent_scope_p instead of
51 2012-02-16 Jason Merrill <jason@redhat.com>
54 * error.c (dump_expr): Handle lambda closures specifically.
56 2012-02-14 Jason Merrill <jason@redhat.com>
58 * parser.c (cp_parser_explicit_instantiation): Give a warning
59 for ignored attributes on explicit class instantiation.
61 2012-02-14 Jakub Jelinek <jakub@redhat.com>
64 * pt.c (tsubst_copy_asm_operands): For LABEL_DECL values call
65 lookup_label on label's name and set TREE_USED.
67 2012-02-14 Jason Merrill <jason@redhat.com>
70 * decl.c (local_variable_p_walkfn): Don't check DECL_ARTIFICIAL.
72 2012-02-14 Jakub Jelinek <jakub@redhat.com>
75 * decl.c (duplicate_decls): If olddecl has bigger DECL_ALIGN than
76 newdecl, copy DECL_ALIGN to newdecl and or DECL_USER_ALIGN bits.
78 2012-02-07 Jason Merrill <jason@redhat.com>
81 * semantics.c (cx_check_missing_mem_inits): Handle unions.
82 Fix constexpr default constructor logic.
85 * pt.c (tsubst): Strip uninstantiated typedef.
87 2012-02-06 Jason Merrill <jason@redhat.com>
90 * cvt.c (build_expr_type_conversion): Check for template conversion.
92 2012-01-31 Jason Merrill <jason@redhat.com>
95 * cp-tree.h (PACK_EXPANSION_LOCAL_P): New.
96 * pt.c (make_pack_expansion, tsubst_initializer_list): Set it.
97 (tsubst_pack_expansion): Check it.
99 2012-01-29 Paolo Carlini <paolo.carlini@oracle.com>
102 * class.c (explain_non_literal_class): Correctly handle implicitly
103 deleted constructors.
105 2012-01-27 Jakub Jelinek <jakub@redhat.com>
108 * pt.c (tsubst_pack_expansion): Delete and restore
109 local_specialization whenever need_local_specialization, not just
110 when saved_local_specializations is non-NULL.
112 2012-01-26 Paolo Carlini <paolo.carlini@oracle.com>
115 * error.c (dump_decl, [TEMPLATE_ID_EXPR]): Handle error_mark_node
116 as TREE_OPERAND (t, 1).
118 2012-01-24 Jason Merrill <jason@redhat.com>
121 * decl.c (xref_basetypes): Check VEC_length instead of VEC_space.
124 * tree.c (called_fns_equal): Check template args.
125 (cp_tree_equal): Call it.
127 2012-01-24 Aldy Hernandez <aldyh@redhat.com>
128 Patrick Marlier <patrick.marlier@gmail.com>
131 * class.c (set_method_tm_attributes): Use TARGET_THUNK instead of
132 thunk for set_one_vmethod_tm_attributes.
134 2012-01-24 Paolo Carlini <paolo.carlini@oracle.com>
137 * call.c (build_over_call): Check for error_mark_node as
138 TREE_VALUE when default arguments are processed.
140 2012-01-23 Jason Merrill <jason@redhat.com>
143 * decl2.c (determine_visibility): Check for visibility attribute
144 on template specialization.
146 2012-01-23 Paolo Carlini <paolo.carlini@oracle.com>
149 * pt.c (parameter_of_template_p): Skip error_mark_node parameters.
151 2012-01-23 Jason Merrill <jason@redhat.com>
154 * class.c (add_method): Set OVL_USED for using-decls.
155 * tree.c (ovl_scope): New.
156 * cp-tree.h: Declare it.
157 * parser.c (cp_parser_template_name): Use it.
158 * semantics.c (baselink_for_fns): Likewise.
159 * name-lookup.c (set_inherited_value_binding_p): Likewise.
161 2012-01-20 Paolo Carlini <paolo.carlini@oracle.com>
164 * pt.c (lookup_template_class_1): Check context returned by
165 tsubst for error_mark_node.
167 2012-01-19 Kai Tietz <ktietz@redhat.com>
170 * decl2.c (save_template_attributes): Use merge_attributes
171 instead of chaining up via TREE_CHAIN.
173 2012-01-19 Jason Merrill <jason@redhat.com>
176 * class.c (finish_struct): Call add_method here for function usings.
177 * semantics.c (finish_member_declaration): Not here.
179 2012-01-18 Paolo Carlini <paolo.carlini@oracle.com>
182 * typeck2.c (store_init_value): Within a template guard
183 cxx_constant_value with require_potential_constant_expression.
184 * pt.c (convert_nontype_argument): Likewise.
186 2012-01-16 Jakub Jelinek <jakub@redhat.com>
189 * mangle.c (write_template_arg_literal): Handle complex.
191 2012-01-16 Jason Merrill <jason@redhat.com>
194 * mangle.c (mangle_decl): Don't mangle uninstantiated templates.
197 * typeck.c (build_static_cast_1): Handle bit-fields properly.
199 2012-01-13 Ian Lance Taylor <iant@google.com>
202 * typeck.c (enum_cast_to_int): New static function.
203 (cp_build_binary_op): When handling warn_sign_compare, don't test
204 for TREE_NO_WARNING. Do call enum_cast_to_int.
205 * call.c (avoid_sign_compare_warnings): Remove static function.
206 (build_new_op_1): Don't call avoid_sign_compare_warnings.
208 2012-01-13 Steven Bosscher <steven@gcc.gnu.org>
210 * decl2.c: Do not include tree-mudflap.h
211 * semantics.c: Likewise.
213 2012-01-13 Jason Merrill <jason@redhat.com>
216 * semantics.c (finish_break_stmt): Avoid adding an unreachable
220 * decl2.c (constrain_visibility): Clear DECL_VISIBILITY_SPECIFIED
221 when reducing the visibility.
224 * class.c (build_vtbl_initializer): Use __cxa_deleted_virtual.
226 2012-01-12 Jason Merrill <jason@redhat.com>
229 * pt.c (value_dependent_expression_p): Treat STMT_EXPR as
232 2012-01-13 Dodji Seketeli <dodji@redhat.com>
235 * semantics.c (cp_parser_ctor_initializer_opt_and_function_body):
236 Set the pointer to the last block of the constructor to the
238 (build_constexpr_constructor_member_initializers): Get
239 build_data_member_initialization a chance to deal with more
240 statements before we choke.
242 2012-01-12 Jason Merrill <jason@redhat.com>
245 * mangle.c (write_expression): Mangle BASELINK scope if
246 BASELINK_QUALIFIED_P.
247 * search.c (adjust_result_of_qualified_name_lookup): Set
248 BASELINK_QUALIFIED_P.
249 * tree.c (cp_tree_equal) [BASELINK]: Compare BASELINK_QUALIFIED_P.
250 * parser.c (cp_parser_postfix_dot_deref_expression): Don't call
251 adjust_result_of_qualified_name_lookup for non-qualified names.
254 * pt.c (unify): Handle error_mark_node.
256 2012-01-11 Jason Merrill <jason@redhat.com>
259 * call.c (standard_conversion): For ptrmemfuncs, compare the
263 * mangle.c (find_substitution): A type is only a substitution
264 match if we're looking for a type.
265 (write_nested_name): Use decl_mangling_context.
267 * decl.c (decls_match): Assert that the arguments are decls.
270 * pt.c (resolve_overloaded_unification): Compare types with
271 same_type_p, not decls_match.
273 2012-01-10 Jason Merrill <jason@redhat.com>
276 * class.c (build_base_path): Diagnose ambiguous base.
279 * semantics.c (cxx_eval_call_expression): Always retry previously
280 non-constant expressions.
282 2012-01-06 Jason Merrill <jason@redhat.com>
286 * parser.c (cp_parser_new_expression): Set
287 type_definition_forbidden_message.
293 * mangle.c (write_expression): Support NEW_EXPR, DELETE_EXPR,
294 THROW_EXPR, CONSTRUCTOR, OVERLOAD. Fix PREINCREMENT_EXPR and
296 (write_template_arg): Fix mangling of class-scope functions and
298 (mangle_decl): Update suggested -fabi-version argument.
299 * operators.def: Add DOTSTAR_EXPR, REINTERPRET_CAST_EXPR,
300 DYNAMIC_CAST_EXPR; correct CONST_CAST_EXPR, STATIC_CAST_EXPR.
301 * tree.c (dependent_name): No longer static.
302 * cp-tree.h: Declare it.
303 * pt.c (unify): Defer handling of unconverted functions.
305 * mangle.c (mangle_decl): Don't generate mangling aliases
306 for maybe-in-charge [cd]tors.
308 * error.c (dump_expr): Print type of CONSTRUCTOR.
310 2012-01-05 Dodji Seketeli <dodji@redhat.com>
313 * parser.c (cp_parser_alias_declaration): Get out early upon
314 errors in the identifier or the attributes.
316 2012-01-04 Paolo Carlini <paolo.carlini@oracle.com>
319 * pt.c (tsubst_copy_and_build): Maybe set TREE_NO_WARNING on
320 the tree returned by build_x_binary_op.
322 2012-01-03 Paolo Carlini <paolo.carlini@oracle.com>
325 * parser.c (cp_parser_postfix_open_square_expression): Handle
326 postfix-expression [ braced-init-list ].
328 2012-01-03 Paolo Carlini <paolo.carlini@oracle.com>
331 * rtti.c (build_dynamic_cast_1): In case of T a pointer type,
332 call decay_conversion on v.
334 2012-01-03 Paolo Carlini <paolo.carlini@oracle.com>
337 * decl.c (duplicate_decls): With -Wredundant-decls don't warn for
338 declaration followed by specialization.
340 2012-01-03 Jakub Jelinek <jakub@redhat.com>
343 * semantics.c (finish_omp_clauses): Call fold_build_cleanup_point_expr
344 on OMP_CLAUSE_{IF,FINAL,NUM_THREADS,SCHEDULE_CHUNK}_EXPR.
346 2012-01-02 Jason Merrill <jason@redhat.com>
350 * method.c (walk_field_subobs): Don't check for uninitialized
352 (synthesized_method_walk): Check here.
356 * parser.c (cp_parser_cache_defarg): Split out...
357 (cp_parser_parameter_declaration): ...from here.
358 (cp_parser_save_nsdmi): Use it.
359 (cp_parser_cache_group): Remove CPP_COMMA support.
361 2012-01-02 Dodji Seketeli <dodji@redhat.com>
364 * semantics.c (cx_check_missing_mem_inits): Don't assert in case
367 2012-01-02 Paolo Carlini <paolo.carlini@oracle.com>
370 * typeck2.c (digest_init_r): Use copy_init when initializing
373 2012-01-01 Paolo Carlini <paolo.carlini@oracle.com>
376 * decl.c (build_enumerator): Don't call perform_integral_promotions
379 2012-01-01 Paolo Carlini <paolo.carlini@oracle.com>
382 * typeck.c (build_reinterpret_cast_1): Implement resolution of
385 2012-01-01 Fabien ChĂȘne <fabien@gcc.gnu.org>
387 * parser.c (cp_parser_using_declaration): Add a warning about
388 deprecated access declarations when no errors were encountered
389 while parsing the access declaration. Save the first token in
390 order to emit the warning at the right place.
392 Copyright (C) 2012 Free Software Foundation, Inc.
394 Copying and distribution of this file, with or without modification,
395 are permitted in any medium without royalty provided the copyright
396 notice and this notice are preserved.