Skip to content

Commit b3f2832

Browse files
authored
Fix issue with nested types (#68)
1 parent 86c46c8 commit b3f2832

File tree

1 file changed

+13
-5
lines changed

1 file changed

+13
-5
lines changed

source/MetadataProcessor.Core/nanoAssemblyBuilder.cs

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -271,12 +271,20 @@ private HashSet<MetadataToken> BuildDependencyList(MetadataToken token)
271271
{
272272
case TokenType.TypeRef:
273273
var tr = _tablesContext.TypeReferencesTable.Items.FirstOrDefault(i => i.MetadataToken == token);
274-
switch (tr.Scope.MetadataToken.TokenType)
274+
275+
if (tr.IsNested)
275276
{
276-
case TokenType.AssemblyRef:
277-
case TokenType.TypeRef:
278-
set.Add(tr.Scope.MetadataToken);
279-
break;
277+
set.Add(tr.DeclaringType.MetadataToken);
278+
}
279+
else
280+
{
281+
switch (tr.Scope.MetadataToken.TokenType)
282+
{
283+
case TokenType.AssemblyRef:
284+
case TokenType.TypeRef:
285+
set.Add(tr.Scope.MetadataToken);
286+
break;
287+
}
280288
}
281289
break;
282290

0 commit comments

Comments
 (0)