diff options
author | Jb Evain <jbevain@gmail.com> | 2008-12-17 13:21:01 +0300 |
---|---|---|
committer | Jb Evain <jbevain@gmail.com> | 2008-12-17 13:21:01 +0300 |
commit | 20028847f37ced266a8ed96b99f30fe2ac84964d (patch) | |
tree | d06375d7ef6b7e8ded2e9a1d3abbdb9c76b594f1 /gui-compare | |
parent | ec2359eef322d21b168a6cf72954c800696945e2 (diff) |
2008-12-17 Jb Evain <jbevain@novell.com>
* CecilMetadata.cs: treat Finalizers as an implementation detail
and ignore it for the comparison.
svn path=/trunk/mono-tools/; revision=121671
Diffstat (limited to 'gui-compare')
-rw-r--r-- | gui-compare/CecilMetadata.cs | 18 | ||||
-rw-r--r-- | gui-compare/ChangeLog | 5 |
2 files changed, 23 insertions, 0 deletions
diff --git a/gui-compare/CecilMetadata.cs b/gui-compare/CecilMetadata.cs index 85215db4..e0d3e7eb 100644 --- a/gui-compare/CecilMetadata.cs +++ b/gui-compare/CecilMetadata.cs @@ -138,6 +138,10 @@ namespace GuiCompare { if (!md.Name.StartsWith("op_")) continue; } + + if (IsFinalizer (md)) + continue; + if (md.IsPrivate || md.IsAssembly) continue; @@ -181,6 +185,20 @@ namespace GuiCompare { } } + static bool IsFinalizer (MethodDefinition method) + { + if (method.Name != "Finalize") + return false; + + if (!method.IsVirtual) + return false; + + if (method.Parameters.Count != 0) + return false; + + return true; + } + public static void PopulateTypeLists (TypeDefinition fromDef, List<CompNamed> class_list, List<CompNamed> enum_list, diff --git a/gui-compare/ChangeLog b/gui-compare/ChangeLog index 0a41a415..578ad0bd 100644 --- a/gui-compare/ChangeLog +++ b/gui-compare/ChangeLog @@ -1,3 +1,8 @@ +2008-12-17 Jb Evain <jbevain@novell.com> + + * CecilMetadata.cs: treat Finalizers as an implementation detail + and ignore it for the comparison. + 2008-12-16 Jb Evain <jbevain@novell.com> * CecilMetadata.cs: fix the comparison of the definition |