Thanks for your help, managed to find the culprit - it wasn’t one of the packages, but a custom (old) .tmLanguage for libcello, which was based on the C syntax. It was referencing undefined scopes (e.g. scope:source.c#pragma-mark etc.), which in turn caused the above issue.
For some reason it works if I use the old C++.sublime-syntax, even though the undefined scopes all come from the C one.
Thanks again!