Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/mcs/ilasm
diff options
context:
space:
mode:
authorRodrigo Kumpera <kumpera@gmail.com>2009-05-27 19:45:32 +0400
committerRodrigo Kumpera <kumpera@gmail.com>2009-05-27 19:45:32 +0400
commitdff3e7543bbd180106d3e3a3cc4ad1b463b86059 (patch)
treea45df30ce88c6e1c736135f53a1031f1145b1209 /mcs/ilasm
parent6c035e225abc36a15501a03f574744824225350b (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/ChangeLog5
-rw-r--r--mcs/ilasm/codegen/TypeDef.cs5
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);
}