Use __machine_*_t_defined for internal types
Newlib defines defaults for internal types via <sys/_types.h> and uses <machine/_types.h> to let targets define their own type if necessary. Previously for example #ifndef __dev_t_defined typedef short __dev_t; #endif However, the __*_t_defined pattern conflicts with the glibc type guard pattern for user types, e.g. dev_t in this example. Introduce a __machine_*_t_defined pattern for internal types (defined by <machine/_types.h>, used by <sys/_types.h>). For example #ifndef __machine_dev_t_defined typedef short __dev_t; #endif Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
This commit is contained in:
committed by
Corinna Vinschen
parent
9f90ae0435
commit
8a5af1a184
@ -31,7 +31,7 @@
|
||||
|
||||
#include <machine/_default_types.h>
|
||||
|
||||
#define __ssize_t_defined
|
||||
#define __machine_ssize_t_defined
|
||||
typedef long signed int _ssize_t;
|
||||
|
||||
#endif /* _MACHINE__TYPES_H */
|
||||
|
@ -39,22 +39,22 @@
|
||||
/*
|
||||
* fpos_t large enough for either 32 or 64 bit ppc glibc fpos_t.
|
||||
*/
|
||||
#define __fpos_t_defined
|
||||
#define __machine_fpos_t_defined
|
||||
typedef struct {
|
||||
char __pos[16];
|
||||
} _fpos_t;
|
||||
|
||||
#ifdef __LARGE64_FILES
|
||||
#define __fpos64_t_defined
|
||||
#define __machine_fpos64_t_defined
|
||||
typedef _fpos_t _fpos64_t;
|
||||
#endif
|
||||
|
||||
#define __dev_t_defined
|
||||
#define __machine_dev_t_defined
|
||||
typedef int __dev_t;
|
||||
|
||||
#define __uid_t_defined
|
||||
#define __machine_uid_t_defined
|
||||
typedef unsigned int __uid_t;
|
||||
#define __gid_t_defined
|
||||
#define __machine_gid_t_defined
|
||||
typedef unsigned int __gid_t;
|
||||
|
||||
#endif /* _MACHINE__TYPES_H */
|
||||
|
Reference in New Issue
Block a user