Index: macros_misc.sgml
===================================================================
RCS file: /cvs/gnome/glib/docs/reference/glib/tmpl/macros_misc.sgml,v
retrieving revision 1.57
diff -u -r1.57 macros_misc.sgml
--- macros_misc.sgml	9 Dec 2005 18:05:21 -0000	1.57
+++ macros_misc.sgml	29 Dec 2006 05:26:16 -0000
@@ -309,12 +309,29 @@
 
 <!-- ##### MACRO G_GNUC_INTERNAL ##### -->
 <para>
-Expands to the GNU C <literal>visibility(hidden)</literal> attribute if the 
-compiler supports it  (currently only <command>gcc</command>). This attribute 
-can be used for marking library functions as being used internally to the lib 
-only, to not create inefficient PLT entries. Note that static functions do not 
-need to be marked as internal in this way. See the GNU C documentation for details. 
+This attribute can be used for marking library functions as being used 
+internally to the library only, to not create inefficient PLT entries. 
+Note that static functions do not need to be marked as internal in this way. 
+See the GNU C documentation for details. 
 </para>
+<para>
+Expands to the GNU C <literal>visibility(hidden)</literal> attribute if 
+the compiler supports it (currently only <command>gcc</command>), or to 
+equivalent constructs supported by other compilers (e.g. 
+<literal>__hidden</literal> for Sun Studio). 
+</para>
+<para>
+Note that for portability, the attribute should be placed before the
+function declaration, even though <command>gcc</command> accepts function
+attributes after the declaration, too.
+</para>
+<informalexample><programlisting>
+G_GNUC_INTERNAL
+void _g_log_fallback_handler (const gchar    *log_domain,
+                              GLogLevelFlags  log_level,
+                              const gchar    *message,
+                              gpointer        unused_data);
+</programlisting></informalexample>
 
 Since: 2.6
 
