Di per se un warning non è un errore e la isdigit() è standard.
Può darsi che il compilatore ti stia solo avvertendo che stai passando un char invece di un int (come richiede il prototipo). In questo caso un cast esplicito può risolvere il problema.