I wanted to type::AfxThrowMemoryException()
After :: a completion listbox appeared, but it didn't update as I typed more letters. So I typed the whole word and pressed the left parenthesis, whereupon it replaced the word with the first symbol in the listbox, ::___mb_cur_max_func().
I have always disagreed with the design decision to allow bracket to choose a completion. I know you're mimicking VS, but I still want my completion listboxes behaving the same as my suggestion listboxes. But leaving that aside, there are two more bugs here:- The listbox didn't update as I typed, but kept the first term highlighted;
- The suggestion was accepted even though it wasn't a valid completion of what I'd typed so far.
The behaviour of the VS listbox is to update as one types, and not to highlight any items (and thus not to accept any) unless one has typed a non-empty prefix of an existing symbol.