Oh, right, I wrote that and I didn't even remember it working that way :(
It's done this way to kludge the thing to work for both PG 7.1 and PG 7.2. When we eventually drop PG 7.1 then I can simply do a "create or replace" of the function inline (and PG 7.3 will probably allow the recursive definition anyway meaning even that level of kludge won't be necessary). If pg_dump's smart enough to issue "create or replace" rather than "create" then restoring would work fine for PG 7.2 in that case ...