Types unexpectedly lose visibility. This is happening when using iterators.

I'm working with libclang in VIM's clang_complete.
I'm having the following unexpected behavior when using iterators. Initially
was showing up with the new C++ range-for but in the end I've reduced it to
iterator usage.

#include <vector>

int main()
    // std::vector type is visible here

    std::vector<int>::iterator i;

    // after declaring an iterator like above, std::vector
    // is not visible for completion anymore.

    return 0;

So sad of losing completion for containers =(