cdata.set('HAVE_' + os_name.to_upper(), 1)
-foreach attr : ['malloc', 'nonnull', 'warn_unused_result']
- cc.has_function_attribute(attr)
+foreach attr : ['malloc', 'nonnull', 'warn_unused_result', 'packed']
+ if cc.has_function_attribute(attr)
+ cdata.set('HAVE_ATTR_' + attr.to_upper(), 1,
+ description: '__attribute__(@0@)'.format(attr))
+ endif
endforeach
+if cc.compiles('''
+ _Static_assert(1, "ok");
+ int main(void) { return 0; }
+''')
+ cdata.set('HAVE_STATIC_ASSERT', 1,
+ description: 'C11 _Static_assert()')
+endif
+
check_headers = [
'alloca.h',
'arpa/inet.h',