diff --git a/src/cmd/5g/gsubr.c b/src/cmd/5g/gsubr.c index ef5a509147..dbcfc233be 100644 --- a/src/cmd/5g/gsubr.c +++ b/src/cmd/5g/gsubr.c @@ -1812,6 +1812,8 @@ sudoaddable(int as, Node *n, Addr *a, int *w) if(n->type == T) return 0; + memset(a, 0, sizeof *a); + switch(n->op) { case OLITERAL: if(!isconst(n, CTINT)) diff --git a/src/cmd/6g/gsubr.c b/src/cmd/6g/gsubr.c index 697016c6f3..51409e467b 100644 --- a/src/cmd/6g/gsubr.c +++ b/src/cmd/6g/gsubr.c @@ -1966,6 +1966,8 @@ sudoaddable(int as, Node *n, Addr *a) if(n->type == T) return 0; + memset(a, 0, sizeof *a); + switch(n->op) { case OLITERAL: if(!isconst(n, CTINT)) diff --git a/src/cmd/8g/gsubr.c b/src/cmd/8g/gsubr.c index dd75e9f092..af1963f980 100644 --- a/src/cmd/8g/gsubr.c +++ b/src/cmd/8g/gsubr.c @@ -2398,7 +2398,7 @@ sudoaddable(int as, Node *n, Addr *a) { USED(as); USED(n); - USED(a); + memset(a, 0, sizeof *a); return 0; } diff --git a/src/cmd/9g/gsubr.c b/src/cmd/9g/gsubr.c index 49f184d51e..073324ee12 100644 --- a/src/cmd/9g/gsubr.c +++ b/src/cmd/9g/gsubr.c @@ -1700,6 +1700,7 @@ int sudoaddable(int as, Node *n, Addr *a) { // TODO(minux) - USED(as); USED(n); USED(a); + USED(as); USED(n); + memset(a, 0, sizeof *a); return 0; }