summaryrefslogtreecommitdiff
path: root/gcc/cp/rtti.c
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2009-11-02 13:39:46 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2009-11-02 13:39:46 +0000
commitf1658ae09d3e039f986ab12c3a43d1f82ab80ef8 (patch)
treef1e838ec9a46d86a7ba26afebc76472b3823676e /gcc/cp/rtti.c
parentc909481d782e5e24d711c7b1e22132d2ae44ffd8 (diff)
downloadgcc-f1658ae09d3e039f986ab12c3a43d1f82ab80ef8.tar.gz
PR c++/41774
* c-pragma.c (visstack): Change into vector of ints rather than enum symbol_visibility. (push_visibility): Add kind argument, push default_visibility together with kind. (pop_visibility): Add kind argument, return true if successful, fail if visibility stack is empty or if stack top is of different kind. (handle_pragma_visibility): Don't check length of visstack, instead call pop_visibility and issue diagnostics if it failed. Pass 0 as last argument to push_visibility and pop_visibility. * c-pragma.h (push_visibility): Add kind argument. (pop_visibility): Likewise. Return bool instead of void. * name-lookup.c (handle_namespace_attrs): Pass 1 as last argument to push_visibility. * parser.c (cp_parser_namespace_definition): Pass 1 as argument to pop_visibility. * rtti.c (push_abi_namespace): Pass 2 as last argument to push_visibility. (pop_abi_namespace): Pass 2 as argument to pop_visibility. * g++.dg/ext/visibility/namespace3.C: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153805 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp/rtti.c')
-rw-r--r--gcc/cp/rtti.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/cp/rtti.c b/gcc/cp/rtti.c
index c7af74a073e..3fb6d11c0ce 100644
--- a/gcc/cp/rtti.c
+++ b/gcc/cp/rtti.c
@@ -128,13 +128,13 @@ static void
push_abi_namespace (void)
{
push_nested_namespace (abi_node);
- push_visibility ("default");
+ push_visibility ("default", 2);
}
static void
pop_abi_namespace (void)
{
- pop_visibility ();
+ pop_visibility (2);
pop_nested_namespace (abi_node);
}