Vscode has problems with some of the templates used in the code. I recommend clangd as a language server in either vim or emacs.
Discussion
Yeah, the template seems to be the problem. The underlying prevector class clearly has an `empty()` method, but the grandchild class CScript can't see it. Bizarre.
Hoping to stick with VS Code if I can. Any help on getting it to grok the headers would be appreciated.
I found an issue in vscode describing the same problem some time ago and it doesn't seem like there is an easy workaround. It made me switch back to neovim and I use will clark's config https://github.com/willcl-ark/neovim