fixed compile error in newer GCC