Fix an error expanding arguments for overridden methods in C++.

When returning a completion for a method which is implemented in a base class,
the name of the class where the method was declared is included, so that instead
of:

COMPLETION: what : [#const char *#]what() const

we receive:

COMPLETION: what : [#const char *#]Implementation::what() const

The extra semi-colons after the class name caused this completion to match a
regexp which was added in hara/auto-complete-clang@493944 (and merged in
Golevka/emacs-clang-complete-async@3176ea) to support Objective C. In this case,
the argument list in the above example would be determined to be ":what() const"
rather than just "()". This commit fixes the issue by avoiding that regexp
unless we are in Objective C mode.

This is probably the same issue as reported in
Golevka/emacs-clang-complete-async#39.