update cecil from upstream
authorJb Evain <jbevain@gmail.com>
Tue, 21 Dec 2010 08:53:18 +0000 (09:53 +0100)
committerJb Evain <jbevain@gmail.com>
Tue, 21 Dec 2010 08:53:18 +0000 (09:53 +0100)
13 files changed:
mcs/class/Mono.Cecil/Mono.Cecil.Cil/CodeReader.cs
mcs/class/Mono.Cecil/Mono.Cecil.PE/ByteBufferEqualityComparer.cs
mcs/class/Mono.Cecil/Mono.Cecil.csproj [deleted file]
mcs/class/Mono.Cecil/Mono.Cecil.nunit [deleted file]
mcs/class/Mono.Cecil/Mono.Cecil/AssemblyReader.cs
mcs/class/Mono.Cecil/Mono.Cecil/AssemblyWriter.cs
mcs/class/Mono.Cecil/Mono.Cecil/BaseAssemblyResolver.cs
mcs/class/Mono.Cecil/Mono.Cecil/IConstantProvider.cs
mcs/class/Mono.Cecil/Mono.Cecil/MetadataSystem.cs
mcs/class/Mono.Cecil/Mono.Cecil/MethodDefinition.cs
mcs/class/Mono.Cecil/Mono.Cecil/MethodReturnType.cs
mcs/class/Mono.Cecil/revision
mcs/class/Mono.Cecil/update.rb

index c780cc7ce21b853a9200dca156385f8ba92de147..4cfc7db752f3e64cf718eb43fe2188778b1aa846 100644 (file)
@@ -123,7 +123,7 @@ namespace Mono.Cecil.Cil {
                        body.local_var_token = new MetadataToken (ReadUInt32 ());
                        body.init_locals = (flags & 0x10) != 0;
 
-                       if (body.LocalVarToken.RID != 0)
+                       if (body.local_var_token.RID != 0)
                                body.variables = ReadVariables (body.local_var_token);
 
                        ReadCode ();
@@ -145,6 +145,10 @@ namespace Mono.Cecil.Cil {
                {
                        start = position;
                        var code_size = body.code_size;
+
+                       if (code_size < 0 || buffer.Length <= (uint) (code_size + position))
+                               code_size = 0;
+
                        var end = start + code_size;
                        var instructions = body.instructions = new InstructionCollection (code_size / 3);
 
@@ -231,7 +235,7 @@ namespace Mono.Cecil.Cil {
 
                public VariableDefinition GetVariable (int index)
                {
-                       return body.Variables [index];
+                       return body.GetVariable (index);
                }
 
                public CallSite GetCallSite (MetadataToken token)
index fd780250ff221bf3398987b0c417f3c14046cfdc..fe56a6f18eead025a19ffd72ec7793b9fd4cd79e 100644 (file)
@@ -50,12 +50,29 @@ namespace Mono.Cecil.PE {
 
                public int GetHashCode (ByteBuffer buffer)
                {
+#if !BYTE_BUFFER_WELL_DISTRIBUTED_HASH
                        var hash = 0;
                        var bytes = buffer.buffer;
                        for (int i = 0; i < buffer.length; i++)
                                hash = (hash * 37) ^ bytes [i];
 
                        return hash;
+#else
+                       const uint p = 16777619;
+                       uint hash = 2166136261;
+
+                       var bytes = buffer.buffer;
+                       for (int i = 0; i < buffer.length; i++)
+                           hash = (hash ^ bytes [i]) * p;
+
+                       hash += hash << 13;
+                       hash ^= hash >> 7;
+                       hash += hash << 3;
+                       hash ^= hash >> 17;
+                       hash += hash << 5;
+
+                       return (int) hash;
+#endif
                }
        }
 }
diff --git a/mcs/class/Mono.Cecil/Mono.Cecil.csproj b/mcs/class/Mono.Cecil/Mono.Cecil.csproj
deleted file mode 100644 (file)
index fb0cab1..0000000
+++ /dev/null
@@ -1,180 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{D68133BD-1E63-496E-9EDE-4FBDBF77B486}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Mono.Cecil</RootNamespace>
-    <AssemblyName>Mono.Cecil</AssemblyName>
-    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>mono.snk</AssemblyOriginatorKeyFile>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\Debug\</OutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\Release\</OutputPath>
-    <DefineConstants>TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
-  </PropertyGroup>
-  <ItemGroup>
-    <Compile Include="Mono.Cecil.Cil\Code.cs" />
-    <Compile Include="Mono.Cecil.Cil\CodeWriter.cs" />
-    <Compile Include="Mono.Cecil.Cil\CodeReader.cs" />
-    <Compile Include="Mono.Cecil.Cil\Document.cs" />
-    <Compile Include="Mono.Cecil.Cil\ExceptionHandler.cs" />
-    <Compile Include="Mono.Cecil.Cil\ILProcessor.cs" />
-    <Compile Include="Mono.Cecil.Cil\Instruction.cs" />
-    <Compile Include="Mono.Cecil.Cil\MethodBody.cs" />
-    <Compile Include="Mono.Cecil.Cil\OpCode.cs" />
-    <Compile Include="Mono.Cecil.Cil\OpCodes.cs" />
-    <Compile Include="Mono.Cecil.Cil\SequencePoint.cs" />
-    <Compile Include="Mono.Cecil.Cil\Symbols.cs" />
-    <Compile Include="Mono.Cecil.Cil\VariableDefinition.cs" />
-    <Compile Include="Mono.Cecil.Cil\VariableReference.cs" />
-    <Compile Include="Mono.Cecil.Metadata\BlobHeap.cs" />
-    <Compile Include="Mono.Cecil.Metadata\Buffers.cs" />
-    <Compile Include="Mono.Cecil.Metadata\CodedIndex.cs" />
-    <Compile Include="Mono.Cecil.Metadata\ElementType.cs" />
-    <Compile Include="Mono.Cecil.Metadata\GuidHeap.cs" />
-    <Compile Include="Mono.Cecil.Metadata\Heap.cs" />
-    <Compile Include="Mono.Cecil.Metadata\MetadataToken.cs" />
-    <Compile Include="Mono.Cecil.Metadata\Row.cs" />
-    <Compile Include="Mono.Cecil.Metadata\StringHeap.cs" />
-    <Compile Include="Mono.Cecil.Metadata\TableHeap.cs" />
-    <Compile Include="Mono.Cecil.Metadata\TokenType.cs" />
-    <Compile Include="Mono.Cecil.Metadata\UserStringHeap.cs" />
-    <Compile Include="Mono.Cecil.Metadata\Utilities.cs" />
-    <Compile Include="Mono.Cecil.PE\BinaryStreamReader.cs" />
-    <Compile Include="Mono.Cecil.PE\BinaryStreamWriter.cs" />
-    <Compile Include="Mono.Cecil.PE\ByteBufferEqualityComparer.cs" />
-    <Compile Include="Mono.Cecil.PE\ByteBuffer.cs" />
-    <Compile Include="Mono.Cecil.PE\DataDirectory.cs" />
-    <Compile Include="Mono.Cecil.PE\Image.cs" />
-    <Compile Include="Mono.Cecil.PE\ImageReader.cs" />
-    <Compile Include="Mono.Cecil.PE\ImageWriter.cs" />
-    <Compile Include="Mono.Cecil.PE\Section.cs" />
-    <Compile Include="Mono.Cecil.PE\TextMap.cs" />
-    <Compile Include="Mono.Cecil\ArrayType.cs" />
-    <Compile Include="Mono.Cecil\AssemblyDefinition.cs" />
-    <Compile Include="Mono.Cecil\AssemblyFlags.cs" />
-    <Compile Include="Mono.Cecil\AssemblyHashAlgorithm.cs" />
-    <Compile Include="Mono.Cecil\AssemblyInfo.cs" />
-    <Compile Include="Mono.Cecil\AssemblyLinkedResource.cs" />
-    <Compile Include="Mono.Cecil\AssemblyNameDefinition.cs" />
-    <Compile Include="Mono.Cecil\AssemblyNameReference.cs" />
-    <Compile Include="Mono.Cecil\AssemblyReader.cs" />
-    <Compile Include="Mono.Cecil\AssemblyWriter.cs" />
-    <Compile Include="Mono.Cecil\BaseAssemblyResolver.cs" />
-    <Compile Include="Mono.Cecil\CallSite.cs" />
-    <Compile Include="Mono.Cecil\TypeParser.cs" />
-    <Compile Include="Mono.Cecil\Import.cs" />
-    <Compile Include="Mono.Collections.Generic\Collection.cs" />
-    <Compile Include="Mono.Cecil\ExportedType.cs" />
-    <Compile Include="Mono.Cecil\SecurityDeclaration.cs" />
-    <Compile Include="Mono.Cecil\CustomAttribute.cs" />
-    <Compile Include="Mono.Cecil\DefaultAssemblyResolver.cs" />
-    <Compile Include="Mono.Cecil\FileAttributes.cs" />
-    <Compile Include="Mono.Cecil\FunctionPointerType.cs" />
-    <Compile Include="Mono.Cecil\GenericInstanceMethod.cs" />
-    <Compile Include="Mono.Cecil\GenericInstanceType.cs" />
-    <Compile Include="Mono.Cecil\GenericParameter.cs" />
-    <Compile Include="Mono.Cecil\GenericParameterAttributes.cs" />
-    <Compile Include="Mono.Cecil\IConstantProvider.cs" />
-    <Compile Include="Mono.Cecil\ICustomAttributeProvider.cs" />
-    <Compile Include="Mono.Cecil\IGenericInstance.cs" />
-    <Compile Include="Mono.Cecil\IGenericParameterProvider.cs" />
-    <Compile Include="Mono.Cecil\IMarshalInfoProvider.cs" />
-    <Compile Include="Mono.Cecil\MarshalInfo.cs" />
-    <Compile Include="Mono.Cecil\MetadataResolver.cs" />
-    <Compile Include="Mono.Cecil\Modifiers.cs" />
-    <Compile Include="Mono.Cecil\NativeType.cs" />
-    <Compile Include="Mono.Cecil\PinnedType.cs" />
-    <Compile Include="Mono.Cecil\MetadataSystem.cs" />
-    <Compile Include="Mono.Cecil\IMethodSignature.cs" />
-    <Compile Include="Mono.Cecil\ParameterDefinitionCollection.cs" />
-    <Compile Include="Mono.Cecil\EmbeddedResource.cs" />
-    <Compile Include="Mono.Cecil\EventAttributes.cs" />
-    <Compile Include="Mono.Cecil\EventDefinition.cs" />
-    <Compile Include="Mono.Cecil\EventReference.cs" />
-    <Compile Include="Mono.Cecil\FieldAttributes.cs" />
-    <Compile Include="Mono.Cecil\FieldDefinition.cs" />
-    <Compile Include="Mono.Cecil\FieldReference.cs" />
-    <Compile Include="Mono.Cecil\IMemberDefinition.cs" />
-    <Compile Include="Mono.Cecil\LinkedResource.cs" />
-    <Compile Include="Mono.Cecil\MemberReference.cs" />
-    <Compile Include="Mono.Cecil\MethodAttributes.cs" />
-    <Compile Include="Mono.Cecil\MethodCallingConvention.cs" />
-    <Compile Include="Mono.Cecil\MethodDefinition.cs" />
-    <Compile Include="Mono.Cecil\MethodImplAttributes.cs" />
-    <Compile Include="Mono.Cecil\MethodReference.cs" />
-    <Compile Include="Mono.Cecil\MethodReturnType.cs" />
-    <Compile Include="Mono.Cecil\MethodSemanticsAttributes.cs" />
-    <Compile Include="Mono.Cecil\MethodSpecification.cs" />
-    <Compile Include="Mono.Cecil\ParameterAttributes.cs" />
-    <Compile Include="Mono.Cecil\ParameterDefinition.cs" />
-    <Compile Include="Mono.Cecil\ParameterReference.cs" />
-    <Compile Include="Mono.Cecil\PInvokeAttributes.cs" />
-    <Compile Include="Mono.Cecil\PInvokeInfo.cs" />
-    <Compile Include="Mono.Cecil\PointerType.cs" />
-    <Compile Include="Mono.Cecil\PropertyAttributes.cs" />
-    <Compile Include="Mono.Cecil\PropertyDefinition.cs" />
-    <Compile Include="Mono.Cecil\PropertyReference.cs" />
-    <Compile Include="Mono.Cecil\ReferenceType.cs" />
-    <Compile Include="Mono.Cecil\IMetadataScope.cs" />
-    <Compile Include="Mono.Cecil\IMetadataTokenProvider.cs" />
-    <Compile Include="Mono.Cecil\ManifestResourceAttributes.cs" />
-    <Compile Include="Mono.Cecil\ModuleReference.cs" />
-    <Compile Include="Mono.Cecil\MemberDefinitionCollection.cs" />
-    <Compile Include="Mono.Cecil\ModuleDefinition.cs" />
-    <Compile Include="Mono.Cecil\ModuleKind.cs" />
-    <Compile Include="Mono.Cecil\Resource.cs" />
-    <Compile Include="Mono.Cecil\SentinelType.cs" />
-    <Compile Include="Mono.Cecil\TargetRuntime.cs" />
-    <Compile Include="Mono.Cecil\TypeAttributes.cs" />
-    <Compile Include="Mono.Cecil\TypeDefinition.cs" />
-    <Compile Include="Mono.Cecil\TypeDefinitionCollection.cs" />
-    <Compile Include="Mono.Cecil\TypeReference.cs" />
-    <Compile Include="Mono.Cecil\TypeSpecification.cs" />
-    <Compile Include="Mono.Cecil\TypeSystem.cs" />
-    <Compile Include="Mono.Cecil\VariantType.cs" />
-    <Compile Include="Mono.Collections.Generic\ReadOnlyCollection.cs" />
-    <Compile Include="Mono.Security.Cryptography\CryptoConvert.cs" />
-    <Compile Include="Mono.Security.Cryptography\CryptoService.cs" />
-    <Compile Include="System.Runtime.CompilerServices\ExtensionAttribute.cs" />
-    <Compile Include="Mono\Actions.cs" />
-    <Compile Include="Mono\Empty.cs" />
-    <Compile Include="Mono\Funcs.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <Content Include="NOTES.txt" />
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="mono.snk" />
-  </ItemGroup>
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
-       Other similar extension points exist, see Microsoft.Common.targets.
-  <Target Name="BeforeBuild">
-  </Target>
-  <Target Name="AfterBuild">
-  </Target>
-  -->
-</Project>
\ No newline at end of file
diff --git a/mcs/class/Mono.Cecil/Mono.Cecil.nunit b/mcs/class/Mono.Cecil/Mono.Cecil.nunit
deleted file mode 100755 (executable)
index 36e6808..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-<NUnitProject>
-  <Settings activeconfig="Default" />
-  <Config name="Default" binpathtype="Auto">
-    <assembly path="Test\bin\Debug\Mono.Cecil.Tests.dll" />
-    <assembly path="rocks\Test\bin\Debug\Mono.Cecil.Rocks.Tests.dll" />
-    <assembly path="symbols\mdb\Test\bin\Debug\Mono.Cecil.Mdb.Tests.dll" />
-    <assembly path="symbols\pdb\Test\bin\Debug\Mono.Cecil.Pdb.Tests.dll" />
-  </Config>
-</NUnitProject>
index 5c6c230265437c4b723440baf2ca61a71ee8c6fe..2cafb99d71c3815000d94d75b2c88e31558e97e3 100644 (file)
@@ -957,11 +957,7 @@ namespace Mono.Cecil {
                        if (type != null)
                                return type;
 
-                       type = ReadTypeReference (rid);
-                       if (type != null)
-                                metadata.AddTypeReference (type);
-
-                       return type;
+                       return ReadTypeReference (rid);
                }
 
                TypeReference ReadTypeReference (uint rid)
@@ -974,6 +970,19 @@ namespace Mono.Cecil {
 
                        var scope_token = ReadMetadataToken (CodedIndex.ResolutionScope);
 
+                       var name = ReadString ();
+                       var @namespace = ReadString ();
+
+                       var type = new TypeReference (
+                               @namespace,
+                               name,
+                               module,
+                               null);
+
+                       type.token = new MetadataToken (TokenType.TypeRef, rid);
+
+                       metadata.AddTypeReference (type);
+
                        if (scope_token.TokenType == TokenType.TypeRef) {
                                declaring_type = GetTypeDefOrRef (scope_token);
 
@@ -983,17 +992,8 @@ namespace Mono.Cecil {
                        } else
                                scope = GetTypeReferenceScope (scope_token);
 
-                       var name = ReadString ();
-                       var @namespace = ReadString ();
-
-                       var type = new TypeReference (
-                               @namespace,
-                               name,
-                               module,
-                               scope);
-
+                       type.scope = scope;
                        type.DeclaringType = declaring_type;
-                       type.token = new MetadataToken (TokenType.TypeRef, rid);
 
                        MetadataSystem.TryProcessPrimitiveType (type);
 
@@ -1037,7 +1037,11 @@ namespace Mono.Cecil {
                                return null;
 
                        var reader = ReadSignature (ReadBlobIndex ());
-                       return reader.ReadTypeSignature ();
+                       var type = reader.ReadTypeSignature ();
+                       if (type.token.RID == 0)
+                               type.token = new MetadataToken (TokenType.TypeSpec, rid);
+
+                       return type;
                }
 
                SignatureReader ReadSignature (uint signature)
@@ -1940,7 +1944,7 @@ namespace Mono.Cecil {
                                element = GetMethodSpecification (rid);
                                break;
                        default:
-                               throw new NotSupportedException ();
+                               return null;
                        }
 
                        this.position = position;
@@ -1964,7 +1968,7 @@ namespace Mono.Cecil {
                {
                        var type = metadata.GetFieldDeclaringType (rid);
                        if (type == null)
-                               throw new NotSupportedException ();
+                               return null;
 
                        InitializeCollection (type.Fields);
 
@@ -1986,7 +1990,7 @@ namespace Mono.Cecil {
                {
                        var type = metadata.GetMethodDeclaringType (rid);
                        if (type == null)
-                               throw new NotSupportedException ();
+                               return null;
 
                        InitializeCollection (type.Methods);
 
@@ -1998,11 +2002,13 @@ namespace Mono.Cecil {
                        if (!MoveTo (Table.MethodSpec, rid))
                                return null;
 
-                       var method = (MethodReference) LookupToken (
+                       var element_method = (MethodReference) LookupToken (
                                ReadMetadataToken (CodedIndex.MethodDefOrRef));
                        var signature = ReadBlobIndex ();
 
-                       return ReadMethodSpecSignature (signature, method);
+                       var method_spec = ReadMethodSpecSignature (signature, element_method);
+                       method_spec.token = new MetadataToken (TokenType.MethodSpec, rid);
+                       return method_spec;
                }
 
                MethodSpecification ReadMethodSpecSignature (uint signature, MethodReference method)
@@ -2031,7 +2037,7 @@ namespace Mono.Cecil {
                                return member;
 
                        member = ReadMemberReference (rid);
-                       if (!member.ContainsGenericParameter)
+                       if (member != null && !member.ContainsGenericParameter)
                                metadata.AddMemberReference (member);
                        return member;
                }
index 02b98ae7ea12bc611765a81c1dc655aa131a21a5..7aad2477feac93f3b4bbc082200f2cdcc80bd8ed 100644 (file)
@@ -1960,11 +1960,20 @@ namespace Mono.Cecil {
                        return signature;
                }
 
+               static Exception CreateForeignMemberException (MemberReference member)
+               {
+                       return new ArgumentException (string.Format ("Member '{0}' is declared in another module and needs to be imported", member));
+               }
+
                public MetadataToken LookupToken (IMetadataTokenProvider provider)
                {
                        if (provider == null)
                                throw new ArgumentNullException ();
 
+                       var member = provider as MemberReference;
+                       if (member == null || member.Module != module)
+                               throw CreateForeignMemberException (member);
+
                        var token = provider.MetadataToken;
 
                        switch (token.TokenType) {
@@ -1981,7 +1990,7 @@ namespace Mono.Cecil {
                        case TokenType.MethodSpec:
                                return GetMethodSpecToken ((MethodSpecification) provider);
                        case TokenType.MemberRef:
-                               return GetMemberRefToken ((MemberReference) provider);
+                               return GetMemberRefToken (member);
                        default:
                                throw new NotSupportedException ();
                        }
index c63c23e93368784be93ce0898e08586984254c00..e449a032331cd746f204d082998e04ccb200ed1a 100644 (file)
@@ -171,7 +171,7 @@ namespace Mono.Cecil {
 
                static bool IsZero (Version version)
                {
-                       return version.Major == 0 && version.Minor == 0 && version.Build == 0 && version.Revision == 0;
+                       return version == null || (version.Major == 0 && version.Minor == 0 && version.Build == 0 && version.Revision == 0);
                }
 
 #if !SILVERLIGHT && !CF
index 361fbe4e6939d5c793daf0cb2829de285d1ba341..e3338cf20d34302e18912a6b781faf9c6d4db382 100644 (file)
@@ -30,7 +30,7 @@ namespace Mono.Cecil {
 
        public interface IConstantProvider : IMetadataTokenProvider {
 
-               bool HasConstant { get; }
+               bool HasConstant { get; set; }
                object Constant { get; set; }
        }
 
index a114707d253bcc4e0b4098f557a4884ee26472e3..e2196afbf68b50db2274bb3590209a2d7ce21660 100644 (file)
@@ -100,6 +100,9 @@ namespace Mono.Cecil {
                public static void TryProcessPrimitiveType (TypeReference type)
                {
                        var scope = type.scope;
+                       if (scope == null)
+                               return;
+
                        if (scope.MetadataScopeType != MetadataScopeType.AssemblyNameReference)
                                return;
 
@@ -368,7 +371,7 @@ namespace Mono.Cecil {
                                        return type;
                        }
 
-                       throw new ArgumentException ();
+                       return null;
                }
        }
 }
index 1b2ce9aa758b4ca462a4b6471500140b7fd89997..3b74e5a7dbd676afe3108cde0f24144b1cff620f 100644 (file)
@@ -453,7 +453,22 @@ namespace Mono.Cecil {
                                index--;
                        }
 
-                       return method.Parameters [index];
+                       var parameters = method.Parameters;
+
+                       if (index < 0 || index >= parameters.size)
+                               return null;
+
+                       return parameters [index];
+               }
+
+               public static VariableDefinition GetVariable (this MethodBody self, int index)
+               {
+                       var variables = self.Variables;
+
+                       if (index < 0 || index >= variables.size)
+                               return null;
+
+                       return variables [index];
                }
 
                public static bool GetSemantics (this MethodDefinition self, MethodSemanticsAttributes semantics)
index 4b571f3ff1595613a7a774e46582660d070fce3c..045b9a876f8542455a7cc4b4ab4fac82a4760f22 100644 (file)
@@ -70,6 +70,7 @@ namespace Mono.Cecil {
 
                public bool HasConstant {
                        get { return parameter != null && parameter.HasConstant; }
+                       set { Parameter.HasConstant = value; }
                }
 
                public object Constant {
index 733698240c0b445410f7d97032c74a84ab0e3878..753ec8651e46456ad28c87a3abdd29cfa08fd754 100644 (file)
@@ -1 +1 @@
-5c80e3f0b9d75a8d1f9e4d44b4928a658d3230e9
+26459b1b2ca40dc81e6c69fced9335c0b0aaf0f6
index b33f919c99820cdf180ede4ecba3eff8fe1a85c8..afbe0b2d80d3d950c13365d8ff7af36e116ba47d 100644 (file)
@@ -9,9 +9,7 @@ sources = {
        "Mono.Security.Cryptography/*.cs" => "Mono.Security.Cryptography",
        "Mono/*.cs" => "Mono",
        "System.Runtime.CompilerServices/*.cs" => "System.Runtime.CompilerServices",
-       "Mono.Cecil.nunit" => ".",
        "NOTES.txt" => ".",
-       "Mono.Cecil.csproj" => ".",
 
        "symbols/mdb/Mono.Cecil.Mdb/*.cs" => "../Mono.Cecil.Mdb/Mono.Cecil.Mdb/",
 }