diff options
author | Emilio Cobos Álvarez <ecoal95@gmail.com> | 2016-03-25 16:49:04 +0100 |
---|---|---|
committer | Emilio Cobos Álvarez <ecoal95@gmail.com> | 2016-03-25 16:49:04 +0100 |
commit | 0f2e06fb225b2e4c938b2d3ec8c9a5dd8f97c413 (patch) | |
tree | 46ed3f624fcc2134455d127c129e315fc2d53c2e | |
parent | 53a791bf6836e5094c5128692f4f7422fac08139 (diff) |
parser: Ignore functions after vtable calculations
This makes us pass three more tests.
-rw-r--r-- | src/parser.rs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/parser.rs b/src/parser.rs index 9f100181..6188cb62 100644 --- a/src/parser.rs +++ b/src/parser.rs @@ -699,10 +699,6 @@ fn visit_composite(cursor: &Cursor, parent: &Cursor, ci.base_members += 1; } CXCursor_CXXMethod => { - if ctx.options.ignore_functions { - return CXChildVisit_Continue; - } - let linkage = cursor.linkage(); if linkage != CXLinkage_External { return CXChildVisit_Continue; @@ -775,6 +771,10 @@ fn visit_composite(cursor: &Cursor, parent: &Cursor, vi.is_static = cursor.method_is_static(); vi.is_const = cursor.cur_type().is_const(); + if ctx.options.ignore_functions { + return CXChildVisit_Continue; + } + if cursor.method_is_virtual() { ci.vmethods.push(vi); } else { |