Changeset View
Changeset View
Standalone View
Standalone View
sys/sys/types.h
Show First 20 Lines • Show All 341 Lines • ▼ Show 20 Lines | |||||
#define makedev(M, m) __makedev((M), (m)) | #define makedev(M, m) __makedev((M), (m)) | ||||
static __inline dev_t | static __inline dev_t | ||||
__makedev(int _Major, int _Minor) | __makedev(int _Major, int _Minor) | ||||
{ | { | ||||
return (((dev_t)(_Major & 0xffffff00) << 32) | ((_Major & 0xff) << 8) | | return (((dev_t)(_Major & 0xffffff00) << 32) | ((_Major & 0xff) << 8) | | ||||
((dev_t)(_Minor & 0xff00) << 24) | (_Minor & 0xffff00ff)); | ((dev_t)(_Minor & 0xff00) << 24) | (_Minor & 0xffff00ff)); | ||||
} | } | ||||
#if (defined(__clang__) || (defined(__GNUC__) && __GNUC__ >= 13)) | |||||
#define __enum_uint8_decl(name) enum enum_ ## name ## _uint8 : uint8_t | |||||
zlei: Can we respect the original name so that we can use `enum name` directly instead of… | |||||
#define __enum_uint8(name) enum enum_ ## name ## _uint8 | |||||
#else | |||||
/* | |||||
* Note: there is no real size checking here, but the code below can be | |||||
* removed once we require GCC 13. | |||||
*/ | |||||
#define __enum_uint8_decl(name) enum __attribute__((packed)) enum_ ## name ## _uint8 | |||||
#define __enum_uint8(name) enum __attribute__((packed)) enum_ ## name ## _uint8 | |||||
#endif | |||||
/* | /* | ||||
* These declarations belong elsewhere, but are repeated here and in | * These declarations belong elsewhere, but are repeated here and in | ||||
* <stdio.h> to give broken programs a better chance of working with | * <stdio.h> to give broken programs a better chance of working with | ||||
* 64-bit off_t's. | * 64-bit off_t's. | ||||
*/ | */ | ||||
#ifndef _KERNEL | #ifndef _KERNEL | ||||
__BEGIN_DECLS | __BEGIN_DECLS | ||||
#ifndef _FTRUNCATE_DECLARED | #ifndef _FTRUNCATE_DECLARED | ||||
Show All 21 Lines |
Can we respect the original name so that we can use enum name directly instead of __enum_uint8(name) ? Then the diff will be much smaller.