How in the world does it handle C++? With macros and all that being in C++, surely it's relying on some heuristics? (Which is fine; it's still an improvement. Just wondering if it's really working semantically.)
Also, one nice thing about diff is that it also gives you a patch that will turn the input into the output. Can this do that?