Skip to content

Commit 66dd8a1

Browse files
authored
Fix minimize for method ref (#39)
1 parent 4f36526 commit 66dd8a1

File tree

1 file changed

+30
-1
lines changed

1 file changed

+30
-1
lines changed

source/MetadataProcessor.Core/nanoAssemblyBuilder.cs

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -285,7 +285,36 @@ private HashSet<MetadataToken> BuildDependencyList(MetadataToken token)
285285
{
286286
set.Add(mr.DeclaringType.MetadataToken);
287287
}
288-
288+
289+
if(mr != null &&
290+
mr.ReturnType != null)
291+
{
292+
if (mr.ReturnType.IsArray)
293+
{
294+
if (mr.ReturnType.DeclaringType != null)
295+
{
296+
set.Add(mr.ReturnType.DeclaringType.MetadataToken);
297+
}
298+
}
299+
else
300+
{
301+
if (mr.ReturnType.FullName != "System.Void" &&
302+
mr.ReturnType.FullName != "System.String")
303+
{
304+
set.Add(mr.ReturnType.MetadataToken);
305+
}
306+
}
307+
}
308+
309+
// parameters
310+
foreach (var p in mr.Parameters)
311+
{
312+
if (p.ParameterType.DeclaringType != null)
313+
{
314+
set.Add(p.ParameterType.DeclaringType.MetadataToken);
315+
}
316+
}
317+
289318
break;
290319

291320
case TokenType.TypeSpec:

0 commit comments

Comments
 (0)