I apologize if this has been covered already, I did not read the entirety of the four pages of comments, though I did read pages 1 and 4.
I think the people who are saying "just do this it's so easy" aren't grasping a possible use of "Crop to Selection."
Switcheroo is perhaps struggling with the same workflow that I am. Here's how I've used "Crop to Selection" in other apps:
Zoom way in on the top left corner
Make a rectangular selection where the top-left corner of the selection is the top left corner of my desired crop
The bottom right corner of the selection is arbitrary.
I'll typically select a 30x30 pixel region of a very large image.
Zoom all the way out
Zoom way in on the bottom right corner
Add a rectangular selection where the bottom right corner of the selection is the bottom right corner of my desired crop.
Again, the top left corner of the selection is arbitrary
And again, this will be a tiny selection in a large image.
What I'm after is the bounding box of the two selections, or however many I need...the point is to zoom in on what may be the top-/left-/right-/bottom-most pixels of the crop, select, and keep adding selections until the bounding box of all selection is the desired crop rectangle.
To illustrate Switcheroo's visual example, I would select this:
This allows me pixel precision by zooming in, yet relieves me from having to actually make a large single selection while retaining the precision.
To those of you who will respond that I could...
Enter crop mode
Move top-left corner of crop relatively close to desired position
Zoom way in to same position
Adjust top-left corner of crop to be precise
Zoom out
Move bottom-right corner of crop relatively close to desired position
Zoom way in to same position
Adjust bottom-right corner of crop to be precise
...just count the number of steps. Also, sometimes I need to define, say, the top bound independently of the left bound, and the top-most pixel to include is a third of the way across the top...at this point it becomes cumbersome to use the top handle of the crop tool while zoomed-in.
All of this to say: it seems like a simple enough facade to the existing crop feature. Destructive, nondestructive, I don't care; there was a pseudoish-code example that provided an interface to the existing crop functionality, only it built the crop bounds from selection data. This seems reasonable to me. In UIs, it seems that the more ways there are to accomplish one thing just makes more people more efficient.