Yet another variable shadowing error which only show on newer gcc versions