PR69502 notes that the documentation of the align type attribute had gotten out of sync with the corresponding variable attribute with respect to whether decreasing the alignment of a type was permitted. I've checked in this patch to replace the incorrect paragraph with a copy of the correct one.

-Sandra
2018-11-11  Sandra Loosemore  <san...@codesourcery.com>

	PR c/69502

	gcc/
	* doc/extend.texi (Common Type Attributes): For the align type
	attribute, copy language about decreasing alignment from the
	corresponding variable attribute.
Index: gcc/doc/extend.texi
===================================================================
--- gcc/doc/extend.texi	(revision 266023)
+++ gcc/doc/extend.texi	(working copy)
@@ -7101,8 +7101,11 @@ up to a maximum of 8-byte alignment, the
 in an @code{__attribute__} still only provides you with 8-byte
 alignment.  See your linker documentation for further information.
 
-The @code{aligned} attribute can only increase alignment.  Alignment
-can be decreased by specifying the @code{packed} attribute.  See below.
+When used on a struct, or struct member, the @code{aligned} attribute can
+only increase the alignment; in order to decrease it, the @code{packed}
+attribute must be specified as well.  When used as part of a typedef, the
+@code{aligned} attribute can both increase and decrease alignment, and
+specifying the @code{packed} attribute generates a warning.
 
 @cindex @code{warn_if_not_aligned} type attribute
 @item warn_if_not_aligned (@var{alignment})

Reply via email to