I'm filing this bug, because old style virtuals should be removed.
This leads to an issue where I cannot replace app-crypt/mit-krb5 with app-crypt/heimdal and invoking preserved-rebuild to not break my install.
Affected packages are at least app-crypt/mit-krb5 and app-crypt/heimdal.
Tried quite a few things, nothing worked to solve this:
[ebuild N ] app-crypt/heimdal-1.3.3-r1 USE="X berkdb hdb-ldap ipv6 otp pkinit ssl threads -afs -test" 5,610 kB
[blocks B ] app-crypt/mit-krb5 ("virtual/krb5" is blocking app-crypt/heimdal-1.3.3-r1)
That's not going to work unfortunately:
* You cannot even build one when the other is present without some surgery in the Makefiles (both provide same but incompatible header files).
* Even if you do build, they provide the same libraries while following different -but similar- versioning schemes. There is no guarantee that it will work / will not clash in the future - even if it does work now.
Probably a !! blocker for both packages is in order. Closing as CANTFIX.