I ran into it accidentally just the other day, but all it told me was that I couldn't use it while debugging a multi-threaded program. I was immediately both elated and disappointed in the feature, since nearly all the C++ programs I work are multi-threaded.
I don't know if that's true in the latest versions, but it certainly seems like solving that problem in a multi-threaded environment would be difficult.
Edit: this seems to indicate it can be enabled in a threaded program: http://stackoverflow.com/questions/7517236/how-do-i-enable-r... I will have to try it. I guess it's just another case of a badly worded error message "Target multi-thread does not support this command." sure makes it sound like you can't reverse in a multi-threaded program, doesn't it?
I'm not a heavy user of gdb but every now and then I have to pull it out and use the basic features that I learned in a tutorial one day. I can't believe I have never heard of reverse debugging, would have saved a ton of time.