diff mbox series

[u-boot,v4,07/36] efi_loader: fix warning when linking with LTO

Message ID 20210520112425.25166-8-marek.behun@nic.cz
State Accepted
Commit 2bdc6f579b698ea32cf112310e903238d92a3c5a
Delegated to: Tom Rini
Headers show
Series U-Boot LTO (Sandbox + Some ARM boards) | expand

Commit Message

Marek Behún May 20, 2021, 11:23 a.m. UTC
When linking with LTO, the compiler complains about type mismatch of
variables `__efi_runtime_start`, `__efi_runtime_stop`,
`__efi_runtime_rel_start` and `__efi_runtime_rel_stop`:

 include/efi_loader.h:218:21: warning: type of ‘__efi_runtime_start’
                                       does not match original
                                       declaration [-Wlto-type-mismatch]
    218 | extern unsigned int __efi_runtime_start, __efi_runtime_stop;
        |                     ^
  arch/sandbox/lib/sections.c:7:6: note: ‘__efi_runtime_start’ was
                                         previously declared here
      7 | char __efi_runtime_start[0] __attribute__((section(".__efi_run
        |      ^

Change the type to char[] in include/efi_loader.h.

Signed-off-by: Marek Behún <marek.behun@nic.cz>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
---
 include/efi_loader.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Tom Rini May 25, 2021, 12:54 a.m. UTC | #1
On Thu, May 20, 2021 at 01:23:56PM +0200, Marek Behún wrote:

> When linking with LTO, the compiler complains about type mismatch of
> variables `__efi_runtime_start`, `__efi_runtime_stop`,
> `__efi_runtime_rel_start` and `__efi_runtime_rel_stop`:
> 
>  include/efi_loader.h:218:21: warning: type of ‘__efi_runtime_start’
>                                        does not match original
>                                        declaration [-Wlto-type-mismatch]
>     218 | extern unsigned int __efi_runtime_start, __efi_runtime_stop;
>         |                     ^
>   arch/sandbox/lib/sections.c:7:6: note: ‘__efi_runtime_start’ was
>                                          previously declared here
>       7 | char __efi_runtime_start[0] __attribute__((section(".__efi_run
>         |      ^
> 
> Change the type to char[] in include/efi_loader.h.
> 
> Signed-off-by: Marek Behún <marek.behun@nic.cz>
> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>

Applied to u-boot/master, thanks!
diff mbox series

Patch

diff --git a/include/efi_loader.h b/include/efi_loader.h
index ce9b2388c5..ea03af43c2 100644
--- a/include/efi_loader.h
+++ b/include/efi_loader.h
@@ -217,8 +217,8 @@  extern const efi_guid_t efi_guid_firmware_management_protocol;
 /* GUID for the ESRT */
 extern const efi_guid_t efi_esrt_guid;
 
-extern unsigned int __efi_runtime_start, __efi_runtime_stop;
-extern unsigned int __efi_runtime_rel_start, __efi_runtime_rel_stop;
+extern char __efi_runtime_start[], __efi_runtime_stop[];
+extern char __efi_runtime_rel_start[], __efi_runtime_rel_stop[];
 
 /**
  * struct efi_open_protocol_info_item - open protocol info item