fixed for gcc