I think you can turn these warnings off with -Wno-shadow. Whether doing such a thing is actually harmful, I don't know, but I've blithely ignored those errors for months, now. :)
-Wshadow is great for detecting (especially c++) programming faults, on the other hand, if you know that the code works on one platform it's just ok to blindly use -Wno-shadow.
greetings, Thomas