fix implicit declaration warnings