[PATCH 1/2] qapi: Do not generate default switch case in gen_visit_object_members()

Philippe Mathieu-Daudé posted 2 patches 2 years, 2 months ago
There is a newer version of this series
[PATCH 1/2] qapi: Do not generate default switch case in gen_visit_object_members()
Posted by Philippe Mathieu-Daudé 2 years, 2 months ago
When iterating over a QAPISchemaEnumType, all possible
values are covered. The 'default' switch case is unreachable,
remove it.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 scripts/qapi/visit.py | 2 --
 1 file changed, 2 deletions(-)

diff --git a/scripts/qapi/visit.py b/scripts/qapi/visit.py
index 26a584ee4c..f66a31a963 100644
--- a/scripts/qapi/visit.py
+++ b/scripts/qapi/visit.py
@@ -159,8 +159,6 @@ def gen_visit_object_members(name: str,
 
             ret += var.ifcond.gen_endif()
         ret += mcgen('''
-    default:
-        abort();
     }
 ''')
 
-- 
2.38.1


Re: [PATCH 1/2] qapi: Do not generate default switch case in gen_visit_object_members()
Posted by Markus Armbruster 2 years, 2 months ago
Philippe Mathieu-Daudé <philmd@linaro.org> writes:

> When iterating over a QAPISchemaEnumType, all possible
> values are covered. The 'default' switch case is unreachable,
> remove it.
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>  scripts/qapi/visit.py | 2 --
>  1 file changed, 2 deletions(-)
>
> diff --git a/scripts/qapi/visit.py b/scripts/qapi/visit.py
> index 26a584ee4c..f66a31a963 100644
> --- a/scripts/qapi/visit.py
> +++ b/scripts/qapi/visit.py
> @@ -159,8 +159,6 @@ def gen_visit_object_members(name: str,
>  
>              ret += var.ifcond.gen_endif()
>          ret += mcgen('''
> -    default:
> -        abort();
>      }
>  ''')

This results in a bunch of warnings like

    warning: enumeration value ‘FOO__MAX’ not handled in switch [-Wswitch]

Obvious fix: squash into the next patch.
Re: [PATCH 1/2] qapi: Do not generate default switch case in gen_visit_object_members()
Posted by Juan Quintela 2 years, 2 months ago
Philippe Mathieu-Daudé <philmd@linaro.org> wrote:
> When iterating over a QAPISchemaEnumType, all possible
> values are covered. The 'default' switch case is unreachable,
> remove it.
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>

Reviewed-by: Juan Quintela <quintela@redhat.com>

Althought my qapi is rusty.