From e76514bbdba9cc9ad519c25a56b7a193cd124b92 Mon Sep 17 00:00:00 2001
From: Joao Matos <joao@tritao.eu>
Date: Fri, 3 Feb 2023 17:53:23 +0000
Subject: [PATCH] Fix debug assert issue with vtable methods.

---
 src/AST/ClassLayout.cs       | 9 +--------
 src/Generator/AST/VTables.cs | 1 +
 2 files changed, 2 insertions(+), 8 deletions(-)

diff --git a/src/AST/ClassLayout.cs b/src/AST/ClassLayout.cs
index f22a278d..06d97e47 100644
--- a/src/AST/ClassLayout.cs
+++ b/src/AST/ClassLayout.cs
@@ -31,14 +31,7 @@ namespace CppSharp.AST
         public Declaration Declaration;
 
         /// Method declaration (if Kind == FunctionPointer).
-        public Method Method
-        {
-            get
-            {
-                Debug.Assert(Kind == VTableComponentKind.FunctionPointer);
-                return Declaration as Method;
-            }
-        }
+        public Method Method => Declaration as Method;
     }
 
     /// <summary>
diff --git a/src/Generator/AST/VTables.cs b/src/Generator/AST/VTables.cs
index 13add5b8..93e59ed9 100644
--- a/src/Generator/AST/VTables.cs
+++ b/src/Generator/AST/VTables.cs
@@ -34,6 +34,7 @@ namespace CppSharp.AST
                              where component.Kind != VTableComponentKind.CompleteDtorPointer &&
                                    component.Kind != VTableComponentKind.RTTI &&
                                    component.Kind != VTableComponentKind.UnusedFunctionPointer &&
+                                   component.Kind != VTableComponentKind.OffsetToTop &&
                                    component.Method != null
                              select component);