projects
/
mono.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[Mono.CSharp] Fix bug where overwriting variables cleared the wrong value
[mono.git]
/
mcs
/
mcs
/
class.cs
diff --git
a/mcs/mcs/class.cs
b/mcs/mcs/class.cs
index 64fc0e421f610970caca620164575951d3d1736a..943db46deabceb0b05b664c0a6372b029a967052 100644
(file)
--- a/
mcs/mcs/class.cs
+++ b/
mcs/mcs/class.cs
@@
-1026,6
+1026,9
@@
namespace Mono.CSharp {
TypeBuilder = Parent.TypeBuilder.DefineNestedType (Basename, TypeAttr, null, type_size);
}
TypeBuilder = Parent.TypeBuilder.DefineNestedType (Basename, TypeAttr, null, type_size);
}
+ if (DeclaringAssembly.Importer != null)
+ DeclaringAssembly.Importer.AddCompiledType (TypeBuilder, spec);
+
spec.SetMetaInfo (TypeBuilder);
spec.MemberCache = new MemberCache (this);
spec.DeclaringType = Parent.CurrentType;
spec.SetMetaInfo (TypeBuilder);
spec.MemberCache = new MemberCache (this);
spec.DeclaringType = Parent.CurrentType;
@@
-1651,7
+1654,7
@@
namespace Mono.CSharp {
!pa.ResolveConstructor (Location, TypeManager.string_type))
return;
!pa.ResolveConstructor (Location, TypeManager.string_type))
return;
- var encoder = new AttributeEncoder (
false
);
+ var encoder = new AttributeEncoder ();
encoder.Encode (GetAttributeDefaultMember ());
encoder.EncodeEmptyNamedArguments ();
encoder.Encode (GetAttributeDefaultMember ());
encoder.EncodeEmptyNamedArguments ();