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(); - specs.Add(specialization); + if (!specs.Contains(specialization)) + { + specs.Add(specialization); + foreach (Method method in specialization.Methods) + method.Visit(this); + } GetSymbolsCodeGenerator(specialization.TranslationUnit.Module); }