Make sure to have full configuration info in sys/_types.h.
The following testcase:
  $ cat > test.c <<EOF
  #include <sys/select.h>
  #include <sys/time.h>
  EOF
  $ gcc -c test.c
emits the following error:
  /usr/include/sys/reent.h:276:3: error: expected specifier-qualifier-list befor
e ‘_fpos64_t’
     _fpos64_t _EXFNPTR(_seek64, (struct _reent *, _PTR, _fpos64_t, int));
     ^
The reason is that the load order from sys/select.h includes sys/_types.h
before sys/config.h has been included from anywhere else.  sys/_types.h
defines _fpos64_t only if __LARGE64_FILES is defined, but it never is in
this scenario.  So sys/_types.h has to make sure to get the configuration
info by itself.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
			
			
This commit is contained in:
		| @@ -19,6 +19,8 @@ | |||||||
| #ifndef	_SYS__TYPES_H | #ifndef	_SYS__TYPES_H | ||||||
| #define _SYS__TYPES_H | #define _SYS__TYPES_H | ||||||
|  |  | ||||||
|  | #include <newlib.h> | ||||||
|  | #include <sys/config.h> | ||||||
| #include <machine/_types.h> | #include <machine/_types.h> | ||||||
| #include <sys/lock.h> | #include <sys/lock.h> | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user