virtual override keyword not supported until gcc 4.7