SPDX-License-Identifier: CC-BY-SA-4.0 copyrights: - Copyright (C) 2020 embedded brains GmbH & Co. KG enabled-by: true functional-type: function links: - role: interface-function uid: ../if/aligned rationale: | Note that the ${../if/aligned:/name} macro can often only increases the alignment but under some circumstances, it can also decrease the alignment. references: [] requirement-type: functional text: | When the argument ${../if/aligned:/params[0]/name} is a positive power of two integer, and the macro ${../if/aligned:/name} is used on a none-``static`` variable or structure field, and the used linker supports alignments of the size given by the ${../if/aligned:/params[0]/name} argument, and the code is compiled with the GNU C compiler, the macro shall specify a minimum alignment for the variable or structure field, measured in bytes. type: requirement