Completely inadequate for many use cases. IDL/DDL is one of the least interesting things you could do with reflection in C++. You can already do a lot of that kind of thing with existing metaprogramming facilities.
Which use cases? What exactly you can do with "existing metaprogramming facilities"?
Most of the time, I will prefer standard C++ over a full hand made layer of complexity that needs maintenance.