On Fri, 2017-02-03 at 16:39 +0000, Toomas Soome wrote:
> Author: tsoome
> Date: Fri Feb  3 16:39:10 2017
> New Revision: 313166
> URL: https://svnweb.freebsd.org/changeset/base/313166
> 
> Log:
>   loader: libefi/env.c warnings in arm build
>   
>   The arm build has revealed some of the warnings, the fix for CHAR16
>   warning is to switch the warning off for env.c (same as for
> efinet.c).
>   

How is disabling the warning instead of just fixing it the right thing
to do?  I think disabling a printf format warning is never the right
thing to do, it just turns a compile warning into a runtime failure.

-- Ian

>   For error code we need to use macro.
>   
>   Reported by:        gjb
>   Reviewed by:        imp
>   Approved by:        imp (mentor)
>   Differential Revision:      https://reviews.freebsd.org/D9422
> 
> Modified:
>   head/sys/boot/efi/libefi/Makefile
>   head/sys/boot/efi/libefi/env.c
> 
> Modified: head/sys/boot/efi/libefi/Makefile
> =====================================================================
> =========
> --- head/sys/boot/efi/libefi/Makefile Fri Feb  3 16:36:14 2017
>       (r313165)
> +++ head/sys/boot/efi/libefi/Makefile Fri Feb  3 16:39:10 2017
>       (r313166)
> @@ -26,6 +26,7 @@ SRCS+=      time_event.c
>  # of a short. There's no good cast to use here so just ignore the
>  # warnings for now.
>  CWARNFLAGS.efinet.c+=        -Wno-format
> +CWARNFLAGS.env.c+=   -Wno-format
>  
>  .if ${MACHINE_CPUARCH} == "aarch64"
>  CFLAGS+=     -msoft-float -mgeneral-regs-only
> 
> Modified: head/sys/boot/efi/libefi/env.c
> =====================================================================
> =========
> --- head/sys/boot/efi/libefi/env.c    Fri Feb  3 16:36:14 2017        
> (r313165)
> +++ head/sys/boot/efi/libefi/env.c    Fri Feb  3 16:39:10 2017        
> (r313166)
> @@ -94,14 +94,16 @@ efi_print_var(CHAR16 *varnamearg, EFI_GU
>       status = RS->GetVariable(varnamearg, matchguid, &attr,
>           &datasz, NULL);
>       if (status != EFI_BUFFER_TOO_SMALL) {
> -             printf("Can't get the variable: error %#lx\n",
> status);
> +             printf("Can't get the variable: error %#lx\n",
> +                 EFI_ERROR_CODE(status));
>               return (CMD_ERROR);
>       }
>       data = malloc(datasz);
>       status = RS->GetVariable(varnamearg, matchguid, &attr,
>           &datasz, data);
>       if (status != EFI_SUCCESS) {
> -             printf("Can't get the variable: error %#lx\n",
> status);
> +             printf("Can't get the variable: error %#lx\n",
> +                 EFI_ERROR_CODE(status));
>               return (CMD_ERROR);
>       }
>       uuid_to_string((uuid_t *)matchguid, &str, &uuid_status);
> 
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to