Since we've added support to build a complete depgraph (bug 147766), emerge is now able to detect circular dependencies. However, it panicks for circular RDEPEND even though it is still feasible to build and install packages that RDEPEND on eachother. I've written a patch that solves this by introducing a medium priority level into the digraph (in addition to the existing hard and soft priorities).
This is fixed in svn r4571.
*** Bug 149424 has been marked as a duplicate of this bug. ***
This has been released in 2.1.2_pre2-r2.
This is more properly fixed with svn r4586. Now it makes sure not to prematurely merge any nodes that have unsatisfied hard deps (and properly detects hard circular dependencies). It has been released in 2.1.2_pre2-r3.