ANDROID: GKI: rework the ANDROID_KABI_USE() macro to not use __UNIQUE()
The __UNIQUE_ID() macro causes problems as it turns out to not be deterministic across different compiler runs as it relies on the __COUNTER__ macro which could have been used on other .h files previous to this .h file being included. This shows up specifically when building with "LTO=thin" vs. "LTO=full" as different build paths seem to be triggered. As the structure name isn't really needed at all here, we were just including it for older compilers that could not handle anonymous structures in a union, just drop the whole thing which resolves the abi naming issue. Bug: 210255585 Reported-by: Giuliano Procida <gprocida@google.com> Signed-off-by: Greg Kroah-Hartman <gregkh@google.com> Change-Id: I6b9449fa9d26ffc5d66b2f0f3b41e2d5f3003f68
This commit is contained in:

committed by
Giuliano Procida

parent
ad8da78c87
commit
f8b361d17d
@@ -63,7 +63,7 @@
|
|||||||
_new; \
|
_new; \
|
||||||
struct { \
|
struct { \
|
||||||
_orig; \
|
_orig; \
|
||||||
} __UNIQUE_ID(android_kabi_hide); \
|
}; \
|
||||||
__ANDROID_KABI_CHECK_SIZE_ALIGN(_orig, _new); \
|
__ANDROID_KABI_CHECK_SIZE_ALIGN(_orig, _new); \
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user