cpp/types/aligned union

Provides the nested type, which is a trivial standard-layout type of a size and alignment suitable for use as uninitialized storage for an object of any of the types listed in. The size of the storage is at least. std also determines the strictest (largest) alignment requirement among all and makes it available as the constant.

If or if any of the types in  is not a complete object type, the behavior is undefined.

It is implementation-defined whether any extended alignment is supported.