Browse Source

Ignored pure overrides in the pass for abstract impls.

Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
pull/539/head
Dimitar Dobrev 10 years ago
parent
commit
997a317e27
  1. 6
      src/Generator/Passes/GenerateAbstractImplementationsPass.cs

6
src/Generator/Passes/GenerateAbstractImplementationsPass.cs

@ -122,11 +122,11 @@ namespace CppSharp.Passes @@ -122,11 +122,11 @@ namespace CppSharp.Passes
private static List<Method> GetOverriddenMethods(Class @class)
{
var abstractMethods = @class.Methods.Where(m => m.IsOverride).ToList();
var overriddenMethods = @class.Methods.Where(m => m.IsOverride && !m.IsPure).ToList();
foreach (var @base in @class.Bases)
abstractMethods.AddRange(GetOverriddenMethods(@base.Class));
overriddenMethods.AddRange(GetOverriddenMethods(@base.Class));
return abstractMethods;
return overriddenMethods;
}
private void FillVTable(Class @class, IList<Method> abstractMethods, Class internalImplementation)

Loading…
Cancel
Save