Philippe Mathieu-Daudé <phi...@linaro.org> writes: > hw/ide/ahci.c:1577:23: error: declaration shadows a local variable > [-Werror,-Wshadow] > IDEState *s = &ad->port.ifs[j]; > ^ > hw/ide/ahci.c:1569:29: note: previous declaration is here > void ahci_uninit(AHCIState *s) > ^ > > Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org> > --- > hw/ide/ahci.c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) > > diff --git a/hw/ide/ahci.c b/hw/ide/ahci.c > index 48d550f633..8c9a7c2117 100644 > --- a/hw/ide/ahci.c > +++ b/hw/ide/ahci.c > @@ -1573,10 +1573,8 @@ void ahci_uninit(AHCIState *s) > for (i = 0; i < s->ports; i++) { > AHCIDevice *ad = &s->dev[i]; > > - for (j = 0; j < 2; j++) { > - IDEState *s = &ad->port.ifs[j]; > - > - ide_exit(s); > + for (j = 0; j < ARRAY_SIZE(ad->port.ifs); j++) {
This line's change is unrelated. When we're dealing with at a huge changeset like the tree-wide -Wshadow=local cleanup, I prefer to keep changes minimal to ease review as much as possible. But it's sunk cost now. ad->port.ifs is IDEBus member IDEState ifs[2]. .ifs[0] corresponds to .master, and .ifs[1] corresponds to .slave. Size 2 is fundamental, and will not ever change. Whether we count to 2 or to ARRAY_SIZE(.ifs) is a matter of taste. Taste is up to the maintainer, not me. John? > + ide_exit(&ad->port.ifs[j]); > } > object_unparent(OBJECT(&ad->port)); > }