Думаю он понять не может из чего выбрать:
double pow ( double base, double exponent );
long double pow ( long double base, long double exponent );
float pow ( float base, float exponent );
double pow ( double base, int exponent );
long double pow ( long double base, int exponent );
потому где-то лучше написать pow(x, float(1.0/3))) а то видно он думает, что то int