OK.
On Wed, May 2, 2018 at 1:33 PM, Paolo Carlini <paolo.carl...@oracle.com> wrote: > Hi all, Jason, > > On 24/04/2018 01:00, Paolo Carlini wrote: >> >> On 23/04/2018 23:43, Jason Merrill wrote: >>> >>> On Mon, Apr 23, 2018 at 5:17 PM, Paolo Carlini <paolo.carl...@oracle.com> >>> wrote: >>>> >>>> Hi, >>>> >>>> this issue is by and large fixed in trunk, thus I wanted to resolve it >>>> as >>>> such, marking it as fixed for 8.1.0. However the text of the warning is >>>> misleading / wrong: >>>> >>>> declaration of ‘mVar’ shadows a previous local >>>> >>>> where in fact the shadowed declaration isn't local, is a static data >>>> member >>>> of the class. It seems to me that we should simply not handle such >>>> static >>>> old decls in the conditional block handling locals shadowing other >>>> locals, >>>> thus handle those below, together with other non-static member >>>> declarations. >>>> Tested x86-64-linux. >>> >>> !TREE_STATIC seems like the wrong test here; that's also true for >>> static local variables. >>> >>> Maybe check DECL_FUNCTION_SCOPE_P instead? >> >> Indeed. I don't know how I mis-analyzed that block to conclude that >> previous static locals weren't handled at all there. >> >> Anyway, I added a testcase for that and I'm running again the full >> testsuite (g++.dg is Ok). Ok if it passes? > > Is the amended patch Ok for trunk, now? To be clear: fully tested on > x86_64-linux. > > https://gcc.gnu.org/ml/gcc-patches/2018-04/msg01071.html > > Thanks! > Paolo.