Browse Source

Fix debug assert issue with vtable methods.

pull/1711/head
Joao Matos 2 years ago
parent
commit
e76514bbdb
  1. 9
      src/AST/ClassLayout.cs
  2. 1
      src/Generator/AST/VTables.cs

9
src/AST/ClassLayout.cs

@ -31,14 +31,7 @@ namespace CppSharp.AST
public Declaration Declaration; public Declaration Declaration;
/// Method declaration (if Kind == FunctionPointer). /// Method declaration (if Kind == FunctionPointer).
public Method Method public Method Method => Declaration as Method;
{
get
{
Debug.Assert(Kind == VTableComponentKind.FunctionPointer);
return Declaration as Method;
}
}
} }
/// <summary> /// <summary>

1
src/Generator/AST/VTables.cs

@ -34,6 +34,7 @@ namespace CppSharp.AST
where component.Kind != VTableComponentKind.CompleteDtorPointer && where component.Kind != VTableComponentKind.CompleteDtorPointer &&
component.Kind != VTableComponentKind.RTTI && component.Kind != VTableComponentKind.RTTI &&
component.Kind != VTableComponentKind.UnusedFunctionPointer && component.Kind != VTableComponentKind.UnusedFunctionPointer &&
component.Kind != VTableComponentKind.OffsetToTop &&
component.Method != null component.Method != null
select component); select component);

Loading…
Cancel
Save