[libvirt] [PATCH] build: avoid variable named 'interface', for mingw

Commit 2f36e6944 (re-)introduced a use of an identifier 'interface', which causes this build failure on mingw: ../../tools/virsh-domain-monitor.c: In function 'cmdDomIfAddr': ../../tools/virsh-domain-monitor.c:2233:17: error: expected identifier or '(' before 'struct' const char *interface = NULL; ^ See also commit 6512c8b. Sadly, I'm not quite sure how to write a syntax check that can poison the use of this identifier. * tools/virsh-domain-monitor.c (cmdDomIfAddr): Use ifacestr instead. Signed-off-by: Eric Blake <eblake@redhat.com> --- Pushing under the build-breaker rule. tools/virsh-domain-monitor.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tools/virsh-domain-monitor.c b/tools/virsh-domain-monitor.c index d307881..6951db2 100644 --- a/tools/virsh-domain-monitor.c +++ b/tools/virsh-domain-monitor.c @@ -1,7 +1,7 @@ /* * virsh-domain-monitor.c: Commands to monitor domain status * - * Copyright (C) 2005, 2007-2014 Red Hat, Inc. + * Copyright (C) 2005, 2007-2015 Red Hat, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -2230,7 +2230,7 @@ static bool cmdDomIfAddr(vshControl *ctl, const vshCmd *cmd) { virDomainPtr dom = NULL; - const char *interface = NULL; + const char *ifacestr = NULL; virDomainInterfacePtr *ifaces = NULL; size_t i, j; int ifaces_count = 0; @@ -2242,7 +2242,7 @@ cmdDomIfAddr(vshControl *ctl, const vshCmd *cmd) if (!(dom = vshCommandOptDomain(ctl, cmd, NULL))) return false; - if (vshCommandOptString(cmd, "interface", &interface) < 0) + if (vshCommandOptString(cmd, "interface", &ifacestr) < 0) goto cleanup; if (vshCommandOptString(cmd, "source", &sourcestr) < 0) goto cleanup; @@ -2273,7 +2273,7 @@ cmdDomIfAddr(vshControl *ctl, const vshCmd *cmd) char *ip_addr_str = NULL; const char *type = NULL; - if (interface && STRNEQ(interface, iface->name)) + if (ifacestr && STRNEQ(ifacestr, iface->name)) continue; /* When the interface has no IP address */ -- 2.1.0

On 03/28/2015 04:26 PM, Eric Blake wrote:
Commit 2f36e6944 (re-)introduced a use of an identifier 'interface', which causes this build failure on mingw:
../../tools/virsh-domain-monitor.c: In function 'cmdDomIfAddr': ../../tools/virsh-domain-monitor.c:2233:17: error: expected identifier or '(' before 'struct' const char *interface = NULL; ^
See also commit 6512c8b.
And 1528e8b and 335f6bc2 and 1499e1d5f. This has caused problems since 2009 :-/
Sadly, I'm not quite sure how to write a syntax check that can poison the use of this identifier.
Yeah. And it's hard to say whether it would be more trouble to figure that out, or to just deal with the occasional regression (I guess 5 times in 6 years isn't all *that* bad...)
participants (2)
-
Eric Blake
-
Laine Stump