c-common.c (handle_visibility_attribute): Accept "default".

* c-common.c (handle_visibility_attribute): Accept "default".
	* tree.h (enum symbol_visibility): New.
	(decl_visibility): Declare.
	* target.h (gcc_target.visibility): Take visibility arg as integer.
	* varasm.c (default_assemble_visibility): Likewise.
	(decl_visibility): New.
	(maybe_assemble_visibility): Use it.
	* output.h (default_assemble_visibility): Update prototype.
	* config/rs6000/rs6000.c (rs6000_assemble_visibility): Take
	visibility arg as integer.
	* doc/extend.texi: Document default visibility.

From-SVN: r59560
This commit is contained in:
Richard Henderson 2002-11-26 22:32:13 -08:00 committed by Richard Henderson
parent 25fdb4dc97
commit d5c4db1738
2 changed files with 7 additions and 1 deletions

View File

@ -10,6 +10,7 @@
* output.h (default_assemble_visibility): Update prototype.
* config/rs6000/rs6000.c (rs6000_assemble_visibility): Take
visibility arg as integer.
* doc/extend.texi: Document default visibility.
2002-11-26 Kazu Hirata <kazu@cs.umass.edu>

View File

@ -2307,7 +2307,7 @@ Not all target machines support this attribute.
@item visibility ("@var{visibility_type}")
@cindex @code{visibility} attribute
The @code{visibility} attribute on ELF targets causes the declaration
to be emitted with hidden, protected or internal visibility.
to be emitted with default, hidden, protected or internal visibility.
@smallexample
void __attribute__ ((visibility ("protected")))
@ -2318,6 +2318,11 @@ int i __attribute__ ((visibility ("hidden")));
See the ELF gABI for complete details, but the short story is
@table @dfn
@item default
Default visibility is the normal case for ELF. This value is
available for the visibiliy attribute to override other options
that may change the assumed visibility of symbols.
@item hidden
Hidden visibility indicates that the symbol will not be placed into
the dynamic symbol table, so no other @dfn{module} (executable or