[Qemu-devel] [PATCH 2/2] target/s390x: Fix brace Werror with clang 6.0.0

Richard Henderson posted 9 patches 7 years, 5 months ago
Only 6 patches received!
[Qemu-devel] [PATCH 2/2] target/s390x: Fix brace Werror with clang 6.0.0
Posted by Richard Henderson 7 years, 5 months ago
The warning is

target/s390x/misc_helper.c:209:21: error: suggest
      braces around initialization of subobject [-Werror,-Wmissing-braces]
    SysIB sysib = { 0 };
                    ^
                    {}

While the original code is correct, and technically exactly correct
as per ISO C89, both GCC and Clang support plain empty set of braces
as an extension.

Cc: Alexander Graf <agraf@suse.de>
Cc: David Hildenbrand <david@redhat.com>
Cc: Cornelia Huck <cohuck@redhat.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
 target/s390x/misc_helper.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/target/s390x/misc_helper.c b/target/s390x/misc_helper.c
index e0b23c1fd1..1f834f35ef 100644
--- a/target/s390x/misc_helper.c
+++ b/target/s390x/misc_helper.c
@@ -206,7 +206,7 @@ uint32_t HELPER(stsi)(CPUS390XState *env, uint64_t a0, uint64_t r0, uint64_t r1)
     const MachineState *ms = MACHINE(qdev_get_machine());
     uint16_t total_cpus = 0, conf_cpus = 0, reserved_cpus = 0;
     S390CPU *cpu = s390_env_get_cpu(env);
-    SysIB sysib = { 0 };
+    SysIB sysib = { };
     int i, cc = 0;
 
     if ((r0 & STSI_R0_FC_MASK) > STSI_R0_FC_LEVEL_3) {
-- 
2.17.0


Re: [Qemu-devel] [PATCH 2/2] target/s390x: Fix brace Werror with clang 6.0.0
Posted by David Hildenbrand 7 years, 5 months ago
On 12.05.2018 06:59, Richard Henderson wrote:
> The warning is
> 
> target/s390x/misc_helper.c:209:21: error: suggest
>       braces around initialization of subobject [-Werror,-Wmissing-braces]
>     SysIB sysib = { 0 };
>                     ^
>                     {}
> 
> While the original code is correct, and technically exactly correct
> as per ISO C89, both GCC and Clang support plain empty set of braces
> as an extension.
> 
> Cc: Alexander Graf <agraf@suse.de>
> Cc: David Hildenbrand <david@redhat.com>
> Cc: Cornelia Huck <cohuck@redhat.com>
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
>  target/s390x/misc_helper.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/target/s390x/misc_helper.c b/target/s390x/misc_helper.c
> index e0b23c1fd1..1f834f35ef 100644
> --- a/target/s390x/misc_helper.c
> +++ b/target/s390x/misc_helper.c
> @@ -206,7 +206,7 @@ uint32_t HELPER(stsi)(CPUS390XState *env, uint64_t a0, uint64_t r0, uint64_t r1)
>      const MachineState *ms = MACHINE(qdev_get_machine());
>      uint16_t total_cpus = 0, conf_cpus = 0, reserved_cpus = 0;
>      S390CPU *cpu = s390_env_get_cpu(env);
> -    SysIB sysib = { 0 };
> +    SysIB sysib = { };
>      int i, cc = 0;
>  
>      if ((r0 & STSI_R0_FC_MASK) > STSI_R0_FC_LEVEL_3) {
> 

Very strange that this is reported as an error if it is technically the
right thing to do. Anyhow, to make compilers happy:

Reviewed-by: David Hildenbrand <david@redhat.com>

-- 

Thanks,

David / dhildenb

Re: [Qemu-devel] [PATCH 2/2] target/s390x: Fix brace Werror with clang 6.0.0
Posted by Cornelia Huck 7 years, 5 months ago
On Fri, 11 May 2018 21:59:43 -0700
Richard Henderson <richard.henderson@linaro.org> wrote:

> The warning is
> 
> target/s390x/misc_helper.c:209:21: error: suggest
>       braces around initialization of subobject [-Werror,-Wmissing-braces]
>     SysIB sysib = { 0 };
>                     ^
>                     {}
> 
> While the original code is correct, and technically exactly correct
> as per ISO C89, both GCC and Clang support plain empty set of braces
> as an extension.
> 
> Cc: Alexander Graf <agraf@suse.de>
> Cc: David Hildenbrand <david@redhat.com>
> Cc: Cornelia Huck <cohuck@redhat.com>
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
>  target/s390x/misc_helper.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/target/s390x/misc_helper.c b/target/s390x/misc_helper.c
> index e0b23c1fd1..1f834f35ef 100644
> --- a/target/s390x/misc_helper.c
> +++ b/target/s390x/misc_helper.c
> @@ -206,7 +206,7 @@ uint32_t HELPER(stsi)(CPUS390XState *env, uint64_t a0, uint64_t r0, uint64_t r1)
>      const MachineState *ms = MACHINE(qdev_get_machine());
>      uint16_t total_cpus = 0, conf_cpus = 0, reserved_cpus = 0;
>      S390CPU *cpu = s390_env_get_cpu(env);
> -    SysIB sysib = { 0 };
> +    SysIB sysib = { };
>      int i, cc = 0;
>  
>      if ((r0 & STSI_R0_FC_MASK) > STSI_R0_FC_LEVEL_3) {

Thanks, applied.