can't be a bug in blender since the error occurs even before the ebuild starts to unpack.
+blender surely doesn't know about the portage structure to warn about dev-lang/python
the point is that it needs python-3.2 or bigger and because 3.2 is still masked with keyword it searches
for the next higher number which would be 3.3 which obviously doesn't exist.
if you install dev-lang/python-3.2 after setting the keyword, it compiles fine_________________In the land of the blind, the one eyed man is king!

Has anyone found a solution/cause for this? I'm experiencing the exact same predicament.

Xtroce already explained why and the solution but basically you need to unmask (via keyword) python3.2. You can do this in /etc/portage/package.keywords:

Code:

dev-lang/python:3.2

With that said this error message from portage is confusing and requires the user to dig around a bit to figure out the issue. The error leads you to believe that python 3.3 is required when in fact it's >=python-3.2 that's required. IMO portage should detect this situation where no unmasked version (or greater) exists in a required slot and communicate this better in the error message.

Looking (very briefly) at the blender-2.57-r1 ebuild it looks like this dependency happens because of the following:

Code:

PYTHON_DEPEND="3:3.2"

From the docs this means it depends on any version of Python 3 which is at least 3.2.*. Given that this a relatively easy use case to detect (basically any ebuild containing PYTHON_DEPEND with slot:version requirement...) it would be nice to instead have an error message somewhere along the lines of:

Code:

!!! The following update has been skipped due to unsatisfied dependencies:

media-gfx/blender:2.5

emerge: all ebuilds in dev-lang/python:3 greater than or equal to version 3.2 are masked
(dependency required by "media-gfx/blender-2.57-r1" [ebuild])

Maybe even better would be to have the traditional "package media-gfx/blender-2.57-r1 requires >=dev-lang/python-3.2 which is masked by (keyword)"....?