diff --git a/src/shared/cplusplus/Parser.cpp b/src/shared/cplusplus/Parser.cpp
index e94a9ca5d9207291438a7bec42977260a00bd162..96e7f86cc202e1ef628a74c95acf0eb68a3bcd14 100644
--- a/src/shared/cplusplus/Parser.cpp
+++ b/src/shared/cplusplus/Parser.cpp
@@ -140,6 +140,10 @@ bool Parser::skipUntilDeclaration()
             case T_PUBLIC:
             case T_PROTECTED:
             case T_PRIVATE:
+            case T_CLASS:
+            case T_STRUCT:
+            case T_UNION:
+            case T_TYPENAME:
                 return true;
 
             default: