This is a problem with the ebuild. If you look at the pkg_setup() function in the postgresql ebuild if {PG_DiR}/data/PG_VERSION exists, it checks the PG_VERSION file to see if you need to dump/restore the database.
There's also a check to see if postgresql was built with the pg-hier useflag. Due to the blocker, postgresql needs to be unmerged first. This prevents the built_with_use call from working because postgresql isn't actually installed.
Assuming you never used pg-hier useflag, you should be able to mv {PG_DIR}/data out of the way, emerge postgresql, then move the data dir back.


