gcc/
* varasm.c (default_use_anchors_for_symbol_p): Use decl_replaceable_p.
gcc/testsuite/
* gcc.dg/visibility-21.c: New.
From-SVN: r198965
+2013-05-16 Nathan Sidwell <nathan@codesourcery.com>
+
+ * varasm.c (default_use_anchors_for_symbol_p): Use decl_replaceable_p.
+
2013-05-16 Marc Glisse <marc.glisse@inria.fr>
PR middle-end/57286
+2013-05-16 Nathan Sidwell <nathan@codesourcery.com>
+
+ * gcc.dg/visibility-21.c: New.
+
2013-05-16 Marc Glisse <marc.glisse@inria.fr>
PR middle-end/57286
--- /dev/null
+/* Test visibility attribute on function definition. */
+/* { dg-do compile } */
+/* { dg-options "-O2 -fsection-anchors" } */
+/* { dg-require-visibility "" } */
+/* { dg-require-weak "" } */
+/* { dg-final { scan-assembler-not "ANCHOR" } } */
+
+int __attribute__((weak, visibility("hidden"))) weak_hidden[3];
+
+int *f_weak_hidden ()
+{
+ return weak_hidden;
+}
decl = SYMBOL_REF_DECL (symbol);
if (decl && DECL_P (decl))
{
- /* Don't use section anchors for decls that might be defined by
- other modules. */
- if (!targetm.binds_local_p (decl))
+ /* Don't use section anchors for decls that might be defined or
+ usurped by other modules. */
+ if (TREE_PUBLIC (decl) && !decl_binds_to_current_def_p (decl))
return false;
/* Don't use section anchors for decls that will be placed in a