diff options
author | phk <phk@FreeBSD.org> | 2000-10-27 11:45:49 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 2000-10-27 11:45:49 +0000 |
commit | 54ca48450cf20c453a092aa95d086cd5c5751fcf (patch) | |
tree | 479cfa046c848adf9e8ada76b004eeda743154db /include/struct.h | |
parent | ea5581599fd86937f5f773c8e66aedd6a3524383 (diff) | |
download | FreeBSD-src-54ca48450cf20c453a092aa95d086cd5c5751fcf.zip FreeBSD-src-54ca48450cf20c453a092aa95d086cd5c5751fcf.tar.gz |
Convert all users of fldoff() to offsetof(). fldoff() is bad
because it only takes a struct tag which makes it impossible to
use unions, typedefs etc.
Define __offsetof() in <machine/ansi.h>
Define offsetof() in terms of __offsetof() in <stddef.h> and <sys/types.h>
Remove myriad of local offsetof() definitions.
Remove includes of <stddef.h> in kernel code.
NB: Kernelcode should *never* include from /usr/include !
Make <sys/queue.h> include <machine/ansi.h> to avoid polluting the API.
Deprecate <struct.h> with a warning. The warning turns into an error on
01-12-2000 and the file gets removed entirely on 01-01-2001.
Paritials reviews by: various.
Significant brucifications by: bde
Diffstat (limited to 'include/struct.h')
-rw-r--r-- | include/struct.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/struct.h b/include/struct.h index f80ecd0..c32ec28 100644 --- a/include/struct.h +++ b/include/struct.h @@ -31,11 +31,17 @@ * SUCH DAMAGE. * * @(#)struct.h 8.1 (Berkeley) 6/2/93 + * + * $FreeBSD$ */ #ifndef _STRUCT_H_ #define _STRUCT_H_ +#if __GNUC__ +#warning "this file includes <struct.h> which is deprecated, use <stddef.h> instead" +#endif + /* Offset of the field in the structure. */ #define fldoff(name, field) \ ((int)&(((struct name *)0)->field)) |