Hello,
This is a bug report.
glReadPixels in the AMD's OpenGL driver checks if the GL_DRAW_FRAMEBUFFER is complete and if it is not, generates GL_INVALID_FRAMEBUFFER_OPERATION.
This is incorrect behavior because glReadPixels should not have anything to do with the GL_DRAW_FRAMEBUFFER.
It must only work with (and check for completeness) GL_READ_FRAMEBUFFER.