Actually "Neat!!!" is not sufficient, this is massive, most modern code is written using parameters and locals almost exclusively, globals are only functions, and C++ moves many of them to members. So global autocompletes have significantly reduced in usefullness. Adding locals and parameters to autocomplete is a significant upgrade.
If you have some C++ code, please test how it behaves - I mostly tested it just with Geany's C (plus tried Boost to see how types are reported and what needs to be stripped from them).
One thing I noticed that doesn't work very well is multiple member accesses in a row like ``` a.b. ``` Geany starts from scratch when looking for a type when `.` is typed so for `b` it doesn't look at the particular `b` which is a member of `a` but it searches `b` globally. Unfortunately if we wanted to generalize this, we'd have to parse possibly complex parts of code in front of `.` by ourselves.