Non è una sorpresa. Il linguaggio SQL non supporta le variabili. Devi usare la lingua plpgsql.
CREATE OR REPLACE FUNCTION clean_emp()
RETURNS void AS $$
DECLARE cnt varchar;
BEGIN
END;
$$ LANGUAGE plpgsql;
Vedi di più nella documentazione http://www.postgresql.org/docs/current /statico/plpgsql.html .
PostgreSQL ha più linguaggi per la scrittura di funzioni. Il linguaggio SQL è perfetto per macro di istruzioni singole su una riga. PLpgSQL è un linguaggio nativo classico simile a PL/SQL di Oracle con SQL incorporato.