diff --git a/LanguageRecogniser/Cpp/CppClassDiagramVisitor.cs b/LanguageRecogniser/Cpp/CppClassDiagramVisitor.cs
index 173f674c422fe5f815bc7cae84f2c2819f55ff5c..6631e1357a00c4414180a986e9ccc28aa2f1ff97 100644
--- a/LanguageRecogniser/Cpp/CppClassDiagramVisitor.cs
+++ b/LanguageRecogniser/Cpp/CppClassDiagramVisitor.cs
@@ -119,7 +119,7 @@ public class CppClassDiagramVisitor : CPP14ParserBaseVisitor<object>
                         Match aggregationMatch = Regex.Match(atribute.Type, aggregationPattern);
                         Match compositionMatch = Regex.Match(atribute.Type, compositionPattern);
 
-                        if (aggregationMatch.Success && !string.IsNullOrEmpty(aggregationMatch.Groups[2].Value))
+                        if (aggregationMatch.Success && !string.IsNullOrEmpty(aggregationMatch.Groups[3].Value))
                         {
                             // Aggregation type
                             string? typeName = aggregationMatch.Groups[2].Value; // Second capturing group