diff options
author | Emilio Cobos Álvarez <emilio@crisal.io> | 2017-01-19 16:22:26 +0100 |
---|---|---|
committer | Emilio Cobos Álvarez <emilio@crisal.io> | 2017-01-19 16:26:30 +0100 |
commit | e6a9291cb089da2a2b252f78658d125ffcd48802 (patch) | |
tree | ffc09e3094acf431f732bd7eae6a0005c2eb2fc2 | |
parent | 01cb681c17003cea2af9d7e641f9b97ded4bfcc5 (diff) |
ir: Fix the assert no danging items traversal to avoid getting hung on a cyclic reference caused by inner_const.hpp.
-rw-r--r-- | libbindgen/src/ir/context.rs | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/libbindgen/src/ir/context.rs b/libbindgen/src/ir/context.rs index c3de2ca8..4d20c053 100644 --- a/libbindgen/src/ir/context.rs +++ b/libbindgen/src/ir/context.rs @@ -1255,8 +1255,9 @@ impl<'ctx, 'gen> Iterator for AssertNoDanglingItemIter<'ctx, 'gen> } for sub_id in sub_types { - if let Some(value) = self.seen.insert(id, sub_id) { - self.to_iterate.push_back(value); + if self.seen.insert(sub_id, id).is_none() { + // We've never visited this sub item before. + self.to_iterate.push_back(sub_id); } } |