mirror of
https://github.com/ipxe/ipxe
synced 2025-12-09 20:09:53 +03:00
[efi] Allow compiler to perform type checks on EFI_HANDLE
The EFI headers define EFI_HANDLE as a void pointer, which renders type checking on anything dealing with EFI handles somewhat useless. Work around this bizarre sabotage attempt by redefining EFI_HANDLE as a pointer to an anonymous structure. Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
@@ -41,6 +41,16 @@ FILE_LICENCE ( GPL2_OR_LATER );
|
||||
#define EFIAPI __attribute__((cdecl,regparm(0)))
|
||||
#endif
|
||||
|
||||
/* EFI headers define EFI_HANDLE as a void pointer, which renders type
|
||||
* checking somewhat useless. Work around this bizarre sabotage
|
||||
* attempt by redefining EFI_HANDLE as a pointer to an anonymous
|
||||
* structure.
|
||||
*/
|
||||
#define EFI_HANDLE STUPID_EFI_HANDLE
|
||||
#include <ipxe/efi/Uefi/UefiBaseType.h>
|
||||
#undef EFI_HANDLE
|
||||
typedef struct {} *EFI_HANDLE;
|
||||
|
||||
/* Include the top-level EFI header files */
|
||||
#include <ipxe/efi/Uefi.h>
|
||||
#include <ipxe/efi/PiDxe.h>
|
||||
|
||||
Reference in New Issue
Block a user