Index: gcc/ChangeLog
authorGeoffrey Keating <geoffk@apple.com>
Mon, 5 Dec 2005 20:38:37 +0000 (20:38 +0000)
committerGeoffrey Keating <geoffk@gcc.gnu.org>
Mon, 5 Dec 2005 20:38:37 +0000 (20:38 +0000)
commita9b0b82578a7f552e3530e690a147303a592a34e
tree5e7f04633347fa5f7ca0e1b9e1b991f1227bdea4
parent68e58c33468f3523c1eb6232d0a4d1e949db3011
Index: gcc/ChangeLog
2005-12-05  Geoffrey Keating  <geoffk@apple.com>

* varasm.c (default_binds_local_p_1): Weakrefs don't bind locally.
A hidden weak object does bind locally.  Strong linkonce data
counts like any other strong symbol for binding.
(weak_finish_1): Don't specially handle weakrefs, they no longer
arrive here.
(assemble_alias): Weakrefs can't be TREE_PUBLIC yet.
* c-common.c (handle_alias_attribute): Allow static aliases
of variables.
(handle_weakref_attribute): Don't call declare_weak on weakrefs.
* gthr-dce.h: Make weakrefs static.
* gthr-tpf.h: Likewise.
* gthr-solaris.h: Likewise.
* gthr-posix.h: Likewise.
* gthr-posix95.h: Likewise.
* config/darwin.c (darwin_encode_section_info): static weakref
variables are not necessarily defined in this translation unit.
* doc/extend.texi (Function Attributes): Mention that an alias
attribute creates a definition for the thing it's attached to.
Change the documentation for weakref to say that the thing
it's attached to must be static.

Index: gcc/testsuite/ChangeLog
2005-12-05  Geoffrey Keating  <geoffk@apple.com>

* g++.old-deja/g++.abi/vtable2.C: Make weakrefs static.
* gcc.dg/attr-weakref-1.c: Modify to not try to test public weakrefs,
and to work on Darwin.
* gcc.dg/attr-weakref-1b.c: New file.
* gcc.dg/attr-weakref-2.c: New test.
* gcc.dg/darwin-weakref-1.c: New test.

From-SVN: r108074
16 files changed:
gcc/ChangeLog
gcc/c-common.c
gcc/config/darwin.c
gcc/doc/extend.texi
gcc/gthr-dce.h
gcc/gthr-posix.h
gcc/gthr-posix95.h
gcc/gthr-solaris.h
gcc/gthr-tpf.h
gcc/testsuite/ChangeLog
gcc/testsuite/g++.old-deja/g++.abi/vtable2.C
gcc/testsuite/gcc.dg/attr-weakref-1.c
gcc/testsuite/gcc.dg/attr-weakref-1b.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/attr-weakref-2.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/darwin-weakref-1.c [new file with mode: 0644]
gcc/varasm.c