struct AlignedCharArrayUnion

Declaration

template <typename T, typename... Ts>
struct AlignedCharArrayUnion { /* full declaration omitted */ };

Description

A suitably aligned and sized character array member which can hold elements of any type. This template is equivalent to std::aligned_union_t < 1, ...>, but we cannot use it due to a bug in the MSVC x86 compiler: https://github.com/microsoft/STL/issues/1533 Using `alignas` here works around the bug.

Declared at: llvm/include/llvm/Support/AlignOf.h:27

Templates

T
Ts

Member Variables

public char[sizeof( llvm::AlignedCharArrayUnion::AlignedUnion)] buffer