In some cases, the following happens when autocompleting C++ keywords in a switch() statement with the "Commit selection at any character not valid in a symbol" option enabled: - Typing "ca" and pressing space will expand to the "case" keyword followed by *two* spaces. - Typing "br;" will expand to "break;;" instead of simply "break;". This is unlike typing e.g. "ret;" which will always correctly expand to "return;".
These can be easily reproduced by writing a switch statement, say simply switch(1) { }, then going inside the curly braces and typing a case or break as mentioned before.
The case and break suggestions are hardcoded in VA Snippets. You can edit the defaults: VAssistX | Tools | Edit VA Snippets
In the left hand tree, locate the C++ root node and expand it. Locate "SuggestionsForType switch" and remove the last character on each line in the right hand pane.
I'm not sure that VA should compare the commit character to the last character of the inserted text, but editing the defaults will give you the behavior you seek.