re PR c++/47067 ([c++0x] ICE in cxx_eval_bare_aggregate, at cp/semantics.c:6352)
[gcc.git] / gcc / cp / ChangeLog
1 2011-01-17 Jason Merrill <jason@redhat.com>
2
3 PR c++/47067
4 * semantics.c (base_field_constructor_elt): New fn.
5 (cxx_eval_bare_aggregate): Use it.
6 (build_data_member_initialization): Leave COMPONENT_REF for
7 vfield inits.
8
9 2011-01-14 Rodrigo Rivas Costa <rodrigorivascosta@gmail.com>
10
11 * parser.c (cp_parser_range_for): Remove the "unused variable" warning
12 workaround.
13
14 2011-01-15 Giovanni Funchal <gafunchal@gmail.com>
15 Jonathan Wakely <jwakely.gcc@gmail.com>
16
17 PR c++/33558
18 * decl.c (grokdeclarator): Reject mutable reference members.
19
20 2011-01-14 Jason Merrill <jason@redhat.com>
21
22 PR c++/47289
23 * pt.c (coerce_template_parms): Fix error recovery.
24
25 PR c++/46903
26 * typeck2.c (check_narrowing): Only check arithmetic types.
27
28 PR c++/46688
29 * tree.c (build_vec_init_expr): Handle flexible array
30 properly.
31
32 2011-01-13 Kai Tietz <kai.tietz@onevision.com>
33
34 PR c++/47213
35 * cp-tree.h (CLASSTYPE_VISIBILITY): Use
36 TYPE_MAIN_DECL instead of TYPE_NAME.
37 (CLASSTYPE_VISIBILITY_SPECIFIED): Likewise.
38 * decl2.c (determine_visibility): Add check
39 of CLASS_TYPE_P for underlying_type.
40
41 2011-01-12 Rodrigo Rivas Costa <rodrigorivascosta@gmail.com>
42
43 * cp-tree.h (begin_for_scope): New prototype.
44 (begin_for_stmt): Update prototype.
45 (begin_range_for_stmt): Update prototype.
46 * init.c (build_vec_init): Update call to begin_for_stmt.
47 * parser.c (cp_parser_for): New.
48 (cp_parser_c_for): Add three new parameters.
49 (cp_parser_range_for): Likewise. Most parsing code removed.
50 (cp_parser_iteration_statement): Call cp_parser_for instead of
51 cp_parser_c_for and cp_parser_range_for.
52 (cp_parser_for_init_statement): Add new parameter and return type.
53 (cp_parser_block_declaration): Update call to
54 cp_parser_simple_declaration.
55 (cp_parser_simple_declaration): Add new parameter.
56 Update call to cp_parser_init_declarator.
57 (cp_parser_init_declarator): Add new parameter.
58 * pt.c (tsubst_expr): Update call to begin_for_stmt.
59 * semantics.c (begin_for_scope): New.
60 (begin_for_stmt): Add two new parameters.
61 (begin_range_for_stmt): Likewise.
62
63 2011-01-12 Nicola Pero <nicola.pero@meta-innovation.com>
64
65 * parser.c (cp_parser_objc_at_property_declaration): Improved
66 error message.
67
68 2011-01-11 Dodji Seketeli <dodji@redhat.com>
69
70 PR debug/46955
71 * cp-lang.c (get_template_innermost_arguments_folded)
72 (get_template_argument_pack_elems_folded)
73 (template_arg_needs_folding, fold_cplus_constants): New static
74 functions.
75 (LANG_HOOKS_GET_INNERMOST_GENERIC_ARGS): Set this hook to
76 get_template_innermost_arguments_folded.
77 (LANG_HOOKS_GET_ARGUMENT_PACK_ELEMS): Set this hook to
78 get_template_argument_pack_elems_folded.
79
80 2011-01-11 Jason Merrill <jason@redhat.com>
81
82 PR c++/46658
83 * init.c (build_new_1): Handle value-init in templates differently.
84
85 PR c++/45520
86 * tree.c (maybe_dummy_object): Check current_class_ref against
87 context, not current_class_type.
88
89 2011-01-08 Nicola Pero <nicola.pero@meta-innovation.com>
90
91 PR objc/47078
92 * parser.c (cp_parser_objc_typename): If the type is unknown, for
93 error recovery purposes behave as if it was not specified so that
94 the default type is used.
95
96 2011-01-07 Jakub Jelinek <jakub@redhat.com>
97
98 PR c++/47022
99 * pt.c (tsubst_copy_and_build): Use tsubst instead of tsubst_copy
100 for the second build_x_va_arg argument.
101
102 2011-01-05 Tom Tromey <tromey@redhat.com>
103
104 * typeck.c (cp_build_addr_expr_1): Update call to lvalue_error.
105 (lvalue_or_else): Likewise.
106
107 2011-01-01 Kai Tietz <kai.tietz@onevision.com>
108
109 PR target/38662
110 * tree.c (cxx_type_hash_eq):
111 Allow METHOD_TYPE, too.
112
113 \f
114 Copyright (C) 2011 Free Software Foundation, Inc.
115
116 Copying and distribution of this file, with or without modification,
117 are permitted in any medium without royalty provided the copyright
118 notice and this notice are preserved.