-Wshadow tells us when a local variable has the same name as a variable of wider scope.  It isn't good practise to have identically-named variables like this, but it happens a lot in the code here and the changes to fix them would be invasive.