1 /*===---- __stddef_max_align_t.h - Definition of max_align_t for modules ---=== 2 * 3 * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 * See https://llvm.org/LICENSE.txt for license information. 5 * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 * 7 *===-----------------------------------------------------------------------=== 8 */ 9 10 #ifndef __CLANG_MAX_ALIGN_T_DEFINED 11 #define __CLANG_MAX_ALIGN_T_DEFINED 12 13 #if defined(_MSC_VER) 14 typedef double max_align_t; 15 #elif defined(__APPLE__) 16 typedef long double max_align_t; 17 #else 18 // Define 'max_align_t' to match the GCC definition. 19 typedef struct { 20 long long __clang_max_align_nonce1 21 __attribute__((__aligned__(__alignof__(long long)))); 22 long double __clang_max_align_nonce2 23 __attribute__((__aligned__(__alignof__(long double)))); 24 } max_align_t; 25 #endif 26 27 #endif 28