diff --git a/src/shared/cplusplus/Lexer.cpp b/src/shared/cplusplus/Lexer.cpp
index f9e68a88d749bab874c145ffe71ac4d14bda0e07..4d3437caf4702005eec42a341da0da4ee04ea194 100644
--- a/src/shared/cplusplus/Lexer.cpp
+++ b/src/shared/cplusplus/Lexer.cpp
@@ -425,7 +425,14 @@ void Lexer::scan_helper(Token *tok)
         } else if (_yychar == '*') {
             yyinp();
 
-            const bool doxy = _yychar == '*' || _yychar == '!';
+            bool doxy = false;
+
+            if (_yychar == '*' || _yychar == '!') {
+                yyinp();
+
+                if (! _yychar || std::isspace(_yychar))
+                    doxy = true;
+            }
 
             while (_yychar) {
                 if (_yychar != '*') {