Browse Source

Ensured symbols for templated functions.

Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
pull/840/head
Dimitar Dobrev 8 years ago
parent
commit
37224ea55e
  1. 4
      src/Generator/Passes/GenerateSymbolsPass.cs

4
src/Generator/Passes/GenerateSymbolsPass.cs

@ -161,7 +161,9 @@ namespace CppSharp.Passes @@ -161,7 +161,9 @@ namespace CppSharp.Passes
var mangled = function.Mangled;
var method = function as Method;
return function.IsGenerated && !function.IsDeleted && !function.IsDependent &&
!function.IsPure && (!string.IsNullOrEmpty(function.Body) || function.IsImplicit) &&
!function.IsPure &&
(!string.IsNullOrEmpty(function.Body) || function.IsImplicit ||
function.Namespace is ClassTemplateSpecialization) &&
// we don't need symbols for virtual functions anyway
(method == null || (!method.IsVirtual && !method.IsSynthetized &&
(!method.IsConstructor || !((Class) method.Namespace).IsAbstract))) &&

Loading…
Cancel
Save