aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/cp/ChangeLog')
-rw-r--r--gcc/cp/ChangeLog48
1 files changed, 48 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 1557a76..c9eb4b9 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,51 @@
+2006-06-29 Jason Merrill <jason@redhat.com>
+
+ PR c++/26905
+ PR c++/26612
+ PR c++/27000
+ PR c++/26984
+ PR c++/19134
+ * decl2.c (determine_visibility): Overhaul.
+ (determine_visibility_from_class): Likewise.
+ (min_vis_r, type_visibility, constrain_visibility): New fns.
+ (constrain_visibility_for_template): Likewise.
+ (constrain_class_visibility): Likewise.
+ * decl.c (cp_finish_decl): Call determine_visibility for function
+ decls, too.
+ * name-lookup.c (pushtag): Call determine_visibility.
+ * decl.c (duplicate_decls): Don't copy visibility from template to
+ specialization.
+ * pt.c (check_explicit_specialization): Likewise.
+ (lookup_template_class, tsubst_decl): Call determine_visibility.
+ * class.c (finish_struct_1): Call constrain_class_visibility.
+
+ PR c++/26905
+ PR c++/21675
+ PR c++/17470
+ * parser.c (cp_parser_explicit_instantiation): Pass the attributes
+ to grokdeclarator.
+ (cp_parser_type_specifier): Allow 'enum __attribute ((...)) E'.
+ (cp_parser_enum_specifier): Likewise.
+ (cp_parser_elaborated_type_specifier): Apply attributes if this
+ declares only the class.
+ (cp_parser_class_specifier): Apply leading attributes immediately.
+ * semantics.c (begin_class_definition): Add attributes parameter,
+ apply them to the type.
+
+ PR c++/21581
+ PR c++/25915
+ * tree.c (decl_anon_ns_mem_p): New function.
+ * cp-tree.h: Declare it.
+ * decl2.c (determine_visibility): Make anonymous namespace
+ members static.
+ (min_vis_r, constrain_visibility): Likewise.
+ * rtti.c (create_pseudo_type_info): Set TREE_PUBLIC on
+ pseudo-types.
+ * decl.c (cxx_init_decl_processing): Set TREE_PUBLIC on
+ global_namespace.
+ * name-lookup.c (push_namespace_with_attribs): Don't set TREE_PUBLIC
+ on anonymous namespaces.
+
2006-06-28 Jason Merrill <jason@redhat.com>
PR c++/27424