mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-01 08:59:33 +00:00
6ab7c3d6ba
A lot of errors are encountered when building with sparse checking
activated (make C=1 or make C=2).
Many of them are fixed in Linux.
Resynchronise Makefile and include/linux/build_bug.h with Linux
kernel sources by porting the following Linux commits into u-boot:
- 6c49f359ca14 ("kbuild: disable sparse warnings about unknown attributes")
- 80591e61a0f7 ("kbuild: tell sparse about the $ARCH")
- 8788994376d8 ("linux/build_bug.h: change type to int")
- 527edbc18a70 ("build_bug.h: remove most of dummy BUILD_BUG_ON stubs for Sparse")
- c60d3b79423a ("build_bug.h: remove negative-array fallback for BUILD_BUG_ON()")
- 14e83077d55f ("include: drop pointless __compiler_offsetof indirection")
Also revert commit aa9e891c63
("include/linux/stddef.h: avoid
'warning: preprocessor token offsetof redefined'") because the
error it creates is worse than the warning it is trying to fix.
Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
20 lines
312 B
C
20 lines
312 B
C
#ifndef _LINUX_STDDEF_H
|
|
#define _LINUX_STDDEF_H
|
|
|
|
#include <linux/compiler_types.h>
|
|
|
|
#undef NULL
|
|
#if defined(__cplusplus)
|
|
#define NULL 0
|
|
#else
|
|
#define NULL ((void *)0)
|
|
#endif
|
|
|
|
#ifndef _SIZE_T
|
|
#include <linux/types.h>
|
|
#endif
|
|
|
|
#undef offsetof
|
|
#define offsetof(TYPE, MEMBER) __builtin_offsetof(TYPE, MEMBER)
|
|
|
|
#endif
|