From 7d784d2af65d7faa6cc8d97b440aad280c7d859c Mon Sep 17 00:00:00 2001
From: Dimitar Dobrev <dpldobrev@protonmail.com>
Date: Wed, 2 Oct 2019 03:46:03 +0300
Subject: [PATCH] Generate symbols for methods of specializations

Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
---
 src/Generator/Passes/GenerateSymbolsPass.cs | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/Generator/Passes/GenerateSymbolsPass.cs b/src/Generator/Passes/GenerateSymbolsPass.cs
index b19f2ef5..1f8abdcb 100644
--- a/src/Generator/Passes/GenerateSymbolsPass.cs
+++ b/src/Generator/Passes/GenerateSymbolsPass.cs
@@ -193,7 +193,12 @@ namespace CppSharp.Passes
                 specs = specializations[specialization.TranslationUnit.Module];
             else specs = specializations[specialization.TranslationUnit.Module] =
                 new HashSet<ClassTemplateSpecialization>();
-            specs.Add(specialization);
+            if (!specs.Contains(specialization))
+            {
+                specs.Add(specialization);
+                foreach (Method method in specialization.Methods)
+                    method.Visit(this);
+            }
             GetSymbolsCodeGenerator(specialization.TranslationUnit.Module);
         }