diff options
author | Rodrigo Kumpera <kumpera@gmail.com> | 2009-05-27 19:45:32 +0400 |
---|---|---|
committer | Rodrigo Kumpera <kumpera@gmail.com> | 2009-05-27 19:45:32 +0400 |
commit | dff3e7543bbd180106d3e3a3cc4ad1b463b86059 (patch) | |
tree | a45df30ce88c6e1c736135f53a1031f1145b1209 /mcs/ilasm | |
parent | 6c035e225abc36a15501a03f574744824225350b (diff) |
2009-05-27 Rodrigo Kumpera <rkumpera@novell.com>
* TypeDef.cs: Add field method_list to preserve definition
order of methods when emiting the PE file.
svn path=/trunk/mcs/; revision=134840
Diffstat (limited to 'mcs/ilasm')
-rw-r--r-- | mcs/ilasm/codegen/ChangeLog | 5 | ||||
-rw-r--r-- | mcs/ilasm/codegen/TypeDef.cs | 5 |
2 files changed, 9 insertions, 1 deletions
diff --git a/mcs/ilasm/codegen/ChangeLog b/mcs/ilasm/codegen/ChangeLog index fd21bbc3d46..40ec8708dcd 100644 --- a/mcs/ilasm/codegen/ChangeLog +++ b/mcs/ilasm/codegen/ChangeLog @@ -1,3 +1,8 @@ +2009-05-27 Rodrigo Kumpera <rkumpera@novell.com> + + * TypeDef.cs: Add field method_list to preserve definition + order of methods when emiting the PE file. + 2009-04-20 Ankit Jain <jankit@novell.com> Fix bug #494221 diff --git a/mcs/ilasm/codegen/TypeDef.cs b/mcs/ilasm/codegen/TypeDef.cs index 1a16eba5547..0f2525c5de0 100644 --- a/mcs/ilasm/codegen/TypeDef.cs +++ b/mcs/ilasm/codegen/TypeDef.cs @@ -27,6 +27,7 @@ namespace Mono.ILASM { private Hashtable field_table; private ArrayList field_list; private Hashtable method_table; + private ArrayList method_list; private ArrayList customattr_list; private DeclSecurity decl_sec; private ArrayList event_list; @@ -61,6 +62,7 @@ namespace Mono.ILASM { field_list = new ArrayList (); method_table = new Hashtable (); + method_list = new ArrayList (); size = -1; pack = -1; @@ -212,6 +214,7 @@ namespace Mono.ILASM { Report.Error (methoddef.StartLocation, "Duplicate method declaration: " + methoddef.Signature); method_table.Add (methoddef.Signature, methoddef); + method_list.Add (methoddef); } public void BeginEventDef (EventDef event_def) @@ -419,7 +422,7 @@ namespace Mono.ILASM { classdef.SetFieldOrder (fielddef_list); - foreach (MethodDef methoddef in method_table.Values) { + foreach (MethodDef methoddef in method_list) { methoddef.Define (code_gen); } |