diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 67de4f7f61e2717e1cf268257813b8211fd4da85..96191a2bb7fda7e8b4e38a0ecb2bf5660d13b54c 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2006-04-05  Jason Merrill  <jason@redhat.com>
+
+	* name-lookup.c (push_namespace_with_attribs): Temporarily disable
+	default hidden visibility for anonymous namespace.
+
 2006-03-29  Roger Sayle  <roger@eyesopen.com>
 
 	PR c++/22494
diff --git a/gcc/cp/name-lookup.c b/gcc/cp/name-lookup.c
index 5aa16f1f373ac6ab408f975abe79227869346803..e41d54f3f65ef7f1b14eb47eb2a78eeba134208d 100644
--- a/gcc/cp/name-lookup.c
+++ b/gcc/cp/name-lookup.c
@@ -3066,7 +3066,7 @@ push_namespace_with_attribs (tree name, tree attributes)
       push_visibility (TREE_STRING_POINTER (x));
       goto found;
     }
-#ifdef HAVE_GAS_HIDDEN
+#if 0
   if (anon)
     {
       /* Anonymous namespaces default to hidden visibility.  This might
diff --git a/gcc/testsuite/g++.dg/ext/visibility/anon1.C b/gcc/testsuite/g++.dg/ext/visibility/anon1.C
index 9a3d8a7f8ab6c01a44ab0ae1b098effda0bc62c0..81e92708ab059adcd5012cb47519815822ba4aae 100644
--- a/gcc/testsuite/g++.dg/ext/visibility/anon1.C
+++ b/gcc/testsuite/g++.dg/ext/visibility/anon1.C
@@ -2,7 +2,7 @@
 // Test for anonymous namespace default hidden visibility
 
 // { dg-require-visibility "" }
-// { dg-final { scan-hidden "_ZN.*1fEv" } }
+// { dg-final-NOT { scan-hidden "_ZN.*1fEv" } }
 
 namespace
 {