| ... | @@ -130,22 +130,18 @@ typedef char bool; | ... | @@ -130,22 +130,18 @@ typedef char bool; |
| 130 | #define zig_restrict | 130 | #define zig_restrict |
| 131 | #endif | 131 | #endif |
| 132 | | 132 | |
| 133 | #if __STDC_VERSION__ >= 201112L | 133 | #if zig_has_attribute(aligned) |
| 134 | #define zig_align(alignment) _Alignas(alignment) | 134 | #define zig_under_align(alignment) __attribute__((aligned(alignment))) |
| 135 | #elif zig_has_attribute(aligned) | | |
| 136 | #define zig_align(alignment) __attribute__((aligned(alignment))) | | |
| 137 | #elif _MSC_VER | 135 | #elif _MSC_VER |
| 138 | #define zig_align(alignment) __declspec(align(alignment)) | 136 | #define zig_under_align(alignment) __declspec(align(alignment)) |
| 139 | #else | 137 | #else |
| 140 | #define zig_align zig_align_unavailable | 138 | #define zig_under_align zig_align_unavailable |
| 141 | #endif | 139 | #endif |
| 142 | | 140 | |
| 143 | #if zig_has_attribute(aligned) | 141 | #if __STDC_VERSION__ >= 201112L |
| 144 | #define zig_under_align(alignment) __attribute__((aligned(alignment))) | 142 | #define zig_align(alignment) _Alignas(alignment) |
| 145 | #elif _MSC_VER | | |
| 146 | #define zig_under_align(alignment) zig_align(alignment) | | |
| 147 | #else | 143 | #else |
| 148 | #define zig_align zig_align_unavailable | 144 | #define zig_align(alignment) zig_under_align(alignment) |
| 149 | #endif | 145 | #endif |
| 150 | | 146 | |
| 151 | #if zig_has_attribute(aligned) | 147 | #if zig_has_attribute(aligned) |
| ... | @@ -165,11 +161,14 @@ typedef char bool; | ... | @@ -165,11 +161,14 @@ typedef char bool; |
| 165 | #endif | 161 | #endif |
| 166 | | 162 | |
| 167 | #if zig_has_attribute(section) | 163 | #if zig_has_attribute(section) |
| 168 | #define zig_linksection(name, def, ...) def __attribute__((section(name))) | 164 | #define zig_linksection(name) __attribute__((section(name))) |
| | 165 | #define zig_linksection_fn zig_linksection |
| 169 | #elif _MSC_VER | 166 | #elif _MSC_VER |
| 170 | #define zig_linksection(name, def, ...) __pragma(section(name, __VA_ARGS__)) __declspec(allocate(name)) def | 167 | #define zig_linksection(name) __pragma(section(name, read, write)) __declspec(allocate(name)) |
| | 168 | #define zig_linksection_fn(name) __pragma(section(name, read, execute)) __declspec(code_seg(name)) |
| 171 | #else | 169 | #else |
| 172 | #define zig_linksection(name, def, ...) zig_linksection_unavailable | 170 | #define zig_linksection(name) zig_linksection_unavailable |
| | 171 | #define zig_linksection_fn zig_linksection |
| 173 | #endif | 172 | #endif |
| 174 | | 173 | |
| 175 | #if zig_has_builtin(unreachable) || defined(zig_gnuc) | 174 | #if zig_has_builtin(unreachable) || defined(zig_gnuc) |