> well, I'm suspecting operator error, because psql \df+ func queries > pg_proc. if you don't believe me, fire up psql with the -E switch and > it will echo all sql it sends to the server and you'll see it queries > pg_proc. take the query it runs, and gradually cut it down and you > should find the reason. perhaps line formatting is throwing you off > maybe.
I'm wondering if the OP has accidentally created another table called "pg_proc". Usually the system version would come first in the search path, but maybe he's using a non-default search path? If this is the right guess, then the reason \df works is that it qualifies pg_proc as pg_catalog.pg_proc.